@charset "UTF-8";
/*--------------------------------
   Media Queries (1400px ~ 1400px)
 --------------------------------*/
@media only screen and (min-width: 481px) and (max-width: 1400px) {
  html {
    font-size: calc(10 * (100vw/1400));
  }
}
@media only screen and (max-width: 480px) {
  html {
    font-size: calc(10 * (100vw/480));
  }
}
/*------------------------------------
≡≡≡≡≡≡≡≡≡≡ ▼ S e t U p SP ▼ ≡≡≡≡≡≡≡≡≡≡
------------------------------------*/
#Contents {
  overflow: hidden;
}

.lp_contents {
  transition: all 1s ease;
  background-color: var(--color-background1);
  color: var(--color-text);
  font-family: var(--font-en), var(--font-jp), sans-serif;
  font-weight: normal;
  font-style: normal;
  font-feature-settings: "palt";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  width: 100%;
  max-width: calc(780 * 48rem/780);
}
.lp_contents[data-color=mv], .lp_contents[data-color=anchorLink] {
  background-color: var(--color-background1);
}
.lp_contents[data-color=contensWrap], .lp_contents[data-color=buttonWrap] {
  background-color: var(--color-background2);
}
.lp_contents img,
.lp_contents svg {
  display: block;
  opacity: 1;
  width: 100%;
  height: auto;
}
.lp_contents img {
  image-rendering: -webkit-optimize-contrast;
}
.lp_contents picture {
  display: block;
}
.lp_contents a {
  display: block;
  color: inherit;
}
.lp_contents *:focus {
  outline: none;
}
.lp_contents a,
.lp_contents label {
  -webkit-tap-highlight-color: rgba(224, 139, 137, 0.2);
}
.lp_contents input {
  display: none;
}
.lp_contents li,
.lp_contents ol {
  list-style-type: none;
}
.lp_contents .spOnly {
  display: block;
}
.lp_contents .pcOnly {
  display: none;
}
.lp_contents ::-moz-selection {
  color: #fff;
  background-color: rgba(224, 139, 137, 0.8);
}
.lp_contents ::selection {
  color: #fff;
  background-color: rgba(224, 139, 137, 0.8);
}
.lp_contents #share img {
  margin: auto;
}
.lp_contents sup {
  font-size: 0.6em;
}
.lp_contents .mv__img img,
.lp_contents .anim {
  opacity: 0;
}
.lp_contents .anim_enable {
  -webkit-animation: opa 1.2s cubic-bezier(0.51, 0.21, 0.41, 1) 1 forwards;
          animation: opa 1.2s cubic-bezier(0.51, 0.21, 0.41, 1) 1 forwards;
}
@-webkit-keyframes opa {
  2% {
    transform: translateY(20px);
    opacity: 0;
    filter: blur(0.8rem);
  }
  100% {
    transform: translateY(0);
    opacity: 1;
    filter: blur(0);
  }
}
@keyframes opa {
  2% {
    transform: translateY(20px);
    opacity: 0;
    filter: blur(0.8rem);
  }
  100% {
    transform: translateY(0);
    opacity: 1;
    filter: blur(0);
  }
}

/* .lp_contents : set up SP*/
/*------------------------------------
≡≡≡≡≡≡≡≡ ▼ Layout SP First ▼ ≡≡≡≡≡≡≡≡
 ------------------------------------*/
