@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Zen+Kurenaido&display=swap");
*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

html,
body,
h1,
h2,
h3,
h4,
h5,
h6,
ul,
ol,
dl,
li,
dt,
dd,
p,
div,
span,
img,
a,
table,
tr,
th,
td {
  margin: 0;
  padding: 0;
  border: 0;
  font-weight: normal;
  font-size: 100%;
  vertical-align: baseline;
}

header,
footer,
nav,
section,
article,
main,
aside,
figure,
figcaption {
  display: block;
}

ol,
ul {
  list-style: none;
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
}

a {
  color: inherit;
  text-decoration: none;
}

button {
  margin: 0;
  padding: 0;
  border: none;
  -webkit-box-shadow: none;
          box-shadow: none;
  background: transparent;
  cursor: pointer;
  font: inherit;
}

input,
select,
textarea {
  font: inherit;
  color: inherit;
  vertical-align: top;
}

/* モバイルメニュー開いた時のスクロール禁止 */
body.opened {
  overflow: hidden;
}

.u-sp {
  display: none;
}
@media not screen and (min-width: 768px) {
  .u-sp {
    display: block;
  }
}

.private__c-introduction-title {
  font-size: 20px;
  color: #666;
  font-weight: bold;
  line-height: 2;
}

.private__c-carousel-image {
  position: relative;
}
.private__c-carousel-image img {
  width: 100%;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
}

.private__c-introduction-text p {
  line-height: 2;
  text-decoration: underline;
  text-decoration-color: #666;
  text-decoration-thickness: 1px;
  text-underline-offset: 4px;
  text-decoration-style: dashed;
  margin: 0;
  line-height: 2;
}

.private__c-carousel-text-catch {
  text-align: center;
  font-size: 0.8em;
  min-height: 20px;
}
.private__c-carousel-text-catch--grn {
  color: #4a752c;
}
.private__c-carousel-text-catch--or {
  color: #ce6b09;
}
.private__c-carousel-text-catch--bl {
  color: #3380a3;
}
.private__c-carousel-text-catch--gry {
  color: #636159;
}
.private__c-carousel-text-catch--pu {
  color: #926396;
}
.private__c-carousel-text-catch--re {
  color: #d64034;
}

.private__c-carousel-text-title {
  text-align: center;
  font-size: 18px;
  font-weight: bold;
}
.private__c-carousel-text-title--grn {
  color: #4a752c;
}
.private__c-carousel-text-title--or {
  color: #ce6b09;
}
.private__c-carousel-text-title--bl {
  color: #3380a3;
}
.private__c-carousel-text-title--gry {
  color: #636159;
}
.private__c-carousel-text-title--pu {
  color: #926396;
}
.private__c-carousel-text-title--re {
  color: #d64034;
}

.private__c-carousel-text-description {
  border: 1px solid #4a752c;
  border-radius: 5px;
  padding: 5px;
  font-size: 0.8em;
}
.private__c-carousel-text-description--grn {
  border-color: #4a752c;
}
.private__c-carousel-text-description--or {
  border-color: #ce6b09;
}
.private__c-carousel-text-description--bl {
  border-color: #3380a3;
}
.private__c-carousel-text-description--gry {
  border-color: #636159;
}
.private__c-carousel-text-description--pu {
  border-color: #926396;
}
.private__c-carousel-text-description--re {
  border-color: #d64034;
}

.private__c-product-header {
  border-left: 10px solid #4a752c;
  background-color: #eef6e8;
  padding: 7px 10px 7px 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  row-gap: 0px;
  -webkit-column-gap: 15px;
     -moz-column-gap: 15px;
          column-gap: 15px;
}
.private__c-product-header--grn {
  border-color: #4a752c;
  background-color: #eef6e8;
}
.private__c-product-header--or {
  border-color: #ce6b09;
  background-color: #ffe1b9;
}
.private__c-product-header--bl {
  border-color: #3380a3;
  background-color: #c0e4f7;
}
.private__c-product-header--gry {
  border-color: #636159;
  background-color: #f2f2f2;
}
.private__c-product-header--pu {
  border-color: #926396;
  background-color: #e6d9f7;
}
.private__c-product-header--re {
  border-color: #d64034;
  background-color: #e6d9d9;
}
@media not screen and (min-width: 768px) {
  .private__c-product-header {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 0px;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: start;
  }
}

