:root {
  --color-pink: #ff96ae;
}


html {
  box-sizing: border-box;
  font-size: 62.5%;
}

@media screen and (min-width: 821px) and (max-width: 1536px) {
  html {
    font-size: 0.65vw;
  }
}

@media screen and (max-width: 820px) {
  html {
    font-size: 1.3vw;
  }
}

.lp_style * {
  box-sizing: border-box;
}

.lp_style {
  -webkit-text-size-adjust: 100%;
  font-size: 100%;
  line-height: 1;
  letter-spacing: .005em;
  list-style: none;
  font-feature-settings: "palt";
  overflow: hidden;
  color: #343434;
  font-family: 'Zen Maru Gothic', sans-serif !important;
  font-weight: 400;
}

.Urbanist {
  font-family: 'Urbanist', sans-serif;
}

.lp_style button {
  background: transparent;
  padding: 0;
  margin: 0;
}

.lp_style ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.lp_style a {
  text-decoration: none;
}

.sp_only {
  display: none !important;
}

@media screen and (min-width:641px),
print {
  .pc_only {
    display: block !important;
  }
}

@media screen and (max-width:640px),
print {
  .pc_only {
    display: none !important;
  }

  .sp_only {
    display: block !important;
  }
}



._inner {
  padding: 0 2rem;
  margin: 0 auto;
}

@media screen and (min-width:821px),
print {
  ._inner {
    max-width: 120rem;
    padding: 0;
    margin: 0 auto;
  }
}


/*---------------------------------------------- 
  Mainvisual
----------------------------------------------*/

.h-inner {
  text-align: center;
}

/*---------------------------------------------- 
  PageNavigation
----------------------------------------------*/

@media screen and (min-width:821px),
print {
  .PageNavigation {
    border-top: 1px solid var(--color-pink);
  }
}

.PageNavigation .Navigation {
  margin: 6rem auto;
  padding: 0 4rem;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

@media screen and (min-width:821px),
print {
  .PageNavigation .Navigation {
    max-width: 130rem;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    margin: 0 auto;
  }
}

.Navigation ._item {
  position: relative;
  width: calc((100% / 3) - 2rem);
  text-align: center;
  font-size: 2.4rem;
  height: 16rem;
  line-height: 1.5;
  font-weight: 500;
  color: var(--color-pink);
  border: 1px solid var(--color-pink);
}

.Navigation ._item:not(:nth-of-type(3n+1)) {
  margin-left: 0;
}

.Navigation ._item:nth-of-type(n+4) {
  margin-top: 2rem;
  /* width: calc(50% - 1rem); */
}

@media screen and (min-width:821px),
print {
  .Navigation ._item:nth-of-type(n+4) {
    margin-top: 0;
    width: calc(100% / 8);
  }
}

.Navigation ._item:nth-of-type(4),
.Navigation ._item:nth-of-type(6) {
  /* margin-right: 1rem; */
  margin-left: 0;
}

.Navigation ._item:nth-of-type(5),
.Navigation ._item:nth-of-type(7) {
  /* margin-left: 1rem; */
  margin-right: 0;
}
.Navigation::after{
  content: '';
  width: calc((100% / 3) - 2rem);
}

@media screen and (min-width:821px),
print {
  .Navigation ._item:nth-of-type(4),
  .Navigation ._item:nth-of-type(6),
  .Navigation ._item:nth-of-type(5),
  .Navigation ._item:nth-of-type(7) {
    margin: 0;
  }
}


.Navigation ._item a {
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #ff96ae;
}

.Navigation ._item a ._txt {
  font-weight: 500;
}

.Navigation ._item:hover {
  background: #fff5f8;
}

@media screen and (min-width:821px),
print {
  .Navigation ._item {
    position: relative;
    width: calc(100% / 8);
    height: auto;
    font-size: 1.4rem;
    line-height: 1.42;
    transition: background-color ease-in-out .2s;
    border: none;
  }

  .Navigation ._item:not(:nth-of-type(3n+1)) {
    margin-left: 0;
  }

  .Navigation ._item:nth-of-type(n+4) {
    margin-top: 0;
  }

  .Navigation ._item:not(:last-of-type)::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    width: 1px;
    height: 79px;
    background: url(./../img/nav-border.png);
    background-size: auto;
    background-repeat: no-repeat;
  }

  .Navigation ._item:hover {
    background: #fff5f8;
  }
}

@media screen and (min-width:821px),
print {
  .Navigation ._item a {
    width: 100%;
    height: 78px;
    display: flex;
    justify-items: center;
    align-items: center;
    text-align: center;
    color: var(--color-pink);
  }
}

@media screen and (min-width:821px),
print {
  .Navigation ._item a span {
    display: block;
    font-weight: 500;
    width: 100%;
  }
}


.bg-pink {
  background: url(./../img/bg-pink.png);
  background-size: cover;
}

@media screen and (min-width:821px),
print {
  .bg-pink {
    background: url(./../img/bg-pink.png);
    background-size: auto;
  }
}


/*---------------------------------------------- 
  About
----------------------------------------------*/

#about {
  padding: 14rem 0 0;
}

._catch {
  display: block;
  margin: 0 auto 2rem;
  font-size: 8rem;
  line-height: 1;
  text-align: center;
  color: #fff;
}

@media screen and (min-width:821px),
print {
  ._catch {
    display: block;
    margin: 0 auto 2rem;
    font-size: 6rem;
    line-height: 1;
    text-align: center;
    color: #fff;
  }
}

._title {
  font-size: 3.2rem;
  font-weight: 500;
  line-height: 1;
  color: #fff;
  margin: 0 auto 8rem;
  text-align: center;
}

@media screen and (min-width:821px),
print {
  ._title {
    font-size: 2.4rem;
    color: #fff;
    text-align: center;
  }
}


.about_head {
  position: relative;
  text-align: center;
  padding: 0 2rem;
}

.about ._paragraph {
  padding: 0 2rem;
}

@media screen and (min-width:821px),
print {
  .about ._paragraph {
    padding: 0;
  }
}
@media screen and (min-width:821px),
print {
.about ._paragraph ._txt {
  display: block;
}
}

.about-model-l,
.about-model-r {
  display: block;
  position: absolute;
}

.about-model-l {
  top: 0;
  left: 2rem;
  width: 13.4rem;
}

.about-model-r {
  top: 0;
  right: 2rem;
  width: 13.4rem;
}

@media screen and (min-width:821px),
print {

  .about_head {
    padding: 0;
  }

  .about-model-l {
    top: 3.6rem;
    left: 0rem;
    width: 13.4rem;
  }

  .about-model-r {
    top: 36.8rem;
    right: -6.2rem;
    width: 13.4rem;
  }
}


