@charset "UTF-8";
#loading {
  display: none !important;
}

html {
  min-width: 1200px;
  -webkit-text-size-adjust: none;
}

@media screen and (max-width: 640px) {
  html {
    min-width: auto;
  }
}
@media print, screen and (min-width: 641px) {
  html.no-scroll {
    overflow: hidden;
    padding-right: 17px;
  }
  html.no-scroll header .c-contentWidth {
    padding-right: 97px;
  }
  html.no-scroll.mac {
    padding-right: 0;
  }
  html.no-scroll.mac header .c-contentWidth {
    padding-right: 80px;
  }
}
.l-footer .c-contentWidth {
  box-sizing: border-box;
}

body.loading-now {
  position: fixed;
}

.l-main {
  padding-bottom: 0 !important;
}

.l-main *,
.l-main *:before,
.l-main *:after {
  box-sizing: border-box;
}

.l-main h2 {
  margin: 0;
}

.l-main .p-mv {
  padding-top: 143px;
  height: 750px;
  background: url(../images/mv_pc2504.png) center/cover no-repeat;
  overflow: hidden;
  opacity: 0;
  transition: 1s;
  transition-delay: 1s;
}
@media screen and (max-width: 640px) {
  .l-main .p-mv {
    padding-top: 5.078125vw;
    height: 130.2083333333vw;
    background: url(../images/mv_sp2504.png) center/cover no-repeat;
  }
}
.l-main .p-mv .l-content-inner {
  position: relative;
  height: 100%;
}
@media screen and (min-width: 641px) {
  .l-main .p-mv .l-content-inner {
    width: 1160px;
    padding: 0;
  }
}
@media screen and (max-width: 640px) {
  .l-main .p-mv .l-content-inner {
    padding: 0;
  }
}
.l-main .p-mv-ttl {
  display: inline-block;
  opacity: 0;
  transition: 1s;
  transition-delay: 2s;
  overflow: hidden;
}
@media screen and (max-width: 640px) {
  .l-main .p-mv-ttl {
    position: relative;
    left: -1.6927083333vw;
  }
}
.l-main .p-mv-ttl-inner {
  display: block;
  width: 500px;
  transition: 1s;
  padding-top: 380px;
}
@media screen and (max-width: 640px) {
  .l-main .p-mv-ttl-inner {
    width: 80.7291666667vw;
    padding-top: 95vw;
    padding-left: 8vw;
  }
}
.l-main .p-mv-txt {
  font-feature-settings: "palt";
  font-size: 22px;
  line-height: 1.3636363636;
  letter-spacing: 0.15em;
  color: #595757;
  text-align: right;
  margin-top: 298px;
  width: 502px;
}
@media screen and (max-width: 640px) {
  .l-main .p-mv-txt {
    font-size: 3.125vw;
    letter-spacing: 0;
    color: #595757;
    text-align: left;
    margin-top: 48.682292vw;
    padding-inline: 6.5104166667vw;
    width: 100%;
  }
}
.l-main .p-mv-logo {
  position: absolute;
  right: 107px;
  bottom: 50px;
  width: 151px;
  opacity: 0;
  transition: opacity 1s 0.8s;
}
@media screen and (max-width: 640px) {
  .l-main .p-mv-logo {
    right: 4.0364583333vw;
    bottom: 3.90625vw;
    width: 16.40625vw;
  }
}
.l-main .p-mv.is-action {
  opacity: 1;
}
.l-main .p-mv.is-action .p-mv-ttl {
  opacity: 1;
}
.l-main .p-mv.is-action .p-mv-logo {
  opacity: 1;
}

.p-intro {
  position: relative;
  width: 1150px;
  background: #fff;
  border-top-left-radius: 16px;
  border-top-right-radius: 16px;
  margin: -420px auto 0;
  padding-top: 115px;
  text-align: center;
}
@media screen and (max-width: 640px) {
  .p-intro {
    width: 92.4vw;
    margin: -9vw auto 9.1vw;
    box-sizing: border-box;
    padding: 11.1vw 5.2vw 0;
  }
}
.p-intro__ttl {
  text-align: center;
}
@media screen and (max-width: 640px) {
  .p-intro__ttl {
    width: 64vw;
    margin: 0 auto !important;
  }
}
.p-intro__txt {
  text-align: center;
  font-size: 2.2rem;
  line-height: 2;
  margin: 1.9em 0 2.9em;
}
@media screen and (max-width: 640px) {
  .p-intro__txt {
    font-size: 3.4vw;
    margin: 6.4vw 0;
  }
}
.p-intro__img {
  width: 624px;
  height: auto;
}
.p-intro-list {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  width: 900px;
  margin: 58px auto 0;
}
@media screen and (max-width: 640px) {
  .p-intro-list {
    display: block;
    width: auto;
    margin: 8.3vw 0 0;
  }
}
@media screen and (max-width: 640px) {
  .p-intro-list__item {
    margin-top: 9.1vw;
  }
  .p-intro-list__item:first-child {
    margin-top: 0;
  }
}
.p-intro-list__ttl {
  text-align: center;
}
.p-intro-list__ttl img {
  width: 225px;
  height: auto;
}
@media screen and (max-width: 640px) {
  .p-intro-list__ttl img {
    width: 41.7vw;
  }
}
.p-intro-list__txt {
  font-size: 1.8rem;
  line-height: 1.8;
  margin-top: 0.7em;
}
@media screen and (max-width: 640px) {
  .p-intro-list__txt {
    font-size: 3.4vw;
    line-height: 1.8;
  }
}
.p-intro-list__txt.pk {
  color: #eb7aab;
}
.p-intro-list__txt.bl {
  color: #009bd9;
}

.l-main .p-research {
  position: relative;
  z-index: 1;
  cursor: url(../images/research_cursor.png), pointer;
  background-color: #fff;
  padding: 50px 0 155px;
}
.l-main .p-research::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: calc(100% - 100px);
  background: url(../images/bg_mesh.png) top center;
}

@media screen and (max-width: 640px) {
  .l-main .p-research {
    padding: 18.8229166667vw 0 calc(11.71875vw + 50px);
  }
  .l-main .p-research::before {
    height: calc(100% - 50px);
  }
}
.l-main .p-research-ttl {
  text-align: center;
}

@media screen and (max-width: 640px) {
  .l-main .p-research-ttl {
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
  }
  .l-main .p-research-ttl img {
    width: 100%;
  }
}
.l-main .p-research-bln {
  background-image: url(../images/research_bln.png);
  background-repeat: no-repeat;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  width: 494px;
  height: 233px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: -55px;
  margin-left: 110px;
}

@media screen and (max-width: 640px) {
  .l-main .p-research-bln {
    width: 91.9270833333vw;
    height: 73.1770833333vw;
    background-image: url(../images/research_bln_sp.png);
    margin: 3.2083333333vw auto auto;
  }
}
.l-main .p-research-bln-txt {
  text-align: center;
  font-size: 1.5rem;
  line-height: 1.6666666667;
}

@media screen and (max-width: 640px) {
  .l-main .p-research-bln-txt {
    font-size: 3.3854166667vw;
    line-height: 1.9230769231;
  }
}
.l-main .p-research .research .item-cnt .small {
  font-size: 75%;
}

.l-main .p-research .research .item-cnt .sup {
  font-size: 75%;
  position: relative;
  top: -0.4em;
}

