body {
  background-color: #000;
}

#main {
  background-color: #fff;
  padding: 37px 0 82px;
}

.hidden-pc {
  display: none;
}

.AddCartButton {
  background-color: #000;
  color: #fff;
  border: 1px solid #000;
  width: 243px;
  height: 48px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  font-size: 14px;
  letter-spacing: 0.03em;
  -webkit-transition: 0.3s color linear, 0.3s background-color linear;
  -o-transition: 0.3s color linear, 0.3s background-color linear;
  transition: 0.3s color linear, 0.3s background-color linear;
  text-decoration: none;
}
.AddCartButton:hover {
  color: #000;
  background-color: #fff;
}

.MainVisual {
  padding: 0 5px 0 0;
}

.CatchDescription {
  padding: 65px 0 0;
  max-width: 702px;
  margin: 0 auto;
}
.CatchDescription__title {
  font-family: "HelveticaNeueLTStd-Th";
  font-size: 40px;
  letter-spacing: 0.03em;
}
.CatchDescription__textbox {
  margin: 8px 0 0;
}
.CatchDescription__textbox p {
  font-size: 14px;
  line-height: 32px;
  letter-spacing: 0.03em;
}
.CatchDescription__textbox p + p {
  margin-top: 32px;
}
.CatchDescription__dates {
  margin: 35px 0 0;
}
.CatchDescription__dates p {
  font-size: 14px;
  line-height: 20px;
  letter-spacing: 0.03em;
}
.CatchDescription__notes {
  margin: 25px 0 0;
}
.CatchDescription__notes p {
  font-size: 11px;
  letter-spacing: 0.03em;
}

.ColorLineup {
  padding: 81px 0 0;
  max-width: 702px;
  margin: 0 auto;
}
.ColorLineup__title {
  font-family: "HelveticaNeueLTStd-Th";
  font-size: 26px;
  letter-spacing: 0.03em;
}
.ColorLineup__text {
  font-size: 12px;
  letter-spacing: 0.03em;
  margin: 1px 0 0;
}
.ColorLineup__list {
  margin: 27px 0 0;
}

.ColorList {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 59px 0 59px 0 59px 0 59px 0 59px 0 59px 0 59px 0 59px 0 59px 0 59px;
  grid-template-columns: repeat(10, 59px);
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 11px 0;
}