._label {
  display: inline-block;
  vertical-align: middle;
  margin: 0 auto 6rem;
  padding: 1rem 1.8rem;
  font-size: 3.2rem;
  font-weight: 500;
  text-align: center;
  background: #fff;
  border-radius: 5px;
  color: var(--color-pink);
}

@media screen and (min-width:821px),
print {
  ._label {
    display: inline-block;
    vertical-align: middle;
    margin: 0 auto 4rem;
    padding: 1rem 1.8rem;
    font-size: 2.8rem;
    border-radius: 5px;
  }
}

._paragraph {
  font-size: 2.8rem;
  line-height: 1.5;
  color: #fff;
  text-align: left;
}

._paragraph:not(:first-of-type) {
  margin-top: 1em;
}

@media screen and (min-width:821px),
print {
  ._paragraph {
    font-size: 1.8rem;
    line-height: 1.6;
    text-align: center;
  }

  ._paragraph:not(:first-of-type) {
    margin-top: 1em;
  }
}

#Message {
  margin: 8rem auto 0;
  padding: 0 0 14rem;
}

@media screen and (min-width:821px),
print {
  #Message {
    width: 100%;
    margin: 8rem 0 0;
    padding: 0 0 14rem;
    background: transparent;
    border-radius: 0;
  }
}

.CommentBox {
  position: relative;
  display: block;
  border-radius: 5rem;
  background: #fff5f8;
  background-image: url(./../img/message_model-sp.png);
  background-repeat: no-repeat;
  background-size: 27.1rem;
  background-position: 40rem 5rem;
}


@media screen and (min-width:821px),
print {
  .CommentBox {
    display: flex;
    justify-content: center;
    border-radius: 5rem;
    overflow: hidden;
    background: #fff5f8;
    background-image: none;
  }
}


.CommentBox ._left {
  position: relative;
  padding: 8rem 0 0;
  width: 100%;
  margin-bottom: 18rem;
}

@media screen and (min-width:821px),
print {
  .CommentBox ._left {
    position: relative;
    padding: 6rem 0 0;
    width: 36rem;
    margin-bottom: 0;
    background: url(./../img/message_model.png);
    background-repeat: no-repeat;
    background-size: 32.7rem 60.3rem;
    background-position: 3.5rem bottom;
  }
}

.CommentBox ._left ._title {
  padding-left: 5.5rem;
  font-size: 6rem;
  margin-bottom: 2rem;
  text-align: left;
  color: var(--color-pink);
}

@media screen and (min-width:821px),
print {
  .CommentBox ._left ._title {
    padding-left: 7rem;
    font-size: 4.4rem;
    margin-bottom: 1.8rem;
  }
}

.CommentBox ._left ._catch {
  padding-left: 5.5rem;
  font-size: 2.8rem;
  line-height: 1.5;
  text-align: left;
  color: var(--color-pink);
}

@media screen and (min-width:821px),
print {
  .CommentBox ._left ._catch {
    padding-left: 7rem;
    font-size: 1.6rem;
    text-align: left;
    white-space: nowrap;
  }
}


.CommentBox ._right {
  width: 100%;
  padding: 12rem 5rem;
  background: url(./../img/message-bg-sp.png);
  background-repeat: no-repeat;
  background-size: cover;
  border-radius: 5rem;
}

@media screen and (min-width:821px),
print {
  .CommentBox ._right {
    width: 84rem;
    padding: 9.8rem 7rem 11.4rem 14rem;
    background: url(./../img/message-bg.png);
    background-position: center left;
    background-repeat: no-repeat;
    background-size: auto;
    border-radius: 0;
  }
}

.CommentBox ._right ._comment {
  font-size: 2.4rem;
  line-height: 1.5;
  color: #333;
  letter-spacing: -.0025em;
}

.CommentBox ._right ._comment ._txt {
  display: inline-block;
}


.CommentBox ._right ._comment:not(:first-of-type) {
  margin-top: 1em;
}

@media screen and (min-width:821px),
print {
  .CommentBox ._right ._comment {
    font-size: 1.8rem;
    line-height: 1.6;
    color: #333;
  }

  .CommentBox ._right ._comment ._txt {
    display: block;
  }


  .CommentBox ._right ._comment:not(:first-of-type) {
    margin-top: 1em;
  }
}


#Message ._description {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  flex-wrap: wrap;
  border-radius: 2rem;
  background: #fff6f9;
  overflow: hidden;
  margin: 4rem auto 0;
}

@media screen and (min-width:821px),
print {
  #Message ._description {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    flex-wrap: wrap;
    border-radius: 2rem;
    background: #fff6f9;
    overflow: hidden;
    margin: 4rem auto 0;
  }
}

#Message ._description ._feature {
  padding: 5rem 3.5rem 3rem;
  border-radius: 2rem 2rem 0 0;
  overflow: hidden;
  border: 1px dashed var(--color-pink);
  border-bottom: none;
}

@media screen and (min-width:821px),
print {
  #Message ._description ._feature {
    padding: 4rem 4rem 3rem;
    border-radius: 2rem 2rem 0 0;
    overflow: hidden;
    border: 1px dashed var(--color-pink);
    border-bottom: none;
  }
}

#Message ._description ._Name {
  display: block;
  margin: 0 auto 3rem;
  font-size: 2.6rem;
  color: var(--color-pink);
  text-align: left;
}

@media screen and (min-width:821px),
print {
  #Message ._description ._Name {
    display: block;
    font-size: 2rem;
  }
}

#Message ._description ._history {
  font-size: 2.4rem;
  line-height: 1.5;
  text-align: left;
}


#Message ._description ._history .color-p {
  color: #ff96ae;
}



@media screen and (min-width:821px),
print {
  #Message ._description ._history {
    font-size: 1.4rem;
    letter-spacing: .05em;
    line-height: 1.6;
  }
}

@media screen and (min-width:821px),
print {
  #Message ._description ._history ._txt {
    display: block;
  }
}

#Message ._description ._sns {
  color: #fff;
  background: var(--color-pink);
  padding: 2rem 6.5rem;
  font-size: 2.4rem;
}

#Message ._description ._sns a {
  color: #fff;
  line-height: 1.3;
}

@media screen and (min-width:821px),
print {
  #Message ._description ._sns {
    color: #fff;
    background: var(--color-pink);
    padding: 1.3rem 4.2rem .6rem;
    font-size: 1.4rem;
  }

  #Message ._description ._sns a {
    color: #fff;
    line-height: 1.85;
  }
}




/*-----------------------------------
 #colorvariation
-----------------------------------*/
.colorvariation-bg {
  border-top: 2px solid #f2587b;
  background: url(./../img/colorvariation-bg-sp.jpg);
  background-repeat: no-repeat;
  background-size: cover;
}