@media print, screen and (min-width: 641px) {
  .l-main .p-research .research {
    margin-top: -15px;
    background-image: url(../images/research_bottle.png);
    background-repeat: no-repeat;
    background-position: top center;
  }
}
@media screen and (max-width: 640px) {
  .l-main .p-research .research {
    margin: 9.1145833333vw 0 0;
    background-image: url(../images/research_bottle.png);
    background-position: center top;
    background-repeat: no-repeat;
    background-size: 24.8697916667vw;
  }
  .l-main .p-research .research-list-btn {
    position: relative;
  }
  .l-main .p-research .research-list-btn::before {
    right: auto;
    left: 2.6041666667vw;
    top: -3.2552083333vw;
    width: 30.078125vw;
    height: 19.7916666667vw;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    background-image: url(../images/research_img01.png);
    position: absolute;
    content: "";
  }
  .l-main .p-research .research-list-btn {
    height: 84.765625vw;
    position: relative;
    margin-bottom: 3.2552083333vw;
  }
  .l-main .p-research .research-list-btn .item {
    position: absolute;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    font-size: 0;
  }
  .l-main .p-research .research-list-btn .item::after {
    content: "";
    background-image: url(../images/check.svg);
    width: 5.859375vw;
    height: 5.5989583333vw;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    position: absolute;
    left: 0;
    top: 61%;
    transform: translateY(-50%);
    opacity: 0;
    transition: 0.3s;
  }
  .l-main .p-research .research-list-btn .item.-item03::after,
  .l-main .p-research .research-list-btn .item.slick-current::after,
  .l-main .p-research .research-list-btn .item.clicked::after {
    opacity: 1;
  }
  .l-main .p-research .research-list-btn .item.-item01 {
    width: 37.6302083333vw !important;
    height: 20.1822916667vw;
    background-image: url(../images/research_btn02_sp.png);
    left: 0;
    top: 15.1041666667vw;
  }
  .l-main .p-research .research-list-btn .item.-item01::after {
    left: 8.8541666667vw;
  }
  .l-main .p-research .research-list-btn .item.-item02 {
    width: 38.8020833333vw !important;
    height: 21.7447916667vw;
    background-image: url(../images/research_btn04_sp.png);
    left: 0;
    bottom: 17.4479166667vw;
  }
  .l-main .p-research .research-list-btn .item.-item02::after {
    left: 10.15625vw;
    top: 63%;
  }
  .l-main .p-research .research-list-btn .item.-item03 {
    width: 32.6822916667vw !important;
    height: 21.6145833333vw;
    background-image: url(../images/research_btn01_sp.png);
    right: 4.1666666667vw;
    top: -1.0416666667vw;
  }
  .l-main .p-research .research-list-btn .item.-item03::after {
    left: 17.1875vw;
  }
  .l-main .p-research .research-list-btn .item.-item04 {
    width: 32.6822916667vw !important;
    height: 21.6145833333vw;
    background-image: url(../images/research_btn03_sp.png);
    right: 3.125vw;
    top: 27.6041666667vw;
  }
  .l-main .p-research .research-list-btn .item.-item04::after {
    left: 17.1875vw;
    top: 65%;
  }
  .l-main .p-research .research-list-btn .item.-item05 {
    width: 32.421875vw !important;
    height: 20.1822916667vw;
    background-image: url(../images/research_btn05_sp.png);
    right: 4.1666666667vw;
    bottom: 5.9895833333vw;
  }
  .l-main .p-research .research-list-btn .item.-item05::after {
    left: 17.1875vw;
  }
  .l-main .p-research .research-list-btn .slick-track,
  .l-main .p-research .research-list-btn .slick-list {
    transform: none !important;
    width: 100% !important;
    height: 100% !important;
  }
  .l-main .p-research .research-list-cnt {
    margin: auto -5.2083333333vw auto;
  }
  .l-main .p-research .research-list-cnt .item-ttl {
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    color: #ffffff;
    font-size: 3.90625vw;
    line-height: 1.2;
    display: flex;
    align-items: center;
    width: 72.9166666667vw;
    height: 14.5833333333vw;
    position: relative;
    z-index: 1;
  }
  .l-main .p-research .research-list-cnt .item-cnt {
    width: 72.9166666667vw;
    margin-left: 2.6041666667vw;
    margin-top: -4.4270833333vw;
    font-size: 3.3854166667vw;
    line-height: 1.7692307692;
    padding: 2.8645833333vw 0;
    position: relative;
    background-image: url(../images/research_cnt_frame_sp_01.png), url(../images/research_cnt_frame_sp_03.png);
    background-repeat: no-repeat;
    background-position: top center, bottom center;
    background-size: 72.5vw;
  }
  .l-main .p-research .research-list-cnt .item-cnt::before {
    content: "";
    background-color: rgba(255, 255, 255, 0.6);
    display: block;
    position: absolute;
    left: 0.6510416667vw;
    top: 0.6510416667vw;
    width: 100%;
    height: 100%;
    z-index: -1;
  }
  .l-main .p-research .research-list-cnt .item-cnt .inn {
    padding: 0 0 2.6041666667vw 0;
    position: relative;
    background-image: url(../images/research_cnt_frame_sp_02.png);
    background-size: 100%;
    background-repeat: repeat-y;
  }
  .l-main .p-research .research-list-cnt .item-cnt-scroll {
    position: relative;
    overflow-y: scroll;
    height: auto;
    padding-right: 5.7291666667vw;
    padding-left: 5.078125vw;
    padding-top: 4.5572916667vw;
    width: 100%;
  }
  .l-main .p-research .research-list-cnt .item-cnt-scroll .ps__rail-y {
    opacity: 1;
    width: 1.171875vw;
    right: 1.3020833333vw !important;
  }
  .l-main .p-research .research-list-cnt .item-cnt-scroll .ps__thumb-y {
    width: 1.171875vw;
    right: 0;
    background-color: #b4b4b4;
    border-radius: 1.171875vw;
  }
  .l-main .p-research .research-list-cnt .item-cnt-scroll + p {
    margin-top: 3.2552083333vw;
  }
  .l-main .p-research .research-list-cnt .item.-item01 {
    padding-bottom: 5.859375vw;
  }
  .l-main .p-research .research-list-cnt .item.-item01 .item-ttl {
    background-image: url(../images/research_cnt02_sp.png);
    padding-left: 25vw;
  }
  .l-main .p-research .research-list-cnt .item.-item01 .item-cnt p img {
    width: 78.3854166667vw;
    margin-left: -2.6041666667vw;
    margin-bottom: -11.71875vw;
    z-index: 1;
    position: relative;
    max-width: none;
  }
  .l-main .p-research .research-list-cnt .item.-item02 .item-ttl {
    background-image: url(../images/research_cnt04_sp.png);
    padding-left: 32.5520833333vw;
  }
  .l-main .p-research .research-list-cnt .item.-item03 .item-ttl {
    background-image: url(../images/research_cnt01_sp.png);
    padding-left: 25vw;
  }
  .l-main .p-research .research-list-cnt .item.-item04 .item-ttl {
    background-image: url(../images/research_cnt03_sp.png);
    padding-left: 32.5520833333vw;
  }
  .l-main .p-research .research-list-cnt .item.-item05 .item-ttl {
    background-image: url(../images/research_cnt05_sp.png);
    padding-left: 25vw;
  }
  .l-main .p-research .research-list-cnt .item.-item05 .item-cnt-scroll + p {
    padding-right: 5.7291666667vw;
    padding-left: 5.078125vw;
  }
  .l-main .p-research .research-list-cnt .item.-item05 .item-cnt p img {
    width: 65.4947916667vw;
    margin-right: -1.3020833333vw;
    z-index: 1;
    position: relative;
    max-width: none;
  }
  .l-main .p-research .research-list-cnt .slick-arrow {
    width: 2.8645833333vw;
    height: 7.9427083333vw;
    z-index: 1;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
  }
  .l-main .p-research .research-list-cnt .slick-arrow:hover {
    opacity: 1;
  }
  .l-main .p-research .research-list-cnt .slick-arrow::before {
    content: none;
  }
  .l-main .p-research .research-list-cnt .slick-arrow.slick-disabled {
    opacity: 0;
  }
  .l-main .p-research .research-list-cnt .slick-prev {
    left: 7.8125vw;
    background-image: url(../images/prev.svg);
  }
  .l-main .p-research .research-list-cnt .slick-next {
    right: 8.4635416667vw;
    background-image: url(../images/next.svg);
  }
}
@media print, screen and (min-width: 641px) {
  .l-main .p-research .research-list {
    width: 1025px;
    height: 1008px;
    max-width: 100%;
    margin: auto auto auto;
    position: relative;
  }
  .l-main .p-research .research-list::before {
    content: "";
    position: absolute;
    right: 27px;
    top: -169px;
    background-image: url(../images/research_img01.png);
    width: 170px;
    height: 104px;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
  }
  .l-main .p-research .research-list .item {
    position: absolute;
    left: 0;
    top: 0;
  }
  .l-main .p-research .research-list .item.ac .m-accnt {
    opacity: 1;
    visibility: visible;
  }
  .l-main .p-research .research-list .item.ac .m-acbtn::after {
    opacity: 1;
  }
  .l-main .p-research .research-list .item::before {
    content: "";
    display: block;
    position: absolute;
    top: 36px;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    background-image: url(../images/line01.svg);
    right: 8px;
    transform: translateX(100%);
    width: 86px;
    height: 58px;
  }
  .l-main .p-research .research-list .item.-item-right::before {
    background-image: url(../images/line02.svg);
    right: auto;
    left: 8px;
    transform: translateX(-100%);
  }
  .l-main .p-research .research-list .item.-item03::before {
    top: 26px;
  }
  .l-main .p-research .research-list .item .dot {
    position: absolute;
    width: 60px;
    height: 60px;
    z-index: 2;
  }
  .l-main .p-research .research-list .item-btn {
    color: #ffffff;
    font-size: 1.9rem;
    line-height: 1.3157894737;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    width: 360px;
    height: 75px;
    background-image: url(../images/research_box02.png);
    display: flex;
    align-items: center;
    padding-left: 180px;
    position: relative;
    z-index: 1;
  }
  .l-main .p-research .research-list .item-btn::after {
    content: "";
    background-image: url(../images/check.svg);
    width: 33px;
    height: 31px;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
    position: absolute;
    left: 23px;
    top: 45%;
    transform: translateY(-50%);
    opacity: 0;
    transition: 0.3s;
  }
  .l-main .p-research .research-list .item-cnt {
    background-repeat: no-repeat;
    font-size: 1.5rem;
    line-height: 1.6666666667;
    position: relative;
    width: 362px;
    padding: 40px 0 0 30px;
    margin-top: -25px;
  }
  .l-main .p-research .research-list .item-cnt::after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
  }
  .l-main .p-research .research-list .item-cnt::before {
    content: "";
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.6);
    display: block;
    position: absolute;
    left: 5px;
    top: 5px;
  }
  .l-main .p-research .research-list .item-cnt .inn {
    position: relative;
    z-index: 1;
  }
  .l-main .p-research .research-list .item-cnt .inn img {
    max-width: none;
  }
  .l-main .p-research .research-list .item-cnt-scroll {
    padding-right: 30px;
    height: 165px;
    position: relative;
    width: 100%;
  }
  .l-main .p-research .research-list .item-cnt-scroll .ps__rail-y {
    opacity: 1;
    width: 6px;
    right: 5px;
  }
  .l-main .p-research .research-list .item-cnt-scroll .ps__thumb-y {
    width: 6px;
    right: 0;
    background-color: #b4b4b4;
    border-radius: 3px;
  }
  .l-main .p-research .research-list .item-cnt-scroll + p {
    margin-top: 15px;
  }
  .l-main .p-research .research-list .item.-item01 {
    left: 43px;
    top: 63px;
  }
  .l-main .p-research .research-list .item.-item01 .dot {
    right: -90px;
    top: 46px;
  }
  .l-main .p-research .research-list .item.-item01 .item-btn {
    background-image: url(../images/research_box01.png);
    padding-left: 150px;
  }
  .l-main .p-research .research-list .item.-item01 .item-cnt {
    height: 374px;
    margin-left: -40px;
  }
  .l-main .p-research .research-list .item.-item01 .item-cnt::after {
    background-image: url(../images/research_item01_frame.png);
  }
  .l-main .p-research .research-list .item.-item01 .item-cnt .inn img {
    width: 448px;
    margin-left: -115px;
    position: relative;
  }
  .l-main .p-research .research-list .item.-item02 {
    left: 43px;
    top: 527px;
  }
  .l-main .p-research .research-list .item.-item02 .dot {
    right: -90px;
    top: 46px;
  }
  .l-main .p-research .research-list .item.-item02 .item-cnt {
    margin-left: -40px;
    height: 267px;
    padding-right: 30px;
  }
  .l-main .p-research .research-list .item.-item02 .item-cnt::after {
    background-image: url(../images/research_item02_frame.png);
  }
  .l-main .p-research .research-list .item.-item03 {
    left: 620px;
    top: -53px;
  }
  .l-main .p-research .research-list .item.-item03 .dot {
    left: -120px;
    top: 36px;
  }
  .l-main .p-research .research-list .item.-item03 .item-btn {
    height: 54px;
    background-image: url(../images/research_box01-b.png);
    padding-left: 150px;
  }
  .l-main .p-research .research-list .item.-item03 .item-cnt {
    height: 236px;
    margin-left: 40px;
  }
  .l-main .p-research .research-list .item.-item03 .item-cnt::after {
    background-image: url(../images/research_item03_frame.png);
  }
  .l-main .p-research .research-list .item.-item04 {
    left: 620px;
    top: 225px;
  }
  .l-main .p-research .research-list .item.-item04 .dot {
    left: -120px;
    top: 45px;
  }
  .l-main .p-research .research-list .item.-item04 .item-cnt {
    height: 236px;
    margin-left: 40px;
  }
  .l-main .p-research .research-list .item.-item04 .item-cnt::after {
    background-image: url(../images/research_item04_frame.png);
  }
  .l-main .p-research .research-list .item.-item05 {
    left: 620px;
    top: 530px;
  }
  .l-main .p-research .research-list .item.-item05 .dot {
    left: -120px;
    top: 45px;
  }
  .l-main .p-research .research-list .item.-item05 .item-btn {
    background-image: url(../images/research_box01.png);
    padding-left: 150px;
  }
  .l-main .p-research .research-list .item.-item05 .item-cnt {
    height: 374px;
    margin-left: 40px;
  }
  .l-main .p-research .research-list .item.-item05 .item-cnt::after {
    background-image: url(../images/research_item05_frame.png);
  }
  .l-main .p-research .research-list .item.-item05 .item-cnt .inn img {
    width: 317px;
  }
  .l-main .p-research .research .m-accnt {
    opacity: 0;
    visibility: hidden;
    transition: 0.3s opacity;
  }
}
.l-main .p-product {
  padding: 154px 0 142px;
  position: relative;
  background: #fff;
}
@media screen and (max-width: 640px) {
  .l-main .p-product {
    padding: 13.9322916667vw 0 16.2760416667vw;
  }
}
.l-main .p-product #product {
  position: absolute;
  top: -100px;
}
@media screen and (max-width: 640px) {
  .l-main .p-product #product {
    top: -18vw;
  }
}
@media screen and (max-width: 640px) {
  .l-main .p-product .l-content-inner {
    padding: 0;
  }
}
.l-main .p-product-box {
  display: flex;
  justify-content: space-between;
  margin-inline: auto;
  width: 762px;
}
@media screen and (max-width: 640px) {
  .l-main .p-product-box {
    display: block;
    width: 100%;
  }
}
.l-main .p-product-img {
  width: 286px;
}
@media screen and (max-width: 640px) {
  .l-main .p-product-img {
    margin-inline: auto;
    width: 52.2135416667vw;
  }
}
.l-main .p-product-img img {
  width: 100%;
}
.l-main .p-product-cnt {
  padding-top: 87px;
  width: 400px;
}
@media screen and (max-width: 640px) {
  .l-main .p-product-cnt {
    margin-top: -1.8229166667vw;
    padding: 0;
    width: 100%;
  }
}
@media screen and (max-width: 640px) {
  .l-main .p-product-ttl {
    margin-inline: auto;
    width: 78.125vw;
  }
}
.l-main .p-product-info {
  font-feature-settings: "palt";
  margin-top: 47px;
}
@media screen and (max-width: 640px) {
  .l-main .p-product-info {
    margin-top: 5.859375vw;
  }
}
.l-main .p-product-txt01 {
  font-size: 1.4rem;
  line-height: 1.4285714286;
  letter-spacing: 0.045em;
}
@media screen and (max-width: 640px) {
  .l-main .p-product-txt01 {
    font-size: 2.8645833333vw;
    line-height: 1.4545454545;
    text-align: center;
  }
}
.l-main .p-product-txt02 {
  font-size: 0;
}
@media screen and (max-width: 640px) {
  .l-main .p-product-txt02 {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
}
.l-main .p-product-txt02 a {
  font-size: 1.6rem;
  line-height: 1.5;
  letter-spacing: 0.015em;
  text-decoration: underline;
  display: inline;
  margin-right: 7px;
}
@media screen and (max-width: 640px) {
  .l-main .p-product-txt02 a {
    font-size: 3.125vw;
    line-height: 1.6666666667;
    letter-spacing: 0;
    text-align: center;
    order: 0;
    margin: 0;
  }
}
.l-main .p-product-icon {
  font-size: 1.2rem;
  line-height: 1;
  display: inline-block;
  padding: 3px 2px;
  border: 1px solid #595757;
}
@media screen and (max-width: 640px) {
  .l-main .p-product-icon {
    font-size: 2.8645833333vw;
    order: 2;
    margin-top: 1.5625vw;
    padding: 0.6510416667vw 1.3020833333vw 0.78125vw;
    border-width: 0.1302083333vw;
  }
}
.l-main .p-product-txt03 {
  font-size: 1.4rem;
  line-height: 1.7142857143;
  letter-spacing: 0.045em;
}
@media screen and (max-width: 640px) {
  .l-main .p-product-txt03 {
    font-size: 2.8645833333vw;
    line-height: 1.7272727273;
    letter-spacing: 0;
    order: 1;
  }
}
.l-main .p-product-price {
  font-size: 1.2rem;
  line-height: 1.5;
  letter-spacing: 0.005em;
  margin-top: 4px;
}
@media screen and (max-width: 640px) {
  .l-main .p-product-price {
    font-size: 2.8645833333vw;
    line-height: 1.7272727273;
    letter-spacing: 0;
    text-align: center;
  }
}
.l-main .p-product-list {
  display: flex;
  justify-content: space-between;
  margin: -12px auto 0;
  width: 762px;
}
@media screen and (max-width: 640px) {
  .l-main .p-product-list {
    display: block;
    margin-top: 15.234375vw;
    width: 90.1041666667vw;
  }
}
.l-main .p-product-list-item {
  position: relative;
  padding: 20px;
  width: 366px;
}
@media screen and (max-width: 640px) {
  .l-main .p-product-list-item {
    padding: 5.46875vw 5.9895833333vw 4.1666666667vw;
    width: 100%;
  }
  .l-main .p-product-list-item:nth-child(n+2) {
    margin-top: 4.9479166667vw;
  }
}
.l-main .p-product-list-item::before, .l-main .p-product-list-item::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  pointer-events: none;
}
.l-main .p-product-list-item::before {
  height: 100%;
  border-width: 1px 0 1px 1px;
  border-style: solid;
  border-color: #b2e7db;
}
.l-main .p-product-list-item::after {
  height: calc(100% - 10px);
  border-right: 1px solid #b2e7db;
}
@media screen and (max-width: 640px) {
  .l-main .p-product-list-item::after {
    height: calc(100% - 2.6041666667vw);
  }
}
.l-main .p-product-list-ttl {
  line-height: 1;
  position: absolute;
  top: -8px;
  left: 10px;
  z-index: 1;
  padding-inline: 12px;
  background: #fff;
}
@media screen and (max-width: 640px) {
  .l-main .p-product-list-ttl {
    top: -1.953125vw;
    left: 2.6041666667vw;
    padding-inline: 2.6041666667vw;
  }
}
.l-main .p-product-list-ttl img {
  display: block;
}
.l-main .p-product-list-ttl.-texture img {
  width: 66px;
}
@media screen and (max-width: 640px) {
  .l-main .p-product-list-ttl.-texture img {
    width: 16.2760416667vw;
  }
}
.l-main .p-product-list-ttl.-scent img {
  width: 48px;
}
@media screen and (max-width: 640px) {
  .l-main .p-product-list-ttl.-scent img {
    width: 11.5885416667vw;
  }
}
.l-main .p-product-list-sttl {
  font-size: 1.8rem;
  line-height: 1.2222222222;
  letter-spacing: 0.075em;
  text-indent: 0.075em;
  margin-inline: auto;
  padding-bottom: 5px;
  width: fit-content;
  border-bottom: 1px solid #00b087;
}
@media screen and (max-width: 640px) {
  .l-main .p-product-list-sttl {
    font-size: 4.4270833333vw;
    line-height: 1.2352941176;
    padding-bottom: 0.6510416667vw;
  }
}
.l-main .p-product-list-txt {
  font-feature-settings: "palt";
  font-size: 1.2rem;
  line-height: 1.6666666667;
  letter-spacing: 0.01em;
  margin-top: 16px;
}
@media screen and (max-width: 640px) {
  .l-main .p-product-list-txt {
    font-size: 3.2552083333vw;
    line-height: 1.84;
    letter-spacing: -0.06em;
    margin-top: 3.3854166667vw;
  }
}
.l-main .p-product-use {
  margin: 63px auto 0;
  width: 762px;
}
@media screen and (max-width: 640px) {
  .l-main .p-product-use {
    margin-top: 14.1927083333vw;
    width: 100%;
  }
}
.l-main .p-product-use__ttl {
  line-height: 1;
}
@media screen and (max-width: 640px) {
  .l-main .p-product-use__ttl {
    margin-inline: auto;
    width: 43.2291666667vw;
  }
}
.l-main .p-product-use-list {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-top: 46px;
}
@media screen and (max-width: 640px) {
  .l-main .p-product-use-list {
    flex-wrap: wrap;
    justify-content: center;
    gap: 10.4166666667vw 0;
    margin-top: 5.7291666667vw;
  }
}
.l-main .p-product-use-list__item {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 0 0;
  width: 50%;
}
@media screen and (max-width: 640px) {
  .l-main .p-product-use-list__item {
    gap: 3.90625vw 0;
    width: 48%;
  }
}
.l-main .p-product-use-list__img {
  display: flex;
  align-items: flex-end;
  margin: 0;
  width: 100%;
}
@media screen and (max-width: 640px) {
  .l-main .p-product-use-list__img {
    height: 32.5520833333vw;
  }
}
.l-main .p-product-use-list__img.-img01 {
  position: relative;
  top: 33px;
  margin-top: -37px;
  padding: 0 29px 0 15px;
  height: 232px;
}
@media screen and (max-width: 640px) {
  .l-main .p-product-use-list__img.-img01 {
    padding: 0 6.9010416667vw 3.125vw 2.734375vw;
    height: 48.5677083333vw;
    margin-bottom: -4.4270833333vw;
  }
}
.l-main .p-product-use-list__img.-img02 {
  padding: 0 14px 0 45px;
  height: 195px;
}
@media screen and (max-width: 640px) {
  .l-main .p-product-use-list__img.-img02 {
    padding: 0 6.3802083333vw 0 2.734375vw;
    height: 40.234375vw;
    margin-bottom: -4.4270833333vw;
  }
}
.l-main .p-product-use-list__img img {
  max-width: inherit;
  width: auto;
  height: 100%;
  margin: 0 auto;
}
.l-main .p-product-use-list__num {
  padding-top: 4.5px;
}
@media screen and (max-width: 640px) {
  .l-main .p-product-use-list__num {
    padding-top: 0.9765625vw;
  }
}
.l-main .p-product-use-list__num.-num01 {
  padding-left: 8px;
  width: 44px;
}
.l-main .p-product-use-list__num.-num01 + .p-product-use-list__box {
  padding-right: 45px;
  width: calc(100% - 44px);
}
@media screen and (max-width: 640px) {
  .l-main .p-product-use-list__num.-num01 {
    padding-left: 4.5572916667vw;
    width: 11.71875vw;
  }
  .l-main .p-product-use-list__num.-num01 + .p-product-use-list__box {
    padding-right: 7.03125vw;
    width: calc(100% - 11.71875vw);
  }
}
.l-main .p-product-use-list__num.-num02 {
  padding-left: 17px;
  width: 57px;
}
.l-main .p-product-use-list__num.-num02 + .p-product-use-list__box {
  padding-right: 37px;
  width: calc(100% - 57px);
}
@media screen and (max-width: 640px) {
  .l-main .p-product-use-list__num.-num02 {
    padding-left: 0.6510416667vw;
    width: 8.984375vw;
  }
  .l-main .p-product-use-list__num.-num02 + .p-product-use-list__box {
    padding-right: 9.6354166667vw;
    width: calc(100% - 8.984375vw);
  }
}
.l-main .p-product-use-list__num svg {
  display: block;
  fill: #00b087;
}
.l-main .p-product-use-list__num [aria-label="1"] {
  width: 18px;
}
@media screen and (max-width: 640px) {
  .l-main .p-product-use-list__num [aria-label="1"] {
    width: 3.7760416667vw;
  }
}
.l-main .p-product-use-list__num [aria-label="2"] {
  width: 25px;
}
@media screen and (max-width: 640px) {
  .l-main .p-product-use-list__num [aria-label="2"] {
    width: 5.3385416667vw;
  }
}
.l-main .p-product-use-list__sttl, .l-main .p-product-use-list__txt {
  font-feature-settings: "palt";
  font-size: 1.4rem;
  line-height: 1.6428571429;
  letter-spacing: 0.13em;
  color: #00b087;
  text-align: justify;
}
@media screen and (max-width: 640px) {
  .l-main .p-product-use-list__sttl, .l-main .p-product-use-list__txt {
    font-size: 2.8645833333vw;
    line-height: 1.6818181818;
    letter-spacing: 0.07em;
  }
}
.l-main .p-product-use-list__sttl {
  text-decoration: underline;
  text-underline-offset: 2px;
}
.l-main .p-product-wrap {
  position: relative;
  width: 940px;
  margin: 0 auto;
}
@media screen and (max-width: 640px) {
  .l-main .p-product-wrap {
    width: auto;
    padding-bottom: 2.5em;
  }
}
.l-main .p-product-wrap .p-product-sample {
  position: absolute;
  bottom: 5em;
  right: 0;
  line-height: 1;
}
@media screen and (max-width: 640px) {
  .l-main .p-product-wrap .p-product-sample {
    bottom: 0;
  }
}
.l-main .p-product-wrap .p-product-sample a {
  display: inline-block;
  color: #ff0000;
  border-bottom: 1px solid #ff0000;
  line-height: 1;
  padding: 0 0 0.3em;
}

.l-main .p-lets {
  padding: 150px 0 140px;
  background: #fff;
}

@media screen and (max-width: 640px) {
  .l-main .p-lets {
    padding: 19.53125vw 0 28vw;
  }
}
.l-main .p-lets-flex {
  display: flex;
  justify-content: center;
  gap: 0 4rem;
}

