@charset "UTF-8";

/*all----------------------------*/
html {
  font-size: 62.5%;
}

#Wrap {
  width: auto;
}

footer {
  position: relative;
  z-index: 2;
}

.LP_page * {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  line-height: 1;
  letter-spacing: .05em;
}

.LP_page {
  font-weight: 600;
  background: #ffe9ec;
  color: #000;
  font-family: "HGSｺﾞｼｯｸM", "HGSGothicM", "メイリオ", "Meiryo", sans-serif;
  overflow: hidden;
}

.LP_page picture {
  display: block;
  font-size: 0;
}

.LP_page a {
  display: block;
}

.LP_page a:hover {
  opacity: 1 !important;
}

.LP_page img {
  width: 100%;
  height: auto;
}

.LP_page .sec_inner {
  width: 100rem;
  margin: 0 auto;
}

.LP_page .sclr_act {
  transform: translateY(20px);
  opacity: 0;
  transition: 1s;
}

.LP_page .sclr_act.active {
  transform: translateY(0);
  opacity: 1;
}
/*----------------------------all*/

/*mv-----------------------------*/
.mv_area {
  position: relative;
  padding: 4rem 0 10rem;
  background: #ffd2db;
}

.mv_area::before {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 26rem;
  margin-bottom: -22rem;
  background: url(../img/bg_001.svg) bottom center / cover no-repeat;
  content: "";
  animation: wave 40s infinite linear;
}

@keyframes wave {
  0% {
    transform: translateX(0) scaleX(1) ;
  }

  25% {
    transform: translateX(10rem) scaleX(1.8);
  }

  50% {
    transform: translateX(0) scaleX(1);
  }

  75% {
    transform: translateX(-10rem) scaleX(1.8);
  }

  100% {
    transform: translateX(0) scaleX(1);
  }
}

.main_ttl {
  width: 120rem;
  margin: 0 auto 6rem;
  border-radius: 5rem;
  overflow: hidden;
}

.main_lead_wrap dt {
  margin-bottom: 3rem;
  font-family: "baskerville-display-pt", serif;
  font-size: 4.1rem;
  font-style: italic;
  text-align: center;
  color: #f96277;
}

.main_lead_wrap dd {
  font-size: 1.5rem;
  line-height: 2.2;
  letter-spacing: .075em;
  text-align: center;
  font-weight: 500;
}
/*-----------------------------mv*/

/*tab----------------------------*/
.tab_list_wrap {
  position: relative;
  padding-bottom: 10rem;
}

.tab_list {
  display: flex;
  justify-content: center;
  gap: 8rem;
}

.tab_list_wrap .tab_list li {
  position: relative;
}

.tab_list_wrap .tab_list li.selected {
  pointer-events: none;
}

.tab_list_wrap .tab_list li::before {
  position: absolute;
  z-index: 1;
  height: 4px;
  content: "";
  transform: translate(-.2rem, -.2rem);
  transition: .3s;
}

.tab_list_wrap .tab_list li::after {
  position: absolute;
  z-index: 1;
  height: 4px;
  content: "";
  transform: translate(-.3rem, -.2rem);
  transition: .3s;
}

.tab_list_wrap .tab_list li.color_pink::before {
  transform: translate(-.3rem, -.4rem);
}

.tab_list_wrap .tab_list li.color_pink::after {
  transform: translate(-.3rem, -.4rem);
}

.tab_list_wrap .tab_list li:hover::before,
.tab_list_wrap .tab_list li:hover::after {
  transform: translate(0) !important;
}

.tab_list_wrap .tab_list li.color_red:before {
  bottom: 0;
  right: 0;
  width: .3rem;
  margin-right: 7.5rem;
}

.tab_list_wrap .tab_list li.color_red:after {
  bottom: 0;
  right: 0;
  width: .5rem;
  margin-right: 6.6rem;
}

.tab_list_wrap .tab_list li.color_red::before,
.tab_list_wrap .tab_list li.color_red::after {
  background: #ff979c;
}

.tab_list_wrap .tab_list li.color_red.selected::before,
.tab_list_wrap .tab_list li.color_red.selected::after,
.tab_list_wrap .tab_list li.color_red:hover::before,
.tab_list_wrap .tab_list li.color_red:hover::after {
  background: #fc7575;
}

.tab_list_wrap .tab_list li.color_pink:before {
  top: 0;
  left: 0;
  width: .3rem;
  margin-left: 7rem;
}

.tab_list_wrap .tab_list li.color_pink:after {
  top: 0;
  left: 0;
  width: .3rem;
  margin-left: 6.3rem;
}

.tab_list_wrap .tab_list li.color_pink::before,
.tab_list_wrap .tab_list li.color_pink::after,
.tab_list_wrap .tab_list li.color_pink.selected::before,
.tab_list_wrap .tab_list li.color_pink.selected::after {
  background: #ffd2db;
}

.tab_list_wrap .tab_list li.color_pink:hover::before,
.tab_list_wrap .tab_list li.color_pink:hover::after {
  background: #f478b0;
}

.tab_list_wrap .tab_list li.color_purple:before {
  bottom: 0;
  right: 0;
  width: .5rem;
  margin-right: 13rem;
}

.tab_list_wrap .tab_list li.color_purple:after {
  bottom: 0;
  right: 0;
  width: .3rem;
  margin-right: 12.3rem;
}

.tab_list_wrap .tab_list li.color_purple::before,
.tab_list_wrap .tab_list li.color_purple::after {
  background: #ed9de2;
}

.tab_list_wrap .tab_list li.color_purple.selected::before,
.tab_list_wrap .tab_list li.color_purple.selected::after,
.tab_list_wrap .tab_list li.color_purple:hover::before,
.tab_list_wrap .tab_list li.color_purple:hover::after {
  background: #ce76ce;
}