@media screen and (min-width:821px),
print {
  .colorvariation-bg {
    border-top: 2px solid #f2587b;
    background: url(./../img/colorvariation-bg.jpg);
    background-repeat: no-repeat;
    background-size: cover;
  }
}


#colorvariation {
  padding: 14rem 0;
}

#colorvariation ._catch {
  color: var(--color-pink);
}

@media screen and (min-width:821px),
print {
  #colorvariation ._catch {
    color: var(--color-pink);
  }
}

#colorvariation ._title {
  text-align: center;
  color: var(--color-pink);
}

@media screen and (min-width:821px),
print {
  #colorvariation ._title {
    color: var(--color-pink);
    text-align: center;
  }
}

#colorvariation ._inner {
  max-width: 140rem;
  padding: 0 2rem;
}

@media screen and (min-width:821px),
print {
  #colorvariation ._inner {
    max-width: 140rem;
    padding: 0;
  }
}

#colorvariation ._title+._comment {
  display: block;
  margin: -1em auto 4rem;
  font-size: 2.8rem;
  line-height: 1.5;
  color: #333333;
  text-align: center;
}


@media screen and (min-width:821px),
print {
  #colorvariation ._title+._comment {
    display: block;
    margin: -4rem auto 0;
    font-size: 1.8rem;
    color: #333333;
    line-height: 1.6;
    text-align: center;
  }
}

@media screen and (min-width:821px),
print {
  #colorvariation ._comment ._txt {
    display: block;
  }
}

@media screen and (min-width:821px),
print {
  .colorvariation {
    margin: 7.5rem auto 0;
    width: 120rem;
  }
}

#colorvariation .products {
  display: block;
  padding: 0 2rem;
  margin-bottom: 3.5rem;
}

@media screen and (min-width:821px),
print {
  #colorvariation .products {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    padding: 0 ;
    margin-bottom: 6rem;
  }
}

#colorvariation .products + .btn-l {
  margin: 8rem auto ;
  background: #fff;
}

.colorvariation .products ._product {
  position: relative;
  margin: 0;
  padding: 3.2rem 3.5rem  9rem;
  width: 100%;
  background: #fff;
}

@media screen and (min-width:821px),
print {
  .colorvariation .products ._product {
    display: block;
    padding: 2rem;
    width: 38rem;
    background: #fff;
  }
}

.colorvariation .products ._product.color-banner::before {
  content: "";
  display: block;
  position: absolute;
  z-index: 2;
  top: 0;
  left: 2rem;
  width: 10.6rem;
  height: 28.2rem;
  background: url(./../img/color-banner-sp.png);
  background-repeat: no-repeat;
  background-size: contain;
}


@media screen and (min-width:821px),
print {
  .colorvariation .products ._product.color-banner::before {
    top: 0;
    left: 1rem;
    width: 6rem;
    height: 16rem;
    background: url(./../img/color-banner.png);
    background-repeat: no-repeat;
    background-size: contain;
  }
}

.colorvariation .products ._product:not(:last-of-type) {
  margin-bottom: 3rem;
}


@media screen and (min-width:821px),
print {
  .colorvariation .products ._product:not(:last-of-type) {
    margin-bottom: 0;
  }
}


@media screen and (min-width:821px),
print {
  .colorvariation .products ._product:not(:nth-of-type(3n+1)) {
    margin-left: 3rem;
  }

  .colorvariation .products ._product:nth-of-type(n+4) {
    margin-top: 3rem;
  }
}

.colorvariation ._modelimage {
  width: 100%;
  height: auto;
  margin: 0 auto 12.4rem;
}

@media screen and (min-width:821px),
print {
  .colorvariation ._modelimage {
    margin: 0 auto 6rem;
  }
}

.colorvariation ._description {
  width: 100%;
  padding: 0 0 0 3.5rem;
}

@media screen and (min-width:821px),
print {
  .colorvariation ._description {
    padding: 0;
  }
}

.colorvariation .colorname {
  margin: 0 auto 3rem;
  text-align: center;
  font-size: 4.2rem;
  font-weight: 500;
}

@media screen and (min-width:821px),
print {
  .colorvariation .colorname {
    margin: 0 auto 3rem;
    text-align: center;
    font-size: 2.4rem;
    font-weight: 500;
  }
}

.colorvariation ._comment {
  font-size: 2.4rem;
  height: auto;
  line-height: 1.6;
  color: #333333;
}

@media screen and (min-width:821px),
print {
  .colorvariation ._comment {
    font-size: 1.8rem;
    height: 12em;
    line-height: 1.6;
    color: #333333;
  }
}

.colorvariation .swiper-button-next,
.colorvariation .swiper-button-prev {
  top: 100%;
  width: 7rem;
  height: 7rem;
  transform: translateY(7rem);
}

@media screen and (min-width:821px),
print {

  .colorvariation .swiper-button-next,
  .colorvariation .swiper-button-prev {
    top: 49rem;
    width: 8rem;
    height: 8rem;
    transform: translateY(0);
  }
}

.colorvariation .swiper-button-next {
  right: 0;
}

@media screen and (min-width:821px),
print {
  .colorvariation .swiper-button-next {
    right: -2rem;
  }
}


.colorvariation .swiper-button-prev {
  left: 0;
}

@media screen and (min-width:821px),
print {
  .colorvariation .swiper-button-prev {
    left: -2rem;
  }
}

.colorvariation .swiper-button-next::after,
.colorvariation .swiper-button-prev::after {
  width: 7rem;
  height: 7rem;
}

@media screen and (min-width:821px),
print {

  .colorvariation .swiper-button-next::after,
  .colorvariation .swiper-button-prev::after {
    width: 4rem;
    height: 4rem;
  }
}

#colorvariation ._cta-outer {
  margin: 6rem auto 0;
}

#colorvariation ._cta {
  width: 60rem;
  height: 10rem;
  border: 2px solid #111111;
  margin: 0 auto;
  position: relative;
  border-radius: 5rem;
}

@media screen and (min-width:821px),
print {
  #colorvariation ._cta {
    width: 50rem;
    height: 10rem;
    position: relative;
  }
}

#colorvariation ._cta::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 2rem;
  transform: translateY(-50%);
  width: 1.6rem;
  height: 1.3rem;
  background: url(./../img/btn-arrow.png);
  background-size: contain;
  background-repeat: no-repeat;
}

#colorvariation ._cta a {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 2.6rem;
  color: #111111;
}

@media screen and (min-width:821px),
print {
  #colorvariation ._cta a {
    font-size: 2.2rem;
  }
}

#colorvariation ._cta+._attention {
  display: block;
  margin: 3rem auto 0;
  font-size: 2.4rem;
  color: #828181;
  text-align: center;
}

@media screen and (min-width:821px),
print {
  #colorvariation ._cta+._attention {
    margin: 2rem auto 0;
    font-size: 1.6rem;
  }
}