.private__c-product-header-catch {
  font-size: 16px;
  color: #4a752c;
}
.private__c-product-header-catch--grn {
  color: #4a752c;
}
.private__c-product-header-catch--or {
  color: #ce6b09;
}
.private__c-product-header-catch--bl {
  color: #3380a3;
}
.private__c-product-header-catch--gry {
  color: #636159;
}
.private__c-product-header-catch--pu {
  color: #926396;
}
.private__c-product-header-catch--re {
  color: #d64034;
}

.private__c-product-header-title {
  font-size: 24px;
  font-weight: bold;
  color: #4a752c;
}
.private__c-product-header-title--grn {
  color: #4a752c;
}
.private__c-product-header-title--or {
  color: #ce6b09;
}
.private__c-product-header-title--bl {
  color: #3380a3;
}
.private__c-product-header-title--gry {
  color: #636159;
}
.private__c-product-header-title--pu {
  color: #926396;
}
.private__c-product-header-title--re {
  color: #d64034;
}

.private__c-product-content {
  display: grid;
  grid-template-columns: fit-content(600px) 1fr;
  gap: 20px;
}
@media not screen and (min-width: 768px) {
  .private__c-product-content {
    grid-template-columns: 1fr;
  }
}

.private__c-product-content-image {
  max-height: 500px;
  max-width: 600px;
  overflow: hidden;
}
.private__c-product-content-image img {
  height: 100%;
  width: auto;
  -o-object-fit: contain;
     object-fit: contain;
}
@media not screen and (min-width: 768px) {
  .private__c-product-content-image {
    width: 100%;
    height: auto;
  }
  .private__c-product-content-image img {
    height: auto;
    width: 100%;
    -o-object-fit: contain;
       object-fit: contain;
  }
}

.private__c-product-content-text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 25px;
  padding-top: 15px;
}

.private__c-product-feature {
  border: 1px solid #4a752c;
  background-color: #fff;
  padding: 30px 15px 15px 15px;
  border-radius: 10px;
  position: relative;
}
.private__l-product-container--grn .private__c-product-feature {
  border-color: #4a752c;
}
.private__l-product-container--or .private__c-product-feature {
  border-color: #ce6b09;
}
.private__l-product-container--bl .private__c-product-feature {
  border-color: #3380a3;
}
.private__l-product-container--gry .private__c-product-feature {
  border-color: #636159;
}
.private__l-product-container--pu .private__c-product-feature {
  border-color: #926396;
}
.private__l-product-container--re .private__c-product-feature {
  border-color: #d64034;
}
.private__c-product-feature h4 {
  position: absolute;
  top: -15px;
  left: 10px;
  padding: 2px 5px;
  font-size: 20px;
  font-weight: bold;
  color: #4a752c;
  background-color: #fff;
  border: 1px solid #4a752c;
  border-radius: 6px;
}
.private__l-product-container--grn .private__c-product-feature h4 {
  color: #4a752c;
  border-color: #4a752c;
}
.private__l-product-container--or .private__c-product-feature h4 {
  color: #ce6b09;
  border-color: #ce6b09;
}
.private__l-product-container--bl .private__c-product-feature h4 {
  color: #3380a3;
  border-color: #3380a3;
}
.private__l-product-container--gry .private__c-product-feature h4 {
  color: #636159;
  border-color: #636159;
}
.private__l-product-container--pu .private__c-product-feature h4 {
  color: #926396;
  border-color: #926396;
}
.private__l-product-container--re .private__c-product-feature h4 {
  color: #d64034;
  border-color: #d64034;
}

