@charset "UTF-8";
html {
  font-size: 10px;
}

@media screen and (max-width: 1520px) {
  html {
    font-size: 0.6579vw;
  }
}

@media screen and (max-width: 1150px) {
  html {
    font-size: 9px;
  }
}

@media screen and (max-width: 680px) {
  html {
    font-size: 1.333333333vw;
  }
}

:root {
  --var-translate-val: 15px;
  --var-translate-negative-val: -15px;
  --var-animation-timing-function: cubic-bezier(0.45, 0, 0.55, 1);
}

#main img {
  max-width: 100%;
  height: auto;
}
#main figure img {
  width: 100%;
}
#main .icon svg {
  display: block;
  width: 100%;
}
#main picture {
  display: block;
}

#main a,
#main a * {
  transition: all 0.3s ease-in;
}

#main button {
  color: inherit;
}
#main .all {
  display: block;
}
@media screen and (max-width: 680px) {
  #main .pc {
    display: none;
  }
}
@media screen and (max-width: 680px) {
  #main .inline-pc {
    display: none;
  }
}
#main .sp {
  display: none;
}
@media screen and (max-width: 680px) {
  #main .sp {
    display: block;
  }
}
#main .inline-sp {
  display: none;
}
@media screen and (max-width: 680px) {
  #main .inline-sp {
    display: inline;
  }
}

@media screen and (max-width: 680px) {
  #main br.pc {
    display: none;
  }
}
#main br.sp {
  display: none;
}
@media screen and (max-width: 680px) {
  #main br.sp {
    display: inline;
  }
}
#main .cw01,
#main .cw02,
#main .cw03,
#main .cw04{
  position: relative;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  padding-right: 6rem;
  padding-left: 6rem;
}
#main .cw01 {
  max-width: 1840px;
}
#main .cw02 {
  max-width: 1520px;
}
#main .cw03 {
  max-width: 1320px;
}
#main .cw04 {
  max-width: 1120px;
}

@media screen and (max-width: 680px) {
  #main .cw01,
  #main .cw02,
  #main .cw03,
  #main .cw04{
    padding-right: 3.5rem;
    padding-left: 3.5rem;
  }
}

#main .mainContentsArea{
  font-family: "Noto Sans JP", serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-variation-settings: "wdth" 100;
  font-size: 1.6rem;
  color: #333;
  overflow: hidden;
  letter-spacing: 0.05em;
}

.font-zen{
  font-family: "Zen Old Mincho", serif;
}

.font-marcellus{
  font-family: "Marcellus", serif;
}

.section__title{
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 3rem 0;
}

.section__title::before{
    content: "";
    display: block;
    width: 8.2rem;
    height: 4.1rem;
    background-image: url(../img/icon01.png);
    background-size: contain;
    background-repeat: no-repeat;
}

.section__title .text{
  font-size: 4.2rem;
  font-weight: 400;
  letter-spacing: 0.2em;
}

/* mv */
.mv{
  position: relative;
  z-index: 2;
}

.mv__imgBox{
  position: relative;
  z-index: 0;
}

.mv__logo{
  position: absolute;
  z-index: 1;
  right: 5.2rem;
  bottom: 5.6rem;
  width: calc((352 / 1920) * 100vw);
}

.mv__nav{
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
}

.mv__anchorList{
  display: flex;
  gap: 0 4.5rem;
  padding-left: 10rem;
}

.mv__anchorList li a{
  color: #fff;
  font-size: 1.7rem;
}

.mv__returnBtn a{
  display: flex;
  align-items: center;
  justify-content: center;
  width: 27rem;
  height: 10rem;
  background-color: #e35d48;
}

.mv__returnBtn a .linkInner{
  display: flex;
  align-items: center;
  gap: 0 2rem
}

.mv__returnBtn a .linkInner .icon{
  width: 1.3rem;
}

.mv__returnBtn a .linkInner .text{
  color: #fff;
  font-size: 2rem;
}

@media screen and (max-width: 1150px) {
  .mv__logo{
    width: 21rem;
  }
}

@media screen and (max-width: 680px) {
  .mv__logo{
    left: 50%;
    top: 50%;
    bottom: auto;
    transform: translate(-50%, -50%);
    width: 50.2rem;
  }

  .mv__nav{
    display: none;
  }
}