.color-black {
  color: #333333;
}

.color-beige {
  color: #d49360;
}

.color-brown {
  color: #72381a;
}

.color-navy {
  color: #261a5f;
}

.color-gray {
  color: #8f786e;
}

.wear_image {
  margin: 0 auto 3.5rem;
}

@media screen and (min-width:821px),
print {
  .wear_image {
    margin: 0 auto 6rem;
  }
}

.color-chart {
  margin: 0 auto;
}

.wear_image,
.color-chart {
  padding: 0 2rem;
}

@media screen and (min-width:821px),
print {

  .wear_image,
  .color-chart {
    padding: 0;
  }
}

.wear_image img,
.color-chart img {
  width: 100%;
  margin: 0 auto;
  text-align: center;
}

/*-----------------------------------
 #plussize
-----------------------------------*/
.plussize-bg {
  background: url(./../img/plussize-bg.png);
  background-size: auto;
}

#plussize {
  padding: 14rem 0;
}

#plussize ._catch {
  color: var(--color-pink);
}

#plussize ._title {
  color: var(--color-pink);
  text-align: center;
}

@media screen and (min-width:821px),
print {
  #plussize ._title {
    color: var(--color-pink);
    text-align: center;
  }
}

.sizetable {
  padding: 0 2rem;
}


@media screen and (min-width:821px),
print {
  .sizetable {
    padding: 0;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    background: #fff;
  }

  .sizetable::before {
    content: "";
    flex: none;
    display: block;
    background: url(./../img/sizetable.jpg);
    background-repeat: no-repeat;
    background-size: contain;
    width: 120rem;
    height: 100.2rem;
  }

}

.sizetable ._block {
  padding: 0 0 3rem;
  background: #fff;
}

@media screen and (min-width:821px),
print {
  .sizetable ._block {
    padding: 0;
  }
}

.sizetable ._block:not(:last-of-type) {
  margin-bottom: 3rem;
}


.sizetable ._type {
  display: block;
  text-align: center;
  font-size: 3.2rem;
  font-weight: bold;
  color: #111111;
  margin: 2rem 0 0 0;
}

@media screen and (min-width:821px),
print {
  .sizetable ._container {
    position: relative;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
  }

  .sizetable ._top::before,
  .sizetable ._btm::before {
    position: absolute;
    transform: translateX(-50%);
    left: 50%;
    display: block;
    font-size: 2.4rem;
    font-weight: bold;
    color: #111111;
  }

  .sizetable ._top::before {
    content: "ストッキング";
    top: 1rem;
  }

  .sizetable ._btm::before {
    content: "タイツ";
    top: 13rem;
  }

  .sizetable ._top ._type,
  .sizetable ._btm ._type {
    display: none;
  }
}

@media screen and (min-width:821px),
print {
  .sizetable ._block:not(:last-of-type) {
    margin-bottom: 0;
  }
}

.sizetable ._block img {
  display: block;
}

@media screen and (min-width:821px),
print {
  .sizetable ._block img {
    display: none;
  }
}

.sizetable ._btns {
  display: flex;
  justify-content: center;
  align-items: center;
  background: #fff;
  padding: 3rem 0;
}

@media screen and (min-width:821px),
print {
  .sizetable ._btns {
    display: flex;
    justify-content: center;
    align-items: center;
    background: #fff;
    padding: 3rem 0;
    margin: 2rem 0 0 0;
  }
}

.sizetable ._btns ._btn {
  position: relative;
  margin: 0 1rem;
  width: 25rem;
  height: 8rem;
  border: 2px solid #111111;
  border-radius: 4rem;
}

@media screen and (min-width:821px),
print {
  .sizetable ._btns ._btn {
    position: relative;
    margin: 0 4rem;
    width: 18rem;
    height: 6rem;
    border-radius: 3rem;
  }
}

.sizetable ._btns ._btn::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 2rem;
  transform: translateY(-50%);
  width: 1.6rem;
  height: 1.3rem;
  background: url(./../img/btn-arrow.png);
  background-size: contain;
  background-repeat: no-repeat;
}


.sizetable ._btns ._btn a {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #111111;
  font-size: 3rem;
}

@media screen and (min-width:821px),
print {
  .sizetable ._btns ._btn a {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #111111;
    font-size: 2.2rem;
  }
}

/*-----------------------------------
 #point
-----------------------------------*/
.point-bg {
  background: url(./../img/point-bg.png);
  background-size: cover;
}

#point ._title {
  text-align: center;
}

@media screen and (min-width:821px),
print {
  .point-bg {
    background: url(./../img/point-bg.png);
    background-size: auto;
  }
}

#point {
  padding: 14rem 0;
}

#point ._pointlist {
  list-style-type: none;
}


._pointlist .point {
  background: #fff;
  padding: 6rem 5.5rem 8rem;
  min-height: 44rem;
}

._pointlist .point:not(:first-of-type) {
  margin: 2rem auto 0;
}

@media screen and (min-width:821px),
print {
  ._pointlist .point {
    background: #fff;
    padding: 7rem 13rem 8rem;
    min-height: inherit;
  }

  ._pointlist .point:not(:first-of-type) {
    margin: 2rem auto 0;
  }

}

._pointlist ._head {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin: 0 0 2rem;
}

@media screen and (min-width:821px),
print {
  ._pointlist ._head {
    position: relative;
    display: flex;
    align-items: center;
    margin: 0 0 2rem;
  }
}

._pointlist .point ._numbering {
  position: relative;
  font-size: 5rem;
  padding-right: 4.2rem;
  margin-right: 4.2rem;
}

._pointlist .point ._numbering::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  background: url(./../img/point-border.png);
  width: 1px;
  height: 10rem;
  background-size: auto;
  background-repeat: no-repeat;
}

@media screen and (min-width:821px),
print {
  ._pointlist .point ._numbering {
    position: relative;
    font-size: 5rem;
    padding-right: 4.2rem;
    margin-right: 4.2rem;
  }

  ._pointlist .point ._numbering::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    background: url(./../img/point-border.png);
    width: 1px;
    height: 10rem;
    background-size: auto;
    background-repeat: no-repeat;
  }


}

._numbering ._txt,
._numbering ._number {
  display: block;
  line-height: 1;
  text-align: center;
  color: var(--color-pink);
}

@media screen and (min-width:821px),
print {

  ._numbering ._txt,
  ._numbering ._number {
    display: block;
    line-height: 1;
    text-align: center;
    color: var(--color-pink);
  }
}

._numbering ._txt {
  font-size: 40%;
  font-weight: 500;
}

@media screen and (min-width:821px),
print {
  ._numbering ._txt {
    font-size: 40%;
    font-weight: 500;
  }
}

._numbering ._number {
  font-size: 150%;
  font-weight: bold;
}

