/* Sass Document */
.p-product {
  padding-block: 6rem;
}

.p-product__content {
  padding-block: 6rem;
  font-weight: 400;
}
@media screen and (max-width: 767.98px) {
  .p-product__content {
    padding-block: 5rem;
  }
}
.p-product__content:first-of-type {
  padding-top: 0;
}
.p-product__content:last-of-type {
  padding-bottom: 0;
}
.p-product__content h2 {
  font-size: 2.4rem;
  margin: 1em 0 0.8em;
  font-weight: 500;
}
@media screen and (max-width: 767.98px) {
  .p-product__content h2 {
    margin-bottom: 0.4em;
  }
}
.p-product__content h3,
.p-product__content h4,
.p-product__content h5,
.p-product__content h6 {
  line-height: 1.4;
}
.p-product__content sup {
  font-size: 60%;
}
.p-product__content.l-color--orange .c-num {
  color: #d9883d;
}
.p-product__content.l-color--orange .u-txtcolor {
  color: #d9883d;
}
.p-product__content.l-color--green .c-num {
  color: #8fae79;
}
.p-product__content.l-color--green .u-txtcolor {
  color: #8fae79;
}
.p-product__content.l-color--pink .c-num {
  color: #d89597;
}
.p-product__content.l-color--pink .u-txtcolor {
  color: #d89597;
}
@media screen and (max-width: 767.98px) {
  .p-product__content .u-sp-center {
    text-align: center;
  }
}
.p-product__content + .p-product__content {
  border-top: 1px solid #707070;
}

.p-product__main {
  display: flex;
  column-gap: 5rem;
  margin-bottom: 8rem;
}
@media screen and (max-width: 767.98px) {
  .p-product__main {
    display: block;
  }
  .p-product__main .p-ttl-wrapper {
    margin-bottom: 4rem;
  }
}

.p-product__main-img {
  width: 50rem;
  flex-shrink: 0;
  aspect-ratio: 1/1;
}
@media screen and (max-width: 767.98px) {
  .p-product__main-img {
    width: 100%;
    margin-bottom: 2rem;
  }
}

.p-product__main-txt {
  flex-grow: 1;
}
@media screen and (max-width: 767.98px) {
  .p-product__main-txt {
    text-align: center;
  }
}

.p-ttl-wrapper {
  border-bottom: 1px solid #707070;
  width: 100%;
  margin-bottom: 1rem;
  padding-bottom: 0.5rem;
}

.p-product__ttl {
  font-size: 2.4rem;
  line-height: 1.5833333333;
  padding-bottom: 1.6rem;
  font-weight: 400 !important;
  margin: 0 !important;
}
@media screen and (max-width: 767.98px) {
  .p-product__ttl {
    font-size: 2rem;
    line-height: 1.2;
    padding-bottom: 1rem;
  }
}
.p-product__ttl span {
  font-size: 1.6rem;
  display: block;
  margin-top: 0.2rem;
}
@media screen and (max-width: 767.98px) {
  .p-product__ttl span {
    font-size: 1.4rem;
    margin-top: 0.5rem;
  }
}

.p-product__detail {
  margin-top: 4.9rem;
}
@media screen and (max-width: 767.98px) {
  .p-product__detail {
    text-align: center;
    margin-top: 3.5rem;
  }
  .p-product__detail p {
    font-size: 1.4rem;
  }
}

.p-type {
  margin-top: 1.4rem;
  display: inline-block;
  border: 1px solid #000;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1;
  padding: 0.5rem;
  min-width: 12rem;
  text-align: center;
}
@media screen and (max-width: 767.98px) {
  .p-type {
    margin-top: 0.4rem;
  }
}

.p-product__block {
  margin-top: 8rem;
  width: 100%;
}
@media screen and (max-width: 767.98px) {
  .p-product__block {
    margin-top: 10rem;
  }
}
.p-product__block ul {
  margin: 1.5em 0;
  padding-left: 0.5em;
}
@media screen and (max-width: 767.98px) {
  .p-product__block ul {
    margin: 0.8em 0;
  }
}
.p-product__block ul li {
  position: relative;
  font-size: 1.8rem;
  line-height: 1.7777777778;
  padding-left: 0.8em;
}
@media screen and (max-width: 767.98px) {
  .p-product__block ul li {
    font-size: 1.4rem;
    line-height: 1.8571428571;
  }
}
.p-product__block ul li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.85em;
  width: 0.4rem;
  height: 0.4rem;
  background-color: #212121;
  border-radius: 100%;
}
.p-product__block.l-col--2 {
  display: flex;
  column-gap: 8rem;
  align-items: flex-start;
}
@media screen and (max-width: 767.98px) {
  .p-product__block.l-col--2 {
    display: block;
  }
}
.p-product__block + .p-product__block {
  margin-top: 10rem;
}
@media screen and (max-width: 767.98px) {
  .p-product__block + .p-product__block {
    margin-top: 6rem;
  }
}