/*------------------------------------
≡≡≡≡≡≡≡≡≡≡ ▼ layout  SP ▼ ≡≡≡≡≡≡≡≡≡≡
------------------------------------*/
.lp_contents {
  --color-text: #282828;
  --color-primary: #e08b89;
  --color-background1: #f9f7f2;
  --color-background2: #fbf1f1;
  --font-jp: "ryo-gothic-plusn";
  --font-en: "Lato";
  --font-Liebling: "liebling";
  --font-CoFoRaffine: "cofo-raffine";
}
.lp_contents .section__hero {
  position: relative;
  z-index: 0;
}
.lp_contents .section__hero::before, .lp_contents .section__hero::after {
  content: "";
  position: absolute;
  pointer-events: none;
  z-index: 1;
}
.lp_contents .section__hero::after {
  bottom: calc(-48 * 48rem/780);
  right: 0;
  width: calc(330 * 48rem/780);
  height: calc(370 * 48rem/780);
}
.lp_contents .section__hero__textBox {
  margin-right: calc(60 * 48rem/780);
  margin-bottom: calc(49 * 48rem/780);
  padding-top: calc(60 * 48rem/780);
  padding-left: calc(60 * 48rem/780);
  padding-bottom: calc(30 * 48rem/780);
  border-bottom: 1px solid;
  text-align: left;
}
.lp_contents .section__hero__textBox .head {
  margin-bottom: calc(27 * 48rem/780);
  font-size: calc(26 * 48rem/780);
  line-height: 1;
  letter-spacing: 0.025em;
}
.lp_contents .section__hero__textBox .head .strong {
  padding-left: calc(7 * 48rem/780);
  padding-right: calc(3 * 48rem/780);
  color: var(--color-primary);
  font-size: 1.5em;
}
.lp_contents .section__hero__textBox .title {
  margin-bottom: calc(15 * 48rem/780);
  font-size: calc(48 * 48rem/780);
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
.lp_contents .section__hero__textBox .text {
  font-size: calc(22 * 48rem/780);
  line-height: 2;
  letter-spacing: 0;
}
.lp_contents .section__hero__creditBox {
  padding-inline: calc(60 * 48rem/780);
  margin-bottom: calc(92 * 48rem/780);
}
.lp_contents .section__hero__creditBox .info-text {
  margin-bottom: calc(24 * 48rem/780);
  font-size: calc(22 * 48rem/780);
  line-height: 2;
  letter-spacing: 0;
}
.lp_contents .section__commentWrap {
  margin: 0 auto calc(148 * 48rem/780);
  text-align: center;
  width: calc(702 * 48rem/780);
}
.lp_contents .section__comment {
  padding: calc(42 * 48rem/780) calc(61 * 48rem/780) calc(60 * 48rem/780);
  border: 1px solid;
  text-align: left;
}
.lp_contents .section__comment__inner:nth-of-type(n+2) {
  margin-top: calc(40 * 48rem/780);
  padding-top: calc(43 * 48rem/780);
  border-top: 1px solid;
}
.lp_contents .section__comment__head {
  margin-bottom: calc(31 * 48rem/780);
  color: var(--color-primary);
  font-family: var(--font-jp), sans-serif;
  font-size: calc(32 * 48rem/780);
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.025em;
}
.lp_contents .section__comment__text {
  font-size: calc(28 * 48rem/780);
  line-height: 2;
  letter-spacing: 0.025em;
  text-align: justify;
}
.lp_contents .section__comment__commenter {
  display: flex;
  justify-content: space-between;
  margin-top: calc(26 * 48rem/780);
}
.lp_contents .section__comment__commenter .section__comment__name {
  margin-top: calc(3 * 48rem/780);
  font-size: calc(32 * 48rem/780);
  line-height: 1.85;
  letter-spacing: 0.025em;
}
.lp_contents .section__comment__commenter .section__comment__name .title {
  font-size: calc(28 * 48rem/780);
}
.lp_contents .section__comment__commenter .section__comment__name small {
  font-size: calc(28 * 48rem/780);
}
.lp_contents .section__comment__commenter img {
  width: calc(150 * 48rem/780);
}
.lp_contents .section .tips__accordionBox {
  margin: 0 auto;
  text-align: center;
  width: calc(660 * 48rem/780);
}
.lp_contents .section .section__tips__textBox {
  margin-top: calc(48 * 48rem/780);
}
.lp_contents .section__tips__text {
  font-size: calc(28 * 48rem/780);
  line-height: 2;
  letter-spacing: 0.025em;
  text-align: justify;
}
.lp_contents .section__tips__text:nth-of-type(n+2) {
  margin-top: calc(31 * 48rem/780);
}
.lp_contents .section__tips__text .color {
  color: var(--color-primary);
}
.lp_contents .section__tips__text a {
  display: inline;
  text-decoration: underline;
}
.lp_contents .button--detail {
  font-size: calc(22 * 48rem/780);
  letter-spacing: 0.01em;
  line-height: 1;
  text-decoration: underline;
}
.lp_contents .button--all {
  display: inline-block;
  padding: calc(52 * 48rem/780) calc(10 * 48rem/780) calc(45 * 48rem/780);
  border: 1px solid var(--color-primary);
  border-radius: 100px;
  color: var(--color-primary);
  -webkit-clip-path: border-box;
          clip-path: border-box;
  font-family: var(--font-Liebling), sans-serif;
  font-size: calc(52 * 48rem/780);
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1;
  text-align: center;
  width: calc(600 * 48rem/780);
}
.lp_contents .accordionBox.open .accordionBox__inner::after {
  opacity: 0;
  visibility: hidden;
}
.lp_contents .accordionBox.open .accordion__button::after {
  background: center/contain no-repeat url(../img/close.svg);
}
.lp_contents .accordionBox__inner {
  position: relative;
  transition: all 0.8s ease-in-out;
  overflow: hidden;
  z-index: 0;
}
.lp_contents .accordionBox__inner::after {
  transition: all 0.6s ease;
  content: "";
  position: absolute;
  bottom: calc(-1 * 48rem/780);
  left: 0;
  width: 100%;
  height: calc(197 * 48rem/780);
  z-index: 1;
}
.lp_contents .accordionBox .text:nth-child(1) {
  margin-top: calc(42 * 48rem/780);
}
.lp_contents .accordionBox .accordion__button {
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  row-gap: calc(20 * 48rem/780);
  padding-top: calc(39 * 48rem/780);
  padding-bottom: calc(36 * 48rem/780);
  font-family: var(--font-Liebling), sans-serif;
  font-size: calc(28 * 48rem/780);
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.075em;
  cursor: pointer;
}
.lp_contents .accordionBox .accordion__button::after {
  content: "";
  width: calc(62 * 48rem/780);
  height: calc(23 * 48rem/780);
  background: center/contain no-repeat url(../img/arrow.svg);
  z-index: 0;
}
.lp_contents .mv__accordionBox.open .accordionBox__inner {
  max-height: calc(960 * 48rem/780);
}
.lp_contents .mv__accordionBox.open .accordion__button {
  padding-top: calc(48 * 48rem/780);
}
.lp_contents .mv__accordionBox .accordionBox__inner {
  max-height: calc(311 * 48rem/780);
}
.lp_contents .mv__accordionBox .accordionBox__inner::after {
  background: linear-gradient(1800deg, rgb(249, 247, 242) 0%, rgba(249, 247, 242, 0) 100%);
}
.lp_contents .comment__accordionBox.open .accordionBox__inner {
  max-height: calc(1680 * 48rem/780);
}
.lp_contents .comment__accordionBox .accordionBox__inner {
  max-height: calc(999 * 48rem/780);
}
.lp_contents .comment__accordionBox .accordionBox__inner::after {
  background: linear-gradient(1800deg, rgb(251, 241, 241) 0%, rgba(249, 247, 242, 0) 100%);
}
.lp_contents .tips__accordionBox.open .accordionBox__inner {
  max-height: calc(1680 * 48rem/780);
}
.lp_contents .tips__accordionBox.open .accordion__button {
  padding-top: calc(28 * 48rem/780);
}
.lp_contents .tips__accordionBox .accordionBox__inner {
  max-height: calc(316 * 48rem/780);
}
.lp_contents .tips__accordionBox .accordionBox__inner::after {
  background: linear-gradient(1800deg, rgb(251, 241, 241) 0%, rgba(249, 247, 242, 0) 100%);
}
.lp_contents .headding-title {
  display: inline-block;
  padding: calc(16 * 48rem/780) calc(35 * 48rem/780) calc(13 * 48rem/780);
  border: 1px solid;
  border-radius: 100px;
  font-family: var(--font-Liebling), sans-serif;
  font-size: calc(28 * 48rem/780);
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.075em;
}
.lp_contents .mv {
  position: relative;
  margin-bottom: calc(113 * 48rem/780);
  z-index: 0;
}
.lp_contents .mv__img {
  position: relative;
  margin-bottom: calc(70 * 48rem/780);
  z-index: 0;
}
.lp_contents .mv__img::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: center/cover no-repeat url(../img/mv_text.png);
  z-index: 1;
}
.lp_contents .mv__text {
  position: absolute;
  right: calc(40 * 48rem/780);
  bottom: calc(18 * 48rem/780);
  color: #fff;
  font-size: calc(22 * 48rem/780);
  line-height: 2;
  letter-spacing: 0.025em;
  width: calc(460 * 48rem/780);
  z-index: 2;
}
.lp_contents .mv__read--title {
  margin-bottom: calc(35 * 48rem/780);
  color: var(--color-primary);
  font-size: calc(32 * 48rem/780);
  font-weight: 500;
  line-height: 1.75;
  letter-spacing: 0.05em;
  text-align: center;
}
.lp_contents .mv__read--text {
  margin-bottom: calc(70 * 48rem/780);
  padding-inline: calc(60 * 48rem/780);
  font-size: calc(22 * 48rem/780);
  line-height: 2;
  letter-spacing: 0;
  text-align: justify;
}
.lp_contents .mv__accordionBox {
  margin-left: calc(40 * 48rem/780);
  margin-right: calc(58 * 48rem/780);
  text-align: center;
}
.lp_contents .mv__accordionBox .accordionBox__text {
  border-top: 1px solid;
  border-left: 1px solid;
  padding-top: calc(24 * 48rem/780);
  padding-left: calc(38 * 48rem/780);
  font-size: calc(28 * 48rem/780);
  line-height: 2;
  letter-spacing: 0.05em;
  text-align: justify;
}
.lp_contents .mv__accordionBox .accordionBox__text::first-letter {
  float: left;
  margin: 0 calc(10 * 48rem/780) 0 0;
  color: var(--color-primary);
  font-size: calc(75 * 48rem/780);
  font-weight: 500;
  line-height: 1.4;
}
.lp_contents .mv .accordionBox__text {
  margin-bottom: calc(-14 * 48rem/780);
}
.lp_contents .mv .accordion__button {
  margin-left: calc(18 * 48rem/780);
}
.lp_contents .anchorLink {
  margin-bottom: calc(249 * 48rem/780);
  text-align: center;
}
.lp_contents .anchorLink__list {
  display: flex;
  justify-content: center;
  margin-top: calc(60 * 48rem/780);
}
.lp_contents .anchorLink__item {
  position: relative;
  padding-bottom: calc(46 * 48rem/780);
  color: var(--color-primary);
  width: calc(240 * 48rem/780);
  z-index: 0;
}
.lp_contents .anchorLink__item::after {
  content: "";
  position: absolute;
  margin: auto;
  bottom: 0;
  left: 0;
  right: 0;
  width: calc(61 * 48rem/780);
  height: calc(22 * 48rem/780);
  -webkit-mask-image: url(../img/arrow.svg);
          mask-image: url(../img/arrow.svg);
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  background-color: var(--color-primary);
  z-index: 0;
}
.lp_contents .anchorLink .anchorLinkimg {
  margin: 0 auto calc(27 * 48rem/780);
  width: calc(146 * 48rem/780);
}
.lp_contents .anchorLink .anchorLinknum {
  margin-bottom: calc(6 * 48rem/780);
  font-family: var(--font-CoFoRaffine), sans-serif;
  font-weight: 400;
  font-size: calc(60 * 48rem/780);
  line-height: 1;
  letter-spacing: 0;
}
.lp_contents .anchorLink .anchorLinktext {
  margin-bottom: calc(5 * 48rem/780);
  font-family: var(--font-Liebling), sans-serif;
  font-weight: 400;
  font-size: calc(24 * 48rem/780);
  line-height: 1;
  letter-spacing: 0.075em;
}
.lp_contents .coralcharm {
  margin-bottom: calc(273 * 48rem/780);
}
.lp_contents .coralcharm .section__hero::before {
  top: calc(-49 * 48rem/780);
  left: 0;
  width: calc(99 * 48rem/780);
  height: calc(768 * 48rem/780);
  background: center/contain no-repeat url(../img/coralcharm_head.svg);
}
.lp_contents .coralcharm .section__hero::after {
  background: center/contain no-repeat url(../img/coralcharm_img.png);
}
.lp_contents .purelysweet {
  margin-bottom: calc(208 * 48rem/780);
}
.lp_contents .purelysweet .section__hero::before {
  top: calc(-56 * 48rem/780);
  left: calc(-22 * 48rem/780);
  width: calc(119 * 48rem/780);
  height: calc(830 * 48rem/780);
  background: center/contain no-repeat url(../img/purelysweet_head.svg);
}
.lp_contents .purelysweet .section__hero::after {
  background: center/contain no-repeat url(../img/purelysweet_img.png);
}
.lp_contents .sweetestmoment {
  margin-bottom: calc(112 * 48rem/780);
}
.lp_contents .sweetestmoment .section__hero::before {
  top: calc(-58 * 48rem/780);
  left: 0;
  width: calc(96 * 48rem/780);
  height: calc(1086 * 48rem/780);
  background: center/contain no-repeat url(../img/sweetestmoment_head.svg);
}
.lp_contents .sweetestmoment .section__hero::after {
  background: center/contain no-repeat url(../img/sweetestmoment_img.png);
}
.lp_contents .buttonWrap {
  padding-bottom: calc(90 * 48rem/780);
  text-align: center;
}
.lp_contents .buttonWrap .button {
  margin-bottom: calc(88 * 48rem/780);
}
.lp_contents .buttonWrap .credit {
  margin-right: calc(20 * 48rem/780);
  font-size: calc(22 * 48rem/780);
  line-height: 2;
  letter-spacing: 0;
  text-align: center;
}
.lp_contents .archive_area {
  padding-top: calc(180 * 48rem/780);
}
.lp_contents .followNav {
  position: fixed;
  transition: all 0.6s 0.2s ease;
  transform: translateY(100%);
  bottom: calc(-1 * 48rem/780);
  right: 0;
  visibility: hidden;
  box-sizing: border-box;
  background-color: #fff;
  width: 100%;
  height: calc(123 * 48rem/780);
}
.lp_contents .followNav__nav {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  height: 100%;
}
.lp_contents .followNav__nav__item:nth-of-type(n+2) {
  border-left: 1px solid #d4d4d4;
}
.lp_contents .followNav a {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
}
.lp_contents .followNav a:hover {
  opacity: 1;
}
.lp_contents .followNav a img {
  width: calc(180 * 48rem/780);
}