@media screen and (min-width:821px),
print {
  ._numbering ._number {
    font-size: 150%;
    font-weight: bold;
  }
}

#point ._pointlist ._head ._title {
  font-size: 4rem;
  line-height: 1.25;
  font-weight: 500;
  color: var(--color-pink);
  margin: 0;
  text-align: left;
}

@media screen and (min-width:821px),
print {
  #point ._pointlist ._head ._title {
    font-size: 4rem;
    font-weight: 500;
    color: var(--color-pink);
    margin: 0;
  }
}

._pointlist ._head ._icon {
  position: absolute;
  bottom: -2.5rem;
  left: 0;
  width: 17.5rem;
  transform: translateY(100%);
}

@media screen and (min-width:821px),
print {
  ._pointlist ._head ._icon {
    position: absolute;
    top: 0;
    bottom: auto;
    right: 0;
    left: auto;
    width: auto;
    transform: translateY(0);
    width: 17.5rem;
  }
}

.point ._comment {
  font-size: 2.4rem;
  line-height: 1.6;
  width: calc(100% - (17.5rem + 4.6rem));
  margin-left: auto;
}

.point ._comment .-attention {
  color: #828181;
}

#point01 ._comment,
#point03 ._comment {
  width: 100%;
}

.point ._comment ._txt {
  display: block;
}

@media screen and (min-width:821px),
print {
  .point ._comment {
    font-size: 1.8rem;
    line-height: 1.6;
    width: 100%;
  }

  .point ._comment ._txt {
    display: block;
  }
}

.point ._sizefeature {
  margin: 6.4rem auto 0;
}

@media screen and (min-width:821px),
print {
  .point ._sizefeature {
    margin: 6.4rem auto 0;
  }
}

._sizefeature .sizetype:not(:last-of-type) {
  margin-bottom: 6rem;
}

@media screen and (min-width:821px),
print {
  ._sizefeature .sizetype:not(:last-of-type) {
    margin-bottom: 6rem;
  }
}

.sizetype .column02 {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
}

@media screen and (min-width:821px),
print {
  .sizetype .column02 {
    display: flex;
    justify-content: center;
  }
}

.sizetype .column02 ._img {
  margin: 0;
}

.sizetype .column02 ._txt:nth-of-type(1) {
  order: 1;
}

.sizetype .column02 ._txt:nth-of-type(2) {
  order: 2;
}

.sizetype .column02 ._img:nth-of-type(1) {
  order: 3;
  margin-top: 3rem;
}

.sizetype .column02 ._img:nth-of-type(2) {
  order: 4;
}

@media screen and (min-width:821px),
print {
  .sizetype .column02 ._txt:nth-of-type(1) {
    width: 33.8rem;
  }

  .sizetype .column02 ._txt:nth-of-type(2) {
    width: 60.2rem;
  }

  .sizetype .column02 ._img:nth-of-type(1) {
    width: 47rem;
  }

  .sizetype .column02 ._img:nth-of-type(2) {
    width: 47rem;
    margin-top: 3rem;
  }
}

.sizetype ._headline {
  font-size: 3.6rem;
  padding: 1rem 0;
  line-height: 1;
  color: #fff;
  background: var(--color-pink);
  text-align: center;
  border-radius: 1rem;
  overflow: hidden;
  margin: 0 auto 2.8rem;
}

@media screen and (min-width:821px),
print {
  .sizetype ._headline {
    font-size: 2.6rem;
    padding: 1rem 0;
    line-height: 1;
    color: #fff;
    background: var(--color-pink);
    text-align: center;
    border-radius: 1rem;
    overflow: hidden;
    margin: 0 auto 2.8rem;
  }
}

.sizetype ._content {
  text-align: center;
}

.sizetype ._txt {
  font-size: 2.4rem;
  line-height: 1.5;
  text-align: left;
}

.sizetype ._txt br {
  display: none;
}

@media screen and (min-width:821px),
print {
  .sizetype ._txt {
    display: inline-block;
    font-size: 1.8rem;
    line-height: 1.5;
    text-align: center;
  }

  .sizetype ._txt br {
    display: block;
  }
}

.sizetype ._img {
  margin: 3.4rem auto 0;
}

@media screen and (min-width:821px),
print {
  .sizetype ._img {
    margin: 3.4rem auto 0;
  }
}

.point ._pointimg {
  margin: 6rem auto 0;
}

.point ._pointimg img {
  width: 100%;
}

@media screen and (min-width:821px),
print {
  .point ._pointimg {
    margin: 6rem auto 0;
  }
}

#point03 {
  position: relative;
}

@media screen and (min-width:821px),
print {

  #point01::before,
  #point03::before {
    content: "";
    display: block;
    position: absolute;
    width: 13.4rem;
    height: 25.4rem;
    top: 2.5rem;
    right: 8.4rem;

  }

  #point01::before {
    background: url(./../img/point01_deco.png);
    background-repeat: no-repeat;
    background-size: cover;
  }

  #point03::before {
    background: url(./../img/point03_deco.png);
    background-repeat: no-repeat;
    background-size: cover;
  }
}


/*-----------------------------------
 #wearing
-----------------------------------*/
.wearing-bg {
  background: url(./../img/wearing_bg-sp.jpg);
  background-size: cover;
  background-repeat: no-repeat;
}

@media screen and (min-width: 821px),
print {
  .wearing-bg {
    background: url(./../img/wearing_bg.jpg);
    background-size: cover;
    background-repeat: no-repeat;
  }
}

#wearing {
  padding: 14rem 0;
}

#wearing ._catch,
#wearing ._title {
  color: #f2587b;
}

#wearing ._comment {
  position: relative;
  font-size: 2.8rem;
  line-height: 1.5;
  color: #333333;
  text-align: center;
}

@media screen and (min-width: 821px),
print {
  #wearing ._comment {
    margin-top: -4rem;
    font-size: 1.8rem;
    text-align: center;
  }
}

.wearing_gallery {
  margin: 8rem auto 0;
}

@media screen and (min-width: 821px),
print {
  .wearing_gallery {
    margin: 8rem auto 0;
  }
}

.wearing_gallery ._list {
  background: #fff;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(2, 1fr);
  grid-column-gap: 2px;
  grid-row-gap: 2px;
  width: calc(100% - 2rem);
  margin: 0 auto;
}

@media screen and (min-width: 821px),
print {
  .wearing_gallery ._list {
    background: #fff;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: repeat(2, 1fr);
    grid-column-gap: 2px;
    grid-row-gap: 2px;
    width: auto;
  }

  .wearing_gallery ._list ._photo {
    width: 40rem;
  }
}

/*-----------------------------------
 #coordination
-----------------------------------*/
.coordination-bg {
  border-top: 2px solid #f2587b;
  background: #ffeaf1;
}