.mv__imgBox{
  opacity: 0;
  transition: opacity 1.2s 0s var(--var-animation-timing-function);
}

.mv__nav{
  opacity: 0;
  transition: opacity 0.8s 0.2s var(--var-animation-timing-function);
}

.mv__logo{
  opacity: 0;
  perspective: 200rem;
  transform-style: preserve-3d;
  transition: opacity 1.2s 0s var(--var-animation-timing-function);
}

.mv__logo img{
  transform: rotateY(90deg);
  transition: transform 1s 0.2s var(--var-animation-timing-function);
}

.mv.is-animated .mv__imgBox{
  opacity: 1;
}

.mv.is-animated .mv__nav{
  opacity: 1;
}

.mv.is-animated .mv__logo{
  opacity: 1;
}

.mv.is-animated .mv__logo img{
  transform: rotateY(0);
}

/* about */
.sec-about{
  position: relative;
  z-index: 2;
  padding-top: 10rem;
  padding-bottom: 22.5rem;
  background-color: #fff;
}

.about__inner{
  display: flex;
  justify-content: space-between;
  position: relative;
  z-index: 2;
}

.about__head h2{
  display: flex;
  flex-direction: row-reverse;
  gap: 0 6.8rem;
}

.about__head h2 span{
  writing-mode: vertical-lr;
  font-size: 4.2rem;
  line-height: 1;
  font-weight: 400;
  letter-spacing: 0.18em;
}

.about__content{
  width: 66rem;
  padding-top: 9rem;
}

.about__content p{
  font-size: 1.8rem;
  line-height: 2.75;
}

.about__circle{
  margin-top: 6.8rem;
}

.about__imgBox{
  position: absolute;
  z-index: 1;
  top: 53rem;
  right: calc(50% - 3rem);
  width: 55.9rem;
}

.about__objectRight{
  position: absolute;
  z-index: 0;
  top: -3rem;
  right: 0;
  width: 38.2rem;
}

.about__objectLeft{
  position: absolute;
  z-index: 0;
  bottom: 6.8rem;
  left: 0;
  width: 75.1rem;
}

@media screen and (max-width: 1920px) {
  .about__objectRight{
    right: auto;
    left: calc(50% + 57.7rem);
  }

  .about__objectLeft{
    left: auto;
    right: calc(50% + 20.9rem);
  }
}

@media screen and (max-width: 680px) {
  .sec-about{
    padding-top: 6rem;
    padding-bottom: 12rem;
  }

  .about__inner{
    display: block;
  }

  .about__head h2{
    justify-content: center;
    position: relative;
    padding-top: 7.2rem;
  }

  .about__head h2::before{
    content: "";
    display: block;
    width: 8rem;
    height: 4rem;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    background-image: url(../img/icon01.png);
    background-size: contain;
    background-repeat: no-repeat;
  }

  .about__content{
    width: 100%;
    padding-top: 29rem;
  }

  .about__content p{
    font-size: 2.8rem;
  }

  .about__circle{
    margin: 4rem auto 0;
    width: 61.6rem;
  }

  .about__imgBox{
    top: 41rem;
    right: 0;
    width: 100%;
  }

  .about__objectRight{
    left: auto;
    right: 0;
    width: 20.4rem;
  }

  .about__objectLeft{
    bottom: 2rem;
    left: 0;
    width: 36rem;
  }
}

/* lineup */
.sec-lineup{
  position: relative;
  z-index: 2;
  padding-top: 16rem;
  padding-bottom: 16rem;
  background-color: #f5f6f8;
}

.lineup__inner{
  position: relative;
  z-index: 1;
}

.lineup__objectLeft{
  position: absolute;
  top: -7.8rem;
  left: 0;
  z-index: 0;
  width: 54.6rem;
}

.lineup__objectRight{
  position: absolute;
  top: 145.6rem;
  right: 0;
  z-index: 0;
  width: 58.8rem;
}

.lineup__content01{
  margin-top: 6.5rem;
}

.lineup__content02{
  margin-top: 4rem;
}

.lineup__block{
  background-color: #fff;
  display: flex;
  gap: 0 6rem;
  position: relative;
  padding: 1.5rem;
  box-shadow: 0 0 2rem 0 rgba(86,86,86,0.05);
}