@media screen and (max-width: 640px) {
  .l-main .p-lets-flex {
    flex-wrap: wrap;
    gap: 0 0;
  }
}
.l-main .p-lets-box {
  position: relative;
  width: calc((100% - 4rem) / 2);
  max-width: 460px;
  aspect-ratio: 440/180;
  background: url("../images/line_bnr.png") no-repeat 10px 10px;
  background-size: 440px 170px;
}

@media screen and (max-width: 640px) {
  .l-main .p-lets-box {
    position: relative;
    width: 74.21875vw;
    aspect-ratio: 570/250;
    background-size: calc(100% - 20px) calc(100% - 20px);
  }
}
.l-main .p-lets-box a {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  padding: 10px;
}

@media screen and (max-width: 640px) {
  .l-main .p-lets-box {
    width: 100%;
  }
}
.l-main .p-lets-box.-box1 {
  background-color: rgba(0, 164, 132, 0.15);
}

.l-main .p-lets-box.-box2 {
  background-color: rgba(146, 146, 146, 0.15);
}

@media screen and (max-width: 640px) {
  .l-main .p-lets-box.-box2 {
    margin-top: 11.71875vw;
  }
}
.l-main .p-lets-ttl {
  text-align: center;
  margin-bottom: 20px;
  line-height: 1.7272727273;
  font-size: 2.2rem;
  letter-spacing: 0.07em;
  color: #00a484;
}

@media screen and (max-width: 640px) {
  .l-main .p-lets-ttl {
    margin-bottom: 2.6041666667vw;
    line-height: 1.1764705882;
    font-size: 4.474vw;
    letter-spacing: 0.11em;
  }
}
.l-main .p-lets-txt {
  text-align: center;
  color: #595757;
  line-height: 1.4375;
  letter-spacing: 0.1em;
}

@media screen and (max-width: 640px) {
  .l-main .p-lets-txt {
    font-size: 3.3854166667vw;
    line-height: 1.9230769231;
  }
}
.p-loading {
  background-color: #ffffff;
  width: 100%;
  position: fixed;
  left: 0;
  top: 0;
  z-index: 10005;
}

@media print, screen and (min-width: 641px) {
  .p-loading {
    min-height: 100vh;
  }
}
@media screen and (max-width: 640px) {
  .p-loading {
    height: 100vh;
    max-height: 100vh;
  }
}
.p-loading .l-content-inner {
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

@media screen and (max-width: 640px) {
  .p-loading .l-content-inner {
    padding-bottom: 25.390625vw;
  }
}
.p-loading .box {
  opacity: 0;
  -webkit-animation: timerfade 1s 1s ease forwards;
  animation: timerfade 1s 1s ease forwards;
}

.p-loading .box .bottle {
  width: 59.87px;
  height: 212.89px;
  position: relative;
  margin: auto auto 0;
}

.p-loading .box .bottle::after {
  content: "";
  width: 66px;
  height: 219px;
  background-image: url(../images/loading_bottle_frame.svg);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translateX(-50%) translateY(-50%);
  z-index: 1;
  display: block;
}

@media screen and (max-width: 640px) {
  .p-loading .box .bottle {
    transform: scale(0.8);
  }
}
.p-loading .box .bottle-out {
  position: absolute;
  left: 0;
  top: 0;
}

.p-loading .box .bottle-wave {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}

.p-loading .box .bottle-wave .wave-img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.p-loading .box .bottle-wave .wave-img .green {
  fill: #c6e8df;
  display: none;
  -webkit-animation: wave 5s cubic-bezier(0.55, 0.5, 0.45, 0.5) infinite;
  animation: wave 5s cubic-bezier(0.55, 0.5, 0.45, 0.5) infinite;
}

.p-loading .box .bottle-wave .wave-img .white {
  fill: #ffffff;
}

.p-loading.week01 .bottle-wave .wave-img .week01 {
  display: block;
}

.p-loading.week02 .bottle-wave .wave-img .week02 {
  display: block;
}

.p-loading.week03 .bottle-wave .wave-img .week03 {
  display: block;
}

.p-loading.week04 .bottle-wave .wave-img .week04 {
  display: block;
}

.p-loading.week05 .bottle-wave .wave-img .week05 {
  display: block;
}

.p-loading.week06 .bottle-wave .wave-img .week06 {
  display: block;
}

.p-loading.week07 .bottle-wave .wave-img .week07 {
  display: block;
}

.p-loading.end .bottle-wave .wave-img .end {
  display: block;
  -webkit-animation: none;
  animation: none;
}

.p-loading.end .timer {
  padding: 0;
}

.p-loading.end .timer-ttl {
  padding: 0;
}

.p-loading.end .timer-ato,
.p-loading.end .timer-main {
  display: none;
}

.timer {
  padding-right: 30px;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 50px;
  z-index: 1;
}

@media screen and (max-width: 640px) {
  .timer {
    padding-right: 4.5572916667vw;
    bottom: 6.5104166667vw;
  }
}
.timer-ttl {
  display: flex;
  justify-content: center;
  margin-bottom: 19px;
  padding-left: 35px;
}

@media screen and (max-width: 640px) {
  .timer-ttl {
    margin-bottom: 4.5572916667vw;
    padding-left: 6.5104166667vw;
  }
  .timer-ttl img {
    width: 36.0677083333vw;
  }
}
.timer-box {
  display: flex;
  color: #00a484;
  justify-content: center;
  align-items: center;
}

.timer-ato {
  display: flex;
  align-items: center;
  margin-right: 20px;
  position: relative;
  top: -9px;
}

@media screen and (max-width: 640px) {
  .timer-ato {
    margin-right: 4.5572916667vw;
    top: -1.3020833333vw;
    width: 7.03125vw;
  }
}
.timer-main {
  display: flex;
  line-height: 1;
  font-size: 5.4rem;
  height: 73px;
}

@media screen and (max-width: 640px) {
  .timer-main {
    height: 14.0625vw;
    font-size: 10.546875vw;
  }
}
.timer-main-inn {
  height: 100%;
  display: flex;
}

.timer-item {
  margin-right: 25px;
  padding-bottom: 18px;
  width: 80px;
  text-align: center;
  position: relative;
}

@media screen and (max-width: 640px) {
  .timer-item {
    margin-right: 5.859375vw;
    padding-bottom: 3.2552083333vw;
    width: 14.3229166667vw;
  }
}
.timer-item:last-of-type {
  margin-right: 0;
}

.timer-item::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 23px;
  background-repeat: no-repeat;
  background-position: center bottom;
}

@media screen and (max-width: 640px) {
  .timer-item::after {
    height: 4.5572916667vw;
  }
}
.timer-item.timer-days::after {
  bottom: -7px;
  background-image: url(../images/loading_days.svg);
}

@media screen and (max-width: 640px) {
  .timer-item.timer-days::after {
    bottom: -1.3020833333vw;
    background-size: 7.8125vw;
  }
}
.timer-item.timer-hours::after {
  background-image: url(../images/loading_hours.svg);
}

@media screen and (max-width: 640px) {
  .timer-item.timer-hours::after {
    background-size: 9.765625vw;
  }
}
.timer-item.timer-minutes::after {
  background-image: url(../images/loading_minutes.svg);
}

@media screen and (max-width: 640px) {
  .timer-item.timer-minutes::after {
    background-size: 13.9322916667vw;
  }
}
.timer .none {
  display: none;
}

@-webkit-keyframes timerfade {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes timerfade {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes wave {
  0% {
    transform: translate3d(-70px, 0, 0);
  }
  100% {
    transform: translate3d(-250px, 0, 0);
  }
}
@keyframes wave {
  0% {
    transform: translate3d(-70px, 0, 0);
  }
  100% {
    transform: translate3d(-250px, 0, 0);
  }
}
.gecko .p-loading .box .bottle::after,
.safari .p-loading .box .bottle::after {
  top: 49%;
}

.m-underline {
  border-bottom: 1px solid #008bcf;
}

/* ----------------------------------------------------------------------------------------------------
*	アンカーリンク
* --------------------------------------------------------------------------------------------------*/
.page-nav-wrapper {
  top: 30px;
  left: 0;
  right: 0;
  margin: 0 auto;
  position: absolute;
}

@media screen and (max-width: 640px) {
  .page-nav-wrapper {
    position: fixed;
    display: flex;
    align-items: flex-end;
    margin-left: 0;
    justify-content: flex-start;
    top: auto;
    bottom: 20vw;
    z-index: 4;
    transition: 0.3s;
    pointer-events: none;
    transform: translateX(-59.1145833333vw);
    opacity: 0;
  }
  .page-nav-wrapper.is-active {
    opacity: 1;
  }
  .page-nav-wrapper.is-open {
    transform: translateX(0);
  }
}
.page-nav-tab {
  display: none;
}

@media screen and (max-width: 640px) {
  .page-nav-tab {
    display: block;
    width: 8.0729166667vw;
    height: 39.0625vw;
    position: relative;
    left: -1px;
    border-radius: 0 5px 5px 0;
    border: 1px solid #00A484;
    border-left: none;
    z-index: 2;
    background: url(../images/tab_line.svg) #EDF9F6 no-repeat center center/2.9947916667vw auto;
    pointer-events: auto;
  }
  .page-nav-tab.is-tab-open {
    background-image: url(../images/tab_line_rev.svg);
  }
}
.page-navigation {
  height: 50px;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  box-sizing: border-box;
  z-index: 2;
  background-color: #fff;
}

@media screen and (max-width: 640px) {
  .page-navigation {
    width: 59.1145833333vw;
    position: relative;
    top: auto;
    right: auto;
    height: auto;
    border-radius: 0 5px 0 0;
    border: 1px solid #00A484;
    border-left: none;
    margin-left: 0;
    margin-right: 0;
  }
}
.page-navigation.is-fixed {
  position: fixed;
  top: 80px;
}

@media screen and (max-width: 640px) {
  .page-navigation.is-fixed {
    position: relative;
    top: auto;
  }
}
.page-navigation.is-fixed .page-nav__link::after {
  display: none;
}

@media screen and (max-width: 640px) {
  .page-navigation.is-fixed .page-nav__link::after {
    display: block;
  }
}
.page-nav__list {
  display: flex;
  justify-content: center;
}

@media screen and (max-width: 640px) {
  .page-nav__list {
    flex-direction: column;
    padding-left: 1.3020833333vw;
    padding-right: 1.3020833333vw;
  }
}
.page-nav__item {
  position: relative;
}
.page-nav__item:last-of-type::after {
  display: none;
}

@media screen and (max-width: 640px) {
  .page-nav__item {
    border-bottom: 1px solid #00A484;
  }
  .page-nav__item:last-of-type {
    border: none;
  }
}
.page-nav__item::after {
  content: "";
  position: absolute;
  right: 0;
  top: 8px;
  height: 33px;
  background-color: #00A484;
  width: 1px;
}

@media screen and (max-width: 640px) {
  .page-nav__item::after {
    display: none;
  }
}
.page-nav__link {
  font-size: 1.6rem;
  position: relative;
  padding: 15px;
  display: block;
  box-sizing: border-box;
  height: 50px;
  line-height: 1;
  pointer-events: auto;
}

.page-nav__link-hasicon {
  padding-left: 46px;
}
@media screen and (max-width: 640px) {
  .page-nav__link-hasicon {
    padding-left: 9vw;
  }
}

@media screen and (max-width: 640px) {
  .page-nav__link {
    font-size: 3.3854166667vw;
    height: auto;
    padding-top: 5.859375vw;
    padding-bottom: 5.859375vw;
  }
}
.page-nav__link::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -5px;
  width: 8px;
  height: 8px;
  border-bottom: 1px solid #00A484;
  border-right: 1px solid #00A484;
  transform: rotate(45deg) translateX(-50%);
}

@media screen and (max-width: 640px) {
  .page-nav__link::after {
    left: auto;
    right: 2.6041666667vw;
    top: 50%;
    transform: translateY(-50%) rotate(315deg);
    width: 8px;
    height: 8px;
    z-index: 2;
    bottom: 0;
  }
}
.page-nav__link .icon {
  width: 20px;
  height: auto;
  display: inline-block;
  position: absolute;
  top: 47%;
  left: 18px;
  transform: translateY(-50%);
}

@media screen and (max-width: 640px) {
  .page-nav__link .icon {
    left: 2vw;
    top: 50%;
    width: 5.6875vw;
    margin-right: 1.3020833333vw;
  }
}
/* ----------------------------------------------------------------------------------------------------
*	ポップアップ
* --------------------------------------------------------------------------------------------------*/
.p-popup {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1000;
  display: flex;
  width: 100vw;
  height: 100%;
  background: rgba(0, 0, 0, 0.4);
  overflow-y: scroll;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s;
}
.p-popup.is-show {
  opacity: 1;
  pointer-events: all;
}
.p-popup.is-show .p-popup-box {
  pointer-events: all;
}
.p-popup-bg {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  display: block;
  padding: 0;
  width: 100%;
  height: 100%;
  border: none;
  background: none;
  cursor: pointer;
}
.p-popup-inner {
  position: relative;
  margin: auto;
  padding: 50px 0;
  width: 1050px;
  pointer-events: none;
}
@media screen and (max-width: 640px) {
  .p-popup-inner {
    padding: 7.8125vw 0;
    width: 84.375vw;
  }
}
.p-popup-inner::before, .p-popup-inner::after {
  content: "";
  display: block;
  position: absolute;
  right: -6px;
  bottom: 15px;
  width: 43px;
  height: 1px;
  background: #fff;
  transform: rotate(45deg);
  pointer-events: none;
}
@media screen and (max-width: 640px) {
  .p-popup-inner::before, .p-popup-inner::after {
    right: -0.78125vw;
    bottom: 0.9114583333vw;
    width: 5.7291666667vw;
    height: 0.2604166667vw;
  }
}
.p-popup-inner::after {
  transform: rotate(-45deg);
}
.p-popup-box {
  position: relative;
  padding: 57px 80px 60px;
  background: #fff;
}
@media screen and (max-width: 640px) {
  .p-popup-box {
    padding: 8.984375vw 4.296875vw 9.8958333333vw;
  }
}
.p-popup-box::before, .p-popup-box::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 20px;
  background: #eb4b85;
}
@media screen and (max-width: 640px) {
  .p-popup-box::before, .p-popup-box::after {
    height: 3.90625vw;
  }
}
.p-popup-box::before {
  top: 0;
}
.p-popup-box::after {
  bottom: 0;
}
.p-popup-dec {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}
@media screen and (max-width: 640px) {
  .p-popup-dec {
    top: 3.90625vw;
  }
}
.p-popup-label {
  position: absolute;
  top: -50px;
  left: -53px;
  z-index: 1;
  width: 156px;
}
@media screen and (max-width: 640px) {
  .p-popup-label {
    top: -6.5104166667vw;
    left: -5.7291666667vw;
    width: 20.3125vw;
  }
}
.p-popup .p-popup-ttl {
  margin-inline: auto;
  width: 464px;
}
@media screen and (max-width: 640px) {
  .p-popup .p-popup-ttl {
    width: 53.2552083333vw;
  }
}
.p-popup-list {
  display: flex;
  margin-top: 30px;
}
@media screen and (max-width: 640px) {
  .p-popup-list {
    display: block;
    margin-top: 5.7291666667vw;
  }
}
.p-popup-list-item {
  display: flex;
  align-items: flex-end;
}
@media screen and (max-width: 640px) {
  .p-popup-list-item {
    align-items: flex-start;
  }
}
.p-popup-list-item.-item01 {
  width: 502px;
}
@media screen and (max-width: 640px) {
  .p-popup-list-item.-item01 {
    width: 100%;
  }
}
.p-popup-list-item.-item02 {
  width: calc(100% - 502px);
}
@media screen and (max-width: 640px) {
  .p-popup-list-item.-item02 {
    margin-top: 9.1145833333vw;
    width: 100%;
  }
}
.p-popup-list-img.-img01 {
  width: 174px;
}
.p-popup-list-img.-img01 + .p-popup-list-box {
  padding-left: 29px;
  width: calc(100% - 174px);
}
@media screen and (max-width: 640px) {
  .p-popup-list-img.-img01 {
    width: 31.9010416667vw;
  }
  .p-popup-list-img.-img01 + .p-popup-list-box {
    padding-left: 2.734375vw;
    width: calc(100% - 31.9010416667vw);
  }
}
.p-popup-list-img.-img02 {
  width: 113px;
}
.p-popup-list-img.-img02 + .p-popup-list-box {
  padding-left: 21px;
  width: calc(100% - 113px);
}
@media screen and (max-width: 640px) {
  .p-popup-list-img.-img02 {
    padding-left: 6.5104166667vw;
    width: 25.390625vw;
  }
  .p-popup-list-img.-img02 + .p-popup-list-box {
    padding-left: 4.296875vw;
    width: calc(100% - 25.390625vw);
  }
}
.p-popup-list-ttl.-ttl01 {
  width: 167px;
}
@media screen and (max-width: 640px) {
  .p-popup-list-ttl.-ttl01 {
    width: 30.078125vw;
  }
}
.p-popup-list-ttl.-ttl02 {
  width: 197px;
}
@media screen and (max-width: 640px) {
  .p-popup-list-ttl.-ttl02 {
    width: 35.546875vw;
  }
}
.p-popup-list-info {
  font-feature-settings: "palt";
  margin-top: 15px;
}
@media screen and (max-width: 640px) {
  .p-popup-list-info {
    margin-top: 2.734375vw;
  }
}
.p-popup-list-txt01 {
  font-size: 1.4rem;
  line-height: 1.4285714286;
  letter-spacing: 0.045em;
}
@media screen and (max-width: 640px) {
  .p-popup-list-txt01 {
    font-size: 2.8645833333vw;
    line-height: 1.4545454545;
  }
}
.p-popup-list-txt02 {
  font-size: 0;
}
.p-popup-list-txt02 a {
  font-size: 1.6rem;
  line-height: 1.5;
  text-decoration: underline;
  display: inline;
  margin-right: 7px;
}
@media screen and (max-width: 640px) {
  .p-popup-list-txt02 a {
    font-size: 3.125vw;
    line-height: 1.5;
    margin-right: 2.734375vw;
  }
}
.p-popup-list-icon {
  font-size: 1.2rem;
  line-height: 1;
  display: inline-block;
  padding: 3px 2px;
  border: 1px solid #595757;
}
@media screen and (max-width: 640px) {
  .p-popup-list-icon {
    font-size: 2.34375vw;
    padding: 0.2604166667vw 0.2604166667vw 0.390625vw;
    border-width: 0.1302083333vw;
  }
}
.p-popup-list-txt03 {
  font-size: 1.4rem;
  line-height: 1.7142857143;
  letter-spacing: 0.045em;
}
@media screen and (max-width: 640px) {
  .p-popup-list-txt03 {
    font-size: 2.8645833333vw;
    line-height: 1.8181818182;
    letter-spacing: 0;
  }
}
.p-popup-list-price {
  font-size: 1.2rem;
  line-height: 1.5;
  letter-spacing: 0.005em;
  margin-top: 4px;
}
@media screen and (min-width: 641px) {
  .p-popup-list-price.-price01 {
    margin-top: 24px;
  }
}
@media screen and (max-width: 640px) {
  .p-popup-list-price {
    font-size: 2.8645833333vw;
    line-height: 1.7272727273;
    letter-spacing: 0;
    margin-top: 0;
  }
}
.p-popup-dlist {
  margin-top: 17px;
}
@media screen and (max-width: 640px) {
  .p-popup-dlist {
    display: none;
  }
}
.p-popup-dlist-term {
  font-size: 1rem;
  line-height: 1.8;
  letter-spacing: 0.025em;
}
.p-popup-dlist-des-txt {
  font-size: 1rem;
  line-height: 1.4;
  letter-spacing: 0.025em;
}
.p-popup-dlist-des-icon {
  font-size: 0.7rem;
  line-height: 1;
  letter-spacing: 0.045em;
  display: inline-block;
  position: relative;
  bottom: 1px;
  margin-left: 5px;
  padding: 2px;
  border: 1px solid #595757;
}
.p-popup-note {
  font-feature-settings: "palt";
  font-size: 1rem;
  line-height: 1.4;
  text-align: right;
  margin-top: 36px;
}
@media screen and (max-width: 640px) {
  .p-popup-note {
    font-size: 2.6041666667vw;
    line-height: 1.3;
    text-align: center;
    margin-top: 6.1197916667vw;
  }
}
.p-popup-btn {
  display: block;
  position: fixed;
  right: 0;
  bottom: 10px;
  z-index: 10;
  padding: 0;
  width: 221px;
  border: none;
  background: none;
  filter: drop-shadow(5px 5px 5px rgba(0, 0, 0, 0.3));
  cursor: pointer;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s;
}
@media (hover: hover) and (pointer: fine) {
  .p-popup-btn {
    transition: opacity 0.3s;
  }
  .p-popup-btn:hover {
    opacity: 0.7;
  }
}
@media screen and (max-width: 640px) {
  .p-popup-btn {
    right: 50%;
    bottom: 1.0416666667vw;
    width: 94.7916666667vw;
    transform: translateX(50%);
    filter: drop-shadow(0.5208333333vw 0.5208333333vw 0.5208333333vw rgba(0, 0, 0, 0.3));
  }
}
.p-popup-btn.is-show {
  opacity: 1;
  pointer-events: all;
}
.p-popup-btn.is-show.is-hide {
  opacity: 0;
  pointer-events: none;
}