.tab_list li a {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 26rem;
  height: 7.5rem;
  font-size: 2rem;
  transition: color .3s;
}

.tab_list li a:hover {
  color: #fff;
}

.tab_list li a::before {
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 2.5rem;
  width: 100%;
  height: 100%;
  transform: translate(.3rem, .3rem);
  content: "";
  transition: .3s;
}

.tab_list li.color_red a::before {
  background: #ff979c;
}

.tab_list li.color_red.selected a::before,
.tab_list li.color_red a:hover::before {
  background: #fc7575;
}

.tab_list li.color_pink a::before {
  background: #fca2c7;
}

.tab_list li.color_pink.selected a::before,
.tab_list li.color_pink a:hover::before {
  background: #f478b0;
}

.tab_list li.color_purple a::before {
  background: #ed9de2;
}

.tab_list li.color_purple.selected a::before,
.tab_list li.color_purple a:hover::before {
  background: #ce76ce;
}

.tab_list li a::after {
  position: absolute;
  top: 0;
  left: 0;
  border: solid 2px #000;
  border-radius: 2.5rem;
  width: 100%;
  height: 100%;
  transform: translate(-.3rem, -.3rem);
  content: "";
  pointer-events: none;
  transition: .3s;
  box-sizing: border-box;
}

.tab_list li a:hover::before,
.tab_list li a:hover::after {
  transform: translate(0) !important;
}

.tab_list li.selected a {
  color: #fff;
  pointer-events: none;
}

.tab_list li a p {
  position: relative;
  text-align: center;
}

.tab_list li a .txt_S {
  display: block;
  margin-top: .8rem;
  font-size: 1.5rem;
}
/*----------------------------tab*/

/*each content-------------------*/
.each-content_area {
  position: relative;
  z-index: 1;
  padding: 10rem 0;
  display: none;
}

.each-content_area.selected {
  display: block;
}

.each-content_area .sec_ttl {
  width: fit-content;
  margin: 0 auto 6rem;
  font-size: 3.9rem;
}

.each-content_area .sec_ttl .hash-tag {
  display: block;
  float: left;
  margin: -1rem .5rem 0 0;
  font-weight: 300;
  font-size: 10rem;
}

.each-content_area .sec_ttl .txt_S {
  display: block;
  margin-top: 1.5rem;
  font-size: 2.3rem;
}

#Femcare .sec_ttl {
  color: #f96969;
}

#Menstruation .sec_ttl {
  color: #f478b0;
}

#FemininityUp .sec_ttl {
  color: #ce76ce;
}

.worries_wrap {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 3rem;
  margin-bottom: 7rem;
}

.worries_wrap .worries {
  position: relative;
  width: 47rem;
  height: 24rem;
}

.worries_wrap .worries p {
  position: absolute;
  width: 29rem;
  padding-top: 2rem;
}

.worries_wrap .worries::before {
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: -1;
  content: "";
}

#Femcare .worries_wrap .worries::before {
  width: 19rem;
  height: 22.4rem;
  background: url(../img/img_011.png) top left / cover no-repeat;
}

#Menstruation .worries_wrap .worries::before {
  width: 16rem;
  height: 24rem;
  background: url(../img/img_021.png) top left / cover no-repeat;
}

#FemininityUp .worries_wrap .worries::before {
  width: 18rem;
  height: 23.9rem;
  background: url(../img/img_031.png) top left / cover no-repeat;
}

.worries_wrap .advice_list {
  position: relative;
  padding: 3rem;
  font-size: 1.5rem
}

.worries_wrap .advice_list::before {
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 3.5rem;
  width: 100%;
  height: 100%;
  transform: translate(.3rem, .3rem);
  content: "";
}

#Femcare .worries_wrap .advice_list::before {
  background: #ffb3ba;
}

#Menstruation .worries_wrap .advice_list::before {
  background: #ffc5e2;
}

#FemininityUp .worries_wrap .advice_list::before {
  background: #e4bfe8;
}

.worries_wrap .advice_list::after {
  position: absolute;
  top: 0;
  left: 0;
  border: solid 2px #000;
  border-radius: 3.5rem;
  width: 100%;
  height: 100%;
  transform: translate(-.3rem, -.3rem);
  content: "";
  box-sizing: border-box;
  pointer-events: none;
}

.worries_wrap .advice_list dt {
  position: relative;
 line-height: 1.4;
}

.worries_wrap .advice_list dd {
  position: relative;
  z-index: 1;
}

.worries_wrap .advice_list dd:before {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 5rem;
  height: 4.6rem;
  margin: 0 0 -5rem 0;
  background: url(../img/icon_001.svg) center center / cover no-repeat;
  content: "";
}

.worries_wrap .advice_list dd ul li {
  line-height: 1.4;
}

.feature_list .each-feature:nth-of-type(n+2) {
  margin-top: 15rem;
}

.each-feature .itm_list {
  margin-bottom: 9rem;
  padding: 0 6rem;
}

.each-feature .itm_list li {
  display: flex;
  align-items: center;
  gap: 1rem;
}

.each-feature .itm_list li:nth-of-type(n+2) {
  margin-top: 8rem;
}

.each-feature .itm_list li .itm_img {
  position: relative;
  z-index: 1;
  width: 36rem;
}

.each-feature .itm_list li .itm_img img {
  animation: float 8s ease-in-out infinite;
  filter: drop-shadow(0 10px 10px rgba(0, 0, 0, .16));
}

@keyframes float {
  0% {
    transform: translateY(-10px);
  }

  50% {
    transform: translateY(10px);
  }

  100% {
    transform: translateY(-10px);
  }
}