.private__c-product-point {
  border: 2px dotted #4a752c;
  background-color: #eef6e8;
  padding: 30px 15px 15px 15px;
  border-radius: 10px;
  position: relative;
}
.private__l-product-container--grn .private__c-product-point {
  border-color: #4a752c;
  background-color: #eef6e8;
}
.private__l-product-container--or .private__c-product-point {
  border-color: #ce6b09;
  background-color: #ffe1b9;
}
.private__l-product-container--bl .private__c-product-point {
  border-color: #3380a3;
  background-color: #c0e4f7;
}
.private__l-product-container--gry .private__c-product-point {
  border-color: #636159;
  background-color: #f2f2f2;
}
.private__l-product-container--pu .private__c-product-point {
  border-color: #926396;
  background-color: #e6d9f7;
}
.private__l-product-container--re .private__c-product-point {
  border-color: #d64034;
  background-color: #e6d9d9;
}
.private__c-product-point h4 {
  position: absolute;
  top: -15px;
  left: 10px;
  padding: 2px 5px;
  font-size: 20px;
  font-weight: bold;
  color: #4a752c;
  background-color: #fff;
  border: 1px solid #4a752c;
  border-radius: 6px;
}
.private__l-product-container--grn .private__c-product-point h4 {
  color: #4a752c;
  border-color: #4a752c;
}
.private__l-product-container--or .private__c-product-point h4 {
  color: #ce6b09;
  border-color: #ce6b09;
}
.private__l-product-container--bl .private__c-product-point h4 {
  color: #3380a3;
  border-color: #3380a3;
}
.private__l-product-container--gry .private__c-product-point h4 {
  color: #636159;
  border-color: #636159;
}
.private__l-product-container--pu .private__c-product-point h4 {
  color: #926396;
  border-color: #926396;
}
.private__l-product-container--re .private__c-product-point h4 {
  color: #d64034;
  border-color: #d64034;
}

.private__c-cart-area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 20px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: end;
  padding: 20px 0 40px;
}
.private__c-cart-area select {
  width: 70px;
  padding: 5px;
  border: 1px solid #4a752c;
  border-radius: 5px;
  background-color: #fff;
  color: #000;
  text-align: center;
}
.private__c-cart-area--grn select {
  border-color: #4a752c;
}
.private__c-cart-area--or select {
  border-color: #ce6b09;
}
.private__c-cart-area--bl select {
  border-color: #3380a3;
}
.private__c-cart-area--gry select {
  border-color: #636159;
}
.private__c-cart-area--pu select {
  border-color: #926396;
}
.private__c-cart-area--re select {
  border-color: #d64034;
}

.private__c-cart-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center;
  gap: 5px;
  width: 200px;
}
@media not screen and (min-width: 768px) {
  .private__c-cart-item {
    width: calc((100% - 40px) / 3);
  }
}
.private__c-cart-item img {
  width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

@media not screen and (min-width: 768px) {
  .private__c-cart-item-double {
    width: 120px;
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
}

.private__c-description-more {
  text-align: center;
}

summary {
  display: block;
  position: absolute;
  top: -30px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 100%;
  height: 100%;
  z-index: 10;
}
summary::-webkit-details-marker {
  display: none;
}
@media not screen and (min-width: 768px) {
  summary {
    top: -25px;
  }
}
summary img {
  width: 450px;
  height: auto !important;
  -o-object-fit: contain !important;
     object-fit: contain !important;
}
@media not screen and (min-width: 768px) {
  summary img {
    width: 300px;
    -o-object-fit: contain !important;
       object-fit: contain !important;
  }
}

.private__description .private__description-more-img {
  display: block;
}
.private__description .private__description-more-img-close {
  display: none;
}
.private__description.is-opened .private__description-more-img {
  display: none;
}
.private__description.is-opened .private__description-more-img-close {
  display: block;
}

.private__c-ingredient-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 5px;
  border: 1px solid #eef6e8;
}
.private__c-ingredient-container--grn {
  border-color: #4a752c;
}
.private__c-ingredient-container--or {
  border-color: #ce6b09;
}
.private__c-ingredient-container--bl {
  border-color: #3380a3;
}
.private__c-ingredient-container--gry {
  border-color: #636159;
}
.private__c-ingredient-container--pu {
  border-color: #926396;
}
.private__c-ingredient-container--re {
  border-color: #d64034;
}

.private__c-ingredient-title {
  font-size: 20px;
  font-weight: bold;
  color: #4a752c;
}
.private__c-ingredient-title--grn {
  color: #4a752c;
}
.private__c-ingredient-title--or {
  color: #ce6b09;
}
.private__c-ingredient-title--bl {
  color: #3380a3;
}
.private__c-ingredient-title--gry {
  color: #636159;
}
.private__c-ingredient-title--pu {
  color: #926396;
}
.private__c-ingredient-title--re {
  color: #d64034;
}

.private__c-ingredient-image {
  max-width: 600px;
  overflow: hidden;
}
@media not screen and (min-width: 768px) {
  .private__c-ingredient-image {
    width: 100%;
  }
}
.private__c-ingredient-image img {
  max-width: 100%;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
}

.private__c-ingredient-text {
  padding: 0 10px 10px 10px;
  position: relative;
}

.private__c-nutrition-display-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 5px;
}