/* ----------------------------------------------------------------------------------------------------
*	7つの頼もしさ
* --------------------------------------------------------------------------------------------------*/
.bg-sevens {
  position: relative;
  padding-top: 110px;
}
.bg-sevens::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 110px;
  background: #fff;
}
@media screen and (max-width: 640px) {
  .bg-sevens::before {
    display: none;
  }
}
@media screen and (max-width: 640px) {
  .bg-sevens {
    padding-top: 0;
  }
}

.p-topics {
  position: relative;
  padding: 68px 0 150px;
  background: #fff;
}
@media screen and (max-width: 640px) {
  .p-topics {
    padding: 14.5833333333vw 0 13.0208333333vw;
  }
}
.p-topics #topics {
  position: absolute;
  top: -100px;
}
@media screen and (max-width: 640px) {
  .p-topics #topics {
    top: -18vw;
  }
}
.p-topics .p-topics-ttl {
  position: relative;
  margin-inline: auto;
  width: 95px;
}
@media screen and (max-width: 640px) {
  .p-topics .p-topics-ttl {
    width: 19.921875vw;
  }
}
@media screen and (min-width: 641px) {
  .p-topics .p-topics-slider {
    display: flex;
    gap: 20px;
    margin: 30px auto 0;
    max-width: 1150px;
  }
}
@media screen and (max-width: 640px) {
  .p-topics .p-topics-slider {
    margin: 3.90625vw 0 0;
  }
}
@media screen and (min-width: 641px) {
  .p-topics .p-topics-slider-item {
    width: calc((100% - 20px) / 3);
  }
}
@media screen and (max-width: 640px) {
  .p-topics .p-topics-slider-item {
    margin-inline: 1.953125vw;
  }
}
.p-topics .p-topics-slider-link {
  display: block;
}
@media screen and (max-width: 640px) {
  .p-topics .p-topics-slider .slick-dots {
    display: flex !important;
    gap: 3.2552083333vw 6.5104166667vw;
    position: static;
    margin: 6.25vw auto 0;
    width: fit-content;
  }
  .p-topics .p-topics-slider .slick-dots li {
    margin: 0;
    width: 3.90625vw;
    height: 3.90625vw;
  }
  .p-topics .p-topics-slider .slick-dots li button {
    padding: 0;
    width: inherit;
    height: inherit;
    border-radius: 100%;
    background: #ccc;
  }
  .p-topics .p-topics-slider .slick-dots li button::before {
    display: none;
  }
  .p-topics .p-topics-slider .slick-dots li.slick-active button {
    background: #808080;
  }
}

#sevens-content {
  position: relative;
}

#sevens-content #sevens {
  position: absolute;
  top: -100px;
}

.p-sevens {
  position: relative;
  padding: 130px 0 60px;
}
@media screen and (max-width: 640px) {
  .p-sevens {
    padding: 14.0625vw 0 13.671875vw;
  }
}
.p-sevens::before {
  content: "";
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  background: url(../images/bg_sevens_pc.jpg) center center/cover no-repeat;
}
@media screen and (max-width: 640px) {
  .p-sevens::before {
    background: url(../images/bg_sevens_sp.jpg) center top/cover no-repeat;
  }
}
.p-sevens__inner {
  margin-inline: auto;
  width: 955px;
}
@media screen and (max-width: 640px) {
  .p-sevens__inner {
    width: 100%;
  }
}
.p-sevens .p-sevens__ttl {
  margin-inline: auto;
  width: 500px;
}
@media screen and (max-width: 640px) {
  .p-sevens .p-sevens__ttl {
    width: 85.9375vw;
  }
}
.p-sevens-list {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
  margin-top: 30px;
}
@media screen and (max-width: 640px) {
  .p-sevens-list {
    margin-top: 9.1145833333vw;
  }
}
.p-sevens-list__item {
  width: 230px;
  position: relative;
}
@media screen and (max-width: 640px) {
  .p-sevens-list__item {
    width: 45.3125vw;
  }
}
.p-sevens-list__item img {
  width: 100%;
}
.p-sevens-list__item .txt {
  color: #595757;
  font-size: 1.6rem;
  line-height: 1.4;
  position: absolute;
  left: 0;
  top: 47%;
  width: 100%;
  text-align: center;
  white-space: nowrap;
}
@media screen and (max-width: 640px) {
  .p-sevens-list__item .txt {
    font-size: 3.125vw;
  }
}
.p-sevens-list__item01 {
  margin: 0 0 0 20px;
  width: 275px;
}
@media screen and (max-width: 640px) {
  .p-sevens-list__item01 {
    margin-left: 0;
    width: 45.1822916667vw;
  }
}
.p-sevens-list__item02 {
  margin: 39px 10px 0;
  width: 255px;
}
@media screen and (max-width: 640px) {
  .p-sevens-list__item02 {
    margin: 0 0 0 2.8645833333vw;
    width: 45.1822916667vw;
  }
}
.p-sevens-list__item02 .txt {
  top: 43%;
}
.p-sevens-list__item03 {
  margin-right: 20px;
  width: 275px;
}
@media screen and (max-width: 640px) {
  .p-sevens-list__item03 {
    margin: -6.7708333333vw 13.0208333333vw 0;
    width: 45.1822916667vw;
  }
}
.p-sevens-list__item04 {
  margin-top: -20px;
  width: 200px;
}
@media screen and (max-width: 640px) {
  .p-sevens-list__item04 {
    margin-top: -1.953125vw;
    width: 36.4583333333vw;
  }
}
.p-sevens-list__item04 .txt {
  top: 45%;
}
.p-sevens-list__item05 {
  margin: 10px 0 0 15px;
  width: 240px;
}
@media screen and (max-width: 640px) {
  .p-sevens-list__item05 {
    margin: -3.7760416667vw 0 0 8.203125vw;
    width: 39.0625vw;
  }
}
.p-sevens-list__item05 .txt {
  top: 53%;
}
.p-sevens-list__item06 {
  margin: 7px 0 0 15px;
  width: 230px;
}
@media screen and (max-width: 640px) {
  .p-sevens-list__item06 {
    margin: 1.3020833333vw 0 0;
    width: 44.2708333333vw;
  }
}
.p-sevens-list__item06 .txt {
  top: 63%;
}
.p-sevens-list__item07 {
  margin: -20px 0 0 15px;
  width: 230px;
}
.p-sevens-list__item07 .txt {
  top: 43%;
}
@media screen and (max-width: 640px) {
  .p-sevens-list__item07 {
    margin: 0.9114583333vw 0 0 1.953125vw;
    width: 44.2708333333vw;
  }
  .p-sevens-list__item07 .txt {
    top: 45%;
  }
}
.p-sevens__notes {
  font-size: 1.6rem;
  line-height: 1.375;
  letter-spacing: 0.1em;
  text-indent: 0.1em;
  text-align: center;
  color: #E5E5E5;
  margin-top: 45px;
}
@media screen and (max-width: 640px) {
  .p-sevens__notes {
    font-size: 3.3854166667vw;
    line-height: 1;
    margin-top: 8.3333333333vw;
  }
}

/* ----------------------------------------------------------------------------------------------------
*	ハトムギへのこだわり
* --------------------------------------------------------------------------------------------------*/
#hatomugi-content {
  position: relative;
  padding: 120px 0 78px;
}
@media screen and (max-width: 640px) {
  #hatomugi-content {
    padding: 13.5416666667vw 0 15.3645833333vw;
  }
}
#hatomugi-content #hatomugi {
  position: absolute;
  top: -100px;
}
@media screen and (max-width: 640px) {
  #hatomugi-content #hatomugi {
    top: -18vw;
  }
}
#hatomugi-content .p-hatomugi__ttl {
  margin-inline: auto;
  width: 750px;
}
@media screen and (max-width: 640px) {
  #hatomugi-content .p-hatomugi__ttl {
    width: 67.7083333333vw;
  }
}
#hatomugi-content .p-support {
  margin-top: 48px;
}
@media screen and (max-width: 640px) {
  #hatomugi-content .p-support {
    margin-top: 8.7239583333vw;
  }
}
#hatomugi-content .p-support .ttl {
  font-weight: 500;
  font-size: 1.8rem;
  line-height: 1.1666666667;
  color: #fff;
  text-align: center;
}
@media screen and (max-width: 640px) {
  #hatomugi-content .p-support .ttl {
    font-size: 3.515625vw;
    line-height: 1.1851851852;
  }
}
#hatomugi-content .p-support__list {
  display: flex;
  justify-content: center;
  gap: 0 32px;
  margin-top: 22px;
}
@media screen and (max-width: 640px) {
  #hatomugi-content .p-support__list {
    gap: 0 6.25vw;
    margin-top: 3.125vw;
  }
}
#hatomugi-content .p-support__item {
  font-weight: 500;
  font-size: 1.8rem;
  line-height: 1.2222222222;
  color: #009877;
  text-align: center;
  padding: 2px 0 5px;
  width: 205px;
  border-radius: 100em;
  background: #CCEEE6;
}
@media screen and (max-width: 640px) {
  #hatomugi-content .p-support__item {
    font-size: 3.515625vw;
    line-height: 1.2222222222;
    padding: 0.390625vw 0 0.9114583333vw;
    width: 39.9739583333vw;
  }
}
#hatomugi-content .p-support__item sub {
  font-size: 1rem;
}
@media screen and (max-width: 640px) {
  #hatomugi-content .p-support__item sub {
    font-size: 2.6041666667vw;
  }
}
#hatomugi-content .p-support .note {
  font-size: 1rem;
  line-height: 1;
  color: #E5E5E5;
  text-align: center;
  margin-top: 11px;
}
@media screen and (max-width: 640px) {
  #hatomugi-content .p-support .note {
    font-size: 2.6041666667vw;
    margin-top: 2.6041666667vw;
  }
}

