@charset "UTF-8";
@media screen and (min-width: 751px) { .pc-none { display: none; } }
@media screen and (max-width: 750px) { .pc-none { display: block; } }

@media screen and (min-width: 751px) { .sp-none { display: block; } }
@media screen and (max-width: 750px) { .sp-none { display: none; } }

@media screen and (min-width: 751px) { .l-main { min-width: 1200px; } }

/*
*  .entrance
*/
.entrance { /*opacity: .5;*/ margin: 0 auto; box-sizing: border-box; }
@media screen and (min-width: 751px) { .entrance { display: flex; flex-wrap: nowrap; justify-content: flex-start; width: 100%; margin-bottom: 139px; border-bottom: 1px solid #f2f2f2; } }
@media screen and (max-width: 750px) { .entrance { margin-bottom: 9vw; } }

@media screen and (min-width: 751px) { .entrance--picture { width: 50vw; height: auto; } }
@media screen and (min-width: 751px) and (max-width: 1200px) { .entrance--picture { width: 600px; } }
@media screen and (max-width: 750px) { .entrance--picture { width: 100%; height: 124.8vw; } }
.entrance--picture picture, .entrance--picture img { width: 100%; height: 100%; }

.entrance__description { box-sizing: border-box; }
@media screen and (min-width: 751px) { .entrance__description { width: 50vw; padding: 15.6vw 0 0 4.4vw; } }
@media screen and (min-width: 751px) and (max-width: 1200px) { .entrance__description { width: 600px; padding: 164px 0 0 57px; } }
@media screen and (max-width: 750px) { .entrance__description { width: 100%; padding-top: 4vw; } }

.entrance--title { font-family: "Noto Serif JP", serif; letter-spacing: 0.09em; }
@media screen and (min-width: 751px) { .entrance--title { margin-bottom: 2.7vw; font-size: 2.1875vw; line-height: 1.7; } }
@media screen and (min-width: 751px) and (max-width: 1200px) { .entrance--title { margin-bottom: 35px; font-size: 1.75rem; } }
@media screen and (max-width: 750px) { .entrance--title { margin: 0 auto 4vw; font-size: 5.33334vw; line-height: 1.3; text-align: center; letter-spacing: 0; } }
.entrance--title span { text-transform: uppercase; }
.entrance--title sup { position: relative; vertical-align: top; }
@media screen and (min-width: 751px) { .entrance--title sup { top: 4px; left: -3px; font-size: .75rem; } }
@media screen and (max-width: 750px) { .entrance--title sup { top: 0; font-size: 2.66667vw; } }

.entrance--name { font-family: "Noto Serif JP", serif; }
@media screen and (min-width: 751px) { .entrance--name { margin-bottom: 1.8vw; font-size: 1.5625vw; letter-spacing: .11em; } }
@media screen and (min-width: 751px) and (max-width: 1200px) { .entrance--name { margin-bottom: 24px; font-size: 1.25rem; } }
@media screen and (max-width: 750px) { .entrance--name { margin-bottom: 5.8vw; font-size: 3.73334vw; text-align: center; letter-spacing: 0.06em; } }

.entrance--price { font-family: "Noto Serif JP", serif; line-height: 1; }
@media screen and (min-width: 751px) { .entrance--price { margin-bottom: 1.3vw; font-size: 1.171875vw; letter-spacing: .11em; } }
@media screen and (min-width: 751px) and (max-width: 1200px) { .entrance--price { margin-bottom: 19px; font-size: .875rem; } }
@media screen and (max-width: 750px) { .entrance--price { margin-bottom: 3.5vw; font-size: 3vw; text-align: center; letter-spacing: 0.06em; } }

.entrance--date { line-height: 1; }
@media screen and (min-width: 751px) { .entrance--date { margin-bottom: 1.8vw; padding-left: .5vw; font-size: 1.015626vw; letter-spacing: .11em; } }
@media screen and (min-width: 751px) and (max-width: 1200px) { .entrance--date { margin-bottom: 22px; padding-left: 3px; font-size: .9375rem; } }
@media screen and (max-width: 750px) { .entrance--date { margin-bottom: 2.4vw; font-size: 3.2vw; text-align: center; letter-spacing: .06em; } }

.entrance__icon { display: flex; flex-wrap: nowrap; justify-content: flex-start; }
@media screen and (min-width: 751px) { .entrance__icon { margin: 0 0 7vw .5vw; } }
@media screen and (min-width: 751px) and (max-width: 1200px) { .entrance__icon { margin-bottom: 95px; } }
@media screen and (max-width: 750px) { .entrance__icon { margin-bottom: 2.4vw; } }

.entrance__icon li { border: 1px solid #c8c8c8; color: #878782; font-family: "Poppins", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif; font-weight: bold; text-align: center; text-transform: uppercase; white-space: nowrap; box-sizing: border-box; }
@media screen and (min-width: 751px) { .entrance__icon li { width: 4.6875vw; font-size: 0.859375vw; line-height: 1.7vw; } }
@media screen and (min-width: 751px) and (max-width: 1200px) { .entrance__icon li { width: 60px; font-size: .8125rem; } }
@media screen and (max-width: 750px) { .entrance__icon li { width: 16.26667vw; margin: 0 auto; padding: 0 2.66667vw; font-size: 2.66667vw; line-height: 4.8vw; } }

.entrance--notes { width: 100%; color: #878782; box-sizing: border-box; }
@media screen and (min-width: 751px) { .entrance--notes { right: 40px; bottom: 30px; line-height: 1.4; position: absolute; font-size: .859375vw; text-align: right; letter-spacing: .04em; } }
@media screen and (min-width: 751px) and (max-width: 1200px) { .entrance--notes { padding-right: 0; font-size: .6875rem; text-align: right; } }
@media screen and (max-width: 750px) { .entrance--notes { font-size: 2.66667vw; text-align: center; } }

/*
*  .prod
*/
.prod { /*opacity: .5;*/ }
@media screen and (min-width: 751px) { .prod { margin-bottom: 152px; } }
@media screen and (max-width: 750px) { .prod { margin-bottom: 20.8vw; } }
@media screen and (min-width: 751px) { .prod.second { margin-bottom: 132px; } }
@media screen and (max-width: 750px) { .prod.second { margin-bottom: 28vw; } }

@media screen and (min-width: 751px) { .prod__inner { display: flex; flex-wrap: wrap; justify-content: flex-start; width: 960px; margin: 0 auto; } }

.prod--copy { width: 100%; font-family: "Noto Serif JP", serif; color: #099; text-align: center; }
@media screen and (min-width: 751px) { .prod--copy { margin-bottom: 82px; font-size: 1.5rem; letter-spacing: .04em; } }
@media screen and (max-width: 750px) { .prod--copy { font-size: 5.33334vw; line-height: 1.6; letter-spacing: .08em; } }

@media screen and (min-width: 751px) { .prod--picture { width: 50%; padding-left: 162px; box-sizing: border-box; } }
@media screen and (max-width: 750px) { .prod--picture { width: 12.8vw; height: auto; margin: 0 auto 6vw; padding-top: 6vw; } }

.prod__description { box-sizing: border-box; }
@media screen and (min-width: 751px) { .prod__description { width: 50%; padding-top: 5px; } }

@media screen and (min-width: 751px) { .prod--sub-copy { margin-bottom: 31px; font-size: .875rem; line-height: 1.71429; } }
@media screen and (max-width: 750px) { .prod--sub-copy { margin-bottom: 3vw; font-size: 3.73334vw; text-align: center; line-height: 1.64286; } }

@media screen and (min-width: 751px) { .prod--name { margin-bottom: 7px; font-size: 1rem; letter-spacing: .08em; } }
@media screen and (max-width: 750px) { .prod--name { margin-bottom: 2.6vw; font-size: 4.26667vw; text-align: center; letter-spacing: .04em; } }

@media screen and (min-width: 751px) { .prod--beauty-type { margin-bottom: 21px; font-size: .875rem; letter-spacing: .08em; } }
@media screen and (max-width: 750px) { .prod--beauty-type { margin-bottom: 6vw; font-size: 3.73334vw; text-align: center; letter-spacing: .04em; } }

@media screen and (min-width: 751px) { .prod--price { margin-bottom: 21px; font-size: .9375rem; letter-spacing: .08em; } }
@media screen and (max-width: 750px) { .prod--price { margin-bottom: 4.4vw; font-size: 3.73334vw; text-align: center; letter-spacing: .04em; } }

.prod--date { border: 1px solid #878782; box-sizing: border-box; color: #878782; text-align: center; box-sizing: border-box; }
@media screen and (min-width: 751px) { .prod--date { width: 172px; margin-bottom: 18px; padding: 4px 0; border-radius: 15px; font-size: .75rem; letter-spacing: .16em; } }
@media screen and (max-width: 750px) { .prod--date { width: 41.86667vw; margin: 0 auto 8vw; padding: 1vw 0; border-radius: 2.4vw; font-size: 3.2vw; letter-spacing: .1em; } }

@media screen and (min-width: 751px) { .cart-in { width: 380px; height: 50px; } }
@media screen and (max-width: 750px) { .cart-in { width: 80vw; margin: 0 auto; } }

.cart-in a { display: flex; flex-wrap: nowrap; justify-content: center; align-items: center; width: 100%; height: 100%; color: #fff; text-decoration: none; background-color: #878782; box-sizing: border-box; transition-duration: .3s; transition-timing-function: cubic-bezier(0.645, 0.045, 0.355, 1); }
@media screen and (min-width: 751px) { .cart-in a { border-radius: 2px; font-size: 1.125rem; } }
@media screen and (max-width: 750px) { .cart-in a { border-radius: .53334vw; padding: 3.6vw 0; margin: 0 auto; } }
.cart-in a:hover { color: #fff; background-color: #c8c8c8; }

.cart-in.reserve a { font-weight: bold; }
@media screen and (max-width: 750px) { .cart-in.reserve a { padding: 5.2vw 0; } }

.l-main .cart-in a svg, .l-main .cart-in a img { fill: #fff; transition-duration: .3s; transition-timing-function: cubic-bezier(0.645, 0.045, 0.355, 1); }
@media screen and (min-width: 751px) { .l-main .cart-in a svg, .l-main .cart-in a img { width: 30px; height: 30px; } }
@media screen and (max-width: 750px) { .l-main .cart-in a svg, .l-main .cart-in a img { width: 7.46667vw; height: 7.46667vw; padding-right: 1.2vw; } }

.cart-in a:hover svg, .cart-in a:hover img { fill: #fff; }

@media screen and (max-width: 750px) { .prod__notes { margin: 0 10vw; } }

.prod__notes li { padding-left: 1em; color: #878782; text-indent: -1em; }
@media screen and (min-width: 751px) { .prod__notes li { font-size: .6875rem; letter-spacing: .04em; line-height: 1.8; } }
@media screen and (max-width: 750px) { .prod__notes li { font-size: 2.66667vw; text-align: left; letter-spacing: .04em; line-height: 2; } }

.prod__notes li:before { content: "※"; }

/*
* .detail
*/
.detail { /*opacity: .5;*/ background-color: #badddf; }
@media screen and (min-width: 751px) { .detail { margin: 0 auto  65px; padding: 76px 0 47px; } }
@media screen and (max-width: 750px) { .detail { margin-bottom: 15.6vw; padding-bottom: 9vw; } }

@media screen and (min-width: 751px) { .detail__wrap { display: flex; flex-wrap: wrap; justify-content: center; width: 1100px; margin: 0 auto; } }

.detail--titile { width: 100%; font-family: "Noto Serif JP", serif; text-align: center; }
@media screen and (min-width: 751px) { .detail--titile { margin-bottom: 67px; font-size: 1.625rem; line-height: 1.61539; letter-spacing: .1em; } }
@media screen and (max-width: 750px) { .detail--titile { margin-bottom: 6vw; padding-top: 8vw; font-size: 5.33334vw; line-height: 1.6; } }

.detail__inner { margin: 0 auto; background-color: #fff; box-sizing: border-box; }
@media screen and (min-width: 751px) { .detail__inner { width: 1100px; margin-bottom: 43px; border-radius: 10px; }
  .detail__inner:nth-of-type(2), .detail__inner:nth-of-type(3) { width: 530px; height: 400px; } }
@media screen and (max-width: 750px) { .detail__inner { width: 90.66667vw; margin: 0 auto 10.4vw; border-radius: 2.66667vw; } }

.detail__anchor { display: flex; flex-wrap: wrap; justify-content: center; }
@media screen and (min-width: 751px) { .detail__anchor { margin-bottom: 52px; padding-top: 67px; } }
@media screen and (max-width: 750px) { .detail__anchor { padding: 12.4vw 1vw 0; } }

.detail--anchor-title { width: 100%; text-align: center; }
@media screen and (min-width: 751px) { .detail--anchor-title { margin-bottom: 42px; font-size: 1.25rem; letter-spacing: .06em; } }
@media screen and (max-width: 750px) { .detail--anchor-title { margin-bottom: 10vw; font-size: 4.26667vw; letter-spacing: .04em; } }

.detail__anchor-col { display: flex; flex-wrap: nowrap; justify-content: space-between; position: relative; margin: 0 auto; }
@media screen and (min-width: 751px) { .detail__anchor-col { width: 350px; margin-bottom: 26px; } }
@media screen and (max-width: 750px) { .detail__anchor-col { width: 78.4vw; margin: 0 auto 4vw; } }
.detail__anchor-col > p { display: flex; flex-wrap: nowrap; justify-content: center; align-items: center; border: 1px solid #b2d9db; border-radius: 50%; white-space: nowrap; box-sizing: border-box; }
@media screen and (min-width: 751px) { .detail__anchor-col > p { width: 140px; height: 140px; font-size: .875rem; letter-spacing: .05em; }
  .detail__anchor-col > p .sp-none { display: inline-block; } }
@media screen and (max-width: 750px) { .detail__anchor-col > p { position: relative; width: 31.33334vw; height: 31.33334vw; font-size: 4vw; letter-spacing: .05em; cursor: pointer; transition-duration: .3s; transition-timing-function: cubic-bezier(0.645, 0.045, 0.355, 1); }
  .detail__anchor-col > p:hover { opacity: .5; }
  .detail__anchor-col > p:before { display: block; position: absolute; top: 22.06667vw; right: 0; left: 0; width: 4vw; height: 4vw; margin: 0 auto; background: url("/contents/shared/images/icon_arrow_gray.svg") no-repeat 50% 50%; background-size: 100% 100%; transform: rotate(90deg); content: ""; } }
.detail__anchor-col:before { display: block; position: absolute; right: 0; left: 0; margin: 0 auto; background: url("/contents/shared/images/icon_ingredients_close_btn.svg") no-repeat 50% 50%; background-size: 100% 100%; content: ""; }
@media screen and (min-width: 751px) { .detail__anchor-col:before { top: 40%; width: 30px; height: 30px; } }
@media screen and (max-width: 750px) { .detail__anchor-col:before { top: 13vw; width: 6.66667vw; height: 6.66667vw; } }

.detail--anchor-text { width: 100%; text-align: center; }
@media screen and (min-width: 751px) { .detail--anchor-text { font-size: 1rem; letter-pacing: .04em; } }
@media screen and (max-width: 750px) { .detail--anchor-text { margin-bottom: 9vw; padding: 1vw 0; font-size: 3.73334vw; letter-spacing: .08em; line-height: 1.64286; } }

@media screen and (min-width: 751px) { .detail__ingredients { display: flex; flex-wrap: nowrap; justify-content: space-between; width: 816px; margin: 0 auto 66px; } }
@media screen and (max-width: 750px) { .detail__ingredients { padding-bottom: 13.6vw; } }

@media screen and (min-width: 751px) { .detail__ingredients-innr { width: 350px; } }
@media screen and (max-width: 750px) { .detail__ingredients-innr:first-child { margin-bottom: 18vw; } }

.detail--ingredients-title { color: #fff; text-align: center; background-color: #3391a1; }
@media screen and (min-width: 751px) { .detail--ingredients-title { margin-bottom: 50px; padding: 14px 0; font-size: .8125rem; letter-spacing: .28em; } }
@media screen and (max-width: 750px) { .detail--ingredients-title { width: 74.66667vw; margin: 0 auto 13.3334vw; padding: 3vw 0; font-size: 3.46667vw; letter-spacing: .3em; } }

.detail--ingredients-usability { color: #878782; text-align: center; font-weight: bold; }
@media screen and (min-width: 751px) { .detail--ingredients-usability { margin-bottom: 50px; font-size: .875rem; } }
@media screen and (max-width: 750px) { .detail--ingredients-usability { margin-bottom: 13.3334vw; font-size: 3.73334vw; } }

@media screen and (max-width: 750px) { .detail__ingredients-list { width: 72vw; margin: 0 auto; } }

@media screen and (min-width: 751px) { .detail__ingredients-list li { margin-top: 35px; } }
@media screen and (max-width: 750px) { .detail__ingredients-list li { margin-top: 10vw; } }
.detail__ingredients-list li:first-child { margin-top: 0; }
@media screen and (min-width: 751px) { .detail__ingredients-list li picture { margin-bottom: 20px; } }
@media screen and (max-width: 750px) { .detail__ingredients-list li picture { margin-bottom: 2vw; } }

@media screen and (min-width: 751px) { .detail--ingredients-text { font-size: .8125rem; letter-spacing: .05em; line-height: 1.692308; } }
@media screen and (max-width: 750px) { .detail--ingredients-text { font-size: 3.2vw; letter-spacing: .05em; line-height: 1.666667; } }

@media screen and (min-width: 751px) { .detail__ingredients-innr:nth-child(2) .detail__ingredients-list li:last-child { margin-top: 52px; } }

.detail__texture { position: relative; }
@media screen and (min-width: 751px) { .detail__texture { margin: 0 40px 42px 0; padding: 49px 0 0; font-size: 1.25rem; letter-spacing: .14em; line-height: 1.6; } }
@media screen and (max-width: 750px) { .detail__texture { height: 83.2vw; padding-top: 10.6vw; } }
.detail__texture:before { display: block; position: absolute; right: 0; left: 0; margin: 0 auto; background: url("../images/detail_texture.jpg") no-repeat 50% 50%; background-size: 100% 100%; content: ""; }
@media screen and (min-width: 751px) { .detail__texture:before { bottom: 75px; width: 110px; height: 110px; } }
@media screen and (max-width: 750px) { .detail__texture:before { bottom: 8vw; width: 24vw; height: 24vw; } }

.detail-texture--copy { text-align: center; }
@media screen and (min-width: 751px) { .detail-texture--copy { margin-bottom: 24px; } }
@media screen and (max-width: 750px) { .detail-texture--copy { margin-bottom: 5.2vw; font-size: 4.266667vw; letter-spacing: .04em; line-height: 1.75; } }

.detail-texture--text { text-align: center; }
@media screen and (min-width: 751px) { .detail-texture--text { font-size: .8125rem; letter-spacing: .05em; line-height: 1.69231; } }
@media screen and (max-width: 750px) { .detail-texture--text { font-size: 3.733334vw; line-height: 1.64286; } }

@media screen and (min-width: 751px) { .dtail__fragrance { margin: 0 0 42px 0; padding: 49px 0 0; font-size: 1.25rem; letter-spacing: .08em; line-height: 1.6; } }
@media screen and (max-width: 750px) { .dtail__fragrance { margin-bottom: 8vw; padding: 10vw 0 4.8vw; font-size: 4.266667vw; } }

.detail-fragrance--copy { text-align: center; }
@media screen and (min-width: 751px) { .detail-fragrance--copy { margin-bottom: 24px; } }
@media screen and (max-width: 750px) { .detail-fragrance--copy { margin-bottom: 5vw; line-height: 1.75; } }

.detail-fragrance--text { text-align: center; }
@media screen and (min-width: 751px) { .detail-fragrance--text { margin-bottom: 40px; font-size: .8125rem; letter-spacing: .05em; line-height: 1.69231; } }
@media screen and (max-width: 750px) { .detail-fragrance--text { margin-bottom: 7vw; font-size: 3.733334vw; line-height: 1.64286; } }

.detail-fragranc__list { display: flex; flex-wrap: wrap; justify-content: space-between; margin: 0 auto; }
@media screen and (min-width: 751px) { .detail-fragranc__list { width: 420px; } }
@media screen and (max-width: 750px) { .detail-fragranc__list { width: 74.66667vw; } }

.detail-fragranc__list li { text-align: center; }
@media screen and (min-width: 751px) { .detail-fragranc__list li { width: 80px; height: 110px; } }
@media screen and (max-width: 750px) { .detail-fragranc__list li { width: 16vw; font-size: 2.93334vw; } }
.detail-fragranc__list li:first-child, .detail-fragranc__list li:last-child { margin-left: 0; }
.detail-fragranc__list li:last-child { width: 100%; }
@media screen and (min-width: 751px) { .detail-fragranc__list li:last-child { height: auto; padding-top: 23px; } }
@media screen and (max-width: 750px) { .detail-fragranc__list li:last-child { height: auto; padding-top: 4vw; } }

@media screen and (min-width: 751px) { .detail-fragranc--image { margin-bottom: 10px; } }
@media screen and (max-width: 750px) { .detail-fragranc--image { height: 16vw; margin-bottom: 4vw; } }

.detail-fragranc--item-name { white-space: nowrap; }
@media screen and (min-width: 751px) { .detail-fragranc--item-name { font-size: .75rem; letter-spacing: .04em; } }

@media screen and (min-width: 751px) { .detail__design { height: 274px; margin-bottom: 40px; padding-top: 56px; } }
@media screen and (max-width: 750px) { .detail__design { margin-bottom: 7vw; padding: 11.4vw 0 13vw; } }

.detail-design--title { text-align: center; }
@media screen and (min-width: 751px) { .detail-design--title { margin-bottom: 29px; font-size: 1.25rem; letter-spacing: .08em; } }
@media screen and (max-width: 750px) { .detail-design--title { margin-bottom: 8vw; font-size: 4.26667vw; } }

.detail-design__list { display: flex; -ms-flex-pack: justify; justify-content: space-between; -ms-flex-wrap: wrap; flex-wrap: wrap; margin: 0 auto; }
@media screen and (min-width: 751px) { .detail-design__list { width: 480px; } }
@media screen and (max-width: 750px) { .detail-design__list { width: 64vw; } }

@media screen and (min-width: 751px) { .detail-design__list li { width: 240px; font-size: 14px; line-height: 2.28571; } }
@media screen and (max-width: 750px) { .detail-design__list li { width: 100%; font-size: 3.73333vw; line-height: 2.28571; } }

@media screen and (min-width: 751px) { .detail-design--notes { padding-top: 24px; font-size: .625rem; letter-spacing: .12em; width: 480px; margin: auto; } }
@media screen and (max-width: 750px) { .detail-design--notes { text-align: center; padding-top: 4vw; font-size: 2.66667vw; } }
.detail-design--notes:before { content: "＊"; }

.detail--notes { margin: 0 auto; }
@media screen and (min-width: 751px) { .detail--notes { width: 1100px; font-size: .625rem; letter-spacing: .08em; line-height: 1.6; } }
@media screen and (max-width: 750px) { .detail--notes { width: 90.66667vw; font-size: 2.66667vw; letter-spacing: .04em; line-height: 1.5; } }
.detail--notes span { display: inline-block; }
@media screen and (min-width: 751px) { .detail--notes span { padding-top: 14px; } }
@media screen and (max-width: 750px) { .detail--notes span { padding-top: 4vw; } }

/*
* .usage
*/
.usage { /*opacity: .5;*/ margin: 0 auto; border: 1px solid #c8c8c8; text-align: center; box-sizing: border-box; }
@media screen and (min-width: 751px) { .usage { width: 1100px; height: 232px; margin-bottom: 96px; padding-top: 60px; } }
@media screen and (max-width: 750px) { .usage { width: 90.66667vw; min-height: 53.33334vw; margin-bottom: 29.6vw; } }

@media screen and (min-width: 751px) { .usage--title { margin-bottom: 46px; font-size: 1.125rem; letter-spacing: .08em; } }
@media screen and (max-width: 750px) { .usage--title { margin-bottom: 7vw; padding-top: 10vw; font-size: 4.26667vw; letter-spacing: .04em; } }

.usage__list { display: table; margin: 0 auto; }
@media screen and (max-width: 750px) { .usage__list { margin: 0 8vw; } }

.usage__list li { text-align: left; }
@media screen and (min-width: 751px) { .usage__list li { margin-top: 16px; font-size: .875rem; letter-spacing: .04em; } }
@media screen and (max-width: 750px) { .usage__list li { margin-top: 5vw; padding-left: 1.2em; font-size: 3.2vw; line-height: 1.66667; text-indent: -0.6em; } }
.usage__list li:before { display: inline-block; content: "・"; }
@media screen and (min-width: 751px) { .usage__list li:before { margin-right: 10px; } }
@media screen and (max-width: 750px) { .usage__list li:before { margin-right: 1vw; } }
.usage__list li:first-child { margin-top: 0; }

/*
* .lineup
*/
.lineup { /*opacity: .5;*/ }
@media screen and (min-width: 751px) { .lineup { margin-bottom: 234px; } }
@media screen and (max-width: 750px) { .lineup { margin-bottom: 18vw; } }

.lineup__inner { position: relative; margin: 0 auto; border: 1px solid #007976; box-sizing: border-box; }
@media screen and (min-width: 751px) { .lineup__inner { display: flex; flex-wrap: nowrap; justify-content: flex-start; width: 1100px; margin-bottom: 22px; padding: 95px 0 84px; } }
@media screen and (max-width: 750px) { .lineup__inner { width: 90.66667vw; margin-bottom: 4.4vw; padding: 0 0 15vw; } }

.lineup--title { position: absolute; right: 0; left: 0; margin: 0 auto; font-family: "Noto Serif JP", serif; text-align: center; background-color: #fff; }
@media screen and (min-width: 751px) { .lineup--title { top: -37px; width: 414px; font-size: 1.375rem; line-height: 1.63637; } }
@media screen and (max-width: 750px) { .lineup--title { top: -9vw; width: 81.86667vw; font-size: 4.8vw; line-height: 1.77778; white-space: nowrap; } }
.lineup--title sup { position: relative; top: 0; vertical-align: top; }
@media screen and (min-width: 751px) { .lineup--title sup { font-size: .625rem; } }
@media screen and (max-width: 750px) { .lineup--title sup { font-size: 2.66667vw; } }

@media screen and (min-width: 751px) { .lineup__item { display: flex; flex-wrap: nowrap; justify-content: flex-start; }
  .lineup__item:nth-of-type(1) { margin: 0 94px 0 57px; } }

@media screen and (min-width: 751px) { .lineup--item-image { margin-right: 36px; padding-top: 42px; } }
@media screen and (max-width: 750px) { .lineup--item-image { width: 18.6vw; margin: 0 auto 8vw; } }

@media screen and (min-width: 751px) { .lineup--item-name { margin-bottom: 29px; font-size: 1.125rem; letter-spacing: .04em; } }
@media screen and (max-width: 750px) { .lineup--item-name { margin-bottom: 5vw; font-size: 4.266667vw; text-align: center; letter-spacing: .08em; } }

@media screen and (min-width: 751px) { .lineup--item-copy { margin-bottom: 24px; font-size: .9375rem; letter-spacing: .12em; line-height: 1.75; } }
@media screen and (max-width: 750px) { .lineup--item-copy { margin-bottom: 4vw; font-size: 3.73334vw; text-align: center; letter-spacing: .08em; line-height: 1.64286; } }

@media screen and (min-width: 751px) { .lineup--item-text { margin-bottom: 32px; font-size: .8125rem; line-height: 1.69231; letter-spacing: .04em; } }
@media screen and (max-width: 750px) { .lineup--item-text { margin-bottom: 7vw; font-size: 3.2vw; text-align: center; line-height: 1.66667; letter-spacing: .04em; } }

@media screen and (max-width: 750px) { .lineup__item { padding-top: 17.6vw; } }

@media screen and (min-width: 751px) { .lineup .m-contents--default-btn { margin: 0; } }

.lineup--notes { margin: 0 auto; }
@media screen and (min-width: 751px) { .lineup--notes { width: 1100px; font-size: .625rem; letter-spacing: .03em; } }
@media screen and (max-width: 750px) { .lineup--notes { width: 84vw; padding-left: 1.3em; font-size: 2.66667vw; text-indent: -1.3em; line-height: 1.7; letter-spacing: .04em; } }

/*
* .prod--notes
*/
.prod--notes { margin: 0 auto; border-top: 1px solid #e3e3e3; box-sizing: border-box; }
@media screen and (min-width: 751px) { .prod--notes { width: 1100px; margin-bottom: 100px; padding: 34px 0 0 5px; } }
@media screen and (max-width: 750px) { .prod--notes { border-bottom: 1px solid #e3e3e3; width: 93.3334vw; margin-bottom: 1vw; padding: 8vw 4vw 4vw 2vw; } }

.prod--notes li { color: #878782; letter-spacing: .04em; }
@media screen and (min-width: 751px) { .prod--notes li { font-size: .6875rem; line-height: 1.81819; } }
@media screen and (max-width: 750px) { .prod--notes li { margin-top: 1vw; padding-left: 1em; text-indent: -1em; font-size: 2.66667vw; line-height: 1.8; } }
.prod--notes li:before { content: "※"; }
.prod--notes li:first-child { margin-top: 0; }

/*
* .end-of-sale
*/
.end-of-sale { color: #e65096; }

.m--ingredients-btn { display: table; color: #878782; cursor: pointer; transition-duration: .3s; transition-timing-function: cubic-bezier(0.645, 0.045, 0.355, 1); }
@media screen and (min-width: 751px) { .m--ingredients-btn { margin: 0 0 27px 0; font-size: .8125rem; } }
@media screen and (max-width: 750px) { .m--ingredients-btn { margin: 0 auto 5.8vw; font-size: 3.2vw; } }
.m--ingredients-btn span { display: inline-block; padding-bottom: 2px; border-bottom: 1px solid #878782; }
.m--ingredients-btn:hover { opacity: .6; }
.m--ingredients-btn:after { display: inline-block; background: url("/contents/shared/images/icon_ingredients_btn.svg") no-repeat 0 0; background-size: 100% 100%; content: ""; }
@media screen and (min-width: 751px) { .m--ingredients-btn:after { width: 16px; height: 16px; margin-left: 4px; vertical-align: -3px; } }
@media screen and (max-width: 750px) { .m--ingredients-btn:after { width: 4vw; height: 4vw; margin-left: 1.06667vw; vertical-align: -1vw; } }

.m__ingredients-modal { display: none; position: fixed; top: 0; right: 0; bottom: 0; left: 0; width: 100vw; height: 100vh; z-index: 2000; overflow: auto; margin: auto; padding: 10px; text-align: center; box-sizing: border-box; opacity: 0; }
.m__ingredients-modal:after { display: inline-block; height: 100%; vertical-align: middle; content: ""; }
@media screen and (min-width: 751px) { .m__ingredients-modal:after { margin-left: -0.05em; } }
@media screen and (max-width: 750px) { .m__ingredients-modal:after { margin-left: -0.3em; } }

.m__ingredients-modal.is-opened { display: block; animation: fadeIn 0.3s cubic-bezier(0.645, 0.045, 0.355, 1) 0s 1 normal forwards; }

@keyframes fadeOut { 0% { opacity: 1; }
  99% { opacity: 0; }
  100% { opacity: 0; } }
@keyframes fadeIn { 0% { opacity: 0; }
  1% { opacity: 0; }
  100% { opacity: 1; transform: translateZ(1px); } }
.m__ingredients-modal-bg { position: fixed; top: 0; right: 0; bottom: 0; left: 0; z-index: 2001; width: 100%; height: 100%; background-color: rgba(135, 135, 130, 0.7); -webkit-backdrop-filter: blur(20px); backdrop-filter: blur(20px); }

.m__ingredients-modal-warp { display: inline-block; position: relative; z-index: 2002; margin: auto; vertical-align: middle; background-color: #fff; box-sizing: border-box; transform: translate3d(0, 0, 0); }
@media screen and (min-width: 751px) { .m__ingredients-modal-warp { width: 800px; padding: 77px 102px 70px; border-radius: 2px; } }
@media screen and (max-width: 750px) { .m__ingredients-modal-warp { width: 93.06667vw; padding: 13.33334vw 9.33334vw 11.33334vw; } }

.is-opened .m__ingredients-modal-warp { animation: zoomOut 0.3s cubic-bezier(0.645, 0.045, 0.355, 1) 0s 1 normal forwards; }

@keyframes zoomOut { 0% { transform: scale(1.04); }
  100% { transform: scale(1); } }
.m--ingredients-modal-title { color: #c8c8c8; font-weight: bold; text-align: left; }
@media screen and (min-width: 751px) { .m--ingredients-modal-title { font-size: .875rem; line-height: 1.5715; } }
@media screen and (max-width: 750px) { .m--ingredients-modal-title { font-size: 3.73334vw; } }

.m--ingredients-modal-text { color: #2b2e38; text-align: left; }
@media screen and (min-width: 751px) { .m--ingredients-modal-text { margin-top: 20px; font-size: .8125rem; line-height: 1.69231; } }
@media screen and (max-width: 750px) { .m--ingredients-modal-text { margin-top: 5.33334vw; font-size: 3.46667vw; line-height: 1.69231; } }

.m--ingredients-modal-close { display: block; position: absolute; z-index: 2002; overflow: visible; margin: 0; padding: 0; border: 0; background: url("/contents/shared/images/icon_ingredients_close_btn.svg") no-repeat 0 0; background-size: 100% 100%; cursor: pointer; outline: 0; transition-duration: .3s; transition-timing-function: cubic-bezier(0.645, 0.045, 0.355, 1); }
@media screen and (min-width: 751px) { .m--ingredients-modal-close { top: 16px; right: 16px; width: 16px; height: 16px; } }
@media screen and (max-width: 750px) { .m--ingredients-modal-close { top: 4.26667vw; right: 4.26667vw; width: 4.8vw; height: 4.8vw; } }
.m--ingredients-modal-close:hover { opacity: .6; }

/*
* animation
*/
.entrance { opacity: 0; }

.entrance.is-animate { animation: fadeIn .6s ease-in-out 0s 1 normal forwards; }

@keyframes fadeInMove { 0% { display: none; opacity: 0; }
  1% { display: block; top: 30px; opacity: 0; }
  100% { display: block; top: 0; opacity: 1; } }
.l-main > section { opacity: 0; position: relative; top: 30px; transition-duration: .6s; transition-delay: .2s; transition-timing-function: ease-in-out; }

.l-main > section.is-animate { opacity: 1; top: 0; }