.private__c-nutrition-title {
  font-size: 20px;
  font-weight: bold;
  color: #4a752c;
}
.private__c-nutrition-display-container--grn .private__c-nutrition-title {
  color: #4a752c;
}
.private__c-nutrition-display-container--or .private__c-nutrition-title {
  color: #ce6b09;
}
.private__c-nutrition-display-container--bl .private__c-nutrition-title {
  color: #3380a3;
}
.private__c-nutrition-display-container--gry .private__c-nutrition-title {
  color: #636159;
}
.private__c-nutrition-display-container--pu .private__c-nutrition-title {
  color: #926396;
}
.private__c-nutrition-display-container--re .private__c-nutrition-title {
  color: #d64034;
}

.private__c-nutrition-display {
  display: grid;
  gap: 0px;
  border: 1px solid #4a752c;
  margin: 0 auto;
  grid-template-columns: 150px 1fr;
  grid-template-rows: repeat(2, 1fr);
  width: 300px;
}
@media not screen and (min-width: 768px) {
  .private__c-nutrition-display {
    width: 100%;
  }
}
.private__c-nutrition-display dt,
.private__c-nutrition-display dd {
  padding: 5px 10px;
  text-align: center;
}
.private__c-nutrition-display dt:not(:last-of-type),
.private__c-nutrition-display dd:not(:last-of-type) {
  border-bottom: 1px dashed #4a752c;
}
.private__c-nutrition-display dt {
  font-weight: bold;
  background-color: #eef6e8;
  border-right: 1px dotted #4a752c;
}
.private__c-nutrition-display dd {
  font-weight: normal;
  margin-left: 0;
}
.private__c-nutrition-display-container--grn .private__c-nutrition-display {
  border-color: #4a752c;
}
.private__c-nutrition-display-container--grn .private__c-nutrition-display dt,
.private__c-nutrition-display-container--grn .private__c-nutrition-display dd {
  border-color: #4a752c;
}
.private__c-nutrition-display dt {
  background-color: #eef6e8;
}
.private__c-nutrition-display-container--or .private__c-nutrition-display {
  border-color: #ce6b09;
}
.private__c-nutrition-display-container--or .private__c-nutrition-display dt,
.private__c-nutrition-display-container--or .private__c-nutrition-display dd {
  border-color: #ce6b09;
}
.private__c-nutrition-display-container--or .private__c-nutrition-display dt {
  background-color: #ffe1b9;
}
.private__c-nutrition-display-container--bl .private__c-nutrition-display {
  border-color: #3380a3;
}
.private__c-nutrition-display-container--bl .private__c-nutrition-display dt,
.private__c-nutrition-display-container--bl .private__c-nutrition-display dd {
  border-color: #3380a3;
}
.private__c-nutrition-display-container--bl .private__c-nutrition-display dt {
  background-color: #c0e4f7;
}
.private__c-nutrition-display-container--gry .private__c-nutrition-display {
  border-color: #636159;
}
.private__c-nutrition-display-container--gry .private__c-nutrition-display dt,
.private__c-nutrition-display-container--gry .private__c-nutrition-display dd {
  border-color: #636159;
}
.private__c-nutrition-display-container--gry .private__c-nutrition-display dt {
  background-color: #f2f2f2;
}
.private__c-nutrition-display-container--pu .private__c-nutrition-display {
  border-color: #926396;
}
.private__c-nutrition-display-container--pu .private__c-nutrition-display dt,
.private__c-nutrition-display-container--pu .private__c-nutrition-display dd {
  border-color: #926396;
}
.private__c-nutrition-display-container--pu .private__c-nutrition-display dt {
  background-color: #e6d9f7;
}
.private__c-nutrition-display-container--re .private__c-nutrition-display {
  border-color: #d64034;
}
.private__c-nutrition-display-container--re .private__c-nutrition-display dt,
.private__c-nutrition-display-container--re .private__c-nutrition-display dd {
  border-color: #d64034;
}
.private__c-nutrition-display-container--re .private__c-nutrition-display dt {
  background-color: #e6d9d9;
}