.hatomugi-wrapper {
  display: flex;
  justify-content: space-between;
  margin: 62px auto 0;
  width: 984px;
}
@media screen and (max-width: 640px) {
  .hatomugi-wrapper {
    display: block;
    margin-top: 12.2395833333vw;
    width: 84.375vw;
  }
}
.hatomugi-wrapper .hatomugi-block figure {
  display: block;
  margin: 0;
}
.hatomugi-wrapper .hatomugi-block img {
  width: 100%;
  max-width: 100%;
  height: auto;
}
.hatomugi-wrapper .hatomugi-block .m-text {
  font-size: 1.5rem;
  line-height: 1.6666666667;
  color: #fff;
  text-align: justify;
}
@media screen and (max-width: 640px) {
  .hatomugi-wrapper .hatomugi-block .m-text {
    font-size: 3.3854166667vw;
    line-height: 1.7692307692;
  }
}
.hatomugi-wrapper .hatomugi-block.point1 {
  width: 441px;
}
@media screen and (max-width: 640px) {
  .hatomugi-wrapper .hatomugi-block.point1 {
    width: 100%;
  }
}
.hatomugi-wrapper .hatomugi-block.point1 .ttl {
  width: 433px;
}
@media screen and (max-width: 640px) {
  .hatomugi-wrapper .hatomugi-block.point1 .ttl {
    width: 81.5104166667vw;
  }
}
.hatomugi-wrapper .hatomugi-block.point1 .m-text {
  margin-top: 25px;
  padding-left: 9px;
}
@media screen and (max-width: 640px) {
  .hatomugi-wrapper .hatomugi-block.point1 .m-text {
    margin-top: 4.296875vw;
    padding: 0;
  }
}
.hatomugi-wrapper .hatomugi-block.point1 .img {
  margin-top: 25px;
  padding-left: 9px;
}
@media screen and (max-width: 640px) {
  .hatomugi-wrapper .hatomugi-block.point1 .img {
    margin-top: 3.6458333333vw;
    padding: 0;
  }
}
.hatomugi-wrapper .hatomugi-block.point2 {
  width: 432px;
}
@media screen and (max-width: 640px) {
  .hatomugi-wrapper .hatomugi-block.point2 {
    margin-top: 9.765625vw;
    width: 100%;
  }
}
.hatomugi-wrapper .hatomugi-block.point2 .ttl {
  width: 320px;
}
@media screen and (max-width: 640px) {
  .hatomugi-wrapper .hatomugi-block.point2 .ttl {
    width: 60.15625vw;
  }
}
.hatomugi-wrapper .sub-ttl {
  font-weight: 500;
  font-size: 1.8rem;
  line-height: 1;
  color: #fff;
  white-space: nowrap;
}
@media screen and (max-width: 640px) {
  .hatomugi-wrapper .sub-ttl {
    font-size: 3.515625vw;
  }
}
.hatomugi-wrapper .sub-ttl span {
  height: 16px;
  display: inline-block;
  margin-right: 5px;
}
@media screen and (max-width: 640px) {
  .hatomugi-wrapper .sub-ttl span {
    margin-right: 0.6510416667vw;
    height: 3.90625vw;
  }
}
.hatomugi-wrapper .sub-ttl span img {
  width: auto;
  height: 100%;
}
.hatomugi-wrapper .sub-ttl sub {
  font-size: 1rem;
}
.hatomugi-wrapper .sub-ttl.sub01 {
  margin-top: 25px;
}
@media screen and (max-width: 640px) {
  .hatomugi-wrapper .sub-ttl.sub01 {
    margin-top: 5.5989583333vw;
  }
}
.hatomugi-wrapper .media {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
.hatomugi-wrapper .media.media01 {
  margin-top: 15px;
}
@media screen and (max-width: 640px) {
  .hatomugi-wrapper .media.media01 {
    margin-top: 3.515625vw;
  }
}
.hatomugi-wrapper .media.media01 .text-wrapper {
  width: 211px;
}
@media screen and (max-width: 640px) {
  .hatomugi-wrapper .media.media01 .text-wrapper {
    width: 41.2760416667vw;
  }
}
.hatomugi-wrapper .media.media01 .m-text {
  margin-top: -5px;
}
@media screen and (max-width: 640px) {
  .hatomugi-wrapper .media.media01 .m-text {
    font-feature-settings: "palt";
    margin-top: -1.3020833333vw;
  }
}
.hatomugi-wrapper .media.media01 .img {
  width: 201px;
}
@media screen and (max-width: 640px) {
  .hatomugi-wrapper .media.media01 .img {
    width: 39.1927083333vw;
  }
}
.hatomugi-wrapper .media.media02 {
  margin-top: 20px;
}
@media screen and (max-width: 640px) {
  .hatomugi-wrapper .media.media02 {
    margin-top: 4.296875vw;
  }
}
.hatomugi-wrapper .media.media02 .text-wrapper {
  width: 279px;
}
@media screen and (max-width: 640px) {
  .hatomugi-wrapper .media.media02 .text-wrapper {
    width: 54.1666666667vw;
  }
}
.hatomugi-wrapper .media.media02 .m-text {
  margin-top: 15px;
}
@media screen and (max-width: 640px) {
  .hatomugi-wrapper .media.media02 .m-text {
    margin-top: 2.34375vw;
  }
}
.hatomugi-wrapper .media.media02 .img {
  width: 135px;
}
@media screen and (max-width: 640px) {
  .hatomugi-wrapper .media.media02 .img {
    margin-top: 7.5520833333vw;
    width: 26.3020833333vw;
  }
}
.hatomugi-wrapper .media.media02 .img_pic {
  display: block;
}
.hatomugi-wrapper .media.media02 .img_cap {
  font-feature-settings: "palt";
  font-size: 1rem;
  line-height: 1;
  color: #E5E5E5;
  text-align: right;
  margin-top: 36px;
}
@media screen and (max-width: 640px) {
  .hatomugi-wrapper .media.media02 .img_cap {
    font-size: 2.6041666667vw;
    letter-spacing: 0.08em;
    margin-top: 8.984375vw;
  }
}

/* ----------------------------------------------------------------------------------------------------
*	シリーズアイテム
* --------------------------------------------------------------------------------------------------*/
.p-items {
  position: relative;
  padding: 107px 0 149px;
  background: url(../images/bg_item_pc.jpg) center/cover no-repeat;
}
@media screen and (max-width: 640px) {
  .p-items {
    padding: 14.1927083333vw 3.7109375vw 26.3020833333vw;
  }
}
.p-items #series {
  position: absolute;
  top: -100px;
}
@media screen and (max-width: 640px) {
  .p-items #series {
    top: -18vw;
  }
}
.p-items #cleansing {
  position: absolute;
  bottom: 100px;
}
@media screen and (max-width: 640px) {
  .p-items #cleansing {
    bottom: 18vw;
  }
}
.p-items .item__ttl {
  margin-inline: auto;
  width: 171px;
}
@media screen and (max-width: 640px) {
  .p-items .item__ttl {
    width: 35.9375vw;
  }
}
.p-items .item__ttl svg {
  display: block;
  fill: #00b087;
}
.p-items__inner {
  position: relative;
  margin: 47px auto 0;
  padding: 60px 0;
  width: 1150px;
  border-radius: 12px;
  background: #fff;
}
@media screen and (max-width: 640px) {
  .p-items__inner {
    margin-top: 8.0729166667vw;
    padding: 13.1510416667vw 0 13.4114583333vw;
    width: auto;
    border-radius: 2.0833333333vw;
  }
}
.p-items__inner + .p-items__inner {
  margin-top: 100px;
}
@media screen and (max-width: 640px) {
  .p-items__inner + .p-items__inner {
    margin-top: 13.0208333333vw;
  }
}
.p-items-label {
  position: absolute;
  top: -50px;
  left: -49px;
  z-index: 1;
  width: 150px;
}
@media screen and (max-width: 640px) {
  .p-items-label {
    top: 3.90625vw;
    left: auto;
    right: 3.90625vw;
    width: 22.1354166667vw;
  }
}
.p-items-box {
  display: flex;
  justify-content: space-between;
  margin-inline: auto;
  width: 760px;
}
@media screen and (max-width: 640px) {
  .p-items-box {
    display: block;
    width: 100%;
  }
}
.p-items-box-img {
  width: 321px;
}
@media screen and (max-width: 640px) {
  .p-items-box-img {
    margin-inline: auto;
    width: 55.5989583333vw;
  }
}
.p-items-box-img img {
  width: 100%;
}
.p-items-box-cnt {
  padding-top: 30px;
  width: 400px;
}
@media screen and (max-width: 640px) {
  .p-items-box-cnt {
    margin-top: -2.6041666667vw;
    padding-top: 0;
    width: 100%;
  }
}
@media screen and (max-width: 640px) {
  .p-items-box .p-items-box-ttl {
    margin-inline: auto;
    width: 67.3177083333vw;
  }
}
.p-items-box-info {
  font-feature-settings: "palt";
  margin-top: 47px;
}
@media screen and (max-width: 640px) {
  .p-items-box-info {
    margin-top: 5.859375vw;
  }
}
.p-items-box-txt01 {
  font-size: 1.4rem;
  line-height: 1.4285714286;
  letter-spacing: 0.045em;
}
@media screen and (max-width: 640px) {
  .p-items-box-txt01 {
    font-size: 2.8645833333vw;
    line-height: 1.4545454545;
    text-align: center;
  }
}
.p-items-box-txt02 {
  font-size: 0;
}
@media screen and (max-width: 640px) {
  .p-items-box-txt02 {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
}
.p-items-box-txt02 a {
  font-size: 1.6rem;
  line-height: 1.5;
  letter-spacing: 0.015em;
  text-decoration: underline;
  display: inline;
  margin-right: 7px;
}
@media screen and (max-width: 640px) {
  .p-items-box-txt02 a {
    font-size: 3.125vw;
    line-height: 1.6666666667;
    letter-spacing: 0;
    text-align: center;
    order: 0;
    margin: 0;
  }
}
.p-items-box-icon {
  font-size: 1.2rem;
  line-height: 1;
  display: inline-block;
  padding: 3px 2px;
  border: 1px solid #595757;
}
@media screen and (max-width: 640px) {
  .p-items-box-icon {
    font-size: 2.8645833333vw;
    order: 2;
    margin-top: 1.5625vw;
    padding: 0.6510416667vw 1.3020833333vw 0.78125vw;
    border-width: 0.1302083333vw;
  }
}
.p-items-box-txt03 {
  font-size: 1.4rem;
  line-height: 1.7142857143;
  letter-spacing: 0.045em;
}
@media screen and (max-width: 640px) {
  .p-items-box-txt03 {
    font-size: 2.8645833333vw;
    line-height: 1.7272727273;
    letter-spacing: 0;
    order: 1;
  }
}
.p-items-box-price {
  font-size: 1.2rem;
  line-height: 1.5;
  letter-spacing: 0.005em;
  margin-top: 4px;
}
@media screen and (max-width: 640px) {
  .p-items-box-price {
    font-size: 2.8645833333vw;
    line-height: 1.7272727273;
    letter-spacing: 0;
    text-align: center;
  }
}
.p-items-box.-soap .p-items-box-img {
  width: 323px;
}
@media screen and (max-width: 640px) {
  .p-items-box.-soap .p-items-box-img {
    width: 62.5vw;
  }
}
.p-items-detail {
  display: flex;
  justify-content: space-between;
  margin-inline: auto;
  width: 676px;
}
@media screen and (max-width: 640px) {
  .p-items-detail {
    justify-content: center;
    margin-top: 11.71875vw;
    width: 100%;
  }
}
.p-items-detail__img-wrapper {
  width: 236px;
}
@media screen and (max-width: 640px) {
  .p-items-detail__img-wrapper {
    padding-top: 9.6354166667vw;
    width: 36.9791666667vw;
  }
}
.p-items-detail__img-wrapper img {
  width: 100%;
  height: auto;
}
.p-items-detail__img-wrapper .note {
  font-feature-settings: "palt";
  font-size: 1rem;
  line-height: 1;
  text-align: center;
}
@media screen and (max-width: 640px) {
  .p-items-detail__img-wrapper .note {
    font-size: 2.6041666667vw;
    margin-top: 1.171875vw;
  }
}
.p-items-detail__text-wrapper {
  width: 418px;
}
@media screen and (max-width: 640px) {
  .p-items-detail__text-wrapper {
    width: 51.6927083333vw;
  }
}
.p-items-detail__title {
  line-height: 1;
}
.p-items-detail__text {
  font-size: 1.5rem;
  line-height: 2;
  letter-spacing: 0.015em;
  color: #00b087;
  margin: 10px auto 0;
  width: 401px;
}
@media screen and (max-width: 640px) {
  .p-items-detail__text {
    font-size: 3.2552083333vw;
    line-height: 1.84;
    letter-spacing: 0.015em;
    margin-top: 1.3020833333vw;
    padding-inline: 2.6041666667vw;
    width: 100%;
  }
}
.p-items-detail.-soap {
  margin-top: 32px;
  width: 768px;
}
@media screen and (max-width: 640px) {
  .p-items-detail.-soap {
    display: block;
    margin-top: 11.4583333333vw;
    width: 80.46875vw;
  }
}
.p-items-detail.-soap .p-items-detail__img-wrapper {
  width: 236px;
}
@media screen and (max-width: 640px) {
  .p-items-detail.-soap .p-items-detail__img-wrapper {
    margin: 5.2083333333vw auto 0;
    padding-top: 0;
    width: 45.9635416667vw;
  }
}
.p-items-detail.-soap .p-items-detail__text-wrapper {
  padding-top: 17px;
  width: 514px;
}
@media screen and (max-width: 640px) {
  .p-items-detail.-soap .p-items-detail__text-wrapper {
    padding-top: 0;
    width: 100%;
  }
}
.p-items-hide-area.is-open .btn-viewmore i::after {
  display: none;
}
.p-items-hide-area .js-acd-cont {
  display: none;
}
.p-items-hide-area.-mask {
  margin-top: 45px;
}
@media screen and (max-width: 640px) {
  .p-items-hide-area.-mask {
    margin-top: 11.71875vw;
  }
}
.p-items-hide-area.-soap {
  margin-top: 58px;
}
@media screen and (max-width: 640px) {
  .p-items-hide-area.-soap {
    margin-top: 7.6822916667vw;
  }
}
.p-items-howto__ttl {
  margin-inline: auto;
  width: 762px;
}
@media screen and (max-width: 640px) {
  .p-items-howto__ttl {
    width: 43.2291666667vw;
  }
}
.p-items-howto__mask {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  position: relative;
  margin: 0 auto 0;
  padding-bottom: 66px;
  width: 762px;
}
@media screen and (max-width: 640px) {
  .p-items-howto__mask {
    margin-top: 8.59375vw;
    padding-bottom: 9.6354166667vw;
    width: 85.0260416667vw;
  }
}
.p-items-howto__mask img,
.p-items-howto__mask svg {
  display: block;
  width: 100%;
}
.p-items-howto__mask__item {
  display: flex;
  flex-wrap: wrap;
  width: 50%;
  padding-right: 41px;
}
@media screen and (max-width: 640px) {
  .p-items-howto__mask__item {
    justify-content: space-between;
    width: 50%;
    padding-right: 0;
  }
}
.p-items-howto__mask__img {
  margin: 0;
  width: 100%;
}
.p-items-howto__mask__img.-img01 {
  width: 199px;
  margin: 30px auto 0 auto;
}
@media screen and (max-width: 640px) {
  .p-items-howto__mask__img.-img01 {
    position: relative;
    left: 3vw;
    width: 40.4947916667vw;
    margin: 3.90625vw auto -7.8125vw auto;
  }
}
.p-items-howto__mask__num {
  padding-top: 4.5px;
}
@media screen and (max-width: 640px) {
  .p-items-howto__mask__num {
    padding-top: 1.3020833333vw;
  }
}
.p-items-howto__mask__num.-num01 {
  padding-left: 8px;
  width: 44px;
}
.p-items-howto__mask__num.-num01 + .p-items-howto__mask__txt {
  width: calc(100% - 44px);
}
@media screen and (max-width: 640px) {
  .p-items-howto__mask__num.-num01 {
    padding-left: 0;
    width: 8.3333333333vw;
  }
  .p-items-howto__mask__num.-num01 + .p-items-howto__mask__txt {
    width: calc(100% - 8.3333333333vw);
  }
}
.p-items-howto__mask__num.-num02 {
  padding-left: 12px;
  width: 54px;
}
.p-items-howto__mask__num.-num02 + .p-items-howto__mask__txt {
  width: calc(100% - 54px);
}
@media screen and (max-width: 640px) {
  .p-items-howto__mask__num.-num02 {
    padding-left: 3.515625vw;
    width: 13.8020833333vw;
  }
  .p-items-howto__mask__num.-num02 + .p-items-howto__mask__txt {
    width: calc(100% - 13.8020833333vw);
  }
}
.p-items-howto__mask__num svg {
  fill: #00b087;
}
.p-items-howto__mask__num [aria-label="1"] {
  width: 18px;
}
@media screen and (max-width: 640px) {
  .p-items-howto__mask__num [aria-label="1"] {
    width: 3.7760416667vw;
  }
}
.p-items-howto__mask__num [aria-label="2"] {
  width: 25px;
}
@media screen and (max-width: 640px) {
  .p-items-howto__mask__num [aria-label="2"] {
    width: 5.3385416667vw;
  }
}
.p-items-howto__mask__txt {
  font-feature-settings: "palt";
  font-size: 1.4rem;
  line-height: 1.6428571429;
  letter-spacing: 0.13em;
  color: #00b087;
  text-align: justify;
}
@media screen and (max-width: 640px) {
  .p-items-howto__mask__txt {
    font-size: 2.8645833333vw;
    line-height: 1.6818181818;
    letter-spacing: 0.07em;
  }
}
.p-items-bubble__list {
  display: flex;
  justify-content: center;
  gap: 8px;
  margin-top: 18px;
}
@media screen and (max-width: 640px) {
  .p-items-bubble__list {
    flex-wrap: wrap;
    gap: 2.34375vw 2.0833333333vw;
    margin-top: 0;
  }
}
.p-items-bubble__list__item {
  width: 119px;
}
@media screen and (max-width: 640px) {
  .p-items-bubble__list__item {
    width: 34.1145833333vw;
  }
}
.p-items-bubble__soap {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 40px auto 0;
  padding-bottom: 66px;
  width: 762px;
}
@media screen and (max-width: 640px) {
  .p-items-bubble__soap {
    display: block;
    margin-top: 9.375vw;
    padding-bottom: 11.328125vw;
    width: 78.125vw;
  }
}
.p-items-bubble__soap__ttl {
  margin-inline: auto;
  width: 762px;
}
@media screen and (max-width: 640px) {
  .p-items-bubble__soap__ttl {
    width: 43.2291666667vw;
  }
}
.p-items-bubble__soap__img {
  margin: 0;
  width: 220px;
}
@media screen and (max-width: 640px) {
  .p-items-bubble__soap__img {
    margin: -10.4166666667vw auto -5.2083333333vw auto;
    width: 44.53125vw;
  }
}
.p-items-bubble__soap__box {
  width: calc(100% - 220px);
}
@media screen and (max-width: 640px) {
  .p-items-bubble__soap__box {
    width: 100%;
  }
}
.p-items-bubble__soap__txt {
  font-feature-settings: "palt";
  font-size: 1.4rem;
  line-height: 1.6428571429;
  letter-spacing: 0.13em;
  color: #00b087;
}
@media screen and (max-width: 640px) {
  .p-items-bubble__soap__txt {
    font-size: 3.3854166667vw;
    line-height: 1.7692307692;
    letter-spacing: 0.07em;
    margin-top: 0;
  }
}
.p-items-bubble__soap__list {
  margin-top: 15px;
}
.p-items-bubble__soap__dlist {
  font-feature-settings: "palt";
  line-height: 1;
  margin-top: 21px;
}
@media screen and (max-width: 640px) {
  .p-items-bubble__soap__dlist {
    margin-top: 5.2083333333vw;
  }
}
.p-items-bubble__soap__term {
  font-size: 1.4rem;
  line-height: 1;
  letter-spacing: 0.13em;
  color: #fff;
  display: inline-block;
  padding: 2.5px 10px 3.5px;
  border-radius: 100em;
  background: #00b087;
}
@media screen and (max-width: 640px) {
  .p-items-bubble__soap__term {
    font-size: 3.515625vw;
    letter-spacing: 0;
    text-align: center;
    display: block;
    padding: 1.0416666667vw 0;
  }
}
.p-items-bubble__soap__des {
  font-size: 1.4rem;
  line-height: 1.6428571429;
  letter-spacing: 0.13em;
  margin-top: 6px;
}
@media screen and (max-width: 640px) {
  .p-items-bubble__soap__des {
    font-size: 3.3854166667vw;
    line-height: 1.7692307692;
    letter-spacing: 0.07em;
    margin-top: 2.0833333333vw;
  }
}
.p-items-bubble__soap__des + .p-items-bubble__soap__term {
  margin-top: 16px;
}
@media screen and (max-width: 640px) {
  .p-items-bubble__soap__des + .p-items-bubble__soap__term {
    margin-top: 5.2083333333vw;
  }
}
.p-items-beauty {
  position: relative;
  margin: 59px auto 0;
  padding-top: 51px;
  width: 961px;
}
@media screen and (max-width: 640px) {
  .p-items-beauty {
    margin-top: 12.6302083333vw;
    padding-top: 0;
    width: 100%;
  }
}
.p-items-beauty__img01 {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: 432px;
}
.p-items-beauty__img02 {
  margin-left: auto;
  width: 550px;
}
@media screen and (max-width: 640px) {
  .p-items-beauty__img02 {
    margin-inline: auto;
    width: 87.2395833333vw;
  }
}
.p-items-beauty__img02 img {
  filter: drop-shadow(3.6px 3.6px 3.6px rgba(35, 24, 21, 0.4));
}
@media screen and (max-width: 640px) {
  .p-items-beauty__img02 img {
    filter: drop-shadow(0.5989583333vw 0.5989583333vw 0.5989583333vw rgba(35, 24, 21, 0.4));
  }
}
.p-items-beauty__img02__note {
  font-feature-settings: "palt";
  font-size: 1rem;
  line-height: 1;
  text-align: right;
  letter-spacing: 0.045em;
  display: block;
  margin-top: 10px;
}
@media screen and (max-width: 640px) {
  .p-items-beauty__img02__note {
    font-size: 2.6041666667vw;
    letter-spacing: 0;
    margin-top: 2.4739583333vw;
  }
}
.p-items .btn-viewmore {
  line-height: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0 11px;
  margin: 0 auto;
  width: 311px;
  height: 48px;
  border: none;
  border-radius: 100em;
  background-color: #66d0b7;
  cursor: pointer;
}
@media (hover: hover) and (pointer: fine) {
  .p-items .btn-viewmore:hover {
    opacity: 0.7;
  }
}
@media screen and (max-width: 640px) {
  .p-items .btn-viewmore {
    gap: 0 2.8645833333vw;
    width: 78.125vw;
    height: 11.71875vw;
  }
}
.p-items .btn-viewmore i {
  position: relative;
  width: 17px;
  height: 17px;
  border: 1px solid #fff;
  border-radius: 100%;
}
@media screen and (max-width: 640px) {
  .p-items .btn-viewmore i {
    width: 4.5572916667vw;
    height: 4.5572916667vw;
  }
}
.p-items .btn-viewmore i::before, .p-items .btn-viewmore i::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 9px;
  height: 1px;
  background-color: #fff;
  transform: translate(-50%, -50%);
}
@media screen and (max-width: 640px) {
  .p-items .btn-viewmore i::before, .p-items .btn-viewmore i::after {
    width: 2.6041666667vw;
    height: 0.2604166667vw;
  }
}
.p-items .btn-viewmore i::after {
  transform: translate(-50%, -50%) rotate(90deg);
}
.p-items .btn-viewmore-txt {
  font-feature-settings: "palt";
  font-size: 1.7rem;
  line-height: 1;
  letter-spacing: 0.075em;
  color: #fff;
}
@media screen and (max-width: 640px) {
  .p-items .btn-viewmore-txt {
    font-size: 4.4270833333vw;
  }
}

