@charset "UTF-8";

main .inner {
  width: 1000px;
  padding: 0;
}
main .inner img {
  display: block;
  line-height: 1;
}
#page-funwari-bratop .page-contents {
  max-width: 1000px;
  margin: 0 auto;
}
@media screen and (max-width: 750px) {
  main .inner {
    width: 100%;
    padding: 0 0;
  }
}

/*------------------------------------------------------
  POINT
------------------------------------------------------*/
.point2 {
  position: relative;
}
.point2 .pad {
  position: absolute;
  top: 298px;
  right: 38px;
  width: 420px;
  height: 420px;
  border: 4px solid #fff;
  border-radius: 50%;
  object-fit: cover;
}
@media screen and (max-width: 750px) {
  .point2 .pad {
    top: 29.8vw;
    right: 3.8vw;
    width: 42vw;
    height: 42vw;
    border: 0.4vw solid #fff;
  }
}

/*------------------------------------------------------
  CTA
------------------------------------------------------*/
.tabCTA {
  display: flex;
  align-items: flex-end;
  flex-wrap: wrap;
}
.tabCTA > label {
  order: -1;
  min-width: 1px;
  cursor: pointer;
}
.tabCTA input {
  display: none;
}
.tabCTA > div {
  display: none;
}
.tabCTA label:has(:checked) + div {
  display: block;
}

/* ラベルの表示切り替え */
.tabCTA__set label .label-default,
.tabCTA__set2 label .label-default,
.tabCTA__bra label .label-default,
.tabCTA__bra2 label .label-default {
  display: block;
}
.tabCTA__set label .label-active,
.tabCTA__set2 label .label-active,
.tabCTA__bra label .label-active,
.tabCTA__bra2 label .label-active {
  display: none;
}
.tabCTA__set label:has(:checked) .label-active,
.tabCTA__set2 label:has(:checked) .label-active,
.tabCTA__bra label:has(:checked) .label-active,
.tabCTA__bra2 label:has(:checked) .label-active {
  display: block;
}
.tabCTA__set label:has(:checked) .label-default,
.tabCTA__set2 label:has(:checked) .label-default,
.tabCTA__bra label:has(:checked) .label-default,
.tabCTA__bra2 label:has(:checked) .label-default {
  display: none;
}

/* ボタン */
.cta {
  position: relative;
}
.cta__btn {
  position: absolute;
  bottom: 80px;
  left: 50%;
  transform: translateX(-50%);
  width: 898px;
  cursor: pointer;
}

@media (width < 768px) {
  .cta__btn {
    bottom: 8vw;
    width: 90%;
  }
  .tabCTA > label:first-of-type {
    width: 40vw; /*150px*/
  }
  .tabCTA > label:nth-of-type(2) {
    width: 32vw; /*120px*/
  }
  .tabCTA > label:last-of-type {
    width: 28vw; /*105px*/
  }
}


/*------------------------------------------------------
  製品情報
------------------------------------------------------*/
.product-info {
  padding: 100px 0 0;
}
.product-info__ttl {
  margin: 1em 0;
  color: #000;
  font-size: 36px;
  font-weight: 700;
  text-align: center;
}
.product-info__table {
  margin: 0 auto;
  border: 1px solid #595757;
  border-spacing: 0;
  color: #595757;
  border-collapse: collapse;
}
.table__ttl {
  padding: 1em;
  font-weight: normal;
  text-align: left;
  border-bottom: 1px solid #595757;
  background: #f2f2f0;
}
.table__dtl {
  padding: 1em;
  border-bottom: 1px solid #595757;
}
.table__note {
  margin: 1em 0 0;
  font-size: 14px;
}
.product-info__ttlS {
  margin: 1em 0 0.5em;
  color: #595757;
  font-size: 18px;
}
.product-info__list {
  margin: 0;
  list-style: none;
  padding: 0;
  color: #595757;
}
.product-info__item {
  margin: 0 0 .25em 1em;
  text-indent: -1em;
  line-height: 1.5;
}
.product-info__item::before {
  content: "●";
}
.product-info__item.info-asterisk::before {
  content: "※";
}
.product-info__item a {
  color: #942828;
  text-decoration: underline;
}
.product-info__table td th {
  padding-right: 1em;
  text-align: left;
  font-weight: normal;
}
.product-info__table td td {
  line-height: 1.7;
}
@media (width < 768px) {
  .product-info {
    margin: 0 auto;
    padding: 15vw 0 0;
    width: 90%;
    font-size: 14px;
  }
  .product-info__ttl {
    font-size: 24px;
  }
  .table__ttl,
  .table__dtl {
    display: block;
  }
  tr:last-of-type .table__dtl {
    border-bottom: none;
  }
  .product-info__ttlS {
    font-size: 16px;
  }
}

/*------------------------------------------------------
  カスタマーセンター
------------------------------------------------------*/
.customer-center {
  position: relative;
}
.img18_button,
.img18_tel {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}
.img18_button {
  bottom: 600px;
  max-width: 840px;
  width: 100%;
}
.img18_tel {
  bottom: 305px;
  max-width: 780px;
  width: 100%;
}
@media (width < 1000px) {
  .img18_button {
    bottom: 60vw;
    max-width: 84vw;
  }
  .img18_tel {
    bottom: 30.5vw;
    max-width: 78vw;
  }
}

/*------------------------------------------------------
  video
------------------------------------------------------*/
.video {
  position: relative;
}
.video_wrapper {
  position: absolute;
  left: 50%;
  top: 350px;
  transform: translateX(-50%);
  max-width: 770px;
  width: 100%;
  aspect-ratio:16/9;
}
.video_wrapper iframe,
.video_wrapper video {
  width:100%;
  height:100%;
}
@media (width < 768px) {
  .video_wrapper,
  .video_wrapper {
    top: 35vw;
    width: 90%;
  }
}