#coordination {
  padding: 14rem 0;
}

@media screen and (min-width:821px),
print {
  #coordination {
    padding: 14rem 0 17.5rem;
  }
}

#coordination ._catch {
  color: var(--color-pink);
}

@media screen and (min-width:821px),
print {
  #coordination ._catch {
    color: var(--color-pink);
  }
}

#coordination ._title {
  color: var(--color-pink);
  text-align: center;
}

@media screen and (min-width:821px),
print {
  #coordination ._title {
    color: var(--color-pink);
    text-align: center;
  }
}


.modeltype {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-wrap: wrap;
  background: #fff;
  padding: 6rem;
}

.modeltype:not(:first-of-type) {
  margin-top: 3rem;
}

@media screen and (min-width:821px),
print {
  .modeltype {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    flex-wrap: wrap;
    background: #fff;
    padding: 6rem;
  }

  .modeltype:not(:first-of-type) {
    margin-top: 3rem;
  }
}

.modeltype ._modelimage {
  width: 52rem;
  margin-bottom: 10rem;
}

@media screen and (min-width:821px),
print {
  .modeltype ._modelimage {
    width: 40rem;
    margin-bottom: 0;
  }
}


@media screen and (min-width:821px),
print {
  .modeltype ._modelimage ._slide {
    width: 40rem;
    height: 56.4rem;
  }

  .modeltype ._modelimage ._slide img {
    width: auto;
    height: 100%;
  }
}

.modeltype ._information {
  width: 100%;
  margin-left: 0;
  font-size: 0;
}

@media screen and (min-width:821px),
print {
  .modeltype ._information {
    width: calc(100% - (40rem + 6rem));
    margin-left: 6rem;
    font-size: 0;
  }
}

.modeltype .modelname {
  font-size: 4rem;
  color: #333333;
  font-weight: 500;
  padding-bottom: 3rem;
  margin-bottom: 6rem;
  border-bottom: 1px solid var(--color-pink);
  text-align: center;
}

.modeltype .modelname span {
  font-weight: 500;
}

@media screen and (min-width:821px),
print {
  .modeltype .modelname {
    font-size: 3rem;
    color: #333333;
    font-weight: 500;
    padding-bottom: 3rem;
    margin-bottom: 3rem;
    text-align: left;
  }
}

.modeltype .coordinatedescription {
  color: var(--color-pink);
  display: block;
  margin-bottom: 3rem;
}

@media screen and (min-width:821px),
print {
  .modeltype .coordinatedescription {
    max-width: 33rem;
    color: var(--color-pink);
    display: inline-block;
    vertical-align: top;
    margin-bottom: 0;
  }
}

.modeltype .coordinatedescription dl {
  margin: 0;
}

@media screen and (min-width:821px),
print {
  .modeltype .coordinatedescription dl {
    margin: 0;
  }
}

.modeltype .coordinatedescription dt,
.modeltype .coordinatedescription dd {
  display: inline;
  font-size: 3.2rem;
  line-height: 1.58;
  font-weight: 500;
  margin: 0;
}

@media screen and (min-width:821px),
print {

  .modeltype .coordinatedescription dt,
  .modeltype .coordinatedescription dd {
    display: inline;
    font-size: 2.4rem;
  }
}

.modeltype .modeldescription {
  display: block;
  margin-left: 0;
  margin-bottom: 6rem;
}

@media screen and (min-width:821px),
print {
  .modeltype .modeldescription {
    max-width: 26rem;
    display: inline-block;
    vertical-align: top;
    margin-left: 3rem;
    margin-bottom: 0;
  }
}

.modeltype .modeldescription dl {
  margin: 0;
}

@media screen and (min-width:821px),
print {
  .modeltype .modeldescription dl {
    margin: 0;
  }
}

.modeltype .modeldescription dt,
.modeltype .modeldescription dd {
  display: inline;
  font-size: 2.4rem;
  line-height: 1.5;
  font-weight: 400;
  margin: 0;
}

@media screen and (min-width:821px),
print {

  .modeltype .modeldescription dt,
  .modeltype .modeldescription dd {
    display: inline;
    font-size: 2rem;
    line-height: 1.5;
    font-weight: 400;
    margin: 0;
  }
}

.review {
  margin-top: 4rem;
}

@media screen and (min-width:821px),
print {
  .review {
    margin-top: 4rem;
  }
}

.review ._head {
  display: inline-block;
  border-radius: 0 2rem 0 0;
  font-size: 3.2rem;
  color: #fff;
  background: var(--color-pink);
  padding: 1.2rem 5rem;
}

@media screen and (min-width:821px),
print {
  .review ._head {
    display: inline-block;
    border-radius: 0 2rem 0 0;
    font-size: 2.4rem;
    color: #fff;
    background: var(--color-pink);
    padding: 1.2rem 2.5rem;
  }
}

.review .commentBox {
  background: #ffeaf1;
  padding: 4.2rem 4.5rem;
  border-radius: 0 2rem 0 2rem;
}

@media screen and (min-width:821px),
print {
  .review .commentBox {
    background: #ffeaf1;
    padding: 4.2rem 4rem;
    border-radius: 0 2rem 0 2rem;
  }
}

.review .commentBox ._comment {
  font-size: 2.8rem;
  line-height: 1.5;
  color: #333333;
}

.review .commentBox ._comment ._txt {
  display: block;
}

@media screen and (min-width:821px),
print {
  .review .commentBox ._comment {
    font-size: 1.6rem;
    line-height: 1.625;
    color: #333333;
  }

  .review .commentBox ._comment ._txt {
    display: block;
  }

}

/*-----------------------------------
 movie
-----------------------------------*/
#movie {
  padding: 14rem 0;
}

@media screen and (min-width:821px),
print {
  #movie {
    padding: 14rem 0 10rem;
  }
}

#movie ._catch {
  color: var(--color-pink);
}

@media screen and (min-width:821px),
print {
  #movie ._catch {
    color: var(--color-pink);
  }
}

#movie ._title {
  color: var(--color-pink);
  text-align: center;
}

@media screen and (min-width:821px),
print {
  #movie ._title {
    color: var(--color-pink);
    text-align: center;
  }
}

#movie ._comment {
  position: relative;
  font-size: 2.8rem;
  line-height: 1.5;
  color: #333333;
  text-align: center;
}

@media screen and (min-width:821px),
print {
  #movie ._comment {
    font-size: 1.8rem;
    color: #333333;
    text-align: center;
  }
}

@media screen and (min-width:821px),
print {
  #movie ._comment::before {
    content: "";
    display: block;
    width: 13.4rem;
    height: 25.4rem;
    background: url(./../img/movie_deco-l.png);
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    left: 9rem;
    bottom: 0;
  }
}

#movie ._comment ._txt {
  display: block;
  line-height: 1.6;
}