.p-product__block.l-size--large {
  column-gap: 5rem;
  margin-bottom: 15rem;
}
@media screen and (max-width: 767.98px) {
  .p-product__block.l-size--large {
    margin-bottom: 10rem;
  }
}
.p-product__block.l-size--large .p-product__block-imgblock {
  flex-shrink: 0;
}
.p-product__block.l-size--large .p-procuct__block-txt {
  width: 48rem;
  flex-grow: 1;
}
@media screen and (max-width: 767.98px) {
  .p-product__block.l-size--large .p-procuct__block-txt {
    width: 100%;
  }
}

.p-procuct__block-txt {
  width: 32rem;
  flex-shrink: 0;
}
@media screen and (max-width: 767.98px) {
  .p-procuct__block-txt {
    width: 100%;
  }
}

.p-product__block-imgblock {
  flex-grow: 1;
}
@media screen and (max-width: 767.98px) {
  .p-product__block-imgblock {
    margin-block: 3rem 1rem;
  }
}

.p-product__block-img {
  display: block;
  width: 100%;
}

.p-parts-img {
  display: flex;
  align-items: center;
}
@media screen and (max-width: 767.98px) {
  .p-parts-img {
    display: block;
  }
}
.p-parts-img.-rev {
  flex-direction: row-reverse;
}
.p-parts-img.-rev p {
  border-radius: 9999px 0 0 9999px;
}

.p-parts-comments {
  flex-grow: 1;
}
@media screen and (max-width: 767.98px) {
  .p-parts-comments {
    margin-top: 2rem;
    display: flex;
    column-gap: 1rem;
  }
}
.p-parts-comments.u-color--1 p {
  background-color: #e8e8df;
}
.p-parts-comments.u-color--2 p {
  background-color: #dae2d8;
}
.p-parts-comments p {
  font-size: 1.8rem;
  border-radius: 0 9999px 9999px 0;
  text-align: center;
  padding: 1rem 1rem 1rem;
  font-weight: 500;
}
@media screen and (max-width: 767.98px) {
  .p-parts-comments p {
    font-size: 1.6rem;
    line-height: 1.25;
    text-align: center;
    border-radius: 9999px !important;
    width: calc(50% - 0.5rem);
  }
}
.p-parts-comments p + p {
  margin-top: 1rem;
}
@media screen and (max-width: 767.98px) {
  .p-parts-comments p + p {
    margin-top: 0;
  }
}

.u-size--480 {
  width: 48rem;
}
@media screen and (max-width: 767.98px) {
  .u-size--480 {
    width: 100%;
  }
}

.u-size--500 {
  width: 50rem;
}
@media screen and (max-width: 767.98px) {
  .u-size--500 {
    width: 100%;
  }
}

.u-size--270 {
  width: 27rem;
}
@media screen and (max-width: 767.98px) {
  .u-size--270 {
    width: 100%;
  }
}

.p-ingredient__block {
  margin-top: 10rem;
  display: grid;
  grid-auto-columns: 1fr;
  grid-auto-rows: 1fr;
  grid-template-columns: 32rem 1fr;
  grid-template-rows: auto 1fr;
  gap: 0px 8rem;
  grid-template-areas: "ttl thumb" "list thumb";
}
@media screen and (max-width: 767.98px) {
  .p-ingredient__block {
    display: block;
    margin-top: 6rem;
  }
}
.p-ingredient__block .c-num {
  font-family: "Noto Serif", serif;
}
.p-ingredient__block .p-ttl-wrapper {
  grid-area: ttl;
}

.p-ingredient__thumb-wrapper {
  width: 60rem;
  flex-shrink: 0;
  grid-area: thumb;
}
@media screen and (max-width: 767.98px) {
  .p-ingredient__thumb-wrapper {
    margin-top: 0.5rem;
    width: 100%;
  }
}

.p-ingredient__thumb-list {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem 4rem;
}
@media screen and (max-width: 767.98px) {
  .p-ingredient__thumb-list {
    gap: 0.7rem 2.6rem;
  }
}

.p-ingredient__thmub-item {
  display: flex;
  flex-direction: column;
}
.p-ingredient__thmub-item .c-num {
  font-size: 1.8rem;
  font-weight: 500;
  margin-bottom: 0.7rem;
}
@media screen and (max-width: 767.98px) {
  .p-ingredient__thmub-item .c-num {
    font-size: 1.4rem;
    margin-bottom: 0.6rem;
  }
}
.p-ingredient__thmub-item .c-thumb {
  margin-top: auto;
  width: 12rem;
  height: 12rem;
  overflow: clip;
}
@media screen and (max-width: 767.98px) {
  .p-ingredient__thmub-item .c-thumb {
    width: 7rem;
    height: 7rem;
  }
}
.p-ingredient__thmub-item .c-thumb img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.p-ingredient__list-wrapper {
  flex-grow: 1;
  grid-area: list;
}
@media screen and (max-width: 767.98px) {
  .p-ingredient__list-wrapper {
    margin-top: 2rem;
  }
}