/* ----------------------------------------------------------------------------------------------------
*	バナーエリア
* --------------------------------------------------------------------------------------------------*/
.p-bnr {
  padding: 0 0 55px;
  background: #fff;
}
@media screen and (max-width: 640px) {
  .p-bnr {
    padding: 0 0 12.3697916667vw;
  }
}
.p-bnr__list {
  margin-inline: auto;
  max-width: 960px;
}
.p-bnr__list__item:nth-child(n+2) {
  margin-top: 53px;
}
@media screen and (max-width: 640px) {
  .p-bnr__list__item:nth-child(n+2) {
    margin-top: 3.90625vw;
  }
}
.p-bnr__list__link {
  display: block;
}
.p-bnr__line {
  max-width: 960px;
  margin: 50px auto 0;
  position: relative;
}
@media screen and (max-width: 640px) {
  .p-bnr__line {
    width: 90%;
    margin-top: 7.8125vw;
  }
}
.p-bnr__line a {
  display: block;
}
.p-bnr__line .inner {
  position: absolute;
  left: 43%;
  top: 32%;
}
@media screen and (max-width: 640px) {
  .p-bnr__line .inner {
    left: 44%;
    top: 28%;
  }
}
.p-bnr__line .inner .txt {
  color: #5A5A5A;
  font-size: 1.6rem;
  line-height: 1.8;
}
@media screen and (max-width: 640px) {
  .p-bnr__line .inner .txt {
    font-size: 3.125vw;
    line-height: 1.4;
  }
}
.p-bnr__line .inner .green {
  color: #53B682;
  text-decoration: underline;
  font-size: 1.6rem;
  line-height: 1.4;
  padding-left: 1.3em;
  position: relative;
  margin-top: 1em;
}
@media screen and (max-width: 640px) {
  .p-bnr__line .inner .green {
    font-size: 3.125vw;
  }
}
.p-bnr__line .inner .green::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.4em;
  border-style: solid;
  border-width: 5px 0 5px 10px;
  border-color: transparent transparent transparent #53B682;
}

.p-flex {
  display: flex;
  justify-content: center;
}

@media screen and (max-width: 640px) {
  .p-flex {
    display: block;
  }
}
.p-product-grid {
  width: 600px;
  display: grid;
  grid-template-columns: 250px 1fr;
  grid-template-rows: 1fr 1fr;
  grid-template-areas: "img img" "left right";
  grid-gap: 20px;
}

@media screen and (max-width: 640px) {
  .p-product-grid {
    width: auto;
    grid-template-columns: 50% 50%;
    grid-template-rows: 50% 50%;
    grid-gap: 0;
  }
}
.p-howto-flex {
  display: flex;
}

.p-howto-flex .m-text {
  font-size: 1.4rem;
  line-height: 1.6;
  color: #008bcf;
}

@media screen and (max-width: 640px) {
  .p-howto-flex .m-text {
    font-size: 3.3854166667vw;
  }
}
/* ----------------------------------------------------------------------------------------------------
*	p-supecial-movie
* --------------------------------------------------------------------------------------------------*/
.p-supecial-movie {
  padding-top: 150px;
  position: relative;
  background: #fff;
}

@media screen and (max-width: 640px) {
  .p-supecial-movie {
    padding-top: 16.4375vw;
  }
}
.p-supecial-movie #movie {
  position: absolute;
  top: -100px;
}

@media screen and (max-width: 640px) {
  .p-supecial-movie #movie {
    top: -18vw;
  }
}
.p-supecial-movie .bg-supecial-movie {
  background: url(../images/bg_specialmovie.png) no-repeat top center;
  padding-top: 84px;
  padding-bottom: 150px;
}

@media screen and (max-width: 640px) {
  .p-supecial-movie .bg-supecial-movie {
    padding-top: 14.3229166667vw;
    padding-bottom: 16.2760416667vw;
  }
}
.p-supecial-movie .l-content-inner {
  position: relative;
}

.p-supecial-movie .l-content-inner .p-movie-block {
  position: relative;
  width: 960px;
  margin: 0 auto;
}

@media screen and (max-width: 640px) {
  .p-supecial-movie .l-content-inner .p-movie-block {
    width: auto;
  }
}
.p-supecial-movie .l-content-inner .p-movie-block .p-sm__ttl {
  position: absolute;
  top: -112px;
  left: -4px;
  width: 311px;
}

@media screen and (max-width: 640px) {
  .p-supecial-movie .l-content-inner .p-movie-block .p-sm__ttl {
    width: 59.2447916667vw;
    top: -19vw;
    left: 0;
  }
}
.p-supecial-movie .l-content-inner .p-movie-block .ttl {
  width: 225px;
  margin: 0 auto;
}

@media screen and (max-width: 640px) {
  .p-supecial-movie .l-content-inner .p-movie-block .ttl {
    width: 43.8802083333vw;
  }
}
.p-supecial-movie .l-content-inner .p-movie-block .m-text {
  font-size: 1.8rem;
  margin-top: 33px;
  text-align: center;
  line-height: 2.8;
}

@media screen and (max-width: 640px) {
  .p-supecial-movie .l-content-inner .p-movie-block .m-text {
    font-size: 3.6458333333vw;
    margin-top: 7.03125vw;
  }
}
.p-supecial-movie #movie-yt {
  width: 960px;
  margin: 40px auto 0;
  aspect-ratio: 16/9;
}

@media screen and (max-width: 640px) {
  .p-supecial-movie #movie-yt {
    margin-top: 7.8125vw;
    width: 100%;
  }
}
.p-supecial-movie #movie-yt iframe {
  width: 100%;
  height: 100%;
}

.p-supecial-movie .p-backstage {
  background-color: #EDF9F6;
  padding-top: 70px;
  padding-bottom: 47px;
}
@media screen and (max-width: 640px) {
  .p-supecial-movie .p-backstage {
    padding-top: 19vw;
    padding-bottom: 23vw;
  }
}

.p-backstage__heading {
  position: relative;
  text-align: center;
}
.p-backstage__heading .c-txt {
  position: relative;
  z-index: 1;
  padding-top: 47px;
  line-height: 2.2;
}
@media screen and (max-width: 640px) {
  .p-backstage__heading .c-txt {
    padding-top: 8vw;
    font-size: 1.3rem;
  }
}

.p-backstage__ttl {
  position: absolute;
  top: -126px;
  left: 0;
  right: 0;
}
@media screen and (max-width: 640px) {
  .p-backstage__ttl {
    top: -24vw;
  }
}

.p-chapter__content {
  max-width: 990px;
  margin: 40px auto 0;
  position: relative;
}
@media screen and (max-width: 640px) {
  .p-chapter__content {
    width: 86%;
    margin-top: 12vw;
  }
}
.p-chapter__content::after {
  content: "";
  position: absolute;
  left: 50%;
  width: 2px;
  background-color: #00A484;
  height: calc(100% - 160px);
  transform: translateX(-50%);
  /* opacity: 0; */
  transition: 0.3s;
}
@media screen and (max-width: 640px) {
  .p-chapter__content::after {
    height: calc(100% + 4vw);
  }
}
.p-chapter__content.is-border-show::after {
  opacity: 1;
}
.p-chapter__content.p-flex {
  flex-wrap: wrap;
  justify-content: space-between;
}
@media screen and (max-width: 640px) {
  .p-chapter__content.p-flex {
    display: flex;
  }
}

.chapter {
  width: 50%;
  position: relative;
}
.chapter::after {
  content: "";
  position: absolute;
  width: 50%;
  background: url(../images/line.svg) repeat-x;
  height: 2px;
  top: 61px;
}
@media screen and (max-width: 640px) {
  .chapter::after {
    background-size: auto 90%;
  }
}
.chapter::before {
  content: "";
  position: absolute;
  width: 10px;
  height: 10px;
  border-radius: 10px;
  background-color: #00A484;
  top: 62px;
}
@media screen and (max-width: 640px) {
  .chapter::before {
    width: 8px;
    height: 8px;
  }
}
.chapter:nth-of-type(odd) .chapter__ttl {
  padding-right: 1em;
}
@media screen and (max-width: 640px) {
  .chapter:nth-of-type(odd) .chapter__ttl {
    padding-right: 0;
  }
}
.chapter:nth-of-type(odd)::after, .chapter:nth-of-type(odd)::before {
  right: 0;
}
.chapter:nth-of-type(odd)::after {
  background-position: center right;
}
.chapter:nth-of-type(odd)::before {
  transform: translate(50%, -50%);
}
.chapter:nth-of-type(even) .chapter__ttl {
  padding-left: 1em;
}
@media screen and (max-width: 640px) {
  .chapter:nth-of-type(even) .chapter__ttl {
    padding-left: 0;
  }
}
.chapter:nth-of-type(even)::after, .chapter:nth-of-type(even)::before {
  left: 0;
}
.chapter:nth-of-type(even)::after {
  background-position: center left;
}
.chapter:nth-of-type(even)::before {
  transform: translate(-50%, -50%);
}
.chapter .m-text {
  line-height: 1.6;
  width: 400px;
  font-size: 1.5rem;
  margin-top: 17px;
}
@media screen and (max-width: 640px) {
  .chapter .m-text {
    width: 100%;
    font-size: 1.3rem;
    text-align: justify;
    margin-top: 2vw;
  }
}
.chapter .movie-thmub {
  width: 400px;
}
@media screen and (max-width: 640px) {
  .chapter .movie-thmub {
    width: 100%;
  }
}

.chapter__inner {
  width: 410px;
}
@media screen and (max-width: 640px) {
  .chapter__inner {
    width: 90%;
  }
}

.chapter__ttl {
  margin-left: -6px;
  background-color: #eef8f6;
  margin-bottom: 18px;
  position: relative;
  z-index: 2;
  box-sizing: content-box;
}
@media screen and (max-width: 640px) {
  .chapter__ttl {
    margin-left: 0;
    margin-bottom: 2vw;
  }
}

.chapter01 {
  margin-top: -60px;
}
@media screen and (max-width: 640px) {
  .chapter01 {
    margin-top: -10vw;
  }
  .chapter01::before {
    top: 10vw;
  }
  .chapter01::after {
    top: 9.8vw;
  }
}
.chapter01 .chapter__ttl {
  width: 252px;
}
@media screen and (max-width: 640px) {
  .chapter01 .chapter__ttl {
    width: 100%;
  }
}

.chapter02 {
  margin-top: 20px;
}
@media screen and (max-width: 640px) {
  .chapter02 {
    margin-top: 8vw;
  }
  .chapter02::before {
    top: 4.5vw;
  }
  .chapter02::after {
    top: 4.3vw;
  }
}
.chapter02 .chapter__inner {
  margin-left: auto;
}
.chapter02 .chapter__ttl {
  width: 400px;
}
@media screen and (max-width: 640px) {
  .chapter02 .chapter__ttl {
    width: 100%;
  }
}

.chapter03 {
  margin-top: -48px;
}
@media screen and (max-width: 640px) {
  .chapter03::before {
    top: 15.5vw;
  }
  .chapter03::after {
    top: 15.3vw;
  }
}
.chapter03 .chapter__ttl {
  width: 295px;
}
@media screen and (max-width: 640px) {
  .chapter03 .chapter__ttl {
    width: 100%;
  }
}

.chapter04 {
  margin-top: 33px;
}
@media screen and (max-width: 640px) {
  .chapter04::before {
    top: 4.5vw;
  }
  .chapter04::after {
    top: 4.3vw;
  }
}
.chapter04 .chapter__inner {
  margin-left: auto;
}
.chapter04 .chapter__ttl {
  width: 395px;
}
@media screen and (max-width: 640px) {
  .chapter04 .chapter__ttl {
    width: 100%;
  }
}

.movie-button {
  cursor: pointer;
  width: 100%;
  height: auto;
  margin: 0;
  padding: 0;
  border: 5px solid #fff;
  position: relative;
}
@media screen and (max-width: 640px) {
  .movie-button {
    border-width: 3px;
  }
}
.movie-button img {
  width: 100%;
  height: auto;
}
.movie-button::before {
  content: "";
  position: absolute;
  width: 75px;
  height: 75px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: rgba(0, 0, 0, 0.4);
  border-radius: 42px;
  transition: 0.3s;
  z-index: 1;
}
@media screen and (max-width: 640px) {
  .movie-button::before {
    width: 6vw;
    height: 6vw;
  }
}
.movie-button:hover::before {
  background-color: rgb(0, 0, 0);
}
.movie-button::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 51%;
  transform: translate(-50%, -50%);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 16px 0 16px 28px;
  border-color: transparent transparent transparent #fff;
  z-index: 2;
}
@media screen and (max-width: 640px) {
  .movie-button::after {
    border-width: 1.2vw 0 1.2vw 2.5vw;
  }
}

.p-kansei {
  position: absolute;
  bottom: 0;
  left: 48.4%;
  transform: translateX(-50%);
}
@media screen and (max-width: 640px) {
  .p-kansei {
    width: 27vw;
    left: 44.2%;
    transform: translate(-50%, calc(53% + 4vw));
  }
}

/* ----------------------------------------------------------------------------------------------------
*	クーポン
* --------------------------------------------------------------------------------------------------*/
.tab_coupon {
  position: fixed;
  bottom: 30px;
  right: 0;
  opacity: 0;
  pointer-events: none;
  transition: 0.5s;
  z-index: 5;
}

@media screen and (max-width: 640px) {
  .tab_coupon {
    display: none;
  }
}
.tab_coupon.is-active {
  opacity: 1;
  pointer-events: auto;
}

.sp-tab_coupon {
  display: none;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 4;
}

@media screen and (max-width: 640px) {
  .sp-tab_coupon {
    display: block;
    opacity: 0;
    pointer-events: none;
    transition: 0.3s;
  }
  .sp-tab_coupon.is-active {
    opacity: 1;
    pointer-events: auto;
  }
}
.sp-tab_coupon a {
  background-color: #00a484;
  position: relative;
  padding: 3vw 0;
  display: block;
}