.private__c-description-howto {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 5px;
}

.private__c-description-howto-title {
  font-size: 20px;
  font-weight: bold;
  color: #4a752c;
}
.private__l-howto-container--grn .private__c-description-howto-title {
  color: #4a752c;
}
.private__l-howto-container--or .private__c-description-howto-title {
  color: #ce6b09;
}
.private__l-howto-container--bl .private__c-description-howto-title {
  color: #3380a3;
}
.private__l-howto-container--gry .private__c-description-howto-title {
  color: #636159;
}
.private__l-howto-container--pu .private__c-description-howto-title {
  color: #926396;
}
.private__l-howto-container--re .private__c-description-howto-title {
  color: #d64034;
}

.private__c-description-howto-amount {
  text-align: right;
  margin-top: 10px;
}

.private__c-howto-give,
.private__c-howto-amount {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 5px;
}
.private__c-howto-give span,
.private__c-howto-amount span {
  font-size: 0.9em;
  text-align: center;
}

.private__c-howto-give-title,
.private__c-howto-amount-title {
  font-size: 20px;
  font-weight: bold;
  color: #4a752c;
  text-align: center;
}
.private__l-howto-container--grn .private__c-howto-give-title,
.private__l-howto-container--grn .private__c-howto-amount-title {
  color: #4a752c;
}
.private__l-howto-container--or .private__c-howto-give-title,
.private__l-howto-container--or .private__c-howto-amount-title {
  color: #ce6b09;
}
.private__l-howto-container--bl .private__c-howto-give-title,
.private__l-howto-container--bl .private__c-howto-amount-title {
  color: #3380a3;
}
.private__l-howto-container--gry .private__c-howto-give-title,
.private__l-howto-container--gry .private__c-howto-amount-title {
  color: #636159;
}
.private__l-howto-container--pu .private__c-howto-give-title,
.private__l-howto-container--pu .private__c-howto-amount-title {
  color: #926396;
}
.private__l-howto-container--re .private__c-howto-give-title,
.private__l-howto-container--re .private__c-howto-amount-title {
  color: #d64034;
}

.private__c-howto-amount-text {
  text-align: right;
}

.private__c-faq-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10px;
  margin-left: 20px;
}
@media not screen and (min-width: 768px) {
  .private__c-faq-list {
    margin-left: 0;
  }
}

.private__c-faq-question span,
.private__c-faq-answer span {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 30px;
  height: 30px;
  font-weight: bold;
  border-radius: 5px;
  border: 1px solid #ce6b09;
  margin-right: 10px;
}