.each-feature .itm_list li:nth-of-type(even) .itm_img,
#Menstruation .feature_list .each-feature:nth-of-type(even) .itm_list li .itm_img,
#FemininityUp .feature_list .each-feature:nth-of-type(even) .itm_list li .itm_img {
  order: 2;
}

.each-feature .itm_list li .itm_img a::before {
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  border-radius: 100rem;
  width: 35rem;
  height: 35rem;
  margin: 0 0 0 -6rem;
  content: "";
  transition: background-color .3s;
}

.each-feature .itm_list li:nth-of-type(even) .itm_img a::before,
#Menstruation .feature_list .each-feature:nth-of-type(even) .itm_list li .itm_img a::before,
#FemininityUp .feature_list .each-feature:nth-of-type(even) .itm_list li .itm_img a::before {
  left: auto;
  right: 0;
  margin: 0 -6rem 0 0;
}

#Femcare .each-feature .itm_list li .itm_img a::before {
  background: #ffb3ba;
}

#Femcare .each-feature .itm_list li .itm_img a:hover::before {
  background: #fc7575;
}

#Menstruation .each-feature .itm_list li .itm_img a::before {
  background: #ffc5e2;
}

#Menstruation .each-feature .itm_list li .itm_img a:hover::before {
  background: #f478b0;
}

#FemininityUp .each-feature .itm_list li .itm_img a::before {
  background: #e4bfe8;
}

#FemininityUp .each-feature .itm_list li .itm_img a:hover::before {
  background: #ce76ce;
}

.each-feature .itm_list li .txt_wrap {
  flex: 1;
}

.each-feature .itm_list li .itm_cat {
  border: solid 1px #000;
  width: fit-content;
  margin-bottom: 1rem;
  padding: .5rem 1rem;
  font-size: 1.5rem;
}

.each-feature .itm_list li:nth-of-type(even) .itm_cat,
#Menstruation .feature_list .each-feature:nth-of-type(even) .itm_list li .itm_cat,
#FemininityUp .feature_list .each-feature:nth-of-type(even) .itm_list li .itm_cat {
  margin-right: 0;
  margin-left: auto;
}

.each-feature .itm_list li .itm_name {
  margin-bottom: 1rem;
  font-size: 1.8rem;
  line-height: 1.7;
  text-shadow: -0.1px 0px 0px, 0px -0.1px 0px;
}

.each-feature .itm_list li:nth-of-type(even) .itm_name,
#Menstruation .feature_list .each-feature:nth-of-type(even) .itm_list li .itm_name,
#FemininityUp .feature_list .each-feature:nth-of-type(even) .itm_list li .itm_name {
  text-align: right;
}

.each-feature .itm_list li .itm_price {
  margin-bottom: 3rem;
  font-size: 1.8rem;
}

.each-feature .itm_list li:nth-of-type(even) .itm_price,
#Menstruation .feature_list .each-feature:nth-of-type(even) .itm_list li .itm_price,
#FemininityUp .feature_list .each-feature:nth-of-type(even) .itm_list li .itm_price {
  text-align: right;
}

.each-feature .itm_list li .itm_btn {
  width: fit-content;
}

.each-feature .itm_list li:nth-of-type(even) .itm_btn,
#Menstruation .feature_list .each-feature:nth-of-type(even) .itm_list li .itm_btn,
#FemininityUp .feature_list .each-feature:nth-of-type(even) .itm_list li .itm_btn {
  margin: 0 0 0 auto;
}

.each-feature .itm_list li .itm_btn a {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 5rem;
  height: 5rem;
}

.each-feature .itm_list li .itm_btn a::before {
  position: absolute;
  top: 0;
  left: 0;
  border: solid 2px;
  border-radius: 10rem;
  width: 100%;
  height: 100%;
  content: "";
  transition: background-color .3s;
  animation: circle 3s infinite;
}

@keyframes circle {
  0% {
    transform: scale(1);
  }

  50% {
    transform: scale(1.16);
  }


  100% {
    transform: scale(1);
  }
}

.each-feature .itm_list li .itm_btn a:hover::before {
  background: #fff !important;
}

#Femcare .each-feature .itm_list li .itm_btn a::before {
  border-color: #f96969;
  background: #f96969;
}

#Menstruation .each-feature .itm_list li .itm_btn a::before {
  border-color: #f478b0;
  background: #f478b0;
}

#FemininityUp .each-feature .itm_list li .itm_btn a::before {
  border-color: #ce76ce;
  background: #ce76ce;
}

.each-feature .itm_list li .itm_btn a span {
  position: relative;
  width: 3.4rem;
  margin: .5rem 0 0 .5rem;
}

.each-feature .itm_list li .itm_btn a span svg path {
  transition: fill .3s;
}

#Femcare .each-feature .itm_list li .itm_btn a:hover span svg path {
  fill: #f96969;
}

#Menstruation .each-feature .itm_list li .itm_btn a:hover span svg path {
  fill: #f478b0;
}

#FemininityUp .each-feature .itm_list li .itm_btn a:hover span svg path {
  fill: #ce76ce;
}

.each-feature .itm_list li .itm_caption {
  border-top: solid 1px;
  margin-top: 2.5rem;
  padding: 2.5rem 2.5rem 0 0;
  font-size: 1.5rem;
  line-height: 2;
}

.each-feature .itm_list li:nth-of-type(even) .itm_caption,
#Menstruation .feature_list .each-feature:nth-of-type(even) .itm_list li .itm_caption,
#FemininityUp .feature_list .each-feature:nth-of-type(even) .itm_list li .itm_caption {
  padding: 2.5rem 0 0 2.5rem;
}

#Femcare .each-feature .itm_list li .itm_caption {
  border-color: #f96969;
}

