.p-mv {
  position: relative;
  margin-left: auto;
  margin-right: auto;
  margin-top: var(--header-h);
}
#p-mv__slider {
  margin: 0 auto;
}
#p-mv__slider img {
  width: auto;
  height: min(76vw, 720px);
  margin: 0 auto;
  object-fit: cover;
}
#p-mv__slider::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgb(0 0 0 / 38%);
}
.p-mv__catch {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  color: white;
}
.p-mv__catch__main {
  margin-bottom: 0;
  font-family: var(--ff-en);
  font-size: 2.25em;
  font-weight: 400;
  font-style: italic;
  text-shadow: 0 0 12px rgb(0 0 0 / 20%);
  line-height: 1.25;
}
.p-mv__catch__sub {
  text-shadow: 0 0 12px rgb(0 0 0 / 20%);
}
@media all and (min-width: 600px) {
  #p-mv__slider img {
    width: 100%;
    height: min(51.4vw, 720px);
  }
  .p-mv__catch__main {
    font-size: min(7vw, 112px);
  }
  .p-mv__catch__sub {
    font-size: 1.25em;
  }
}
@media all and (min-width: 960px) {
  .p-mv__catch__sub {
    font-size: 1.5em;
  }
}
.p-topIntro {
  background: url('../img/bg_top-intro.png') right top no-repeat;
  background-size: min(61.8vw, 308px) auto;
}
.p-topIntro__title {
  text-align: center;
}
.p-topIntro .c-column {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  --the-gap: 1.5em;
  gap: 0 var(--the-gap);
  width: min(92%, 680px);
  margin-inline: auto;
  margin-bottom: 1em;
}
.p-topIntro .c-column__item {
  position: relative;
  width: calc((100% - var(--the-gap)) / 2);
  max-width: 200px;
  margin-inline: auto;
  margin-bottom: 1em;
}
.p-topIntro__sugar {
  --the-color: var(--color_main-thin);
  --the-color_strong: var(--color_main);
}
.p-topIntro__milk {
  --the-color: var(--color_red-thin);
  --the-color_strong: var(--color_red);
}
.p-topIntro__cocoa {
  --the-color: var(--color_brown-thin);
  --the-color_strong: var(--color_brown);
}
.p-topIntro__sugar,
.p-topIntro__milk,
.p-topIntro__cocoa {
  position: absolute;
  left: -16px;
  bottom: 0;
  margin-bottom: 0;
  line-height: 1;
  text-shadow: 1px 0 0 white;
  font-size: 2.5em;
  font-family: var(--ff-en);
  font-style: italic;
  color: var(--the-color);
}
.p-topIntro__sugar::first-letter,
.p-topIntro__milk::first-letter,
.p-topIntro__cocoa::first-letter {
  font-size: 1.6em;
  font-weight: 700;
  color: var(--the-color_strong)
}
@media all and (min-width: 600px) {
  .p-topIntro {
    background-size: min(51.5vw, 618px) auto;
  }
  .p-topIntro .c-column__item {
    width: calc((100% - var(--the-gap) * 2) / 3);
  }
  .p-topIntro__text {
    text-align: center;
  }
}
@media all and (min-width: 960px) {
  .p-topIntro .c-column {
    margin-bottom: 1.5em
  }
}