.private__c-faq-question--green {
  background-color: #4a752c;
  color: #fff;
}
.private__c-faq-question--orange {
  background-color: #ce6b09;
  color: #fff;
}
.private__c-faq-question--blue {
  background-color: #3380a3;
  color: #fff;
}
.private__c-faq-question--gray {
  background-color: #636159;
  color: #fff;
}
.private__c-faq-question--purple {
  background-color: #926396;
  color: #fff;
}
.private__c-faq-question--red {
  background-color: #d64034;
  color: #fff;
}

.private__c-faq-answer {
  margin-bottom: 10px;
}
.private__c-faq-answer--green {
  background-color: #eef6e8;
  color: #4a752c;
}
.private__c-faq-answer--orange {
  background-color: #ffe1b9;
  color: #ce6b09;
}
.private__c-faq-answer--blue {
  background-color: #c0e4f7;
  color: #3380a3;
}
.private__c-faq-answer--gray {
  background-color: #f2f2f2;
  color: #636159;
}
.private__c-faq-answer--purple {
  background-color: #e6d9f7;
  color: #926396;
}
.private__c-faq-answer--red {
  background-color: #e6d9d9;
  color: #d64034;
}

.private__c-freearea-title {
  font-family: "Zen Kurenaido", sans-serif;
  width: 100%;
  min-height: 40px;
  padding: 5px 20px 7px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center;
  font-size: 20px;
  font-weight: bold;
  color: #fff;
  margin-bottom: 20px;
}
@media not screen and (min-width: 768px) {
  .private__c-freearea-title {
    padding: 10px 20px 10px;
  }
}

.private__p-carousel-container {
  margin: 0 auto;
  max-width: 1000px;
  padding: 20px 0 0;
  overflow-x: auto;
}
@media not screen and (min-width: 768px) {
  .private__p-carousel-container {
    width: 100%;
  }
}
.private__p-carousel-container::-webkit-scrollbar {
  height: 10px;
}
.private__p-carousel-container::-webkit-scrollbar-track {
  background-color: #fff;
}
.private__p-carousel-container::-webkit-scrollbar-thumb {
  background-color: #ccc;
}

.private__p-carousel-wrapper {
  width: 1500px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  gap: 20px;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}

.private__p-carousel-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 200px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  gap: 10px;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 20px 0;
}

.private__p-nav-wrapper {
  margin: 0 auto;
  max-width: 1000px;
  padding: 20px 0 0;
}
@media not screen and (min-width: 768px) {
  .private__p-nav-wrapper {
    width: 100%;
  }
}

.private__p-nav-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  gap: 10px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 20px 0;
}

.private__p-nav-item a {
  display: block;
  padding: 14px 20px;
  border-radius: 10px;
  text-decoration: none;
  color: #000;
}
@media not screen and (min-width: 768px) {
  .private__p-nav-item a {
    padding: 10px 10px;
    font-size: 14px;
  }
}
.private__p-nav-item a:hover {
  color: #fff;
}
.private__p-nav-item--grn a {
  border: 1px solid #4a752c;
  background-color: #eef6e8;
}
.private__p-nav-item--grn a:hover {
  background-color: #4a752c;
}
.private__p-nav-item--or a {
  border: 1px solid #ce6b09;
  background-color: #ffe1b9;
}
.private__p-nav-item--or a:hover {
  background-color: #ce6b09;
}
.private__p-nav-item--bl a {
  border: 1px solid #3380a3;
  background-color: #c0e4f7;
}
.private__p-nav-item--bl a:hover {
  background-color: #3380a3;
}
.private__p-nav-item--gry a {
  border: 1px solid #636159;
  background-color: #f2f2f2;
}
.private__p-nav-item--gry a:hover {
  background-color: #636159;
}
.private__p-nav-item--pu a {
  border: 1px solid #926396;
  background-color: #e6d9f7;
}
.private__p-nav-item--pu a:hover {
  background-color: #926396;
}
.private__p-nav-item--re a {
  border: 1px solid #d64034;
  background-color: #e6d9d9;
}
.private__p-nav-item--re a:hover {
  background-color: #d64034;
}