#Menstruation .each-feature .itm_list li .itm_caption {
  border-color: #f478b0;
}

#FemininityUp .each-feature .itm_list li .itm_caption {
  border-color: #ce76ce;
}

.each-feature .resolved_wrap {
  position: relative;
  width: fit-content;
  margin: 0 auto 9rem;
  padding: 1.5rem 0 0 8.5rem;
}

.feature_list .each-feature:nth-of-type(even) .resolved_wrap {
  padding: 1.5rem 8.5rem 0 0;
}

.each-feature .resolved_wrap::after {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
}

#Femcare .each-feature .resolved_wrap::after {
  width: 19rem;
  height: 22.4rem;
  background: url(../img/img_012.png) top left / cover no-repeat;
}

#Menstruation .each-feature .resolved_wrap::after {
  width: 16rem;
  height: 24rem;
  background: url(../img/img_022.png) top left / cover no-repeat;
}

#FemininityUp .each-feature .resolved_wrap::after {
  width: 17rem;
  height: 22.6rem;
  background: url(../img/img_032.png) top left / cover no-repeat;
}

.feature_list .each-feature:nth-of-type(even) .resolved_wrap::after {
  left: auto;
  right: 0;
}

.feature_list .each-feature .resolved_wrap .resolved {
  position: relative;
  padding: 6rem 5rem 6rem 10.5rem;
}

.feature_list .each-feature:nth-of-type(even) .resolved_wrap .resolved {
  padding: 6rem 10.5rem 6rem 5rem;
}

.each-feature .resolved_wrap .resolved::before {
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 9rem;
  width: 100%;
  height: 100%;
  transform: translate(.3rem, .3rem);
  content: "";
}

#Femcare .each-feature .resolved_wrap .resolved::before {
  background: #ffb3ba;
}

#Menstruation .each-feature .resolved_wrap .resolved::before {
  background: #ffc5e2;
}

#FemininityUp .each-feature .resolved_wrap .resolved::before {
  background: #e4bfe8;
}

.each-feature .resolved_wrap .resolved::after {
  position: absolute;
  top: 0;
  left: 0;
  border: solid 2px #000;
  border-radius: 9rem;
  width: 100%;
  height: 100%;
  transform: translate(-.3rem, -.3rem);
  content: "";
  box-sizing: border-box;
  pointer-events: none;
}

.each-feature .resolved_wrap .resolved span {
  position: relative;
  line-height: 1.7;
}

.each-feature .sumup_btn {
  position: relative;
  width: fit-content;
  margin: 0 auto;
}

.each-feature .sumup_btn::before {
  position: absolute;
  z-index: 1;
  bottom: 0;
  right: 0;
  width: .3rem;
  height: 4px;
  margin-right: 7rem;
  content: "";
  transform: translate(-.3rem, -.2rem);
  transition: .3s;
}

.each-feature .sumup_btn::after {
  position: absolute;
  z-index: 1;
  bottom: 0;
  right: 0;
  width: .5rem;
  height: 4px;
  margin-right: 6rem;
  content: "";
  transform: translate(-.3rem, -.2rem);
  transition: .3s;
}

.each-feature .sumup_btn:hover::before,
.each-feature .sumup_btn:hover::after {
  transform: translate(0);
}

#Femcare .each-feature .sumup_btn::before,
#Femcare .each-feature .sumup_btn::after {
  background: #ffb3ba;
}

#Menstruation .each-feature .sumup_btn::before,
#Menstruation .each-feature .sumup_btn::after {
  background: #ffc5e2;
}

#FemininityUp .each-feature .sumup_btn::before,
#FemininityUp .each-feature .sumup_btn::after {
  background: #e4bfe8;
}

#Femcare .each-feature .sumup_btn:hover::before,
#Femcare .each-feature .sumup_btn:hover::after {
  background: #fc7575;
}

#Menstruation .each-feature .sumup_btn:hover::before,
#Menstruation .each-feature .sumup_btn:hover::after {
  background: #f478b0;
}

#FemininityUp .each-feature .sumup_btn:hover::before,
#FemininityUp .each-feature .sumup_btn:hover::after {
  background: #ce76ce;
}

.each-feature .sumup_btn a {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36rem;
  height: 11rem;
  font-size: 1.8rem;
  text-align: center;
  transition: color .3s;
}

.each-feature .sumup_btn a:hover {
  color: #fff;
}

.each-feature .sumup_btn a::before {
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 2.5rem;
  width: 100%;
  height: 100%;
  transform: translate(.3rem, .3rem);
  content: "";
  transition: .3s;
}

#Femcare .each-feature .sumup_btn a::before {
  background: #ffb3ba;
}

#Menstruation .each-feature .sumup_btn a::before {
  background: #ffc5e2;
}

#FemininityUp .each-feature .sumup_btn a::before {
  background: #e4bfe8;
}

.each-feature .sumup_btn a::after {
  position: absolute;
  top: 0;
  left: 0;
  border: solid 2px #000;
  border-radius: 2.5rem;
  width: 100%;
  height: 100%;
  transform: translate(-.3rem, -.3rem);
  content: "";
  box-sizing: border-box;
  pointer-events: none;
  transition: .3s;
}

.each-feature .sumup_btn a:hover::before,
.each-feature .sumup_btn a:hover::after {
  transform: translate(0, 0);
}

#Femcare .each-feature .sumup_btn a:hover::before {
  background: #fc7575;
}

#Menstruation .each-feature .sumup_btn a:hover::before {
  background: #f478b0;
}

#FemininityUp .each-feature .sumup_btn a:hover::before {
  background: #ce76ce;
}

.each-feature .sumup_btn a span {
  position: relative;
  line-height: 1.4;
}
/*-------------------each content*/