.Lineup {
  margin: 90px 0 0;
}
.Lineup__title {
  text-align: center;
}
.Lineup__title img {
  width: 127px;
}
.Lineup__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 576px;
  margin: 35px auto 0;
}
.Lineup__list a {
  text-decoration: none;
}
.Lineup__image {
  height: 173px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.Lineup__image1 {
  width: 53px;
}
.Lineup__image2 {
  width: 53px;
}
.Lineup__image3 {
  width: 53px;
}
.Lineup__image4 {
  width: 48px;
}
.Lineup__item2 {
  margin: 0 0 0 41px;
}
.Lineup__item3 {
  margin: 0 0 0 43px;
}
.Lineup__item4 {
  margin: 0 0 0 43px;
}
.Lineup__item4 .Lineup__image {
  padding: 0 0 9px;
}
.Lineup__caption {
  text-align: center;
  font-size: 13px;
  line-height: 18px;
  letter-spacing: 0.03em;
  height: 36px;
  font-family: "HelveticaNeueLTStd-Th";
  margin: 6px 0 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-style: normal;
  font-weight: normal;
  gap: 0.3em;
}
.Lineup__caption span, .Lineup__caption i {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  font-size: inherit;
  font-style: inherit;
  font-weight: inherit;
  line-height: inherit;
}
.Lineup__arrow {
  text-align: center;
  margin: 4px 0 0;
}
.Lineup__arrow::before {
  content: "";
  display: inline-block;
  width: 11px;
  height: 11px;
  border-left: 1px solid #000;
  border-bottom: 1px solid #000;
  -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

.Promotion {
  max-width: 700px;
  margin: 90px auto 0;
  border: 1px solid #000;
  padding: 31px 31px 26px;
  display: -ms-grid;
  display: grid;
  -ms-grid-rows: auto 18px auto;
      grid-template-areas: "title title" "image content";
  -ms-grid-columns: 1fr 0 1fr;
  grid-template-columns: 1fr 1fr;
  gap: 18px 0;
}
.Promotion__title {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
  -ms-grid-column-span: 3;
  grid-area: title;
  text-align: center;
}
.Promotion__title img {
  width: 161px;
}
.Promotion__image {
  -ms-grid-row: 3;
  -ms-grid-column: 1;
  grid-area: image;
}
.Promotion__image img {
  width: 258px;
  display: inline-block;
  -webkit-transform: translate(-7px, 4px);
      -ms-transform: translate(-7px, 4px);
          transform: translate(-7px, 4px);
}
.Promotion__content {
  -ms-grid-row: 3;
  -ms-grid-column: 3;
  grid-area: content;
}
.Promotion__present {
  width: 318px;
  font-size: 14px;
  line-height: 24px;
  letter-spacing: 0.03em;
}
.Promotion__notes {
  margin: 12px 0 0;
}
.Promotion__notes p {
  font-size: 12px;
  line-height: 18px;
  letter-spacing: 0.07em;
  text-indent: -1em;
  padding-left: 1em;
}
.Promotion__product {
  font-size: 11px;
  line-height: 14.67px;
  letter-spacing: 0.03em;
  margin: 15px 0 0;
}
.Promotion__product i {
  font-style: inherit;
  font-weight: inherit;
  font-style: inherit;
  line-height: 1;
  vertical-align: middle;
  -webkit-transform: translateY(-1px);
      -ms-transform: translateY(-1px);
          transform: translateY(-1px);
}

.ProductMainVisual {
  padding: 100px 0 0;
}

.ProductTitle {
  font-family: "HelveticaNeueLTStd-Th";
  font-size: 40px;
  letter-spacing: 0.03em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-style: normal;
  font-weight: normal;
  gap: 0.3em;
}
.ProductTitle span, .ProductTitle i {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  font-size: inherit;
  font-style: inherit;
  font-weight: inherit;
  line-height: inherit;
}

.ProductCatch {
  font-size: 18px;
  line-height: 28px;
  letter-spacing: 0.03em;
}

.ProductDescription {
  font-size: 15px;
  line-height: 24px;
  letter-spacing: 0.03em;
}

.ProductInfo__name {
  line-height: 1;
  font-size: 18px;
  letter-spacing: 0.03em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-style: normal;
  font-weight: normal;
  gap: 0.5em;
}
.ProductInfo__name span, .ProductInfo__name i {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  font-size: inherit;
  font-style: inherit;
  font-weight: inherit;
  line-height: inherit;
}
.ProductInfo__price {
  line-height: 1;
  font-size: 14px;
  letter-spacing: 0.03em;
}

.ProductFeature__title {
  border-bottom: 1px solid #000;
  padding: 9px 20px;
  cursor: pointer;
}
.ProductFeature__title span {
  font-size: 16px;
}
.ProductFeature__title i {
  right: 20px;
  top: calc(50% + 0.1em + 1px);
}
.ProductFeature__in {
  padding: 23px 0 0;
}
.ProductFeature__list {
  display: -ms-grid;
  display: grid;
  gap: 8px 0;
}
.ProductFeature__list li {
  font-size: 14px;
  line-height: 24px;
  letter-spacing: 0.03em;
  text-indent: -1.5em;
  padding-left: 1.5em;
}
.ProductFeature__subtitle {
  font-size: 14px;
  line-height: 24px;
  letter-spacing: 0.03em;
  margin: 12px 0 0;
}

.NailPolish {
  max-width: 694px;
  margin: 51px auto 0;
}
.NailPolish__catch {
  margin: 23px 0 0;
}
.NailPolish__text {
  margin: 39px 0 0;
}
.NailPolish__product {
  margin: 43px 0 0;
  display: -ms-grid;
  display: grid;
  gap: 12px;
}
.NailPolish__feature {
  max-width: 600px;
  margin: 89px auto 0;
}
.NailPolish__products {
  margin: 100px 0 0;
}

.NailPolish5type {
  margin: 30px 0 0;
}
.NailPolish5type h3 {
  font-size: 14px;
  letter-spacing: 0.03em;
  font-weight: bold;
  margin: 0 0 10px;
}
.NailPolish5type ul {
  display: -ms-grid;
  display: grid;
  gap: 9px 0;
}
.NailPolish5type ul li {
  font-size: 14px;
  line-height: 24px;
  letter-spacing: 0.03em;
}

.NailPolishFeatureFormula {
  margin: 30px 0 0;
}
.NailPolishFeatureFormula h3 {
  font-size: 14px;
  letter-spacing: 0.03em;
  font-weight: bold;
  margin: 0 0 10px;
}
.NailPolishFeatureFormula ol {
  display: -ms-grid;
  display: grid;
  gap: 9px;
}
.NailPolishFeatureFormula ol li {
  font-size: 14px;
  line-height: 24px;
  letter-spacing: 0.03em;
  text-indent: -1.5em;
  padding-left: 1.5em;
}
.NailPolishFeatureFormula ul {
  margin: 18px 0 0 -8px;
}
.NailPolishFeatureFormula ul li {
  font-size: 14px;
  line-height: 24px;
  letter-spacing: 0.03em;
}
.NailPolishFeatureFormula small {
  display: block;
  font-size: 11px;
  line-height: 14.67px;
  margin: 21px 0 0;
  letter-spacing: 0.03em;
}
.NailPolishFeatureFormula p {
  text-align: right;
  margin: 23px 7px 0 0;
}
.NailPolishFeatureFormula p a {
  font-size: 13px;
  letter-spacing: 0.03em;
}

.NailPolishSlide__image {
  width: 139px;
  margin: 0 auto;
}
.NailPolishSlide__name {
  font-family: "HelveticaNeueLTStd-Th";
  text-align: center;
  font-size: 18px;
  letter-spacing: 0.03em;
  margin: 33px 0 0;
}
.NailPolishSlide__catch {
  font-size: 13px;
  letter-spacing: 0.03em;
  text-align: center;
  margin: 9px 0 0;
}
.NailPolishSlide__button .AddCartButton {
  margin: 0 auto;
}

.NailPolishSlider .commonSlide .slick-prev, .NailPolishSlider .commonSlide .slick-next {
  border-top: 1px solid #000;
  border-right: 1px solid #000;
  max-width: 34px;
  max-height: 34px;
  top: 160px;
}
.NailPolishSlider .commonSlide .slick-prev {
  left: 160px;
}
.NailPolishSlider .commonSlide .slick-next {
  right: 160px;
}
.NailPolishSlider .relatedArea {
  margin-top: 39px;
}

.NailPolishColorList {
  max-width: 600px;
  margin: 38px auto 0;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 51px 10px 51px 10px 51px 10px 51px 10px 51px 10px 51px 10px 51px 10px 51px 10px 51px 10px 51px;
  grid-template-columns: repeat(10, 51px);
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 9px 10px;
}
.NailPolishColorList__item {
  position: relative;
}
.NailPolishColorList__item.stay::before {
  content: "";
  position: absolute;
  width: 57px;
  height: 57px;
  border: 1px solid #000;
  top: -3px;
  left: -3px;
}

.TopCoat {
  margin: 109px auto 0;
  max-width: 694px;
}
.TopCoat__catch {
  margin: 23px 0 0;
}
.TopCoat__text {
  margin: 39px 0 0;
}
.TopCoat__product {
  margin: 43px 0 0;
  display: -ms-grid;
  display: grid;
  gap: 12px;
}
.TopCoat__feature {
  max-width: 600px;
  margin: 89px auto 0;
}
.TopCoat__products {
  margin: 93px 0 0;
}

.TopCoatFeature__notes {
  font-size: 11px;
  line-height: 14.67px;
  margin: 21px 0 0;
  letter-spacing: 0.03em;
}
.TopCoatFeature__more {
  text-align: right;
  margin: 23px 7px 0 0;
}
.TopCoatFeature__more a {
  font-size: 13px;
  letter-spacing: 0.03em;
}

.TopCoatProduct__image {
  width: 139px;
  margin: 0 auto;
}
.TopCoatProduct__name {
  font-family: "HelveticaNeueLTStd-Th";
  text-align: center;
  font-size: 18px;
  letter-spacing: 0.03em;
  margin: 33px 0 0;
}
.TopCoatProduct__catch {
  font-size: 13px;
  letter-spacing: 0.03em;
  text-align: center;
  margin: 9px 0 0;
}
.TopCoatProduct__button {
  margin: 37px 0 0;
}
.TopCoatProduct__button .AddCartButton {
  margin: 0 auto;
}

.BaseCoat {
  margin: 111px auto 0;
  max-width: 694px;
}
.BaseCoat__catch {
  margin: 23px 0 0;
}
.BaseCoat__text {
  margin: 39px 0 0;
}
.BaseCoat__product {
  margin: 43px 0 0;
  display: -ms-grid;
  display: grid;
  gap: 12px;
}
.BaseCoat__feature {
  max-width: 600px;
  margin: 89px auto 0;
}
.BaseCoat__products {
  margin: 92px 0 0;
}

.BaseCoatFeature__notes {
  font-size: 11px;
  line-height: 14.67px;
  margin: 21px 0 0;
  letter-spacing: 0.03em;
}
.BaseCoatFeature__more {
  text-align: right;
  margin: 23px 7px 0 0;
}
.BaseCoatFeature__more a {
  font-size: 13px;
  letter-spacing: 0.03em;
}

.BaseCoatProduct__image {
  width: 140px;
  margin: 0 auto;
}
.BaseCoatProduct__button {
  margin: 37px 0 0;
}
.BaseCoatProduct__button .AddCartButton {
  margin: 0 auto;
}

.NailPolishRemover {
  margin: 111px auto 0;
  max-width: 694px;
}
.NailPolishRemover__catch {
  margin: 23px 0 0;
}
.NailPolishRemover__text {
  margin: 39px 0 0;
}
.NailPolishRemover__product {
  margin: 43px 0 0;
  display: -ms-grid;
  display: grid;
  gap: 12px;
}
.NailPolishRemover__feature {
  max-width: 600px;
  margin: 89px auto 0;
}
.NailPolishRemover__feature .ProductFeature__in {
  padding: 20px 0 0;
}
.NailPolishRemover__products {
  margin: 96px 0 0;
}

.NailPolishRemoverAroma {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 32px 0 0;
}
.NailPolishRemoverAroma__content {
  -webkit-box-ordinal-group: 1;
      -ms-flex-order: 0 0 50%;
          order: 0 0 50%;
  width: 50%;
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  padding: 0 0 0 2px;
}
.NailPolishRemoverAroma__content h3 {
  font-weight: bold;
  font-size: 14px;
  letter-spacing: 0.03em;
  margin: 0 0 12px;
}
.NailPolishRemoverAroma__content p {
  font-size: 12px;
  line-height: 18px;
  letter-spacing: 0.03em;
}
.NailPolishRemoverAroma__content p + p {
  margin-top: 18px;
}
.NailPolishRemoverAroma__content div {
  text-align: right;
  padding: 22px 4px 0 0;
}
.NailPolishRemoverAroma__content a {
  font-size: 13px;
}
.NailPolishRemoverAroma__image {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 50%;
          flex: 0 0 50%;
  width: 50%;
  margin: 2px 0 0 -2px;
}
.NailPolishRemoverAroma__image img {
  width: 298px;
}

.NailPolishRemoverProduct__image {
  text-align: center;
}
.NailPolishRemoverProduct__image img {
  width: 132px;
}
.NailPolishRemoverProduct__button {
  margin: 43px 0 0;
}
.NailPolishRemoverProduct__button .AddCartButton {
  margin: 0 auto;
}

.NailListLink {
  text-align: center;
  margin: 70px 0 0;
}
.NailListLink a {
  font-size: 14px;
  letter-spacing: 0.03em;
  text-decoration: none;
  display: inline-block;
  position: relative;
  padding: 0 0 5px;
}
.NailListLink a:after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  height: 1px;
  width: 100%;
  background-color: #000;
}