.private__l-introduction {
  margin: 0 auto;
  max-width: 1000px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
  padding: 20px 0;
}
@media not screen and (min-width: 768px) {
  .private__l-introduction {
    width: 100%;
    margin: 0;
    padding: 0;
  }
}

.private__l-carousel-container {
  margin-inline: auto;
  margin-bottom: 50px;
}

.private__l-freearea-container {
  margin: 0 auto;
  max-width: 1000px;
  padding: 20px 0;
}
@media not screen and (min-width: 768px) {
  .private__l-freearea-container {
    width: 100%;
  }
}

.private__l-product-container {
  margin: 0 auto;
  max-width: 1000px;
  padding: 20px 0 40px;
  margin-bottom: 60px;
}
@media not screen and (min-width: 768px) {
  .private__l-product-container {
    width: 100%;
  }
}

.private__description-container {
  border: 1px solid;
  position: relative;
}
.private__description-container--grn {
  border-color: #4a752c;
}
.private__description-container--or {
  border-color: #ce6b09;
}
.private__description-container--bl {
  border-color: #3380a3;
}
.private__description-container--gry {
  border-color: #636159;
}
.private__description-container--pu {
  border-color: #926396;
}
.private__description-container--re {
  border-color: #d64034;
}
@media not screen and (min-width: 768px) {
  .private__description-container {
    width: 100%;
  }
}

.private__l-description-container {
  display: grid;
  grid-template-columns: 1fr 300px;
  gap: 20px;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
  padding: 50px 20px 0;
}
@media not screen and (min-width: 768px) {
  .private__l-description-container {
    grid-template-columns: 1fr;
    padding: 40px 20px 0;
  }
}

.private__l-howto-container {
  display: grid;
  grid-template-columns: 1fr 300px;
  gap: 20px;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
  padding: 0 20px 20px;
}
@media not screen and (min-width: 768px) {
  .private__l-howto-container {
    grid-template-columns: 1fr;
  }
}

.u-mb20 {
  margin-bottom: 20px;
}

.u-ttl-orange {
  background: url(../../images/private/item/ttl-long-or.png) no-repeat center center/100% 100%;
}
@media not screen and (min-width: 768px) {
  .u-ttl-orange {
    background: url(../../images/private/item/ttl-short-or.png) no-repeat center center/100% 100%;
  }
}

.u-ttl-green {
  background: url(../../images/private/item/ttl-long-grn.png) no-repeat center center/100% 100%;
}
@media not screen and (min-width: 768px) {
  .u-ttl-green {
    background: url(../../images/private/item/ttl-short-grn.png) no-repeat center center/100% 100%;
  }
}

.u-ttl-blue {
  background: url(../../images/private/item/ttl-long-bl.png) no-repeat center center/100% 100%;
}
@media not screen and (min-width: 768px) {
  .u-ttl-blue {
    background: url(../../images/private/item/ttl-short-bl.png) no-repeat center center/100% 100%;
  }
}

.u-ttl-gray {
  background: url(../../images/private/item/ttl-long-gry.png) no-repeat center center/100% 100%;
}
@media not screen and (min-width: 768px) {
  .u-ttl-gray {
    background: url(../../images/private/item/ttl-short-gry.png) no-repeat center center/100% 100%;
  }
}

.u-ttl-purple {
  background: url(../../images/private/item/ttl-long-pu.png) no-repeat center center/100% 100%;
}
@media not screen and (min-width: 768px) {
  .u-ttl-purple {
    background: url(../../images/private/item/ttl-short-pu.png) no-repeat center center/100% 100%;
  }
}

.u-ttl-red {
  background: url(../../images/private/item/ttl-long-re.png) no-repeat center center/100% 100%;
}
@media not screen and (min-width: 768px) {
  .u-ttl-red {
    background: url(../../images/private/item/ttl-short-re.png) no-repeat center center/100% 100%;
  }
}

.u-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  gap: 20px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media not screen and (min-width: 768px) {
  .u-flex {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}