/*tab fixed----------------------------*/
.tab_list_wrap_fixed {
  position: fixed;
  z-index: 1;
  top: 50%;
  right: 0;
  transform: translate(105%, -50%);
  transition: .6s;
}

.tab_list_wrap_fixed.up_move {
  transform: translate(0, -50%);
}

.tab_list_wrap_fixed .tab_list {
  display: block;
  margin-right: 4rem;
}

.tab_list_wrap_fixed .tab_list li:nth-of-type(n+2) {
  margin-top: 2rem;
}

.tab_list_wrap_fixed .tab_list li a {
  width: 12rem;
  height: 12rem;
  font-size: 1.4rem;
}

.tab_list_wrap_fixed .tab_list li a::before {
  border-radius: 100rem;
  transform: translate(.2rem, .2rem);
}

.tab_list_wrap_fixed .tab_list li a::after {
  border-radius: 100rem;
  transform: translate(-.2rem, -.2rem);
}

.tab_list_wrap_fixed .tab_list li a p {
  margin-top: 1rem;
}

.tab_list_wrap_fixed .tab_list li a .txt_S {
  margin-top: .8rem;
  font-size: 1.2rem;
  line-height: 1.3;
}
/*----------------------------tab*/

/*ending-------------------------*/
.ending_area {
  position: relative;
  padding: 2rem 0 10rem;
  background: #ffd2db;
}

.ending_area::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 22rem;
  margin-top: -20rem;
  background: url(../img/bg_002.svg) top center / cover no-repeat;
  content: "";
  animation: wave 30s infinite linear;
}

.ending_lead {
  margin-bottom: 5rem;
  font-size: 1.5rem;
  line-height: 2.2;
  letter-spacing: .075em;
  text-align: center;
}

.ending_btn {
  position: relative;
  width: fit-content;
  margin: 0 auto 15rem;
}

.ending_btn::before {
  position: absolute;
  z-index: 1;
  bottom: 0;
  right: 0;
  width: .3rem;
  height: 4px;
  margin-right: 7rem;
  background: #ff92aa;
  content: "";
  transform: translate(-.3rem, -.2rem);
  transition: .3s;
}

.ending_btn::after {
  position: absolute;
  z-index: 1;
  bottom: 0;
  right: 0;
  width: .5rem;
  height: 4rem;
  margin-right: 6rem;
  background: #ff92aa;
  content: "";
  transform: translate(-.3rem, -.2rem);
  transition: .3s;
}

.ending_btn:hover::before,
.ending_btn:hover::after {
  transform: translate(0);
  background: #f96277;
}

.ending_btn a {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36rem;
  height: 11rem;
  font-size: 1.8rem;
  text-align: center;
  transition: color .3s;
}

.ending_btn a:hover {
  color: #fff;
}

.ending_btn a::before {
  position: absolute;
  top: 0;
  left: 0;
  border-radius: 2.5rem;
  width: 100%;
  height: 100%;
  background: #ff92aa;
  transform: translate(.3rem, .3rem);
  content: "";
  transition: .3s;
}

.ending_btn a::after {
  position: absolute;
  top: 0;
  left: 0;
  border: solid 2px #000;
  border-radius: 2.5rem;
  width: 100%;
  height: 100%;
  transform: translate(-.3rem, -.3rem);
  content: "";
  box-sizing: border-box;
  pointer-events: none;
  transition: .3s;
}

.ending_btn a:hover::before,
.ending_btn a:hover::after {
  transform: translate(0, 0);
}

.ending_btn a:hover::before {
  background: #f96277;
}

.ending_btn a span {
  position: relative;
}

.ending_bnr_wrap dt {
  margin-bottom: 5rem;
  font-size: 3rem;
  letter-spacing: .075em;
  text-align: center;
  color: #f96277;
}

.ending_bnr_wrap dd ul {
  display: flex;
  justify-content: center;
  gap: 5rem;
}

.ending_bnr_wrap dd ul li {
  width: 34rem;
  background: #fff;
  border-radius: 2rem;
  overflow: hidden;
}

.ending_bnr_wrap dd ul li a {
  transition: opacity .3s;
  font-size: 0;
}