.followNav.is-visible {
  transform: translateY(0);
  visibility: visible;
  z-index: 101;
}

/* .lp_contents SP*/
/*------------------------------------
≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡ ▼ PC ▼ ≡≡≡≡≡≡≡≡≡≡≡≡≡≡≡
 ------------------------------------*/
@media (min-width: 481px) {
  #Wrap,
main {
    width: 100%;
    max-width: 100%;
  }
  #Contents {
    overflow: unset;
  }
  /*------------------------------------
  ≡≡≡≡≡≡≡≡≡ ▼ S e t U p  PC ▼ ≡≡≡≡≡≡≡≡≡
  ------------------------------------*/
  .lp_contents {
    max-width: 100vw;
  }
  .lp_contents__inner {
    background: transparent;
  }
  .lp_contents a {
    cursor: pointer;
  }
  .lp_contents a:hover {
    opacity: 1;
  }
  .lp_contents .pcOnly {
    display: block;
  }
  .lp_contents .spOnly {
    display: none;
  }
  .lp_contents .fv__mv--text.anim_enable {
    -webkit-animation-delay: 0.8s;
            animation-delay: 0.8s;
  }
  /* .lp_contents : set up PC*/
  /*------------------------------------
  ≡≡≡≡≡≡≡≡≡≡ ▼ layout  PC ▼ ≡≡≡≡≡≡≡≡≡≡
  ------------------------------------*/
  .lp_contents__inner {
    grid-column: 2;
    margin-inline: auto;
    width: calc(480 * 100vw/1400);
  }
  .lp_contents__inner .mv__read--title {
    margin-top: calc(45 * 100vw/1400);
  }
  .lp_contents .howTo,