@media screen and (min-width:821px),
print {
  #movie ._comment ._txt {
    display: block;
    line-height: 1.6;
  }
}

.movieWrap {
  margin: 8rem auto 0;
  max-width: 120rem;
}

@media screen and (min-width:821px),
print {
  .movieWrap {
    margin: 8rem auto 0;
    max-width: 120rem;
  }
}

._movies {
  display: block;
}

@media screen and (min-width:821px),
print {
  ._movies {
    display: flex;
    justify-content: center;
    align-items: center;
  }
}

#movie ._movie ._title {
  display: block;
  text-align: center;
  margin-bottom: 3rem;
}

._movies ._movie {
  width: 100%;
}

._movies ._movie img {
  width: 100%;
  height: auto;
}

._movies ._movie.comingsoon {
  pointer-events: none;
}

._movies ._movie:not(:first-of-type) {
  margin-top: 3rem;
}

@media screen and (min-width:821px),
print {
  
  ._movies ._movie {
    max-width: 38rem;
    width: calc((100% / 3) - 1.5rem);
  }

  .column-01._movies ._movie {
    max-width: inherit;
    width: 70rem;
  }

  ._movies ._movie:not(:first-of-type) {
    margin-top: 0;
    margin-left: 3rem;
  }
}

.btn-l {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 54rem;
  height: 8rem;
  font-size: 2.4rem;
  font-family: 500;
  border-radius: 4rem;
  margin: 7rem auto 0;
  border: 2px solid #111111;
}

.btn-l::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 2rem;
  transform: translateY(-50%);
  width: 1.3rem;
  height: 1.6rem;
  background: url(./../img/btn-l-arrow.png);
  background-repeat: no-repeat;
  background-size: contain;
}

@media screen and (min-width:821px),
print {
  .btn-l {
    width: 71rem;
    height: 6rem;
    font-size: 2.2rem;
    color: #111111;
    border-radius: 3rem;
    margin: 8rem auto 0;
  }

}

/*  */

@media screen and (min-width:821px),
print {
  #sticker {
    margin: 0 auto 6rem;
  }

  #sticker ._inner {
    max-width: inherit;
  }
}

.present {
  background-repeat: no-repeat;
  border-radius: 5rem;
  position: relative;
  overflow: hidden;
  background: #f0f0f0;
  width: calc(100% - 4rem);
  margin: 0 auto;
  padding-bottom: 53rem;
  background: url(./../img/present-bg-sp.png);
  background-size: cover;
  background-position: bottom;
}

@media screen and (min-width:821px),
print {
  .present {
    padding-bottom: 0;
  }
}



.present-end {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 5;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, .4);
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0 5.5rem;
}

@media screen and (min-width:821px),
print {
  .present-end {
    background: rgba(0, 0, 0, .4);
    padding: 0;
  }
}

.present::before {
  pointer-events: none;
  content: "";
  display: block;
  position: absolute;
  top: 2rem;
  left: 2rem;
  width: calc(100% - 4rem);
  height: calc(100% - 4rem);
  border: 1px solid var(--color-pink);
  border-radius: 5rem;
}

@media screen and (min-width:821px),
print {
  .present::before {
    display: none;
  }
}

@media screen and (min-width:821px),
print {
  .present {
    width: 140rem;
    margin: 0 auto;
    background: url(./../img/present-bg.jpg);
    background-size: auto;
    background-position: 0 0;
    padding: 7.6rem 10rem 8rem;
  }
}

#sticker .present>._title {
  margin: 7.6rem auto 6rem;
  text-align: center;
}

@media screen and (min-width:821px),
print {
  #sticker .present>._title {
    text-align: center;
    margin: 0;
  }
}


@media screen and (min-width:821px),
print {
  .present::after {
    pointer-events: none;
    content: "";
    position: absolute;
    display: block;
    top: 2rem;
    left: 2rem;
    width: calc(100% - 4rem);
    height: calc(100% - 4rem);
    border: 1px solid var(--color-pink);
    border-radius: 5rem;
    overflow: hidden;
  }
}


.present ._title {
  color: var(--color-pink);
  margin: 0 0 2.8rem;
}

.present ._title span {
  display: block;
}

@media screen and (min-width:821px),
print {
  .present ._title {
    color: var(--color-pink);
    margin: 0 0 2.8rem;
  }

  .present ._title span {
    display: block;
  }
}

.present ._title .-small {
  font-size: 4rem;
  font-weight: 500;
  line-height: 1.7;
}

@media screen and (min-width:821px),
print {
  .present ._title .-small {
    font-size: 3.6rem;
    font-weight: 500;
  }
}

.present ._title .-big {
  font-size: 6rem;
  font-weight: 500;
  line-height: 1.2;
}

@media screen and (min-width:821px),
print {
  .present ._title .-big {
    font-size: 5rem;
    font-weight: 500;
    line-height: 1.2;
  }
}

.present-sticker {
  display: block;
  margin: 0 auto 3rem;
}

@media screen and (min-width:821px),
print {
  .present-sticker {
    display: block;
    margin: 3rem auto;
  }
}


#sticker .present ._comment {
  font-size: 2.8rem;
  line-height: 1.6;
  text-align: left;
  padding: 0 5.5rem;
}

#sticker .present ._comment ._txt {
  display: inline;
}

@media screen and (min-width:821px),
print {
  #sticker .present ._comment {
    font-size: 1.8rem;
    line-height: 1.6;
    text-align: center;
    padding: 0;
  }

  #sticker .present ._comment ._txt {
    display: block;
  }
}

.present ._comment-attention {
  text-align: center;
  display: block;
  margin: 1.5rem 0 0;
  padding: 0 5.5rem;
  font-size: 2.8rem;
  line-height: 1.6;
  text-align: left;
  color: #ababab;
}

@media screen and (min-width:821px),
print {
  .present ._comment-attention {
    text-align: center;
    display: block;
    margin: 1.5rem 0 0;
    font-size: 1.6rem;
    line-height: 1;
    color: #ababab;
    padding: 0;
  }
}

._targetproduct {
  width: calc(100% - (5.5rem * 2));
  margin: 6rem auto 0;
  background: rgba(255, 255, 255, .7);
  text-align: center;
  padding: 3rem 0 3.8rem;
}

@media screen and (min-width:821px),
print {
  ._targetproduct {
    width: 70rem;
    padding: 0;
    margin: 6rem auto 0;
    background: rgba(255, 255, 255, .7);
    text-align: center;
    padding: 3rem 0 3.8rem;
  }
}

._targetproduct ._head {
  display: block;
  font-size: 2.8rem;
  text-align: center;
  margin: 0 auto 2rem;
  font-weight: 500;
}