.sp-tab_coupon a::after {
  width: 10px;
  height: 10px;
  content: "";
  position: absolute;
  top: 22%;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  transform: translateY(50%) rotate(45deg);
  right: 12vw;
}

.sp-tab_coupon a .cupon_text {
  width: 66.1458333333vw;
  margin: 0 auto;
  display: block;
  position: relative;
}

.sp-tab_coupon a figure {
  margin: 0;
  position: absolute;
  bottom: 0;
  width: 7.03125vw;
  left: 5vw;
}

/* ----------------------------------------------------------------------------------------------------
*	フェードイン
* --------------------------------------------------------------------------------------------------*/
.js-fadeIn {
  opacity: 0;
}

.isFadein {
  -webkit-animation: fadeIn 1s forwards;
  animation: fadeIn 1s forwards;
}

.delay02 {
  -webkit-animation-delay: 0.2s;
  animation-delay: 0.2s;
}

.delay04 {
  -webkit-animation-delay: 0.4s;
  animation-delay: 0.4s;
}

.delay06 {
  -webkit-animation-delay: 0.6s;
  animation-delay: 0.6s;
}

.delay08 {
  -webkit-animation-delay: 0.8s;
  animation-delay: 0.8s;
}

.delay10 {
  -webkit-animation-delay: 1s;
  animation-delay: 1s;
}

.delay12 {
  -webkit-animation-delay: 1.2s;
  animation-delay: 1.2s;
}

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
#modal-content {
  width: 960px;
  margin: 0;
  padding: 0;
  background: #fff;
  position: fixed;
  display: none;
  z-index: 99999;
}

@media screen and (max-width: 640px) {
  #modal-content {
    width: 100%;
  }
}
#modal-content .inner {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  overflow: hidden;
}

#modal-content .inner #player {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}

#modal-overlay {
  z-index: 9999;
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 120%;
  background-color: rgba(0, 0, 0, 0.75);
}

/* ----------------------------------------------------------------------------------------------------
*	バナー
* --------------------------------------------------------------------------------------------------*/
.l-banner-skikonist {
  width: 960px;
  margin: 130px auto 0;
}

@media screen and (max-width: 640px) {
  .l-banner-skikonist {
    margin-top: 19.53125vw;
    width: 100%;
  }
}
/* ----------------------------------------------------------------------------------------------------
*	バナー challenge
* --------------------------------------------------------------------------------------------------*/
.l-banner-challenge {
  width: 960px;
  margin: 130px auto 0;
}

.l-banner-challenge a,
.l-banner-challenge picture {
  display: block;
}

.l-banner-challenge img {
  width: 100%;
}

@media screen and (max-width: 640px) {
  .l-banner-challenge {
    margin-top: 19.53125vw;
    width: 100%;
  }
}
/* ----------------------------------------------------------------------------------------------------
*	トライアルサイズ
* --------------------------------------------------------------------------------------------------*/
.p-trialsize {
  border: 1px solid #b3e4da;
  outline: 1px solid #b3e4da;
  outline-offset: -5px;
  width: 960px;
  margin: 0 auto;
  position: relative;
  padding: 36px 5px 30px 10px;
  margin-top: 70px;
  position: relative;
}

@media screen and (max-width: 640px) {
  .p-trialsize {
    margin-top: 10.4166666667vw;
    padding: 9.1145833333vw 0.2604166667vw 6.5104166667vw 4.5572916667vw;
  }
}
.p-trialsize #limited_kit {
  position: absolute;
  top: -180px;
}

@media screen and (max-width: 640px) {
  .p-trialsize #limited_kit {
    top: -28.6458333333vw;
  }
}
@media screen and (max-width: 640px) {
  .p-trialsize {
    width: 100%;
  }
}
.p-trialsize .m-date {
  position: absolute;
  top: 12px;
  left: 0;
  display: inline-block;
  width: 187px;
  z-index: 3;
}

@media screen and (max-width: 640px) {
  .p-trialsize .m-date {
    width: 45.0520833333vw;
    top: 5.9895833333vw;
  }
}
.p-trialsize .p-trialsize--box {
  display: flex;
  position: relative;
  z-index: 1;
}

@media screen and (max-width: 640px) {
  .p-trialsize .p-trialsize--box {
    display: block;
  }
}
.p-trialsize picture {
  margin: 0;
  width: 312px;
  display: block;
  flex-shrink: 0;
  margin-right: 20px;
}

@media screen and (max-width: 640px) {
  .p-trialsize picture {
    width: auto;
    margin-bottom: -13.0208333333vw;
  }
}
.p-trialsize picture img {
  width: 100%;
  height: auto;
}

.p-trialsize .l-text__wrapper {
  position: relative;
}

.p-trialsize .l-text__wrapper dl {
  margin-top: 0.5em;
}

.p-trialsize .l-text__wrapper dt,
.p-trialsize .l-text__wrapper dd {
  font-size: 1.4rem;
  line-height: 1.8;
}

@media screen and (max-width: 640px) {
  .p-trialsize .l-text__wrapper dt,
  .p-trialsize .l-text__wrapper dd {
    font-size: 3.125vw;
  }
}
.p-trialsize .l-text__wrapper dt span,
.p-trialsize .l-text__wrapper dd span {
  border: 1px solid #222;
  font-size: 1.2rem;
  padding: 0.1em 0.1em;
  display: inline-block;
  margin-left: 0.5em;
  letter-spacing: normal;
  line-height: 1;
}

@media screen and (max-width: 640px) {
  .p-trialsize .l-text__wrapper dt span,
  .p-trialsize .l-text__wrapper dd span {
    font-size: 2.734375vw;
  }
}
.p-trialsize .m-title {
  font-size: 2.2rem;
  color: #00a484;
  font-weight: bold;
  line-height: 1.4;
}

@media screen and (max-width: 640px) {
  .p-trialsize .m-title {
    font-size: 4.6875vw;
  }
}
.p-trialsize .m-name {
  font-size: 1.8rem;
  line-height: 1.7;
  margin-top: 0.5em;
}

@media screen and (max-width: 640px) {
  .p-trialsize .m-name {
    font-size: 3.90625vw;
    line-height: 1.6;
  }
}
.p-trialsize .m-name span {
  font-size: 1.4rem;
}

@media screen and (max-width: 640px) {
  .p-trialsize .m-name span {
    font-size: 3.3854166667vw;
  }
}
.p-trialsize .m-price {
  font-size: 1.4rem;
}

@media screen and (max-width: 640px) {
  .p-trialsize .m-price {
    font-size: 3.3854166667vw;
  }
}
.p-trialsize .m-note {
  font-size: 1rem;
  line-height: 1.6;
  color: #6e6e6e;
  margin-top: 0.5em;
}

@media screen and (max-width: 640px) {
  .p-trialsize .m-note {
    font-size: 2.6041666667vw;
    line-height: 1.8;
  }
}
.p-trialsize .m-note li {
  padding-left: 1em;
  text-indent: -1em;
  letter-spacing: -0.05em;
}

@media screen and (max-width: 640px) {
  .p-sp-bg2 {
    /*
    margin-top: -10vw;
    padding-top: 32vw;
    background: url(../images/bg_sp_skicon2.jpg) no-repeat top center/100% auto;
    */
  }
}

/* ----------------------------------------------------------------------------------------------------
*	モーダル
* --------------------------------------------------------------------------------------------------*/
body {
  position: relative;
}

#sk-campaign {
  background-color: rgba(255, 255, 255, 0.8);
  width: 100%;
  height: 100%;
  overflow: auto;
  left: 0;
  right: 0;
  position: fixed;
  z-index: 210;
  align-items: center;
  justify-content: center;
  top: 0;
  display: none;
}
#sk-campaign.is-show {
  display: flex;
}
#sk-campaign .camp-closearea {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  cursor: pointer;
}
#sk-campaign a {
  pointer-events: auto;
}
#sk-campaign .p-bnr-content {
  position: relative;
  width: 48.6%;
}
@media screen and (max-width: 640px) {
  #sk-campaign .p-bnr-content {
    width: auto;
    margin-top: 2.8vw;
  }
  #sk-campaign .p-bnr-content:first-child {
    margin-top: 0;
  }
}
#sk-campaign .p-bnr-content__img {
  width: 100%;
  height: auto;
}
#sk-campaign .link-camp {
  width: 72%;
  max-width: 312px;
  height: auto;
  position: absolute;
  z-index: 10;
  display: inline-block;
  bottom: 5%;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (max-width: 640px) {
  #sk-campaign .link-camp {
    width: 79vw;
    margin: 0 auto;
    bottom: 5.2vw;
  }
}
#sk-campaign .mfp-close {
  display: none !important;
}

.sk-campaign__block {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 640px) {
  .sk-campaign__block {
    display: block;
  }
}

.sk-campaign__inner {
  max-width: 960px;
  margin: 0 auto;
  border: 10px solid #9ec2e7;
  background: #9ec2e7;
  position: fixed;
  left: 0;
  right: 0;
  max-height: 705px;
  padding: 20px;
}
@media screen and (max-width: 640px) {
  .sk-campaign__inner {
    width: 96.35%;
    height: 90%;
    border: 0;
    max-height: inherit;
    padding: 11.3vw 3.9vw 3.9vw;
  }
}
.sk-campaign__inner .popup-modal-dismiss {
  position: absolute;
  top: -10px;
  right: -10px;
  width: 36px;
  height: auto;
  aspect-ratio: 1/1;
  cursor: pointer;
  z-index: 10;
}
@media screen and (max-width: 640px) {
  .sk-campaign__inner .popup-modal-dismiss {
    width: 8.5vw;
    top: 1.7vw;
    right: 1.7vw;
  }
  .sk-campaign__inner .popup-modal-dismiss img {
    width: 100%;
    height: auto;
  }
}
.sk-campaign__inner .popup-modal-dismiss a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}
.sk-campaign__inner .popup-modal-dismiss a:hover {
  opacity: 1 !important;
}

.p-campaign_scroll {
  height: 100%;
  overflow: auto;
}

.p-bnr_float {
  position: fixed;
  bottom: 30px;
  left: auto;
  right: 0;
  z-index: 100;
  pointer-events: none;
  opacity: 0;
  transition: 0.3s;
  width: 156px;
}
@media screen and (max-width: 640px) {
  .p-bnr_float {
    display: flex;
    justify-content: space-between;
    bottom: 0;
    width: 100%;
    left: 0;
  }
}
.p-bnr_float.is-bnr-show {
  pointer-events: auto;
  opacity: 1;
}
.p-bnr_float a {
  display: block;
  margin-top: 24px;
}
.p-bnr_float a:first-child {
  margin-top: 0;
}
@media screen and (max-width: 640px) {
  .p-bnr_float a {
    width: 50%;
    margin-top: 0;
  }
}

body.is-camp-show {
  position: fixed;
  height: 100%;
  width: 100%;
  overflow: hidden;
}

/* ----------------------------------------------------------------------------------------------------
*	スペシャルコラム
* --------------------------------------------------------------------------------------------------*/
.p-column {
  padding: 128px 0 55px 0;
  background: #FFF;
  box-sizing: border-box;
}
@media screen and (max-width: 640px) {
  .p-column {
    padding: 18.8802083333vw 0 13.0208333333vw 0;
  }
}
.p-column__ttl {
  position: relative;
  left: -30px;
  width: 902px;
  text-align: center;
  margin: 0 auto 40px auto !important;
}
@media screen and (max-width: 640px) {
  .p-column__ttl {
    left: 0;
    width: 101.3020833333vw;
    margin: 0 auto 6.5104166667vw auto !important;
  }
}
.p-column__wrap {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 0 30px;
}
@media screen and (max-width: 640px) {
  .p-column__wrap {
    display: block;
  }
}
.p-column__box {
  display: block;
  width: 100%;
  background-repeat: no-repeat !important;
  background-position: center center !important;
  background-size: 100% 100% !important;
  padding: 15px;
  margin-bottom: 30px;
  box-sizing: border-box;
}
@media screen and (max-width: 640px) {
  .p-column__box {
    width: 100%;
    margin: 0 auto;
    max-width: inherit;
    padding: 4.5572916667vw;
    margin-bottom: 0;
  }
}
.p-column__box .ttl {
  margin: 0 auto 5px 0;
}
.p-column__box .text {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: 90px;
  font-size: 1.8rem;
  line-height: 1.6666666667;
  font-weight: 500;
  text-align: center;
  font-family: "Noto Serif JP", serif;
  color: #3f3a39;
}
@media screen and (max-width: 640px) {
  .p-column__box .text {
    font-size: 4.474vw;
    height: 22.7864583333vw;
  }
}
.p-column__box .btn p {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: 266px;
  height: 43px;
  text-align: center;
  margin: 10px auto 0 auto;
  color: #FFF;
  font-size: 1.6rem;
  line-height: 1;
  letter-spacing: 0.075em;
  background: #66ceb5;
  border-radius: 100em;
}
@media screen and (max-width: 640px) {
  .p-column__box .btn p {
    font-size: 4.474vw;
    max-width: 69.342vw;
    height: 11.053vw;
  }
}
.p-column__box.-br {
  width: 0px;
  height: 0px;
  margin-right: 100%;
  padding: 0;
  margin-bottom: 0;
}
@media screen and (max-width: 640px) {
  .p-column__box.-br {
    display: none;
  }
}
.p-column__box.-green {
  background: url("../images/bg_column_green.png");
}
.p-column__box.-pink {
  background: url("../images/bg_column_pink.png");
}
.p-column__box.-white {
  background: url("../images/bg_column_white.png");
}
.p-column__box.-atogaki {
  padding: 15px 16px 15px 20px;
}
@media screen and (max-width: 640px) {
  .p-column__box.-atogaki {
    padding: 7.8125vw 4.5572916667vw 4.5572916667vw 4.5572916667vw;
  }
  .p-column__box.-atogaki .ttl {
    margin-left: 5.2083333333vw;
  }
}
.p-column__wrap02 {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  width: 738px;
  margin: 0 auto;
}
@media screen and (max-width: 640px) {
  .p-column__wrap02 {
    align-items: flex-start;
    margin-top: 18.8802083333vw;
    width: 100%;
  }
}
.p-column__wrap02 .flex__img {
  width: 117px;
}
@media screen and (max-width: 640px) {
  .p-column__wrap02 .flex__img {
    width: 28.947vw;
  }
}
.p-column__wrap02 .flex__txt {
  width: calc(100% - 117px);
  padding-left: 15px;
  box-sizing: border-box;
}
@media screen and (max-width: 640px) {
  .p-column__wrap02 .flex__txt {
    width: calc(100% - 28.947vw);
    padding-left: 2.6041666667vw;
  }
}
.p-column__wrap02 .flex__txt .name {
  font-size: 2.2rem;
  line-height: 2;
  font-weight: 400;
}
@media screen and (max-width: 640px) {
  .p-column__wrap02 .flex__txt .name {
    font-size: 4.474vw;
  }
}
.p-column__wrap02 .flex__txt .name .kana {
  position: relative;
  top: -3px;
  font-size: 1.4rem;
}
@media screen and (max-width: 640px) {
  .p-column__wrap02 .flex__txt .name .kana {
    font-size: 3.158vw;
  }
}
.p-column__wrap02 .flex__txt .txt {
  font-size: 1.4rem;
  line-height: 1.8571428571;
  font-weight: 400;
  letter-spacing: 0.05em;
  font-feature-settings: "palt";
  text-align: justify;
}
@media screen and (max-width: 640px) {
  .p-column__wrap02 .flex__txt .txt {
    font-size: 3.158vw;
  }
}
.p-column .swiper {
  overflow: visible;
}
@media print, screen and (min-width: 641px) {
  .p-column .swiper-wrapper {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    flex-wrap: wrap;
    gap: 0 30px;
  }
  .p-column .swiper-slide {
    width: calc((100% - 60px) / 3);
    max-width: 307px;
  }
}
.p-column .swiper-pagination,
.p-column .swiper-button-prev,
.p-column .swiper-button-next {
  display: none;
}
@media screen and (max-width: 640px) {
  .p-column .swiper-pagination {
    display: block;
    bottom: -8.158vw;
  }
  .p-column .swiper-pagination .swiper-pagination-bullet {
    background: #b0e5d9;
    width: 2.6041666667vw;
    height: 2.6041666667vw;
    margin: 0 2.6041666667vw;
    opacity: 1;
  }
  .p-column .swiper-pagination .swiper-pagination-bullet-active {
    background: #00a484;
  }
  .p-column .swiper-button-prev,
  .p-column .swiper-button-next {
    display: block;
    position: absolute;
    top: auto;
    bottom: -9.868vw;
    width: 8.0729166667vw;
    height: 8.0729166667vw;
    cursor: pointer;
    z-index: 999;
    background: none;
  }
  .p-column .swiper-button-prev:after,
  .p-column .swiper-button-next:after {
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    content: "";
    background: url("../images/arrow_slide_l.svg") no-repeat center center;
    background-size: 100% auto !important;
    width: 8.0729166667vw;
    height: 8.0729166667vw;
  }
  .p-column .swiper-button-prev {
    left: 0;
  }
  .p-column .swiper-button-next {
    right: 0;
  }
  .p-column .swiper-button-next:after {
    background: url("../images/arrow_slide_r.svg") no-repeat center center;
  }
}

/* Column modal */
/* mfp-content */
.mfp-fade01.mfp-wrap .mfp-content {
  opacity: 0;
  transition: all 0.4s 0s ease-out;
}