.lineup__block + .lineup__block{
  margin-top: 3rem;
}

.lineup__blockBadge{
  position: absolute;
  top: -2rem;
  left: -2rem;
  z-index: 5;
}

.lineup__blockBadge.-no1{
  width: 18rem;
}

.lineup__blockBadge.-regular{
  width: 13.3rem;
}

.lineup__blockImgBox{
  width: 56rem;
}

.lineup__blockTextBox{
  width: 66rem;
  padding-top: 6rem;
}

@media screen and (max-width: 1920px) {
.lineup__objectLeft{
  left: auto;
  right: calc(50% + 41.5rem);
}

.lineup__objectRight{
  right: auto;
  left: calc(50% + 37rem);
}


}

@media screen and (max-width: 680px) {
  .sec-lineup{
    padding-top: 12rem;
    padding-bottom: 8.5rem;
  }

  .lineup__objectLeft{
    top: -1.8rem;
    left: 0;
    right: auto;
    width: 37.9rem;
  }

  .lineup__content01{
    margin-top: 7.5rem;
  }

  .lineup__content02{
    margin-top: 3rem;
  }

  .lineup__block{
    display: block;
    padding: 3.5rem 3.5rem 6rem;
  }

  .lineup__block + .lineup__block{
    margin-top: 2.5rem;
  }

  .lineup__blockBadge{
    top: -4rem;
    left: -0.8rem;
  }

  .lineup__blockBadge.-no1{
    width: 15rem;
  }

  .lineup__blockBadge.-regular{
    width: 15rem;
  }

  .lineup__blockImgBox{
    width: 100%;
  }

  .lineup__blockTextBox{
    width: 100%;
    padding-top: 4.5rem;
    margin: 0 auto;
  }
}

.lineup__blockTitle{
  font-size: 3.5rem;
  font-weight: 200;
}

.lineup__blockText01{
  font-size: 1.8rem;
  line-height: 1.75;
  letter-spacing: 0;
  margin-top: 3.5rem;
}

.lineup__blockProducts{
  margin-top: 4rem;
  padding-top: 5rem;
  border-top: 1px solid rgba(0,0,0,0.3);
}

.lineup__blockProductsItem{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0 3rem;
}

.lineup__blockProductsItem + .lineup__blockProductsItem{
  margin-top: 2rem;
}

@media screen and (max-width: 680px) {
  .lineup__blockTitle{
    font-size: 3.4rem;
    text-align: center;
  }

  .lineup__blockText01{
    font-size: 2.8rem;
    line-height: 2;
  }

  .lineup__blockProducts{
    margin-top: 4.5rem;
    padding-top: 4.8rem;
  }

  .lineup__blockProductsItem{
    gap: 0 1.8rem;
  }

  .lineup__blockProductsItem + .lineup__blockProductsItem{
    margin-top: 3.2rem;
  }
}

.itemPurchaseBtn{
  display: flex;
  align-items: center;
  justify-content: center;
  width: 23.4rem;
  height: 5.4rem;
  border-radius: 2.7rem;
  color: #fff;
  background-color: #000;
}

.itemPurchaseBtn__inner{
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0 1.5rem;
}

.itemPurchaseBtn__inner .text{
  font-size: 1.5rem;
}

@media (any-hover: hover) {
  .itemPurchaseBtn:hover{
      background-color: #e35d48;
  }
}

@media screen and (max-width: 680px) {
  .itemPurchaseBtn{
    width: 27rem;
    height: 6rem;
    border-radius: 3rem;
  }

  .itemPurchaseBtn__inner{
    gap: 0 0.8rem;
  }

  .itemPurchaseBtn__inner .icon{
    width: 1.6rem;
  }

  .itemPurchaseBtn__inner .icon svg{
    height: auto;
  }

  .itemPurchaseBtn__inner .text{
    font-size: 2.2rem;
    padding-bottom: 0.2rem;
  }
}

.itemPriceBox{
  width: calc(100% - 26.4rem);
  background-image: url(../img/dot.png);
  background-repeat: repeat-x;
  background-position: center center;
  background-size: auto 0.3rem;
}

.itemPriceBox.-dot_line_adjust{
  background-position-y: 60%;
}