@media screen and (min-width:821px),
print {
  ._targetproduct ._head {
    display: block;
    font-size: 2.2rem;
    text-align: center;
    margin: 0 auto 2rem;
  }
}

._targetproduct ._targetlist {
  display: inline-block;
}

@media screen and (min-width:821px),
print {
  ._targetproduct ._targetlist {
    display: inline-block;
  }
}

._targetproduct ._targetlist ._product {
  text-align: left;
  font-size: 2.4rem;
  line-height: 1.75;
}

@media screen and (min-width:821px),
print {
  ._targetproduct ._targetlist ._product {
    text-align: left;
    font-size: 1.6rem;
    line-height: 1.75;
  }
}


._targetproduct ._targetlist ._product a {
  color: #333333;
}

.present ._model {
  z-index: 2;
  position: absolute;
  bottom: 0;
  width: 50.1rem;
  right: -3.5rem;
}

@media screen and (min-width:821px),
print {
  .present ._model {
    z-index: 2;
    position: absolute;
    width: auto;
    bottom: 0;
    width: 46.4rem;
    right: -3.5rem;
  }
}

._targetproduct ._cta {
  width: 90%;
  height: 8rem;
  border: 2px solid #111111;
  margin: 6rem auto 0;
  position: relative;
  border-radius: 5rem;
}

@media screen and (min-width:821px),
print {
  ._targetproduct ._cta {
    width: 40rem;
    height: 6rem;
    position: relative;
    margin: 4rem auto 0;
  }
}

._targetproduct ._cta::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 2rem;
  transform: translateY(-50%);
  width: 1.6rem;
  height: 1.3rem;
  background: url(./../img/btn-arrow.png);
  background-size: contain;
  background-repeat: no-repeat;
}

._targetproduct ._cta a {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 2.6rem;
  color: #111111;
}

@media screen and (min-width:821px),
print {
  ._targetproduct ._cta a {
    font-size: 2.2rem;
  }
}

.present+._cta {
  width: 100%;
  height: 10rem;
  border: 2px solid #111111;
  margin: 6rem auto;
  position: relative;
  border-radius: 5rem;
}

@media screen and (min-width:821px),
print {
  .present+._cta {
    width: 80rem;
    height: 6rem;
    position: relative;
    margin: 4rem auto 0;
  }
}

.present+._cta::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 2rem;
  transform: translateY(-50%);
  width: 1.6rem;
  height: 1.3rem;
  background: url(./../img/btn-arrow.png);
  background-size: contain;
  background-repeat: no-repeat;
}

.present+._cta a {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 2.6rem;
  color: #111111;
}

@media screen and (min-width:821px),
print {
  .present+._cta a {
    font-size: 2.2rem;
  }
}

/*  */

.end {
  margin-top: -6rem;
}

.end img {
  width: 100%;
}

@media screen and (min-width:821px),
print {
  .end {
    margin-top: 0;
    max-width: 190.3rem;
    margin: 0 auto;
  }
}

._modelimage {
  position: relative;
}

.swiper {
  overflow: inherit;
}

.swiper-wrapper {
  overflow: hidden;
}

.swiper-slide {
  display: flex;
  align-items: center;
  justify-content: center;
}


.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 .5rem;
}


.swiper-horizontal>.swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal,
.swiper-pagination-custom,
.swiper-pagination-fraction {
  bottom: -2rem;
  transform: translateY(100%);
}


.swiper-button-prev {

  left: -4rem;
}

@media screen and (min-width:821px),
print {
  .swiper-button-prev {
    left: -2rem;
  }
}

.swiper-button-next {
  right: -4rem;
}

@media screen and (min-width:821px),
print {
  .swiper-button-next {
    right: -2rem;
  }
}

.swiper-button-next,
.swiper-button-prev {
  width: 8rem;
  height: 8rem;
}

@media screen and (min-width:821px),
print {

  .swiper-button-next,
  .swiper-button-prev {
    width: 4rem;
    height: 4rem;
  }
}

.swiper-button-next::after,
.swiper-button-prev::after {
  width: 8rem;
  height: 8rem;
  font-size: 0;
}

@media screen and (min-width:821px),
print {

  .swiper-button-next::after,
  .swiper-button-prev::after {
    width: 4rem;
    height: 4rem;
    font-size: 0;
  }
}

.swiper-button-next::after {
  background: url(./../img/next-icon.png);
  background-size: cover;
  background-repeat: no-repeat;
}

.swiper-button-prev::after {
  background: url(./../img/prev-icon.png);
  background-size: cover;
  background-repeat: no-repeat;
}

/* ページネーションのサイズと色 */
.swiper-pagination-bullet.swiper-pagination-bullet-active {
  background-color: #000000;
}

.swiper-pagination-bullet {
  border: 1px solid #000000;
  background: transparent;
  border-radius: 50%;
  height: 2rem;
  width: 2rem;
}

@media screen and (min-width:821px),
print {
  .swiper-pagination-bullet {
    border: 1px solid #000000;
    background: transparent;
    border-radius: 50%;
    height: 1rem;
    width: 1rem;
  }
}

.colorvariation .swiper-pagination {
  bottom: -4.5rem;
}

@media screen and (min-width:821px),
print {
  .colorvariation .swiper-pagination {
    bottom: -2rem;
  }
}

#new_innerwear{
  background: #fc9db8;
}
#new_innerwear .product + .product{
  margin: 2rem 0 0;
}
#new_innerwear ._inner{
  padding: 10rem 0;
}
#new_innerwear ._container{
  display: flex;
  justify-content: space-between;
  background: #fff;
  padding: 6rem;
}
#new_innerwear ._productimage{
  width: 34%;
  margin: 0;
}
#new_innerwear ._product_information{
  width: 60%;
}
#new_innerwear h2{
  font-size: 3rem;
  text-align: center;
  padding: 0 0 1.5rem;
  border-bottom: 2px solid #fc9db8;
}
#new_innerwear ._cta a{
  width: 80%;
  height: 6rem;
  font-size: 2.2rem;
  color: #111111;
  border-radius: 3rem;
  margin: 4rem auto 0;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid #000;
  position: relative;
}
#new_innerwear ._cta a::after{
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 2rem;
  transform: translateY(-50%);
  width: 1.3rem;
  height: 1.6rem;
  background: url(https://fukuskeonline.itembox.design/item/lp/momoske-stockings/01/img/btn-l-arrow.png);
  background-repeat: no-repeat;
  background-size: contain;
}
@media screen and (max-width:768px) {
  #new_innerwear{
    padding: 0 3%;
  }
  #new_innerwear ._container{
    flex-direction: column;
    gap: 10rem;
  }
  #new_innerwear ._productimage{
    width: 100%;
  }
  #new_innerwear ._product_information{
    width: 100%;
  }
  #new_innerwear ._cta a{
    font-size: 3rem;
  }
}