.mfp-fade01.mfp-wrap.mfp-ready .mfp-content {
  opacity: 1;
}

.mfp-fade01.mfp-wrap.mfp-removing .mfp-content {
  opacity: 0;
}

.mfp-fade01 .remodal .modal_wrap {
  transform: translate(-50%, 100%);
  transition: transform 0.4s 0s ease-out;
}

.mfp-fade01.mfp-ready .remodal .modal_wrap {
  transform: translate(-50%, 0);
}

.mfp-fade01.mfp-wrap.mfp-removing .remodal .modal_wrap {
  transform: translate(-50%, 100%);
}

.mfp-bg {
  background: none;
}

.mfp-preloader {
  display: none;
}

.modal_wrapper {
  position: relative;
}

.mfp-content {
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  margin: auto;
}

.mfp-container {
  position: relative;
}

.remodal {
  width: 100%;
  height: 100%;
}
.remodal .modal_wrap {
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 100%;
  max-width: 660px;
  height: 94%;
  transform: translate(-50%, 100%);
  z-index: 100;
}
@media screen and (max-width: 640px) {
  .remodal .modal_wrap {
    width: 100%;
    max-width: inherit;
    height: 94%;
  }
}
.remodal .remodal-bg {
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(176, 229, 217, 0.5);
  z-index: 1;
}

.remodal-close {
  position: absolute;
  top: 26px;
  right: 28px;
  width: 30px;
  height: 30px;
  color: #66ceb5;
  opacity: 1 !important;
  cursor: pointer;
}
@media screen and (max-width: 640px) {
  .remodal-close {
    top: 6.5104166667vw;
    right: 6.5104166667vw;
    width: 6.7708333333vw;
    height: 6.7708333333vw;
  }
}
.remodal-close:before, .remodal-close:after {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  display: block;
  content: "";
  margin: auto;
  width: 40px;
  height: 1px;
  background: #66ceb5;
  transform: rotate(45deg);
}
@media screen and (max-width: 640px) {
  .remodal-close:before, .remodal-close:after {
    width: 6.25vw;
    height: 1px;
  }
}
.remodal-close:after {
  transform: rotate(-45deg);
}
@media print, screen and (min-width: 641px) {
  .remodal-close:hover {
    opacity: 0.75 !important;
  }
}

.modal_cnts {
  position: relative;
  padding: 35px 10px 0 10px;
  background: #FFF;
  background-size: cover !important;
  height: 100%;
  border-radius: 24px 24px 0 0;
  box-sizing: border-box;
}
@media screen and (max-width: 640px) {
  .modal_cnts {
    padding: 7.421875vw 1.3020833333vw 0 1.3020833333vw;
    border-radius: 5.2083333333vw 5.2083333333vw 0 0;
  }
}
.modal_cnts .mt0 {
  margin-top: 0 !important;
}
.modal_cnts .scroll__inner {
  position: relative;
  height: 100%;
  padding: 0 90px;
  overflow-y: auto;
  -ms-overflow-style: none;
  scrollbar-width: none;
}
@media screen and (max-width: 640px) {
  .modal_cnts .scroll__inner {
    padding: 0 5.2083333333vw;
  }
}

.post-column__detail {
  position: relative;
  padding-top: 25px;
  padding-bottom: 25px;
}
@media screen and (max-width: 640px) {
  .post-column__detail {
    padding-top: 14.3229166667vw;
    padding-bottom: 7.8125vw;
  }
}
.post-column__detail:before {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  content: "";
  background-size: 100% auto !important;
}
.post-column__detail .post-ttl {
  text-align: left;
  font-size: 2.4rem;
  line-height: 1.5833333333;
  font-weight: 600;
  font-feature-settings: "palt";
  font-family: "Noto Serif JP", serif !important;
}
@media screen and (max-width: 640px) {
  .post-column__detail .post-ttl {
    font-size: 5.526vw;
    margin-top: 2.6041666667vw;
    margin-bottom: 0;
  }
}
.post-column__detail .post-ttl .small {
  display: block;
  font-size: 1.6rem;
  line-height: 2;
  font-weight: 700;
}
@media screen and (max-width: 640px) {
  .post-column__detail .post-ttl .small {
    font-size: 3.158vw;
  }
}
.post-column__detail .post-cnts {
  margin-top: 30px;
}
@media screen and (max-width: 640px) {
  .post-column__detail .post-cnts {
    margin-top: 5.2083333333vw;
  }
}
.post-column__detail .post-cnts h3 {
  text-align: left;
  font-size: 2rem;
  line-height: 1.75;
  font-weight: 600;
  font-family: "Noto Serif JP", serif !important;
  font-feature-settings: "palt";
  color: #00a484;
  margin-bottom: 5px;
}
@media screen and (max-width: 640px) {
  .post-column__detail .post-cnts h3 {
    font-size: 4.737vw;
  }
}
.post-column__detail .post-cnts p, .post-column__detail .post-cnts li {
  font-size: 1.6rem;
  line-height: 2;
  font-weight: 500;
  letter-spacing: -0.05em;
  font-feature-settings: "palt";
  font-family: "Noto Serif JP", serif !important;
  text-align: justify;
}
@media screen and (max-width: 640px) {
  .post-column__detail .post-cnts p, .post-column__detail .post-cnts li {
    font-size: 3.947vw;
  }
}
.post-column__detail .post-cnts p.post-lead, .post-column__detail .post-cnts li.post-lead {
  font-size: 1.6rem;
  line-height: 2;
  font-weight: 700;
  letter-spacing: -0.05em;
  font-feature-settings: "palt";
  color: #00a484;
  margin: 30px 0;
}
@media screen and (max-width: 640px) {
  .post-column__detail .post-cnts p.post-lead, .post-column__detail .post-cnts li.post-lead {
    margin: 3.90625vw 0;
    font-size: 3.947vw;
  }
}
.post-column__detail .post-cnts .small {
  font-size: 80%;
}
.post-column__detail .post-cnts ol li {
  text-indent: -1.7rem;
  margin-left: 1.7rem;
}
@media screen and (max-width: 640px) {
  .post-column__detail .post-cnts ol li {
    text-indent: -3.515625vw;
    margin-left: 3.515625vw;
  }
}
.post-column__detail .post-cnts a {
  text-decoration: underline;
  font-family: "Noto Serif JP", serif !important;
}
@media print, screen and (min-width: 641px) {
  .post-column__detail .post-cnts a:hover {
    text-decoration: none;
  }
}
.post-column__detail .post-cnts * + h3,
.post-column__detail .post-cnts * + div,
.post-column__detail .post-cnts * + p {
  margin-top: 20px;
}
@media screen and (max-width: 640px) {
  .post-column__detail .post-cnts * + h3,
  .post-column__detail .post-cnts * + div,
  .post-column__detail .post-cnts * + p {
    margin-top: 4.5572916667vw;
  }
}
.post-column__detail .post-cnts h3 + p {
  margin-top: 0;
}
@media screen and (max-width: 640px) {
  .post-column__detail .post-cnts h3 + p {
    margin-top: 2.6041666667vw;
  }
}
.post-column__detail .post-cnts .sup {
  font-size: 1.2rem;
  line-height: 1.6666666667;
  font-weight: 500;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 640px) {
  .post-column__detail .post-cnts .sup {
    font-size: 3.158vw;
  }
}
.post-column__detail .sub {
  vertical-align: bottom;
  font-size: 58%;
  line-height: 1.65;
}
.post-column__detail p.note,
.post-column__detail .post-cnts p.note {
  margin-top: 30px;
  font-size: 1.2rem;
  line-height: 1.6666666667;
  font-weight: 500;
  letter-spacing: 0.05em;
  color: #9e9e9e;
}
@media screen and (max-width: 640px) {
  .post-column__detail p.note,
  .post-column__detail .post-cnts p.note {
    margin-top: 5.859375vw;
    font-size: 3.158vw;
  }
}
.post-column__detail .sign {
  width: 230px;
  text-align: right !important;
  margin: 20px 0 0 auto;
}
@media screen and (max-width: 640px) {
  .post-column__detail .sign {
    margin-top: 4.5572916667vw;
    width: 52.0833333333vw;
  }
}

.ps .ps__rail-x,
.ps .ps__rail-y {
  display: block !important;
  opacity: 1 !important;
}

.ps__thumb-y {
  background: #c0c0c0 !important;
}

#popup-column01 .post-column__detail:before {
  background: url("../images/txt_vol1.svg") no-repeat center center;
  width: 83px;
  height: 42px;
}
@media screen and (max-width: 640px) {
  #popup-column01 .post-column__detail:before {
    width: 21.09375vw;
    height: 10.8072916667vw;
  }
}

#popup-column02 .post-column__detail:before {
  background: url("../images/txt_vol2.svg") no-repeat center center;
  width: 93px;
  height: 43px;
}
@media screen and (max-width: 640px) {
  #popup-column02 .post-column__detail:before {
    width: 23.6979166667vw;
    height: 10.9375vw;
  }
}
#popup-column02 .post-column__detail .post-ttl {
  margin-bottom: 10px;
}

#popup-column03 .post-column__detail:before {
  background: url("../images/txt_vol3.svg") no-repeat center center;
  width: 91px;
  height: 43px;
}
@media screen and (max-width: 640px) {
  #popup-column03 .post-column__detail:before {
    width: 23.1770833333vw;
    height: 10.9375vw;
  }
}

#popup-column04 .post-column__detail:before {
  background: url("../images/txt_vol4.svg") no-repeat center center;
  width: 94px;
  height: 43px;
}
@media screen and (max-width: 640px) {
  #popup-column04 .post-column__detail:before {
    width: 23.9583333333vw;
    height: 10.8072916667vw;
  }
}

#popup-column05 .post-column__detail:before {
  background: url("../images/txt_vol5.svg") no-repeat center center;
  width: 91px;
  height: 44px;
}
@media screen and (max-width: 640px) {
  #popup-column05 .post-column__detail:before {
    width: 23.1770833333vw;
    height: 11.328125vw;
  }
}

#popup-column06 .post-column__detail:before {
  background: url("../images/txt_vol6.svg") no-repeat center center;
  width: 86px;
  height: 46px;
}
@media screen and (max-width: 640px) {
  #popup-column06 .post-column__detail:before {
    width: 21.7447916667vw;
    height: 11.71875vw;
  }
}
#popup-column06 .post-column__detail .post-ttl {
  margin-bottom: 10px;
}

#popup-column07 .post-column__detail:before {
  background: url("../images/txt_vol7.svg") no-repeat center center;
  width: 94px;
  height: 44px;
}
@media screen and (max-width: 640px) {
  #popup-column07 .post-column__detail:before {
    width: 23.9583333333vw;
    height: 11.1979166667vw;
  }
}

@media screen and (max-width: 640px) {
  #popup-column_atogaki .post-column__detail {
    padding-top: 6.5104166667vw;
  }
}
#popup-column_atogaki .post-column__detail:before {
  right: 0;
  margin: 0 auto;
  background: url("../images/txt_atogaki.svg") no-repeat center center;
  width: 104px;
  height: 29px;
}
@media screen and (max-width: 640px) {
  #popup-column_atogaki .post-column__detail:before {
    width: 23.046875vw;
    height: 6.5104166667vw;
  }
}

/* ----------------------------------------------------------------------------------------------------
*	アンバサダー
* --------------------------------------------------------------------------------------------------*/
.p-ambassador {
  padding: 130px 0;
}
@media screen and (max-width: 640px) {
  .p-ambassador {
    padding: 20vw 0;
  }
}
.p-ambassador .btn {
  width: 985px;
  margin: 0 auto;
  background: #fff;
  position: relative;
}
@media screen and (max-width: 640px) {
  .p-ambassador .btn {
    width: 100%;
  }
}
.p-ambassador .btn .img {
  background: url("../images/img_ambassador_pc.jpg") no-repeat center/cover;
  height: 600px;
  display: block;
}
@media screen and (max-width: 640px) {
  .p-ambassador .btn .img {
    background-image: url("../images/img_ambassador_sp.jpg");
    height: 113.28125vw;
  }
}
@media print {
  .p-ambassador .btn .img {
    display: none;
  }
}
.p-ambassador .transparent {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}

/* ----------------------------------------------------------------------------------------------------
*	スキコンキット
* --------------------------------------------------------------------------------------------------*/
.p-popup-kit {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 999;
  overflow-x: auto;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.6s ease;
}
.p-popup-kit.is-show {
  opacity: 1;
  pointer-events: auto;
}
.p-popup-kit .overlay {
  background: #000;
  opacity: 0.3;
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.p-popup-kit .inner {
  width: 950px;
  height: 550px;
  position: absolute;
  left: 50%;
  top: 50%;
  translate: -50% -50%;
  z-index: 10;
}
@media screen and (max-width: 640px) {
  .p-popup-kit .inner {
    width: 84.375vw;
    height: 127.6041666667vw;
  }
}
.p-popup-kit .wrap {
  background: url("../images/kit_bg_pc.png") no-repeat center/contain;
  padding: 70px;
  position: relative;
}
@media screen and (max-width: 640px) {
  .p-popup-kit .wrap {
    background-image: url("../images/kit_bg_sp.png");
    padding: 8vw 5vw;
  }
}
.p-popup-kit .wrap .ttl {
  text-align: center;
  margin-bottom: 50px;
}
.p-popup-kit .wrap .ttl img {
  width: 530px;
}
@media screen and (max-width: 640px) {
  .p-popup-kit .wrap .ttl {
    margin-bottom: 7vw;
  }
  .p-popup-kit .wrap .ttl img {
    width: 52.0833333333vw;
  }
}
.p-popup-kit .wrap .flex {
  display: flex;
  justify-content: center;
  gap: 80px;
  text-align: center;
}
.p-popup-kit .wrap .flex .itme {
  flex: 1;
}
.p-popup-kit .wrap .flex .itme a {
  display: block;
}
.p-popup-kit .wrap .flex .sttl {
  height: 46px;
  margin-bottom: 20px;
}
.p-popup-kit .wrap .flex .sttl img {
  height: 100%;
}
.p-popup-kit .wrap .flex .img {
  height: 150px;
  margin-bottom: 20px;
}
.p-popup-kit .wrap .flex .img img {
  height: 100%;
}
.p-popup-kit .wrap .flex .txt {
  color: #595757;
  font-size: 1.2rem;
  line-height: 1.6;
}
.p-popup-kit .wrap .flex .txt .small {
  font-size: 90%;
}
.p-popup-kit .wrap .flex .txt strong {
  font-weight: normal;
  text-decoration: underline;
}
@media screen and (max-width: 640px) {
  .p-popup-kit .wrap .flex {
    flex-direction: column;
    gap: 6vw;
  }
  .p-popup-kit .wrap .flex .item a {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
  }
  .p-popup-kit .wrap .flex .sttl {
    height: 9.5052083333vw;
    margin-bottom: 3vw;
    width: 100%;
  }
  .p-popup-kit .wrap .flex .img {
    flex: 0 0 auto;
    width: 40%;
    height: 21.875vw;
    margin: 0;
  }
  .p-popup-kit .wrap .flex .img img {
    max-width: 100%;
  }
  .p-popup-kit .wrap .flex .txt {
    flex: 0 0 auto;
    width: 60%;
    padding-left: 1em;
    font-size: 3.125vw;
    text-align: left;
    white-space: nowrap;
  }
}
.p-popup-kit .wrap .caution {
  color: #595757;
  font-size: 1rem;
  line-height: 1.6;
  text-align: center;
  margin-top: 40px;
}
@media screen and (max-width: 640px) {
  .p-popup-kit .wrap .caution {
    font-size: 2.4739583333vw;
    margin-top: 7vw;
    white-space: nowrap;
  }
}
.p-popup-kit .badge {
  position: absolute;
  left: 0;
  top: 0;
  translate: -30% -30%;
  width: 200px;
}
@media screen and (max-width: 640px) {
  .p-popup-kit .badge {
    left: auto;
    right: 0;
    translate: 20% -30%;
    width: 22.1354166667vw;
  }
}
.p-popup-kit .close {
  font-size: 0;
  width: 50px;
  height: 50px;
  position: absolute;
  right: 0;
  bottom: 100%;
  margin-bottom: 20px;
  cursor: pointer;
  transition: opacity 0.3s ease;
}
.p-popup-kit .close:hover {
  opacity: 0.6;
}
.p-popup-kit .close::before, .p-popup-kit .close::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  translate: -50% -50%;
  rotate: 45deg;
  width: 100%;
  height: 1px;
  background: #fff;
}
.p-popup-kit .close::after {
  width: 1px;
  height: 100%;
}
@media screen and (max-width: 640px) {
  .p-popup-kit .close {
    bottom: auto;
    top: 100%;
    margin: 3vw 0 0;
    width: 8vw;
    height: 8vw;
  }
}

.p-popup-btn {
  width: 250px;
}
@media screen and (max-width: 640px) {
  .p-popup-btn {
    width: 100%;
  }
}
.p-popup-btn img {
  width: 100%;
}
@media screen and (max-width: 640px) {
  .p-popup-btn img {
    width: 103%;
    translate: -1% 18%;
    max-width: inherit;
  }
}
.p-popup-btn .hover {
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  padding: 11.5px 24px 24px 12px;
  transition: opacity 0.3s ease;
}
.p-popup-btn:hover .hover {
  opacity: 1;
}