.itemPriceBox__inner{
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.itemPriceBox .itemName{
  background-color: #fff;
  padding-right: 0.85rem;
  font-weight: 400;
}

.itemPriceBox .itemName.-v_adjust{
  position: relative;
  bottom: 0.8rem;
}

.itemPriceBox .itemName.-v_adjust_2{
  position: relative;
  bottom: -0.4rem;
}

.itemPriceBox .itemName .text01{
  font-size: 1.8rem;
  line-height: 1.45;
}

.itemPriceBox .itemName .num{
  font-size: 4.2rem;
  margin-right: 0.5rem;
}

.itemPriceBox .itemName .text02{
  font-size: 2.4rem;
}

.itemPriceBox .itemName .text02 + .text02{
  margin-left: -0.8rem;
}

.itemPriceBox .itemPrice{
  background-color: #fff;
  padding-left: 0.85rem;
  line-height: 1;
}

.itemPriceBox .itemPrice .num{
  font-size: 4.6rem;
  font-weight: 700;
}

.itemPriceBox .itemPrice .yen{
  font-size: 2.4rem;
  font-weight: 700;
}

.itemPriceBox .itemPrice .tax{
  font-size: 1.8rem;
}

.lineup__regularTitle{
  margin: 9rem auto 0;
  text-align: center;
  background-image: url(../img/object03.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center bottom;
  padding-bottom: 4rem;
  width: 35.8rem;
}

.lineup__regularTitle__inner{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0 1.5rem;
}

.lineup__regularTitle__inner .icon{
  width: 3.1rem;
  display: inline-block;
  position: relative;
  top: 0.2rem;
}

.lineup__regularTitle__inner .text{
  font-size: 3.8rem;
  font-weight: 400;
  letter-spacing: 0.2em;
  color: #bba061;
  line-height: 1;
}

@media screen and (max-width: 680px) {
  .itemPriceBox{
    width: calc(100% - 28.5rem);
    background-size: auto 0.4rem;
  }

  .itemPriceBox__inner{
    display: inline-flex;
    flex-direction: column;
    align-items: flex-start;
    background-color: #fff;
    padding-right: 1rem;
  }

  .itemPriceBox .itemName{
    padding-right: 0.85rem;
  }

  .itemPriceBox .itemName .text01{
    font-size: 2.2rem;
  }

  .itemPriceBox .itemName .num{
    font-size: 3.0rem;
    margin-right: 0;
  }

  .itemPriceBox .itemName .text02{
    font-size: 2.8rem;
  }

  .itemPriceBox .itemName .text02 + .text02{
    margin-left: -0.8rem;
  }

  .itemPriceBox .itemPrice{
    padding-left: 0;
  }

  .itemPriceBox .itemPrice .num{
    font-size: 3rem;
  }

  .itemPriceBox .itemPrice .yen{
    font-size: 2.8rem;
  }

  .lineup__regularTitle{
    margin-top: 7.2rem;
  }
}

/* feature */
.sec-feature{
  padding-top: 15.5rem;
  padding-bottom: 15.5rem;
  background-image: url(../img/feature_bg.webp);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  background-attachment: fixed;
  position: relative;
  z-index: 1;
}


.feature__head .section__title .text{
  color: #fff;
}

.feature__content{
  margin-top: 12.5rem;
  color: #fff;
  position: relative;
  z-index: 1;
}

.feature__block + .feature__block{
  margin-top: 11rem;
}

.feature__block h3{
  font-size: 3.2rem;
  font-weight: 400;
  text-align: center;
}

.feature__block p{
  font-size: 1.8rem;
  line-height: 2.3;
  margin-top: 3.5rem;
}

.feature__img01{
  position: absolute;
  z-index: 0;
  top: calc(59.7rem + 15rem);
  left: calc(50% + 36.5rem);
  width: 43.9rem;
}

.feature__img02{
  position: absolute;
  z-index: 0;
  top: calc(110.9rem + 15rem);
  right: calc(50% + 37rem);
  width: 32.9rem;
}

.-scroll_obj{
  transition: top 0.15s ease-out;
}

@media screen and (max-width: 680px) {
  .sec-feature{
    padding-top: 13rem;
    padding-bottom: 81rem;
  }

  .sec-feature::before{
    content: "";
    display: block;
    width: 100vw;
    height: 100vh;
    background-image: url(../img/sp/feature_bg.webp);
    background-size: cover;
    background-position: center center;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 0;
  }

  .feature__block + .feature__block{
    margin-top: 26rem;
  }

  .feature__block h3{
    font-size: 3.6rem;
  }

  .feature__block p{
    font-size: 2.8rem;
    margin-top: 3rem;
  }

  .feature__img01{
    top: calc(126rem + 15rem);
    left: auto;
    right: 0;
  }

  .feature__img02{
    top: calc(303.8rem + 15rem);
    left: 0;
    right: auto;
  }
}

/* recommend */
.sec-recommend{
  padding-top: 16rem;
  padding-bottom: 15.5rem;
  position: relative;
  z-index: 2;
  background-color: #fff;
}

.recommend__content{
  margin-top: 11.5rem;
  display: flex;
  justify-content: center;
}

.recommend__imgBox{
  width: 49.4rem;
  padding-top: 1.6rem;
}

.recommend__img figcaption{
  font-size: 2rem;
  text-align: center;
  margin-top: 3.8rem;
  color: #aa8c46;
  letter-spacing: 0;
}

.recommend__textBox{
  margin-left: 17.5rem;
  border: 2px dotted #d1bf94;
  width: 48.4rem;
  padding: 4rem 5rem 4rem;
}

.recommend__list li{
  padding: 3rem 0 1rem 6.5rem;
  border-bottom: 1px solid rgba(0,0,0,0.07);
  font-size: 2.2rem;
  position: relative;
}

.recommend__list li:last-child{
  border-bottom:  none;
}

.recommend__list li::before{
  content: "";
  display: block;
  width: 2.3rem;
  height: 2.1rem;
  background-image: url(../img/icon_check.png);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: 4rem;
  left: 1.8rem;
}

@media screen and (max-width: 680px) {
  .sec-recommend{
    padding-top: 12rem;
    padding-bottom: 9.5rem;
  }

  .recommend__content{
    margin-top: 8rem;
    display: block;
    padding: 0 3.5rem;
  }

  .recommend__imgBox{
    width: 100%;
    padding-top: 0;
  }

  .recommend__imgBox img{
    width: 49.4rem;
    margin: 0 auto;
  }

  .recommend__img figcaption{
    font-size: 2.4rem;
  }

  .recommend__textBox{
    margin: 9.5rem 0 0;
    border: 1px dotted #d1bf94;
    width: 100%;
    padding: 6rem 6rem 5rem;
  }

  .recommend__list li{
    padding: 3rem 0 1rem 6.5rem;
    font-size: 3rem;
  }

  .recommend__list li::before{
    width: 2.8rem;
    height: 2.7rem;
  }
}

/* secret */
.sec-secret{
  padding-top: 10rem;
  padding-bottom: 13rem;
  max-width: 140rem;
  margin: 0 auto;
  background-color: #bba061;
  background-image: url(../img/qa_bg.webp);
  background-repeat: no-repeat;
  background-position: right bottom;
  background-size: 140rem auto;
  position: relative;
  z-index: 3;
}

.secret__head .section__title{
  gap: 1rem 0;
}

.secret__head .section__title .text{
  color: #fff;
}

.secret__head .section__title::before{
  background-image: url(../img/icon_qa.png);
  width: 11.1rem;
  height: 5.6rem;
}

.secret__content{
  background-color: #fff;
  margin-top: 5.5rem;
  padding-top: 7rem;
}

.secret__content .secret__item{
  border-bottom: 1px solid rgba(0,0,0,0.07);
  padding-bottom: 5.2rem;
}

.secret__content .secret__item:last-child{
  border-bottom: none;
}

.secret__content .secret__item + .secret__item{
  margin-top: 5.8rem;
}

.secret__itemQuestion{
  display: flex;
  align-items: center;
  gap: 0 4.5rem;
}

.secret__itemQuestion .questionNum{
  width: 10rem;
}

.secret__itemQuestion .questionNum__inner{
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 10rem;
  background-color: #000;
  color: #fff;
  font-size: 2.8rem;
  font-weight: 200;
  line-height: 1;
  letter-spacing: 0.1em;
  gap: 0 0.2rem;
}

.secret__itemQuestion .questionNum__inner .font-zen{
  position: relative;
  top: -0.2rem;
}

.secret__itemQuestion .questionText{
  font-size: 2.8rem;
  font-weight: 700;
}

.secret__itemAnswer{
  padding: 0 10rem 0 15rem;
  display: flex;
}

.secret__itemAnswer .answer{
  font-size: 2.8rem;
  font-weight: 400;
  color: #ab8d46;
  width: 5.8rem;
  line-height: 1.5;
}

.secret__itemAnswer .answerText{
  width: calc(100% - 5.8rem);
  font-size: 1.7rem;
  line-height: 2;
}

.secret__itemAnswer .answerText p,
.secret__itemAnswer .answerText dl{
  margin-top: 2.5rem;
}

.secret__itemAnswer .answerText p:first-child{
  margin-top: 0;
}

.secret__itemAnswer .answerText dl dt{
  font-weight: 700;
}

@media screen and (max-width: 680px) {
  .sec-secret{
    padding-bottom: 11.5rem;
    background-image: url(../img/sp/qa_bg.webp);
    background-size: 100% auto;
  }

  .secret__content{
    margin-top: 8rem;
  }

  .secret__content .secret__item{
    padding-bottom: 8rem;
  }

  .secret__itemQuestion .questionText{
    font-size: 3.6rem;
  }

  .secret__itemAnswer{
    padding: 4.5rem 3.5rem 0;
    display: block;
  }

  .secret__itemAnswer .answer{
    font-size: 2.8rem;
    width: 100%;
  }

  .secret__itemAnswer .answerText{
    width: 100%;
    font-size: 3rem;
  }

  .secret__itemAnswer .answerText p,
  .secret__itemAnswer .answerText dl,
  .secret__itemAnswer .answerText p:first-child{
    margin-top: 3rem;
  }
}

/* voice */
.sec-voice{
  padding-top: 14rem;
  padding-bottom: 16rem;
  margin-top: 14.5rem;
  background-color: #f7f7f7;
  position: relative;
  z-index: 5;
}

.voice__content{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0 2rem;
  position: relative;
  z-index: 1;
}

.voice__item{
  display: flex;
  justify-content: center;
  flex-direction: column;
  background-color: #fff;
  border-radius: 1rem;
  position: relative;
  padding: 2.4rem;
  min-height: 16rem;
  line-height: 1.75;
}

.voice__content.-upper .voice__item{
  width: calc((100% - 4rem) / 3);
}

.voice__content.-lower .voice__item{
  width: 50rem;
}

.voice__content.-upper{
  margin-top: 7.5rem;
}

.voice__content + .voice__content{
  margin-top: 4rem;
}

.voice__item::before{
  content: "";
  display: block;
  width: 2.2rem;
  height: 2.2rem;
  background-color: #fff;
  clip-path: polygon(0 0,100% 0,100% 100%);
  position: absolute;
  bottom: -2.2rem;
  left: 50%;
  transform: translateX(-50%);
}

.voice__comment{
  font-size: 1.8rem;
  letter-spacing: 0;
}

.voice__name{
  font-size: 1.5rem;
  letter-spacing: 0;
  margin-top: 0.2rem;
  font-weight: 500;
}

.voice__objectLeft{
  position: absolute;
  z-index: 0;
  top: -13.8rem;
  left: 0;
  width: 20.9rem;
}

.voice__objectRight{
  position: absolute;
  z-index: 0;
  bottom: 2.6rem;
  right: 0;
  width: 66.5rem;
}

@media screen and (max-width: 1920px) {
  .voice__objectLeft{
    left: auto;
    right: calc(50% + 75.3rem);
  }

  .voice__objectRight{
    right: auto;
    left: calc(50% + 29.4rem);
  }
}

@media screen and (max-width: 1720px) {
  .voice__objectLeft{
    left: auto;
    right: calc(50% + 65.3rem);
  }
}

@media screen and (max-width: 1520px) {
  .voice__objectLeft{
    left: auto;
    right: calc(50% + 55.3rem);
  }
}

@media screen and (max-width: 680px) {
  .sec-voice{
    padding-top: 9.5rem;
    padding-bottom: 14rem;
    margin-top: 0;
  }

  .voice__content{
    flex-direction: column;
    gap: 3rem 0;
    width: 62.8rem;
  }

  .voice__item{
    padding: 4rem;
    min-height: auto;
  }

  .voice__content.-upper .voice__item{
    width: 100%;
  }

  .voice__content.-lower .voice__item{
    width: 100%;
  }

  .voice__content.-upper{
    margin: 6rem auto 0;
  }

  .voice__content + .voice__content{
    margin: 3rem auto 0;
  }

  .voice__comment{
    font-size: 3.2rem;
  }

  .voice__name{
    font-size: 2.9rem;
  }

  .voice__objectLeft{
    top: -5.8rem;
    left: 0;
    right: auto;
    width: 12.8rem;
  }

  .voice__objectRight{
    bottom: 1.4rem;
    right: 0;
    left: auto;
    width: 39rem;
  }
}

/* Fixed Nav */
.fixedNav{
  position: fixed;
  z-index: 999;
  width: 100%;
  height: 12rem;
  display: flex;
  align-items: center;
  justify-content: center;
  bottom: 0;
  left: 0;
  background-color: #fff;
  box-shadow: 0px -15px 38px 0 rgba(126,126,126,0.2);
  transform: translateY(100%);
  transition: all 0.3s ease-in;
}

.fixedNav.visible{
  transform: translateY(0);
}

.fixedNav__inner{
  display: flex;
  align-items: center;
  justify-content: center;
}

.fixedNav__imgBox{
  width: 10.8rem;
  margin-right: 2.2rem;
}

.fixedNav__infoProduct{
  font-size: 2.6rem;
  margin-right: 5.2rem;
}

.fixedNav__btnBox .itemPurchaseBtn{
  width: 30rem;
  height: 7rem;
  border-radius: 3.5rem;
}

.fixedNav__btnBox .itemPurchaseBtn__inner .text{
  font-size: 2rem;
  position: relative;
  bottom: 0.2rem;
}

@media screen and (max-width: 680px) {
  .fixedNav__imgBox{
    width: 9.8rem;
    margin-right: 1.5rem;
  }

  .fixedNav__infoProduct{
    font-size: 2.8rem;
    margin-right: 2.6rem;
  }

  .fixedNav__btnBox .itemPurchaseBtn{
    width: 23rem;
  }

  .fixedNav__btnBox .itemPurchaseBtn__inner .text{
    font-size: 2.2rem;
    bottom: 0.2rem;
  }
}

.gallery__img{
  width: 100%;
  position: relative;
  z-index: 2;
}

.breadcrumb{
  background-color: #fff;
  position: relative;
  z-index: 2;
}

@media screen and (max-width: 680px) {
  #pageFooter{
    position: relative;
    z-index: 1;
  }
}

/* btn */
#main .return_btn{
  text-align: center;
  padding-top: 14rem;
  padding-bottom: 14rem;
  background-color: #fff;
  position: relative;
  z-index: 2;
}
#main .link_btn02 {
  display: inline-block;
  width: 39rem;
  height: 8rem;
  background-color: #fff;
  transition: all 0.3s ease-in;
  border: 1px solid #000;
}
@media screen and (max-width: 680px) {
  #main .return_btn{
    padding-top: 7rem;
    padding-bottom: 7rem;
  }
  #main .link_btn02 {
    width: 100%;
    max-width: 65rem;
    height: 12rem;
  }
}
#main .link_btn02 .link_btn02_inner {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  position: relative;
}
#main .link_btn02 .link_btn02_text {
  font-size: 1.6rem;
  font-weight: 400;
  font-family: "Noto Sans JP", serif;
  color: #000;
  transition: all 0.3s ease-in;
}
@media screen and (max-width: 680px) {
  #main .link_btn02 .link_btn02_text {
    font-size: 3.2rem;
  }
}

@media (any-hover: hover) {
  #main .link_btn02:hover {
    background-color: #000;
  }
  #main .link_btn02:hover .link_btn02_text {
    color: #fff;
  }
}

/* animation */
#main .fade-in {
  opacity: 0;
  transition: opacity 0.8s 0s var(--var-animation-timing-function);
}
#main .fade-in.is-animated {
  opacity: 1;
}

#main .fade-in-blur{
  opacity: 0;
  filter: blur(1rem);
  transition: opacity 0.8s 0s var(--var-animation-timing-function), filter 0.8s 0.2s cubic-bezier(0, 0.55, 0.45, 1);
}
#main .fade-in-blur.is-animated{
  opacity: 1;
  filter: blur(0);
}