.ending_bnr_wrap dd ul li a:hover {
  opacity: .6 !important;
}
/*-------------------------ending*/
/*Smart phone---------------------------------------------*/
@media screen and  (max-width:767px) {
/*all----------------------------*/
.LP_page .only_pc {
  display: none;
}

.LP_page .sec_inner {
  width: calc(700 * (100vw / 750));
}
/*----------------------------all*/

/*mv-----------------------------*/
.mv_area {
  padding: calc(40 * (100vw / 750)) 0 calc(140 * (100vw / 750));
}

.mv_area::before {
  height: calc(700 * (100vw / 750));
  margin-bottom: calc(-690 * (100vw / 750));
  background: url(../img/bg_001_sp.svg) bottom center / cover no-repeat;
}

.main_ttl {
  width: calc(670 * (100vw / 750));
  margin: 0 auto calc(50 * (100vw / 750));
}

.main_lead_wrap dt {
  margin-bottom: calc(30 * (100vw / 750));
  font-size: calc(52 * (100vw / 750));
  line-height: 1.2;
}

.main_lead_wrap dd {
  font-size: calc(28 * (100vw / 750));
  line-height: 2;
  letter-spacing: 0;
}
/*-----------------------------mv*/

/*tab----------------------------*/
.tab_list_wrap {
  padding-bottom: calc(100 * (100vw / 750));
}

.tab_list {
  display: block;
}

.tab_list_wrap .tab_list li {
  width: fit-content;
  margin: 0 auto;
}

.tab_list_wrap .tab_list li:nth-of-type(n+2) {
  margin-top: calc(50 * (100vw / 750));
}

.tab_list_wrap .tab_list li::before {
  height: calc(6 * (100vw / 750));
  transform: translate(calc(-5 * (100vw / 750)), calc(-4 * (100vw / 750)));
}

.tab_list_wrap .tab_list li::after {
  height: calc(6 * (100vw / 750));
  transform: translate(calc(-5 * (100vw / 750)), calc(-4 * (100vw / 750)));
}

.tab_list_wrap .tab_list li.color_pink::before {
  transform: translate(calc(-5 * (100vw / 750)), calc(-6 * (100vw / 750)));
}

.tab_list_wrap .tab_list li.color_pink::after {
  transform: translate(calc(-5 * (100vw / 750)), calc(-6 * (100vw / 750)));
}

.tab_list_wrap .tab_list li.color_red:before {
  width: calc(7 * (100vw / 750));
  margin-right: calc(140 * (100vw / 750));
}

.tab_list_wrap .tab_list li.color_red:after {
  width: calc(12 * (100vw / 750));
  margin-right: calc(120 * (100vw / 750));
}

.tab_list_wrap .tab_list li.color_pink:before {
  width: calc(7 * (100vw / 750));
  margin-left: calc(120 * (100vw / 750));
}

.tab_list_wrap .tab_list li.color_pink:after {
  width: calc(7 * (100vw / 750));
  margin-left: calc(135 * (100vw / 750));
}

.tab_list_wrap .tab_list li.color_purple:before {
  width: calc(12 * (100vw / 750));
  margin-right: calc(255 * (100vw / 750));
}

.tab_list_wrap .tab_list li.color_purple:after {
  width: calc(7 * (100vw / 750));
  margin-right: calc(240 * (100vw / 750));
}

.tab_list li a {
  width: calc(520 * (100vw / 750));
  height: calc(150 * (100vw / 750));
  font-size: calc(43 * (100vw / 750));
}

.tab_list li a::before {
  border-radius: calc(50 * (100vw / 750));
  transform: translate(calc(5 * (100vw / 750)), calc(5 * (100vw / 750)));
}

.tab_list li a::after {
  border-width: calc(4 * (100vw / 750));
  border-radius: calc(50 * (100vw / 750));
  transform: translate(calc(-5 * (100vw / 750)), calc(-5 * (100vw / 750)));
}

.tab_list li a .txt_S {
  margin-top: calc(8 * (100vw / 750));
  font-size: calc(26 * (100vw / 750));
}
/*----------------------------tab*/

/*each content-------------------*/
.each-content_area {
  padding: calc(100 * (100vw / 750)) 0;
}

.each-content_area .sec_ttl {
  margin: 0 auto calc(60 * (100vw / 750)) 0;
  font-size: calc(67 * (100vw / 750));
}

.each-content_area .sec_ttl .hash-tag {
  margin: calc(-20 * (100vw / 750)) calc(10 * (100vw / 750)) 0 0;
  font-size: calc(173 * (100vw / 750));
}

.each-content_area .sec_ttl .txt_S {
  margin-top: calc(20 * (100vw / 750));
  font-size: calc(40 * (100vw / 750));
}

.worries_wrap {
  display: block;
  margin-bottom: calc(130 * (100vw / 750));
}

.worries_wrap .worries {
  width: auto;
  height: calc(600 * (100vw / 750));
}

.worries_wrap .worries p {
  width: calc(490 * (100vw / 750));
  padding-top: 0;
}

#Femcare .worries_wrap .worries p {
  left: auto;
  right: 0;
}

#FemininityUp .worries_wrap .worries p {
  left: auto;
  right: 0;
}

#Femcare .worries_wrap .worries::before {
  right: auto;
  left: 0;
  width: calc(340 * (100vw / 750));
  height: calc(402 * (100vw / 750));
}

#Menstruation .worries_wrap .worries::before {
  width: calc(250 * (100vw / 750));
  height: calc(375 * (100vw / 750));
}

#FemininityUp .worries_wrap .worries::before {
  right: auto;
  left: 0;
  width: calc(320 * (100vw / 750));
  height: calc(425 * (100vw / 750));
}

.worries_wrap .advice_list {
  position: relative;
  margin: calc(90 * (100vw / 750)) auto 0;
  padding: calc(55 * (100vw / 750));
  font-size: calc(28 * (100vw / 750));
}

.worries_wrap .advice_list::before {
  border-radius: calc(70 * (100vw / 750));
  transform: translate(calc(5 * (100vw / 750)), calc(5 * (100vw / 750)));
}

.worries_wrap .advice_list::after {
  border-width: calc(4 * (100vw / 750));
  border-radius: calc(70 * (100vw / 750));
  transform: translate(calc(-5 * (100vw / 750)), calc(-5 * (100vw / 750)));
}

.worries_wrap .advice_list dt {
  line-height: 1.85;
}

.worries_wrap .advice_list dd:before {
  width: calc(100 * (100vw / 750));
  height: calc(92 * (100vw / 750));
  margin: 0 0 calc(-100 * (100vw / 750)) 0;
}

.worries_wrap .advice_list dd ul li {
  line-height: 1.85;
}

.feature_list .each-feature {
  border-bottom: solid 1px;
  padding-bottom: calc(90 * (100vw / 750));
}

#Femcare .each-feature {
  border-color: #f96969;
}

#Menstruation .each-feature {
  border-color: #f478b0;
}

#FemininityUp .each-feature {
  border-color: #ce76ce;
}

.feature_list .each-feature:nth-of-type(n+2) {
  margin-top: calc(110 * (100vw / 750));
}

.feature_list .each-feature:nth-last-of-type(1) {
  border-bottom: none;
  padding-bottom: 0;
}

