@charset "UTF-8";

main .inner {
  width: 1000px;
  padding: 0;
}

@media screen and (max-width: 750px) {
  main .inner {
    width: 100%;
    padding: 0 0;
  }
}

main .inner img {
  display: block;
  line-height: 1;
}

.content h2 {
  margin-bottom: 0;
}

#page-funwari-shorts .page-contents {
  max-width: 1000px;
  margin: 0 auto;
}


@media screen and (max-width: 750px) {
  #page-funwari-shorts .cv-btn {
    width: 90%;
    margin: 0 auto;
  }
}

#page-funwari-shorts .cv-btn.btn1 {
  margin-top: 100px;
}

@media screen and (max-width: 750px) {
  #page-funwari-shorts .cv-btn.btn1 {
    margin-top: 13.33333vw;
  }
}

#page-funwari-shorts .cv-btn.btn2 {
  margin-top: 80px;
  margin-bottom: 20px;
}

@media screen and (max-width: 750px) {
  #page-funwari-shorts .cv-btn.btn2 {
    margin-top: 10.66667vw;
    margin-bottom: 2.66667vw;
  }
}

#page-funwari-shorts .cv-btn.btn3 {
  margin: 100px 0;
}

@media screen and (max-width: 750px) {
  #page-funwari-shorts .cv-btn.btn3 {
    margin: 13.33333vw auto;
  }
}

#page-funwari-shorts .cv-btn.btn4 {
  margin-top: 100px;
}

@media screen and (max-width: 750px) {
  #page-funwari-shorts .cv-btn.btn4 {
    margin-top: 13.33333vw;
  }
}


/*------------------------------------------------------
  製品情報
------------------------------------------------------*/
.product-info {
  padding: 0 0 10%;
}
.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-bottom: .25em;
  line-height: 1.5;
}
.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;
    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;
  }
}


/*-------------------------------------------
動画
-----------------------------------------------*/
.l-video {
  position: relative;
}
.video_wrapper {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
}
.comfort .video_wrapper {
  bottom: 400px;
  max-width: 840px;
}
.detail .video_wrapper {
  bottom: 60px;
  max-width: 600px;
}
.video_wrapper video {
  width:100%;
  height:100%;
}
@media (width < 768px) {
  .comfort .video_wrapper {
    bottom: 37.333vw;
    max-width: 85.333vw;
  }
  .detail .video_wrapper {
    bottom: 9.333vw;
    max-width: 58%;
  }
}


/*-------------------------------------------
モーダル
-----------------------------------------------*/
.modal {
  position: relative;
}
.open-modal-btn {
  position: absolute;
  color: #4f3e2b;
  font-size: 32px;
  text-decoration: underline;
}
.modal1 .open-modal-btn {
  right: 70px;
  bottom: 190px;
}
.modal2 .open-modal-btn {
  right: 108px;
  bottom: 255px;
}
@media (width < 768px) {
  .open-modal-btn {
    font-size: 3.2vw;
  }
  .modal1 .open-modal-btn {
    right: 7.2vw;
    bottom: 18.667vw;
  }
  .modal2 .open-modal-btn {
    right: 10.667vw;
    bottom: 25.333vw;
  }
}


/*-------------------------------------------
タブ切り替え
-----------------------------------------------*/
.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: 30px;
  left: 50%;
  transform: translateX(-50%);
  width: 898px;
  cursor: pointer;
}
.contents1set .cta__btn {
  width: 903px;
  bottom: 130px;
}

@media (width < 768px) {
  .cta__btn {
    bottom: 3.733vw; /*14px*/
    width: 90%;
  }
  .contents1set .cta__btn {
    bottom: 14.4vw; /*54px*/
    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*/
  }
}












/*------------------------------------------------------
  COLOR
------------------------------------------------------*/
.color {
  position: relative;
}
.color .color-wrap {
  position: absolute;
  bottom: 108px;
  left: 50%;
  transform: translateX(-50%);
  margin: 0 auto;
  width: 91.2%;
  overflow: hidden;
}
.color .swiper-slide {
  text-align: center;
}
.color .swiper-slide img {
  margin: 0 auto;
  max-width: 750px;
}
.color .swiper-button-next-color,
.color .swiper-button-prev-color {
  top: 50%;
  transform: translateY(-50%);
  width: 110px;
  height: 160px;
  background-size: 110px 160px;
}
.color .swiper-button-next-color {
  background-image: url(../img/20260126/color/icon-next-arrow.png);
  right: 0;
}
 .swiper-button-prev-color {
  background-image: url(../img/20260126/color/icon-prev-arrow.png);
  left: 0;
}
.swiper-button-prev:after,
.swiper-button-next:after {
  display: none;
}

@media (width < 768px) {
  .color .color-wrap {
    bottom: 4%;
    width: 80%;
  }
  .color .swiper-button-next-color,
  .color .swiper-button-prev-color {
    width: 40px;
    height: 90px;
    background-size: 40px 90px;
  }
}