@import url("https://use.typekit.net/vfl0urn.css");
@import url("https://use.typekit.net/suz8cue.css");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;600&display=swap");
@import url('https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&display=swap');
/*@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200..900&display=swap');
.jp{
	font-family:"Noto Serif JP", serif;
	font-weight: 400;
}
.en {
  font-family: "upgrade", sans-serif;
  font-weight: 700
}*/
.en {
  font-family: "DM Serif Display", serif;
  font-weight: 400;
  letter-spacing: 0.05em;
}
.num {
  font-family: "futura-pt", sans-serif;
  font-weight: 500;
  letter-spacing: -0.01em;
}
sup {
  font-size: 0.6rem
}
.pc {
  display: block
}
@media screen and (max-width: 590px) {
  .pc {
    display: none
  }
}
.sp {
  display: none
}
@media screen and (max-width: 590px) {
  .sp {
    display: block
  }
}
.pa15 {
  padding: 0 15px
}
.pt50 {
  padding-top: 100px
}
@media screen and (max-width: 590px) {
  .pt50 {
    padding-top: 50px
  }
}
.pt80 {
  padding-top: 160px
}
@media screen and (max-width: 590px) {
  .pt80 {
    padding-top: 80px
  }
}
.pt100 {
  padding-top: 200px
}
@media screen and (max-width: 590px) {
  .pt100 {
    padding-top: 100px
  }
}
.pt160 {
  padding-top: 320px
}
@media screen and (max-width: 590px) {
  .pt160 {
    padding-top: 160px
  }
}
.mt15 {
  margin-top: 30px
}
@media screen and (max-width: 590px) {
  .mt15 {
    margin-top: 15px
  }
}
.mb50 {
  margin-bottom: 100px
}
@media screen and (max-width: 590px) {
  .mb50 {
    margin-bottom: 50px
  }
}
.mb80 {
  margin-bottom: 160px
}
@media screen and (max-width: 590px) {
  .mb80 {
    margin-bottom: 80px
  }
}
.mb100 {
  margin-bottom: 200px
}
@media screen and (max-width: 590px) {
  .mb100 {
    margin-bottom: 100px
  }
}
.mb160 {
  margin-bottom: 320px
}
@media screen and (max-width: 590px) {
  .mb160 {
    margin-bottom: 160px
  }
}
header, div, span, applet, object, iframe, input[type=file], h1, h2, h3, h4, h5, h6, p, select, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, sub, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
  margin: 0 auto;
  padding: 0;
  border: 0;
  outline: 0
}
label, button, input, select {
  display: block;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: none;
  border: none
}
html, body {
  padding: 0;
  margin: 0
}
body {
  background: rgba(211, 224, 203, 0.3);
  color: #2d2d2d;
	font-family: "Noto Sans JP", -apple-system, "BlinkMacSystemFont", "Segoe UI", "Helvetica Neue", "Helvetica", "Arial", "sans-serif", "Hiragino Kaku Gothic ProN", "Meiryo", "Hiragino Kaku Gothic ProN" !important;
  font-size: 16px;
  line-height: 1.8;
  font-feature-settings: normal;
  text-align: left;
  word-wrap: break-word;
  -webkit-text-size-adjust: 100%
}
@media screen and (max-width: 590px) {
  body {
    font-size: 14px
  }
}
a {
  display: inline-block;
  text-decoration: none;
  transition: all .2s ease-in-out;
  color: #2d2d2d
}
a:hover {
  opacity: 1
}
a img:hover {
  opacity: 1
}
img, a img {
  border: 0;
  max-width: 100%;
  height: auto;
  margin: 0;
  padding: 0
}
figure {
  line-height: 0
}
input[type="number"]::-webkit-outer-spin-button, input[type="number"]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  appearance: none;
  margin: 0
}
blockquote, dd, div, dl, dt, h1, h2, h3, h4, h5, h6, li, p, pre, span, td, th, ul {
  margin: 0;
  padding: 0
}
abbr, acronym {
  border: 0
}
address, caption, cite, code, dfn, em, th, strong, var {
  font-style: normal;
  font-weight: normal
}
caption, th {
  text-align: left
}
code, kbd, pre, samp, tt {
  font-family: monospace;
  line-height: 100%
}
* + html code, kbd, pre, samp, tt {
  font-size: 108%
}
h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: normal
}
ul, li {
  margin: 0;
  padding: 0;
  list-style: none
}
q:before, q:after {
  content: ''
}
strong {
  font-weight: 700
}
small {
  font-size: 0.7em
}
button, fieldset, form, input, label, legend, textarea {
  /*font-family: inherit;*/
  font-size: 100%;
  font-style: inherit;
  font-weight: inherit;
  margin: 0;
  padding: 0;
  vertical-align: baseline;
  appearance: none
}
::placeholder {
  color: #C3C3C3
}
::-ms-input-placeholder {
  color: #C3C3C3
}
:-ms-input-placeholder {
  color: #C3C3C3
}
table {
  border-collapse: collapse;
  border-spacing: 0;
  font-size: 100%
}
table td {
  vertical-align: middle
}
input[type="submit"], input[type="reset"], input[type="button"] {
  cursor: pointer;
  -webkit-appearance: button;
  *overflow: visible;
  appearance: none
}
button {
  cursor: pointer;
  -webkit-appearance: button;
  *overflow: visible;
  appearance: none
}
.flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}
.flex.rev {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse
}
.nowrap {
  white-space: nowrap;
}
.main, .main_second {
  margin-top: 60px;
}
#splash {
  position: fixed;
  width: 100%;
  height: 100%;
  z-index: 100000;
  background: #d3e0cb;
  text-align: center;
  top: 0;
  left: 0
}
#splash #splash_logo {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 15vw;
}
@media screen and (max-width: 590px) {
  #splash #splash_logo {
    max-width: 50vw;
    width: 50vw;
  }
}
#splash #splash_logo img {
  width: 100%;
  height: auto
}
.wrap {
  max-width: 1200px;
  margin-right: auto;
  margin-left: auto
}
.wrap02 {
  max-width: 1000px;
  margin-left: auto;
  margin-right: auto
}
.wrap03 {
  max-width: 780px;
  margin-left: auto;
  margin-right: auto
}
.ttl {
  font-style: italic;
  font-weight: 600;
  line-height: 1.3;
  text-align: center;
  margin-bottom: 80px
}
@media screen and (max-width: 590px) {
  .ttl {
    margin-bottom: 40px
  }
}
.ttl .en {
  font-size: 2.5rem
}
@media screen and (max-width: 590px) {
  .ttl .en {
    font-size: 2.1rem
  }
}
.ttl .jp {
  font-size: 0.8rem;
  font-weight: 600;
  font-style: normal;
  color: #727171;
  display: block
}
.ttl_sub {
  font-style: italic;
  font-weight: 600;
  line-height: 1.3;
  text-align: left;
  margin-bottom: 40px
}
@media screen and (max-width: 590px) {
  .ttl_sub {
    margin-bottom: 20px
  }
}
.ttl_sub .en {
  font-size: 1.5rem
}
.ttl_sub .jp {
  font-size: 0.7rem;
  font-weight: 600;
  font-style: normal;
  color: #727171;
  display: block
}
.ttl_under {
  font-weight: 600;
  font-size: 1.3rem;
  display: inline;
  background: linear-gradient(transparent 95%, #2d2d2d 0%);
  padding-bottom: 3px;
  letter-spacing: 0.05em;
  margin-bottom: 1em
}
.ttl_mypage {
  font-weight: 600;
  font-size: 1.1rem;
  padding-left: 20px;
  position: relative;
  margin-bottom: 1em;
  line-height: 1.5
}
@media screen and (max-width: 590px) {
  .ttl_mypage {
    font-size: 0.9rem;
    padding-left: 15px
  }
}
.ttl_mypage::before {
  content: "";
  display: block;
  width: 2px;
  height: 100%;
  background: #dca9bf;
  position: absolute;
  top: 0;
  left: 0px
}
.ttl_teikiaccordion {
  color: #727171;
}
.pink {
  color: #4b664e;
}
.attention {
  font-size: 0.7rem;
  font-weight: normal;
  letter-spacing: normal;
  line-height: 1.3;
  color: #727171;
  opacity: 0.7;
  margin: 10px auto;
  display: inline-block;
}
.icon {
  font-family: "icon", sans-serif !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-feature-settings: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale
}
.btn_more {
  text-align: center
}
.btn_more p {
  text-align: center
}
.btn_more p a {
  display: block;
  transition: all .2s ease-in-out
}
.btn_more p span {
  box-sizing: border-box;
  background: #727171;
  border: 1px solid #727171;
  font-weight: 600;
  letter-spacing: 0.1em;
  line-height: 56px;
  color: #FFF;
  display: block;
  position: relative;
  max-width: 300px;
  margin: 0 auto;
  width: 100%
}
.btn_more p span::before {
  content: '';
  width: 6px;
  height: 6px;
  border: 0;
  border-top: solid 2px #FFF;
  border-right: solid 2px #FFF;
  position: absolute;
  top: 50%;
  right: 20px;
  margin-top: -4px;
  transform: rotate(45deg)
}
.btn_more p span:hover {
  background: #FFF;
  color: #727171
}
.btn_more p span:hover::before {
  border-top: solid 2px #727171;
  border-right: solid 2px #727171
}
.btn_more.frame p span {
  background: #FFF;
  color: #727171
}
.btn_more.frame p span::before {
  border-top: solid 2px #727171;
  border-right: solid 2px #727171
}
.btn_more.wide span {
  max-width: 100%;
  position: relative;
}
.btn_more.wide {
  text-align: center;
}
.btn_more.wide input[type="submit"] {
  box-sizing: border-box;
  background: #727171;
  border: 1px solid #727171;
  border-radius: 0;
  font-weight: 600;
  letter-spacing: 0.1em;
  line-height: 56px;
  color: #FFF;
  display: block;
  position: relative;
  max-width: 100%;
  margin: 0 auto;
  width: 100%
}
.btn_more.wide input[type="submit"]::before {
  content: '';
  width: 6px;
  height: 6px;
  border: 0;
  border-top: solid 2px #FFF;
  border-right: solid 2px #FFF;
  position: absolute;
  top: 50%;
  right: 20px;
  margin-top: -4px;
  transform: rotate(45deg);
  z-index: 10;
}
.btn_more.wide input[type="submit"]:hover {
  background: #FFF;
  color: #727171
}
.btn_more.wide input[type="submit"]:active::before {
  border-top: solid 2px #727171;
  border-right: solid 2px #727171
}
.btn_more.frame p span {
  background: #FFF;
  color: #727171
}
.btn_more.frame p span::before {
  border-top: solid 2px #727171;
  border-right: solid 2px #727171
}
.btn_cart {
  text-align: center;
  position: relative;
}
.btn_cart p {
  text-align: center
}
.btn_cart input[type="submit"] {
  box-sizing: border-box;
  background: #819c85;
  border: 1px solid #819c85;
  border-radius: 100px;
  display: block;
  transition: all .2s ease-in-out;
  line-height: 52px;
  position: relative;
  max-width: 100%;
  margin: 0 auto;
  width: 100%;
  font-weight: 600;
  letter-spacing: 0.1em;
  color: #FFF;
  padding-left: 1.5em;
}
.btn_cart::before {
  content: '';
  display: block;
  width: 6px;
  height: 6px;
  border: 0;
  border-top: solid 2px #FFF;
  border-right: solid 2px #FFF;
  position: absolute;
  top: 50%;
  right: 40px;
  margin-top: -4px;
  transform: rotate(45deg);
  z-index: 10;
}
.btn_cart::after {
  content: "";
  display: block;
  width: 22px;
  height: 20px;
  position: absolute;
  top: 50%;
  left: 40px;
  transform: translate(50%, -50%);
  background: url(https://d2w53g1q050m78.cloudfront.net/phoebebeautyupco/uploads/assets/din/2402/img/common/icon_cart_white.svg) no-repeat;
  background-size: cover;
  z-index: 10;
}
.btn_cart.frame input[type="submit"] {
  background: #FFF;
  color: #F0618d;
  max-width: 85%
}
.btn_cart.frame::before {
  border-top: solid 2px #f0618d;
  border-right: solid 2px #f0618d;
  right: 80px;
}
.btn_cart.frame::after {
  background: url("../img/common/icon_cart_pink.svg") no-repeat;
  left: 80px;
}
.btn_sticky_cart {
  text-align: center
}
.btn_sticky_cart p {
  text-align: center
}
.btn_sticky_cart p a {
  box-sizing: border-box;
  background: #727171;
  display: block;
  transition: all .2s ease-in-out;
  line-height: 60px;
  position: relative;
  max-width: 100%;
  margin: 0 auto;
  width: 100%
}
.btn_sticky_cart p a::before {
  content: '';
  width: 6px;
  height: 6px;
  border: 0;
  border-top: solid 2px #FFF;
  border-right: solid 2px #FFF;
  position: absolute;
  top: 50%;
  right: 20px;
  margin-top: -4px;
  transform: rotate(45deg)
}
.btn_sticky_cart p span {
  box-sizing: border-box;
  font-size: 16px;
  font-weight: 600;
  letter-spacing: 0.2em;
  color: #FFF;
  padding-left: 1.5em;
  position: relative
}
.btn_sticky_cart p span::after {
  content: "";
  display: block;
  width: 22px;
  height: 20px;
  position: absolute;
  top: 50%;
  left: -10px;
  transform: translate(-50%, -50%);
  background: url("../img/common/icon_cart_white.svg") no-repeat;
  background-size: cover
}
.btn_continue a {
  box-sizing: border-box;
  font-weight: 600;
  text-align: center;
  color: #727171;
  display: block;
  opacity: .7;
  padding: 15px 0;
  font-size: 0.7rem;
}
.btn_line {
  text-align: center
}
.btn_line p {
  text-align: center
}
.btn_line p a {
  display: block;
  transition: all .2s ease-in-out
}
.btn_line p span {
  box-sizing: border-box;
  background: #31ae36;
  border: 1px solid #31ae36;
  font-weight: 600;
  letter-spacing: 0.1em;
  line-height: 56px;
  color: #FFF;
  display: block;
  position: relative;
  max-width: 100%;
  margin: 0 auto;
  width: 100%
}
.btn_line p span::before {
  content: '';
  width: 6px;
  height: 6px;
  border: 0;
  border-top: solid 2px #FFF;
  border-right: solid 2px #FFF;
  position: absolute;
  top: 50%;
  right: 20px;
  margin-top: -4px;
  transform: rotate(45deg)
}
.btn_line p span::after {
  content: "";
  display: block;
  width: 40px;
  height: 40px;
  position: absolute;
  top: 50%;
  left: 5px;
  transform: translate(0%, -50%);
  background: url("../img/common/login-line.png") no-repeat;
  background-size: cover
}
.btn_line p span:hover {
  background: #FFF;
  color: #31ae36
}
.btn_line p span:hover::before {
  border-top: solid 2px #31ae36;
  border-right: solid 2px #31ae36
}
.product_image {
  margin-bottom: 20px;
  line-height: 0
}
.product_category {
  text-align: left;
  margin-bottom: 10px
}
.product_category span {
  box-sizing: border-box;
  background: #829D86;
  border-radius: 100px;
  font-size: 0.7rem;
  font-weight: bold;
  letter-spacing: 0.01em;
  line-height: 1;
  color: #FFF;
  padding: 3px 10px
}
@media screen and (max-width: 590px) {
  .product_category span {
    font-size: 2.8vw
  }
  .btn_cart::before {
    right: 20px;
  }
  .btn_cart::after {
    left: 15px;
  }
  .btn_cart.frame::before {
    right: 50px;
  }
  .btn_cart.frame::after {
    left: 40px;
  }
}
.product_ttl {
  margin-bottom: 1rem;
  text-align: left
}
.product_ttl .en {
  display: block;
  font-size: 1.3rem;
  line-height: 1.3;
}
.product_ttl .jp {
  display: block;
  font-size: 0.8rem;
  font-weight: 700;
  color: #727171;
  line-height: 1.3
}
.product_detail {
  font-weight: 500;
  margin-bottom: 20px;
  letter-spacing: 0.05em
}
.news_category {
  text-align: left;
  margin-bottom: 5px
}
.news_category span {
  box-sizing: border-box;
  background: #dca9bf;
  border-radius: 100px;
  font-size: 0.7rem;
  font-weight: bold;
  letter-spacing: 0.1em;
  line-height: 1;
  color: #FFF;
  padding: 3px 10px
}
.news_day {
  font-family: "futura-pt", sans-serif;
  color: #727171;
  font-size: 0.8rem;
  line-height: 1
}
.product_image {
  margin-bottom: 20px;
  line-height: 0
}
.product_category {
  text-align: left;
  margin-bottom: 10px
}
.product_category span {
  box-sizing: border-box;
  background: #829D86;
  border-radius: 100px;
  font-size: 0.7rem;
  font-weight: bold;
  letter-spacing: 0.01em;
  line-height: 1;
  color: #FFF;
  padding: 3px 10px
}
@media screen and (max-width: 590px) {
  .product_category span {
    font-size: 2.8vw
  }
}
.product_ttl {
  margin-bottom: 1rem;
  text-align: left
}
.product_ttl .en {
  display: block;
  font-size: 1.3rem;
  line-height: 1.3;
}
.product_ttl .jp {
  display: block;
  font-size: 0.8rem;
  font-weight: 700;
  color: #727171;
  line-height: 1.3
}
.product_detail {
  font-weight: 500;
  margin-bottom: 20px;
  letter-spacing: 0.05em
}
.news_category {
  text-align: left;
  margin-bottom: 5px
}
.news_category span {
  box-sizing: border-box;
  background: #dca9bf;
  border-radius: 100px;
  font-size: 0.7rem;
  font-weight: bold;
  letter-spacing: 0.1em;
  line-height: 1;
  color: #FFF;
  padding: 3px 10px
}
.news_day {
  font-family: "futura-pt", sans-serif;
  color: #727171;
  font-size: 0.8rem;
  line-height: 1
}
header {
  background: #d3e0cb;
  box-sizing: border-box;
  padding: 17px 15px;
  position: fixed;
  top: 0;
  left: 0;
  line-height: 0;
  margin: 0 auto;
  width: 100%;
  z-index: 9999;
}
header .header {
  align-items: center;
  justify-content: space-between
}
header .header .header_center {
  box-sizing: border-box
}
header .header .header_center img {
  height: 30px;
  width: auto
}
header .header .header_center .logo {
  position: fixed;
  top: 18px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 100000
}
header .header .header_left {
  box-sizing: border-box;
  width: 50vw
}
header .header .header_left .menu {
  align-items: center;
  display: flex
}
@media screen and (max-width: 590px) {
  header .header .header_left .menu {
    display: block
  }
}
header .header .header_left .menu li {
  box-sizing: border-box;
  margin-right: 20px
}
@media screen and (max-width: 590px) {
  header .header .header_left .menu li {
    border-bottom: 1px solid #727171;
    margin-right: 0;
    padding: 15px
  }
}
header .header .header_left .menu li a {
  display: block;
  text-align: left;
  line-height: 1.3;
  position: relative
}
@media screen and (max-width: 590px) {
  header .header .header_left .menu li a::before {
    background: url("../img/common/icon_arrow.svg") no-repeat;
    content: "";
    display: block;
    width: 8.5px;
    height: 12px;
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%)
  }
}
header .header .header_left .menu li .en {
  font-weight: 500;
  font-size: 11.5px;
  font-style: italic
}
@media screen and (max-width: 590px) {
  header .header .header_left .menu li .en {
    font-size: 24px;
    font-weight: 700
  }
}
header .header .header_left .menu li .jp {
  display: none
}
@media screen and (max-width: 590px) {
  header .header .header_left .menu li .jp {
    color: #727171;
    display: block;
    font-size: 0.7rem;
    font-weight: 600
  }
}
header .header .header_right {
  box-sizing: border-box
}
header .header .header_right .header_btn {
  align-items: center;
  justify-content: flex-end
}
header .header .header_right .header_btn .nav_cart, header .header .header_right .header_btn .nav_mypage {
  margin-left: 18px;
  z-index: 10000
}
.follow {
  display: none;
  margin-top: 40px
}
@media screen and (max-width: 590px) {
  .follow {
    display: block
  }
}
.follow .ttl {
  line-height: 1.3;
  margin-bottom: 25px;
  margin-left: 15px;
  text-align: left
}
@media screen and (max-width: 590px) {
  .follow .ttl {
    margin-left: 0;
    text-align: center
  }
}
.follow .ttl .en {
  font-size: 24px;
  font-weight: 400;
  font-style: italic
}
.follow .ttl .jp {
  font-size: 10px;
  letter-spacing: 0.05em
}
.follow .sns {
  justify-content: flex-start
}
@media screen and (max-width: 590px) {
  .follow .sns {
    justify-content: center
  }
}
.follow .sns li {
  box-sizing: border-box;
  margin: 0 5px;
}
.follow .sns li a {
  box-sizing: border-box;
  padding: 10px;
  width: 50px;
}
.follow .sns li img {
  width: 100%;
  height: auto
}
.follow .sns .sns_line {
  position: relative
}
.follow .sns .sns_line::before {
  background: url("https://d2w53g1q050m78.cloudfront.net/phoebebeautyupco/uploads/assets/din/2402/img/common/icon_line_tips_lumere.svg") no-repeat;
  content: "";
  display: block;
  width: 77px;
  height: 48px;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translate(105%, -50%)
}
@media screen and (max-width: 590px) {
  .follow .sns .sns_line::before {
    width: 78px;
    height: 48px
  }
}
footer {
  box-sizing: border-box;
  border-top: 5px solid #2d2d2d;
  position: relative
}
footer::before {
  background: #2d2d2d;
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  position: absolute;
  top: 5px;
  left: 0;
  transform: translateY(-50%)
}
.footer_contents {
  box-sizing: border-box;
  padding-top: 100px
}
@media screen and (max-width: 590px) {
  .footer_contents {
    padding-top: 80px
  }
}
@media screen and (max-width: 590px) {
  .footer_contents.flex {
    display: block
  }
}
.footer_contents .follow {
  display: block
}
.footer_contents .follow .ttl {
  margin-bottom: 15px
}
.footer_contents .left_box {
  box-sizing: border-box;
  padding: 0 15px;
  width: 41%
}
@media screen and (max-width: 590px) {
  .footer_contents .left_box {
    width: 100%
  }
}
.footer_contents .right_box {
  box-sizing: border-box;
  width: 59%
}
@media screen and (max-width: 590px) {
  .footer_contents .right_box {
    margin-top: 40px;
    width: 100%
  }
}
.footer_contents .logo {
  text-align: left;
  margin-left: 15px
}
@media screen and (max-width: 590px) {
  .footer_contents .logo {
    text-align: center;
    margin-left: 0
  }
}
.footer_contents .logo img {
  width: auto;
  height: 40px
}
@media screen and (max-width: 590px) {
  .footer_contents .logo img {
    height: 36px
  }
}
.footer_contents .footer_menu {
  align-items: center;
  flex-wrap: wrap;
  margin-bottom: 25px
}
@media screen and (max-width: 590px) {
  .footer_contents .footer_menu {
    margin-bottom: 40px
  }
}
.footer_contents .footer_menu li {
  box-sizing: border-box;
  display: flex;
  align-items: stretch;
  justify-content: flex-start;
  height: 50px;
  width: calc(100%/2)
}
.footer_contents .footer_menu li a {
  box-sizing: border-box;
  padding: 10px 40px 10px 10px;
  position: relative;
  display: flex;
  align-items: center;
  width: 100%
}
@media screen and (max-width: 590px) {
  .footer_contents .footer_menu li a {
    border-top: 1px solid #727171;
    padding: 10px 25px 10px 10px
  }
}
.footer_contents .footer_menu li a::before {
  content: '';
  width: 4px;
  height: 4px;
  border: 0;
  border-top: solid 1px #727171;
  border-right: solid 1px #727171;
  position: absolute;
  top: 50%;
  right: 40px;
  margin-top: -2px;
  transform: rotate(45deg)
}
@media screen and (max-width: 590px) {
  .footer_contents .footer_menu li a::before {
    right: 10px
  }
}
.footer_contents .footer_menu li a span {
  line-height: 1.2;
  font-size: 0.8rem
}
@media screen and (max-width: 590px) {
  .footer_contents .footer_menu li:nth-child(2n) {
    border-left: 1px solid #727171
  }
}
@media screen and (max-width: 590px) {
  .footer_contents .footer_menu li:nth-child(3) {
    border-bottom: 1px solid #727171
  }
}
@media screen and (max-width: 590px) {
  .footer_contents .footer_menu li:last-child {
    border-bottom: 1px solid #727171
  }
}
.footer_side_menu_container{
  display:flex;
  margin-bottom:60px;
}
@media screen and (max-width: 590px) {
  .footer_side_menu_container {
    flex-direction:column;
    margin-bottom:40px;
  }
}
.footer_contents .footer_side_menu {
  box-sizing: border-box;
  padding: 0;
  margin: 0;
  width:50%;
}
@media screen and (max-width: 590px) {
  .footer_contents .footer_side_menu {
    padding: 0 45px;
    width: 100%
  }
}
.footer_contents .footer_side_menu li a {
  box-sizing: border-box;
  color: #727171;
  display: block;
  font-size: 0.8rem;
  position: relative;
  padding: 5px 10px
}
.footer_contents .footer_side_menu li a::before {
  content: '';
  width: 4px;
  height: 4px;
  border: 0;
  border-top: solid 1px #727171;
  border-right: solid 1px #727171;
  position: absolute;
  top: 50%;
  right: 40px;
  margin-top: -2px;
  transform: rotate(45deg)
}
@media screen and (max-width: 590px) {
  .footer_contents .footer_side_menu li a::before {
    right:0px;
  }
}
.copyright {
  margin-bottom: 80px
}
@media screen and (max-width: 590px) {
  .copyright {
    margin-bottom: 40px
  }
}
.copyright p {
  color: rgba(114, 113, 113, 0.5);
  font-weight: 500;
  text-align: center;
  letter-spacing: 0.05em
}
.accordion {
  box-sizing: border-box;
  padding: 15px 50px;
  position: relative
}
@media screen and (max-width: 590px) {
  .accordion {
    padding: 10px 25px
  }
}
.accordion::before {
  background-color: #727171;
  content: "";
  height: 2px;
  position: absolute;
  right: 20px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  transition: all 1s ease-in-out;
  width: 12px
}
@media screen and (max-width: 590px) {
  .accordion::before {
    width: 10px;
    right: 5px;
    top: 22.5px
  }
}
.accordion::after {
  background-color: #727171;
  content: "";
  height: 2px;
  position: absolute;
  right: 20px;
  top: 50%;
  -webkit-transform: translateY(-50%) rotate(90deg);
  transform: translateY(-50%) rotate(90deg);
  transition: all 1s ease-in-out;
  width: 12px
}
@media screen and (max-width: 590px) {
  .accordion::after {
    width: 10px;
    right: 5px;
    top: 22.5px
  }
}
.accordion:hover {
  cursor: pointer
}
.accordion span {
  position: relative
}
.accordion span::before {
  color: #eed0d7;
  content: "Q.";
  font-family: "upgrade", sans-serif;
  font-weight: 500;
  font-size: 24px;
  position: absolute;
  top: 0;
  left: -20px;
  line-height: 1;
  transform: translate(-50%, 0%)
}
@media screen and (max-width: 590px) {
  .accordion span::before {
    font-size: 18px;
    left: -15px
  }
}
.accordion.active::after {
  display: none;
  opacity: 0
}
.accordion-open {
  box-sizing: border-box;
  display: none;
  padding: 10px 50px 15px;
  position: relative
}
@media screen and (max-width: 590px) {
  .accordion-open {
    padding: 5px 25px 15px
  }
}
.accordion-open span {
  position: relative
}
.accordion-open span::before {
  color: #eed0d7;
  content: "A.";
  font-family: "upgrade", sans-serif;
  font-weight: 500;
  font-size: 24px;
  position: absolute;
  top: 0;
  left: -20px;
  line-height: 1;
  transform: translate(-50%, 0%)
}
@media screen and (max-width: 590px) {
  .accordion-open span::before {
    font-size: 18px;
    left: -15px
  }
}
label {
  margin-bottom: 5px;
  display: block
}
input[type="text"], input[type="password"], input[type="email"], select, .form-control {
  background: #FFF;
  box-sizing: border-box;
  border-radius: 0;
  box-shadow: 0 0 15px rgba(201, 153, 166, 0.2);
  display: block;
  padding: 15px 10px;
  margin-bottom: 15px;
  width: 100%
}
input[type="checkbox"] {
  background: #FFF;
  border: 1px solid #727171;
  border-radius: 0;
  display: inline-block;
  width: 1.2em;
  height: 1.2em;
  margin-right: 8px;
  position: relative
}
input[type="checkbox"]::before {
  content: "";
  display: none;
  position: absolute;
  top: 1px;
  left: 1px;
  width: 12px;
  height: 6px;
  border-left: 3px solid #f0618d;
  border-bottom: 3px solid #f0618d;
  transform: rotate(-45deg);
  transition: all .2s ease-in-out
}
input[type="checkbox"]:checked::before {
  display: block
}
select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-position: right center;
  background-image: url("../img/common/icon_select.svg");
  background-repeat: no-repeat;
  background-position: right 10px center;
  border-radius: 0;
  color: #2d2d2d;
  line-height: 1.5;
  padding-right: 35px;
  text-indent: 0.01px;
  text-overflow: "";
  cursor: pointer;
  padding-top: 15px;
  padding-left: 15px;
  padding-bottom: 15px;
  font-size: 14px;
  min-width: 80px;
}
form .attention {
  color: #f0618d
}
form .form_layout {
  justify-content: space-between;
  align-items: center;
}
form .form_half {
  box-sizing: border-box;
  width: 48.5%
}
.form_check {
  margin-bottom: 25px
}
@media screen and (max-width: 590px) {
  .form_check {
    margin-bottom: 15px
  }
}
.form_check a {
  font-weight: 600;
  text-decoration: underline;
  letter-spacing: 0.05em
}
.cart_btn {
  box-sizing: border-box;
  background: #727171;
  color: #FFF;
  cursor: pointer;
  font-weight: 500;
  letter-spacing: 0.1em;
  text-align: center;
  padding: 15px;
  margin-bottom: 20px;
  width: 100%
}
.cart_btn_sub {
  text-align: center
}
.cart_btn_sub a {
  text-decoration: underline;
  color: #727171;
  opacity: .7
}
.table {
  width: 100%;
  max-width: 100%;
  margin-bottom: 21px
}
.table th {
  background: rgba(235, 206, 213, 0.3);
  box-sizing: border-box;
  border: 1px solid #eed0d7;
  font-size: 14px;
  padding: 5px 10px;
  width: 40%
}
@media screen and (max-width: 590px) {
  .table th {
    font-size: 12px
  }
}
.table td {
  background: #FFF;
  box-sizing: border-box;
  border: 1px solid #eed0d7;
  padding: 5px 10px;
  font-size: 14px;
  /*text-align: right;*/
  width: 60%
}
@media screen and (max-width: 590px) {
  .table td {
    font-size: 12px
  }
}
.confirm_list {
  justify-content: space-between
}
.confirm_list div {
  box-sizing: border-box;
  font-size: 14px;
  margin: 0;
  width: 40%
}
@media screen and (max-width: 590px) {
  .confirm_list div {
    font-size: 12px
  }
}
.confirm_list div .num {
  font-size: 15px
}
@media screen and (max-width: 590px) {
  .confirm_list div .num {
    font-size: 13px
  }
}
.confirm_list div:nth-child(2) {
  width: 20%
}
.btn_box .link_text {
  text-decoration: underline;
  color: #727171;
}
#mypage_page .btn_box .btn-primary {
  box-sizing: border-box;
  background: #727171;
  border-radius: 0;
  color: #FFF;
  font-weight: 600;
  padding: 8px 16px;
  letter-spacing: 0.1em;
  margin: 15px 0;
}
#agree a {
  text-decoration: underline;
}
/*form*/
.mypage_new {
  border-bottom: 1px solid #2d2d2d;
  box-sizing: border-box;
  padding: 10px 0;
}
.mypage_login .mypage_new p {
  text-align: left;
}
.form-group {
  margin: 15px 0;
}
.form_day .flex {
  align-items: center;
}
.checkbox-inline a {
  text-decoration: underline;
  font-weight: 600;
}
/*error*/
.formErrorContent {
  box-sizing: border-box;
  background: #eed0d7;
  border: 1px solid #727171;
  padding: 5px;
  font-size: 10.5px;
  line-height: 1.5;
  color: #727171;
  margin-left: -40px;
}
/*cart*/
#tanpin-submit {
  box-sizing: border-box;
  border: 1px solid #819c85;
  border-radius: 100px;
  padding: 15px 20px;
  text-align: center;
  margin:20px 0 0 0;
  width:100%;
  color: #819c85;
  position: relative;
  font-weight: 600;
}
.cartinmove::before{
  content: '';
  display: block;
  width: 6px;
  height: 6px;
  border: 0;
  /*border-top: solid 2px #819c85;
  border-right: solid 2px #819c85;*/
  position: absolute;
  top: 50%;
  right: 40px;
  margin-top: -4px;
  transform: rotate(45deg);
  z-index: 10;
}
@media screen and (max-width: 590px) {
  .cartinmove::before{
    right: 20px;
  }
}
.cartinmove::after{
  content: "";
  display: block;
  width: 22px;
  height: 20px;
  position: absolute;
  top: 50%;
  left: 40px;
  transform: translate(50%, -50%);
  /*background: url(https://d2w53g1q050m78.cloudfront.net/phoebebeautyupco/uploads/assets/din/2402/img/common/icon_cart_lumere.svg) no-repeat;*/
  background-size: cover;
  z-index: 10;
}
@media screen and (max-width: 590px) {
  .cartinmove::after{
    left: 15px;
  }
}