.each-feature .itm_list {
  margin-bottom: calc(120 * (100vw / 750));
  padding: 0;
}

.each-feature .itm_list li {
  display: block;
  border-bottom: solid 1px;
  padding-bottom: calc(70 * (100vw / 750));
}

#Femcare .each-feature .itm_list li {
  border-color: #f96969;
}

#Menstruation .each-feature .itm_list li {
  border-color: #f478b0;
}

#FemininityUp .each-feature .itm_list li {
  border-color: #ce76ce;
}

.each-feature .itm_list li:nth-of-type(n+2) {
  margin-top: calc(70 * (100vw / 750));
}

.each-feature .itm_list li .itm_img {
  width: calc(340 * (100vw / 750));
  margin: 0 calc(35 * (100vw / 750)) 0 0;
  float: left;
}

.each-feature .itm_list li:nth-of-type(even) .itm_img,
#Menstruation .feature_list .each-feature:nth-of-type(even) .itm_list li .itm_img,
#FemininityUp .feature_list .each-feature:nth-of-type(even) .itm_list li .itm_img {
  float: right;
  margin: 0 0 0 calc(35 * (100vw / 750));
}

.each-feature .itm_list li .itm_img a::before {
  border-radius: calc(1000 * (100vw / 750));
  width: calc(587 * (100vw / 750));
  height: calc(587 * (100vw / 750));
  margin: 0 0 0 calc(-250 * (100vw / 750));
}

.each-feature .itm_list li:nth-of-type(even) .itm_img a::before,
#Menstruation .feature_list .each-feature:nth-of-type(even) .itm_list li .itm_img a::before,
#FemininityUp .feature_list .each-feature:nth-of-type(even) .itm_list li .itm_img a::before {
  margin: 0 calc(-250 * (100vw / 750)) 0 0;
}


.each-feature .itm_list li:nth-of-type(even) .content_wrap,
#Menstruation .feature_list .each-feature:nth-of-type(even) .itm_list li .content_wrap,
#FemininityUp .feature_list .each-feature:nth-of-type(even) .itm_list li .content_wrap {
  justify-content: flex-end;
}

.each-feature .itm_list li .content_wrap {
  display: flex;
  align-items: center;
  height: calc(587 * (100vw / 750));
}

.each-feature .itm_list li .itm_cat {
  margin-bottom: calc(10 * (100vw / 750));
  padding: calc(5 * (100vw / 750)) calc(10 * (100vw / 750));
  font-size: calc(19 * (100vw / 750));
  line-height: 1.2;
}


.each-feature .itm_list li .itm_name {
  margin-bottom: calc(10 * (100vw / 750));
  font-size: calc(30 * (100vw / 750));
  line-height: 1.5;
}

.each-feature .itm_list li .itm_price {
  margin-bottom: calc(30 * (100vw / 750));
  font-size: calc(30 * (100vw / 750));
}

.each-feature .itm_list li .itm_btn a {
  width: calc(120 * (100vw / 750));
  height: calc(120 * (100vw / 750));
}

.each-feature .itm_list li .itm_btn a::before {
  border-radius: calc(1000 * (100vw / 750));
}

.each-feature .itm_list li .itm_btn a span {
  width: calc(80 * (100vw / 750));
  margin: calc(8 * (100vw / 750)) 0 0 calc(10 * (100vw / 750));
}

.each-feature .itm_list li .itm_caption {
  border-top: none;
  margin-top: calc(30 * (100vw / 750));
  padding: 0 calc(20 * (100vw / 750));
  font-size: calc(25 * (100vw / 750));
  line-height: 1.8;
}

.each-feature .itm_list li:nth-of-type(even) .itm_caption,
#Menstruation .feature_list .each-feature:nth-of-type(even) .itm_list li .itm_caption,
#FemininityUp .feature_list .each-feature:nth-of-type(even) .itm_list li .itm_caption {
  padding: 0 calc(20 * (100vw / 750));
}

.each-feature .resolved_wrap {
  width: calc(635 * (100vw / 750));
  margin: 0 auto calc(90 * (100vw / 750));
  padding: 0 0 calc(220 * (100vw / 750)) 0;
}

.feature_list .each-feature:nth-of-type(even) .resolved_wrap {
  padding: 0 0 calc(220 * (100vw / 750)) 0;
}

.each-feature .resolved_wrap::after {
  top: auto;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}

#Femcare .each-feature .resolved_wrap::after {
  width: calc(270 * (100vw / 750));
  height: calc(319 * (100vw / 750));
}

#Menstruation .each-feature .resolved_wrap::after {
  width: calc(230* (100vw / 750));
  height: calc(345 * (100vw / 750));
}

#FemininityUp .each-feature .resolved_wrap::after {
  width: calc(250 * (100vw / 750));
  height: calc(332 * (100vw / 750));
}

.feature_list .each-feature:nth-of-type(even) .resolved_wrap::after {
  right: auto;
  left: 50%;
}

.feature_list .each-feature .resolved_wrap .resolved {
  padding: calc(110 * (100vw / 750)) calc(65 * (100vw / 750)) calc(130 * (100vw / 750));
}

.feature_list .each-feature:nth-of-type(even) .resolved_wrap .resolved {
  padding: calc(110 * (100vw / 750)) calc(65 * (100vw / 750)) calc(130 * (100vw / 750));
}

.each-feature .resolved_wrap .resolved::before {
  border-radius: calc(235 * (100vw / 750));
  transform: translate(calc(5 * (100vw / 750)), calc(5 * (100vw / 750)));
}

.each-feature .resolved_wrap .resolved::after {
  border-width: calc(4 * (100vw / 750));
  border-radius: calc(235 * (100vw / 750));
  transform: translate(calc(-5 * (100vw / 750)), calc(-5 * (100vw / 750)));
}