.lp_contents .accordionBox__button {
    cursor: pointer;
  }
  .lp_contents .fixed_area {
    display: grid;
    grid-template-columns: 1fr 1fr;
    width: 100vw;
    height: 100%;
    margin: 0 auto;
  }
  .lp_contents .fixed_area .fixed_left {
    position: -webkit-sticky;
    position: sticky;
    display: grid;
    top: 0;
    grid-column: 1;
    background-color: #f5f9fc;
    width: 50vw;
    height: 100vh;
  }
  .lp_contents .fixed_area .fixed_left .fixed_left__mv {
    position: absolute;
    top: 0;
    width: 100%;
    height: 100vh;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center top;
       object-position: center top;
  }
  .lp_contents .fixed_area .fixed_left__inner {
    position: relative;
    width: 100%;
    height: 100vh;
    z-index: 1;
  }
  .lp_contents .fixed_area .fixed_left__inner::before {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 24.7rem;
    background: center/cover no-repeat url(../img/shadow.png);
    z-index: 0;
  }
  .lp_contents .fixed_area .fixed_left__inner .mv__logo,
.lp_contents .fixed_area .fixed_left__inner .mv__title,
.lp_contents .fixed_area .fixed_left__inner .mv__img,
.lp_contents .fixed_area .fixed_left__inner .mv__text {
    position: absolute;
    z-index: 1;
  }
  .lp_contents .fixed_area .fixed_left__inner .mv__logo {
    top: calc(30 * 100vw/1400);
    left: calc(30 * 100vw/1400);
    width: calc(86 * 100vw/1400);
    height: calc(18 * 100vw/1400);
  }
  .lp_contents .fixed_area .fixed_left__inner .mv__title {
    margin: auto;
    top: calc(30 * 100vw/1400);
    left: 0;
    right: 0;
    width: calc(440 * 100vw/1400);
    height: calc(108 * 100vw/1400);
  }
  .lp_contents .fixed_area .fixed_left__inner .mv__img {
    margin-bottom: 0;
    left: calc(30 * 100vw/1400);
    bottom: calc(30 * 100vw/1400);
    width: calc(150 * 100vw/1400);
    height: calc(237 * 100vw/1400);
  }
  .lp_contents .fixed_area .fixed_left__inner .mv__text {
    right: calc(29 * 100vw/1400);
    bottom: calc(24 * 100vw/1400);
    font-size: calc(12 * 100vw/1400);
    text-align: right;
    width: calc(460 * 100vw/1400);
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
  }
  .lp_contents .fixed_area .fixed_right {
    max-width: 50vw;
  }
  /*------------------------------------
  ≡≡≡≡≡≡≡ ▼ page-top  PC ▼ ≡≡≡≡≡≡≡
  ------------------------------------*/
  /* .lp_contents PC*/
}
/*--------------------------------
   Media Queries (1600px ~  )
 --------------------------------*/
@media only screen and (min-width: 1600px) {
  .lp_contents .fixed_area .fixed_right .itemsArea {
    width: calc(300 * 48rem/780);
  }
}
/*# sourceMappingURL=style.css.map */