.p-ingredient__list {
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 1.7777777778;
}
@media screen and (max-width: 767.98px) {
  .p-ingredient__list {
    font-size: 1.6rem;
  }
}

.c-note {
  font-size: 1.4rem;
  margin-top: 1em;
}
@media screen and (max-width: 767.98px) {
  .c-note {
    margin-top: 0.8em;
  }
}

.p-notes {
  font-size: 1.2rem;
  display: flex;
  flex-wrap: wrap;
  column-gap: 2rem;
  line-height: 2;
  margin-top: 4.5rem;
}
@media screen and (max-width: 767.98px) {
  .p-notes {
    display: block;
    margin-top: 3.1rem;
    font-size: 1rem;
    line-height: 1.5;
  }
  .p-notes li {
    padding-left: 2.8em;
    text-indent: -2.8em;
  }
  .p-notes li + li {
    margin-top: 0.5em;
  }
}

.p-ingredient__ {
  margin-top: 6rem;
  padding-inline: 5rem;
}
@media screen and (max-width: 767.98px) {
  .p-ingredient__ {
    padding-inline: 3rem;
  }
}
.p-ingredient__ * {
  font-size: 1.4rem;
  line-height: 1.8571428571;
  letter-spacing: 0;
}
@media screen and (max-width: 767.98px) {
  .p-ingredient__ * {
    font-size: 1.2rem;
    line-height: 1.6666666667;
  }
}

.p-ingredient__detail {
  margin-top: 8rem;
  padding-inline: 5rem;
  padding-bottom: 8rem;
}
@media screen and (max-width: 767.98px) {
  .p-ingredient__detail {
    padding-inline: 2.8rem;
    padding-bottom: 2.3rem;
  }
}
.p-ingredient__detail p {
  font-size: 1.4rem;
  letter-spacing: 0;
  line-height: 1.8571428571;
}
@media screen and (max-width: 767.98px) {
  .p-ingredient__detail p {
    font-size: 1.2rem;
    line-height: 1.6666666667;
  }
}

.l-accordion div {
  display: none;
}
.l-accordion button {
  width: 100%;
  text-align: left;
  font: inherit;
  color: currentColor;
  font-size: 1.8rem;
  font-weight: 500;
  cursor: pointer;
  position: relative;
  padding: 1rem 0;
  background-color: transparent;
}
@media (any-hover) {
  .l-accordion button {
    transition: 0.3s opacity;
  }
  .l-accordion button:hover {
    opacity: 0.7;
  }
}
.l-accordion button.is-open::after {
  transform: translateY(-50%) rotate(225deg);
}
@media screen and (max-width: 767.98px) {
  .l-accordion button {
    font-size: 1.6rem;
  }
}
.l-accordion button::after {
  content: "";
  position: absolute;
  right: 82rem;
  top: 45%;
  transform: translateY(-50%) rotate(45deg);
  border-bottom: 2px solid #aaaaaa;
  border-right: 2px solid #aaaaaa;
  width: 1.2rem;
  height: 1.2rem;
  transition: 0.3s transform;
}
@media screen and (max-width: 767.98px) {
  .l-accordion button::after {
    width: 0.8rem;
    height: 0.8rem;
    right: 25rem;
  }
}
.l-accordion button + div {
  padding-top: 1rem;
}

.splide__pagination {
  bottom: 1.8rem;
  justify-content: flex-end;
}

.splide__pagination__page {
  border-radius: 0;
  width: 1.5rem;
  height: 1.5rem;
  background-color: #d3d3d3;
  opacity: 1;
  margin: 0;
  transition: 0.3s opacity;
}

.splide__pagination__page:hover {
  opacity: 0.7;
}

.splide__pagination__page.is-active {
  background-color: #000;
  transform: scale(1);
}

.splide__pagination li {
  margin-inline: 0.5rem;
}

.p-aside__content {
  padding-inline: 5rem;
  font-size: 1.4rem;
  line-height: 1.8571428571;
  font-weight: 400;
  letter-spacing: 0;
  margin-top: 10rem;
  padding-bottom: 4.7rem;
}
@media screen and (max-width: 767.98px) {
  .p-aside__content {
    padding-inline: 3rem;
    font-size: 1.2rem;
    line-height: 1.6666666667;
    padding-bottom: 2.4rem;
  }
}
.p-aside__content .p-block dd {
  padding-left: 1em;
}
.p-aside__content .p-block + .p-block {
  margin-top: 1em;
}
.p-aside__content .p-block li {
  text-indent: -1em;
  padding-left: 1em;
}
.p-aside__content .p-block ul + ul {
  margin-top: 1em;
}

.howto {
  font-size: 1.3em;
  padding-bottom: 1rem;
}

.item-use {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 3rem;
  margin-bottom: 3rem;
}
@media screen and (max-width: 767.98px) {
  .item-use {
    flex-direction: column;
    gap: 1rem;
  }
}
.item-use img {
  max-width: 250px;
  width: 100%;
}/*# sourceMappingURL=product.css.map */