.each-feature .sumup_btn::before {
  width: calc(7 * (100vw / 750));
  height: calc(6 * (100vw / 750));
  margin-right: calc(140 * (100vw / 750));
  transform: translate(calc(-5 * (100vw / 750)), calc(-4 * (100vw / 750)));
}

.each-feature .sumup_btn::after {
  width: calc(12 * (100vw / 750));
  height: calc(6 * (100vw / 750));
  margin-right: calc(120 * (100vw / 750));
  transform: translate(calc(-5 * (100vw / 750)), calc(-4 * (100vw / 750)));
}

.each-feature .sumup_btn a {
  width: calc(540 * (100vw / 750));
  height: calc(178 * (100vw / 750));
  font-size: calc(30 * (100vw / 750));
}

.each-feature .sumup_btn a::before {
  border-radius: calc(50 * (100vw / 750));
  transform: translate(calc(5 * (100vw / 750)), calc(5 * (100vw / 750)));
}

.each-feature .sumup_btn a::after {
  border-width: calc(4 * (100vw / 750));
  border-radius: calc(50 * (100vw / 750));
  transform: translate(calc(-5 * (100vw / 750)), calc(-5 * (100vw / 750)));
}

.each-feature .sumup_btn a span {
  line-height: 1.7;
}
/*-------------------each content*/

/*tab fixed----------------------------*/
.tab_list_wrap_fixed {
  top: auto;
  bottom: 0;
  right: auto;
  left: 50%;
  transform: translate(-50%, 105%);
}

.tab_list_wrap_fixed.up_move {
  transform: translate(-50%, 0);
}

.tab_list_wrap_fixed .tab_list {
  display: flex;
  justify-content: center;
  gap: calc(10 * (100vw / 750));
  margin: 0 0 calc(10 * (100vw / 750)) 0;
}

.tab_list_wrap_fixed .tab_list li:nth-of-type(n+2) {
  margin-top: 0;
}

.tab_list_wrap_fixed .tab_list li a {
  width: calc(240 * (100vw / 750));
  height: calc(100 * (100vw / 750));
  font-size: calc(25 * (100vw / 750));
}

.tab_list_wrap_fixed .tab_list li a::before {
  border-radius: calc(20 * (100vw / 750));
  transform: translate(calc(4 * (100vw / 750)), calc(4 * (100vw / 750)));
}

.tab_list_wrap_fixed .tab_list li a::after {
  border-radius: calc(20 * (100vw / 750));
  transform: translate(calc(-4 * (100vw / 750)), calc(-4 * (100vw / 750)));
}

.tab_list_wrap_fixed .tab_list li a p {
  margin-top: calc(2 * (100vw / 750));
}

.tab_list_wrap_fixed .tab_list li a .txt_S {
  margin-top: calc(10 * (100vw / 750));
  font-size: calc(20 * (100vw / 750));
}
/*----------------------------tab*/

/*ending-------------------------*/
.ending_area {
  padding: calc(100 * (100vw / 750)) 0;
}

.ending_area::before {
  height: calc(340 * (100vw / 750));
  margin-top: calc(-250 * (100vw / 750));
  background: url(../img/bg_002_sp.svg) top center / cover no-repeat;
}

.ending_lead {
  margin-bottom: calc(100 * (100vw / 750));
  font-size: calc(28 * (100vw / 750));
  line-height: 2;
  letter-spacing: 0;
}

.ending_btn {
  margin: 0 auto calc(150 * (100vw / 750));
}

.ending_btn::before {
  width: calc(7 * (100vw / 750));
  height: calc(6 * (100vw / 750));
  margin-right: calc(140 * (100vw / 750));
  transform: translate(calc(-5 * (100vw / 750)), calc(-4 * (100vw / 750)));
}

.ending_btn::after {
  width: calc(12 * (100vw / 750));
  height: calc(6 * (100vw / 750));
  margin-right: calc(120 * (100vw / 750));
  transform: translate(calc(-5 * (100vw / 750)), calc(-4 * (100vw / 750)));
}

.ending_btn a {
  width: calc(540 * (100vw / 750));
  height: calc(178 * (100vw / 750));
  font-size: calc(30 * (100vw / 750));
}

.ending_btn a::before {
  border-radius: calc(50 * (100vw / 750));
  transform: translate(calc(5 * (100vw / 750)), calc(5 * (100vw / 750)));
}

.ending_btn a::after {
  border-width: calc(4 * (100vw / 750));
  border-radius: calc(50 * (100vw / 750));
  transform: translate(calc(-5 * (100vw / 750)), calc(-5 * (100vw / 750)));
}

.ending_bnr_wrap dt {
  margin-bottom: calc(80 * (100vw / 750));
  font-size: calc(50 * (100vw / 750));
  letter-spacing: .1em;
}

.ending_bnr_wrap dd ul {
  display: block;
  width: fit-content;
  margin: 0 auto;
}

.ending_bnr_wrap dd ul li {
  width: calc(500 * (100vw / 750));
  border-radius:  calc(40 * (100vw / 750));
}

.ending_bnr_wrap dd ul li:nth-of-type(n+2) {
  margin-top: calc(70 * (100vw / 750));
}
/*-------------------------ending*/

}
/*---------------------------------------------Smart phone*/

/*PC------------------------------------------------------*/
@media screen and  (min-width:769px) {
  .only_sp {
    display: none;
  }
}
/*------------------------------------------------------PC*/

/*レスポンシブ＆タブレット対応-------------------------------*/
@media screen and (max-width: 1400px){
  html {
    font-size: calc(10 * (100vw / 1400));
  }
}
/*-------------------------------レスポンシブ＆タブレット対応*/
