.adjustFixedTab {
  margin-top: -53px;
  padding-top: 53px;
}

#fixedTab {
  width: 100%;
  display: none;
  position: sticky;
  top: -1px;
  box-shadow: 0 4px 2px -3px #dadada;
}

#fixedTab.is-show {
  display: block;
  margin-top: -53px;
  animation: anchorShow 0.3s linear 0s;
}

@keyframes anchorShow {
  0% {
    opacity: 0.5;
    transform: translateY(-80px);
  }

  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

.tabContentBlock {
  background-color: #fff;
  z-index: 2;
}

.o-lineupTabs {
  display: flex;
  justify-content: center;
  font-size: 12px;
  font-weight: 700;
}

.o-lineupTabs_item {
  background-color: #fff;
  margin: 0 9px;
  border-bottom: 3px solid transparent;
}

.tabBtnfull {
  justify-content: space-between;
  width: 100%;
  border-bottom: 1px solid #dadada;
}

.tabBtnfull .o-lineupTabs_item {
  width: calc(100%/2);
  color: #ababab;
  text-align: center;
  padding: 15px 0;
  border-bottom: 4px solid transparent;
  margin: 0;
}

.tabBtnfull .o-lineupTabs_item.is-active {
  border-bottom-color: #1b1b1b;
  color: #1b1b1b;
}

.o-lineupContents_item {
  height: 0;
  overflow: hidden;
  visibility: hidden;
}

.o-lineupContents_item.is-active {
  visibility: visible;
  height: auto;
}

.fr-imagePlusText_imgWrap.-largish {
  width: calc((120 / 345) * 100%);
}

.imagePlusTextVertical_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.imagePlusTextVertical_item {
  width: calc((100% - 4vw) / 2);
}

.lineupMenu_list {
  display: flex;
  flex-wrap: wrap;
}

.lineupMenu_item {
  display: flex;
  width: calc((100% - 8vw) / 3);
}

.lineupMenu_item:not(:nth-of-type(3n + 1)) {
  margin-left: 4vw;
}

.lineupMenu_item:nth-of-type(n + 4) {
  margin-top: 15px;
}

.lineupMenu_itemInner {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
}

.lineupMenu_itemInner:after {
  align-items: center;
  display: flex;
  justify-content: center;
  content: "";
  background: url(https://169.p.syniva.es/jp/ja/special-feature/common/icons/chevron_down.svg) 0 / cover no-repeat;
  width: 14px;
  height: 8px;
  margin-top: 9px;
}

.lineupMenu_itemInnerLabel {
  display: flex;
  align-items: center;
  flex: 1;
  height: 100%;
  min-height: 0%;
}

.swiper-container.-noPaddingBottom {
  padding-bottom: 0;
}

.swiper-button-next.-productSlide,
.swiper-button-prev.-productSlide {
  top: calc((100vw / 2) + 39px);
}

.fr-heading.-h3.-stepNumber {
  flex: 1;
}

.fr-stepFlow_item.-categoryTitle {
  padding-top: 0;
  padding-bottom: 0;
}

.productImagePlusText_image {
  position: relative;
}

.productImagePlusText_image.-new:after {
  align-items: center;
  background-color: #378694;
  display: flex;
  color: #fff;
  content: "NEW";
  font-size: 11px;
  font-weight: 700;
  justify-content: center;
  position: absolute;
  top: 0;
  left: 0;
  width: 42px;
  height: 18px
}

.productDetailImagePlusText,
.functionImagePlusText {
  display: flex;
  flex-wrap: wrap;
  position: relative;
}

.productDetailImagePlusText_image,
.functionImagePlusText_image {
  width: 32vw;
}

.productDetailImagePlusText_content,
.functionImagePlusText_content {
  flex: 1;
  padding-left: 4vw;
}

.fr-bff-products.-detail[data-component-type=ProductGridText] {
  padding-right: 0;
  padding-left: 0;
}

.fr-bff-products.-detail[data-component-type=ProductGridText] .fr-bff-product_name {
  display: none;
}

.fr-bff-products.-detail[data-component-type=ProductGridText] .fr-bff-product_inner:before {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.sceneHeading {
  display: flex;
  align-items: center;
}

.sceneHeading_image {
  width: 28vw;
}

/* userReview */
.userReviewsMore {
  margin-top: 32px;
}

.userReviewHeading {
  margin-top: 24px;
  font-size: 15px;
  line-height: 23px;
  font-weight: 700
}

[lang=en] .userReviewHeading {
  font-size: 18px;
  line-height: 24px;
}

.userReview+.userReview {
  margin-top: 24px;
}

.userReviewStars {
  display: flex;
  align-items: center
}

.userReviewStar {
  background: url(https://169.p.syniva.es/jp/ja/contents/feature/common/img/common/star.svg) 0/5em 1em no-repeat;
  display: inline-block;
  height: 1em;
  vertical-align: sub;
  width: 1em
}

.userReviewStarImplicit {
  border: 0;
  clip: rect(1px 1px 1px 1px);
  height: 0;
  margin: 0;
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
  width: 0
}

.userReviewStar+.userReviewStar {
  margin-left: 3px
}

.userReviewStar.-half {
  background-position: -2em
}

.userReviewStar.-active {
  background-position: -4em
}

[lang=en] .userReviewComment {
  line-height: 19px
}

.userReviewUser {
  font-size: 11px;
  line-height: 16px;
  color: #7d7d7d;
}

[lang=en] .userReviewUser {
  font-size: 12px;
}

.u-adjustmentPreMarginedItem_type01 {
  padding-top: 39px;
}

.u-adjustmentPreMarginedItem_type02 {
  padding-top: 15px;
}

@media screen and (min-width: 813px) {
  /* override */
  a:hover:not(.fr-tabs_itemLink),
  a:hover img,
  a:hover p,
  a[href]:not(.fr-tabs_itemLink):hover,
  a[href]:hover img,
  a[href]:hover p,
  a[data-link]:hover,
  a[data-link]:hover img,
  .js-video:hover,
  .u_textLink:hover {
    cursor: pointer;
    opacity: 0.8;
    text-decoration: none;
  }
  .fr-linkButton {
    transition: 0.5s;
  }

  .fr-breadcrumbs.-noMarginBottom {
    margin-bottom: 0;
  }

  .adjustFixedTab {
    margin-top: -74px;
    padding-top: 74px;
  }

  #fixedTab.is-show {
    margin-top: -74px;
  }

  .o-lineupTabs {
    font-size: 20px;
  }

  .tabBtnfull .o-lineupTabs_item {
    padding: 21px 0;
    cursor: pointer;
  }

  .swiper-button-next.-adjustArrow,
  .swiper-button-prev.-adjustArrow {
    top: calc(((1176px - 96px) / 5) / 2);
  }

  .imagePlusTextVertical_list {
    justify-content: center;
    margin-right: 0;
    margin-left: 0;
  }

  .imagePlusTextVertical_item {
    width: calc((1176px - 72px) / 4);
    margin-left: 24px;
  }

  .imagePlusTextVertical_item:nth-of-type(3n + 1) {
    margin-left: 0;
  }

  .lineupMenu_list {
    justify-content: center;
  }

  .lineupMenu_item,
  .lineupMenu_item:nth-of-type(n + 4) {
    width: calc((100% - 196px) / 7);
    margin-top: 0;
  }

  .lineupMenu_item + .lineupMenu_item {
    margin-left: 12px;
  }

  .lineupMenu_itemInner:after {
    margin-top: 12px;
  }

  .swiper-button-next.-productSlide,
  .swiper-button-prev.-productSlide {
    top: calc((100% + 52px) / 2);
  }

  .fr-stepFlow.-categoryTitle {
    justify-content: center;
  }

  .fr-stepFlow_item.-categoryTitle {
    flex: none;
  }

  .productImagePlusText,
  .functionImagePlusText {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }

  .productImagePlusText_image,
  .productImagePlusText_content,
  .functionImagePlusText_item {
    width: calc((100% - 24px) / 2);
  }

  .productImagePlusText_image.-new:after {
    font-size: 12px;
    width: 52px;
    height: 24px
  }

  .functionImagePlusText_item:nth-of-type(n + 3) {
    margin-top: 20px;
  }

  .productDetailImagePlusText_image,
  .functionImagePlusText_image {
    width: calc((186 / 576) * 100%);
  }

  .productDetailImagePlusText_content,
  .functionImagePlusText_content {
    padding-left: 24px;
    padding-right: 0;
  }

  .sceneHeading {
    justify-content: center;
  }

  .sceneHeading_image {
    width: calc((140 / 1176) * 100%);
  }

  /* userReview */
  .userReviewHeading {
    font-size: 22px;
    line-height: 27px
  }

  [lang=en] .userReviewHeading {
    font-size: 25px;
    line-height: 34px;
  }

  .userReview+.userReview {
    margin-top: 40px;
  }

  .userReviewStars {
    text-align: center
  }

  .userReviewStar {
    font-size: 17px
  }

  [lang=en] .userReviewComment {
    line-height: 22px
  }

  .userReviewUser {
    font-size: 14px;
    line-height: 21px
  }

  .u-adjustmentPreMarginedItem_type01 {
    padding-top: 36px;
  }

  .u-adjustmentPreMarginedItem_type02 {
    padding-top: 24px;
  }

  .u-alignCenterOnlyPC {
    text-align: center;
  }
}

@media screen and (max-width: 812px) {
  .functionImagePlusText_item + .functionImagePlusText_item {
    margin-top: 15px;
  }

  .fr-imagePlusTextParent.-list .fr-imagePlusText_content.-noPaddingTop {
    padding-top: 0;
  }
}