/*checkbox*/
.checkbox_info {
  display: flex;
  align-items: center;
  justify-content: center;
}
.checkbox_info span {
  font-weight: normal;
}
/*video*/
.videoarea {
  width: 100%;
}
.videoarea video {
  width: 100%;
  height: auto;
}
.alert {
  box-sizing: border-box;
  border: 1px solid #727171;
  background: #eed0d7;
  font-size: 0.9em;
  color: #727171;
  padding: 5px;
  margin: 5px auto;
  line-height: 1.5;
}
/*common.css縺ｫ霑ｽ險�*/
.member_ttl {
  text-align: center;
  margin-bottom: 40px;
}
.member_ttl .en {
  display: block;
  font-size: 0.8rem;
  font-weight: 500;
  color: #727171;
  line-height: 1.3;
}
.member_ttl .jp {
  display: block;
  font-size: 1.5rem;
  font-weight: 800;
  line-height: 1.3;
}
@media screen and (min-width: 590px) {
  .member_ttl {
    margin-bottom: 80px;
  }
  .member_ttl .en {
    font-size: 1rem;
  }
  .member_ttl .jp {
    font-size: 1.8rem;
  }
}
.common_membership {
  padding: 60px 15px 25px;
}
.common_membership .member_ttl {
  margin-bottom: 25px;
}
.common_membership_list ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
}
.common_membership_list ul li {
  box-sizing: border-box;
  margin: 1%;
  width: calc(90%/5);
}
.common_membership_list ul li .rewards_icon {
  box-sizing: border-box;
  margin: auto;
  height: 80px;
  overflow: hidden;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
}
.common_membership_list ul li .rewards_ttl {
  text-align: center;
  line-height: 1.3;
  letter-spacing: 0.05em;
}
.common_membership_list ul li .rewards_icon img {
  box-sizing: border-box;
  margin: auto;
  width: 55%;
}
.common_membership_list ul li:nth-child(2) .rewards_icon img {
  width: 40%;
  height: auto;
}
.common_membership_list ul li:nth-child(3) .rewards_icon img {
  width: 45%;
  height: auto;
}
.common_membership_list ul li:nth-child(4) .rewards_icon img {
  width: 50%;
  height: auto;
}
@media screen and (max-width: 590px) {
  .common_membership_list ul li {
    width: calc(93%/3);
  }
  .common_membership_list ul li .rewards_icon {
    height: 100px;
  }
}
.footer_bottom {
  border-top: 1px solid #2d2d2d;
}
/*slick-thema.css_LUMERE*/
.product_mv .slick-dots li button:before {
  background: #829D86;
}
#product_offer_area .slick-dots li button:before {
  background: #829D86;
}
