/*sp*/

* {
  margin: 0;
  padding: 0;
}

/*clearfix
-----------------------------------------------------*/
.clearfix:after {
  content: "";
  display: block;
  clear: both;
}

/*snsBtn
-----------------------------------------------------*/
#sns_button {
  width: 90%;
  max-width: 636px;
  height: 25px;
  margin: 20px auto 10px;
  overflow: hidden;
  _zoom: 1;
}

#sns_button li {
  margin-right: 10px;
  float: right;
}

/* topへ戻るボタン
-----------------------------------------------------*/
#wrap #page-top {
  position: fixed;
  right: 10px;
  bottom: 5px;
  width: 11%;
  z-index: 101;
}

/*共通
-----------------------------------------------------*/
#wrap {
  font-family: "YakuHanJPs", "GT America Light", "Gothic Medium BBB", sans-serif,
    YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", -apple-system,
    BlinkMacSystemFont, system-ui, sans-serif;
  background-color: #fff;
  color: #151515;
}

#wrap img {
  width: 100%;
  justify-content: center;
}

#wrap .mainImg {
  margin: 0 auto;
}

#wrap a {
  text-decoration: none;
}

.mincho {
  font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3",
    "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝",
    "ＭＳ 明朝", serif;
}

.blue {
  color: #389fcf;
}

.pink {
  color: #e1799c;
}

.yellow {
  color: #c39901;
}



/*mainarea
-----------------------------------------------------*/
.tx_spp {
  font-size: 3.7cqw;
  font-weight: 600;
  line-height: 1.8em;
  letter-spacing: 0.04em;
  text-align: center;
  padding: 7% 0 3%;
}

.btn_1 {
  /* position: relative; */
  width: 70%;
  background-color: #1a8985;
  margin: 0 auto 9%;
  border-radius: 12px;
}

.btn_1 a {
  display: block;
  padding: 5% 3% 4.6%;
  text-align: center;
  color: #fff;
  font-weight: 600;
  line-height: 1.5em;
  font-size: 4.2cqw;
}

/* .btn_1 .sankaku {
    position: absolute;
    width: 4.3cqw;
    right: 5%;
    top: 50%;
    transform: translateY(-50%);
} */

/*#intro
-----------------------------------------------------*/
#intro {
  /* background-image: url(https://cdn.lumine.jp/contents/prcontents/2024/241114_plusmirror_shinjuku/nami_1.png),
    url(https://cdn.lumine.jp/contents/prcontents/2024/241114_plusmirror_shinjuku/nami_2.png); */
  background-repeat: repeat-x, repeat-x;
  background-position: top, bottom;
  background-size: contain, contain;
  /* padding: 2% 0 12%; */
}

.inner_2 {
  /* background: linear-gradient(-0deg, #cef1f0 0%, #e8f6f5 100%); */
  padding: 3% 0 3%;
}


.h1 {
  color: #fff;
  font-size: xx-small;
}


.h2_sub {
  font-size: 4cqw;
  font-weight: 600;
  line-height: 1.6em;
  text-align: center;
  padding: 2% 0 3%;
}

.h2_sub::before {
  content: "";
  display: inline-block;
  width: 4cqw;
  height: 6cqw;
  background-image: url(https://cdn.lumine.jp/contents/prcontents/2024/241114_plusmirror_shinjuku/slash_green_lt.png);
  background-size: contain;
  vertical-align: sub;
  background-repeat: no-repeat;
}

.h2_sub::after {
  content: "";
  display: inline-block;
  width: 4cqw;
  height: 6cqw;
  background-image: url(https://cdn.lumine.jp/contents/prcontents/2024/241114_plusmirror_shinjuku/slash_green_rt.png);
  background-size: contain;
  vertical-align: sub;
  background-repeat: no-repeat;
}

h2 {
  font-size: 4.6cqw;
  font-weight: 600;
  line-height: 1.4em;
  letter-spacing: 0.04em;
  text-align: center;
  /* margin: 4.5% 0 3%; */
  margin-bottom: 3%;
}

h2 span {

  background: linear-gradient(transparent 60%, #ff6 60%);
}


.box_nw{
    font-weight: bold;
    font-size: 1.8em;
    text-align: center;
    padding: 0.5em 1em;
    margin: 0 auto 1em;
    color: #323131;
    background: whitesmoke;
    border-left: double 7px #4ec4d3;
        border-right: double 7px #4ec4d3;
    width: 83%;
}
.box_nw p {
    margin: 0; 
    padding: 0;
}



.aiImg {
  width: 98%;
  margin: 0 auto;
}

.inner_tx {
  margin: 0 auto;
  padding: 1% 0;
  width: 90%;
  border-radius: 10px;
  font-size: 3.5cqw;
  font-weight: 600;
  /* line-height: 1.8em; */
  letter-spacing: 0.04em;
}

.inner_tx2 {
  font-size: 3cqw;
  margin: auto;
  padding: 0 2% 3% 6%;
  width: 90%;
  border-radius: 10px;
  font-weight: 600;
  /* line-height: 1.8em; */
  letter-spacing: 0.04em;
}

/*#type
-----------------------------------------------------*/
#type {
  padding: 0;
}

.typeImg {
  width: 94%;
  margin: 0 auto;
  padding: 2% 0 4%;
}

/*#feature
-----------------------------------------------------*/
#feature {
  /* background-image: url(https://cdn.lumine.jp/contents/prcontents/2024/241114_plusmirror_shinjuku/nami_1.png),
    url(https://cdn.lumine.jp/contents/prcontents/2024/241114_plusmirror_shinjuku/nami_2.png); */
  background-repeat: repeat-x, repeat-x;
  background-position: top, bottom;
  background-size: contain, contain;
  padding: 2% 0 7%;
}

.h2_type {
  font-size: 6.9cqw;
  font-weight: 600;
  line-height: 1.4em;
  letter-spacing: 0.04em;
  text-align: center;
  padding: 5% 0 0;
}

.anchor {
  width: 94%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0 auto;
  align-items: baseline;
  padding: 0 0 7%;
}

.anchor li {
  position: relative;
  border-radius: 12px;
  font-size: 2.5cqw;
  font-weight: 700;
  text-align: center;
}

.anchor li a {
  display: block;
  padding: 4.3cqw 3cqw 4cqw 0;
  color: #fff;
}

.anchor li:nth-of-type(1) {
  width: 33%;
  background-color: #333;
}

.anchor li:nth-of-type(2) {
  width: 30%;
  background-color: #333;
}

.anchor li:nth-of-type(3) {
  width: 33%;
  background-color: #333;
}

.sankaku_bt {
  position: absolute;
  width: 4.2cqw;
  right: 1.6cqw;
  top: 50%;
  transform: translateY(-50%);
}

/* #straight */
#straight,
#wave {
  width: 92%;
  margin: 3% auto 0;
  background-color: #f7ffff;
  padding: 0 2%;
  border-radius: 10px;
  /* padding-bottom: 6%; */
  border: 1px solid;
}

h3 {
  font-size: 4cqw;
  font-weight: 600;
  line-height: 1.5em;
  text-align: center;
  padding: 3% 0;
  background-color: #333;
  color: #fff;
  border-radius: 10px;
  margin-top: 2%;
}

.type_inner {
  margin: 0 1%;
}

.sen_blue {
  border-bottom: 1px solid #389fcf;
}


.h5_blue {
  display: inline-block;
  background-color: #dceaf3;
  border-radius: 3px;
  padding: 1.2% 2.5% 1%;
  font-size: 3.5cqw;
  font-weight: 600;
  line-height: 1.3em;
  color: #389fcf;
  margin: 4% 0 0;
}

.h5_tx {
  font-size: 3.4cqw;
  font-weight: 600;
  line-height: 1.8em;
  padding: 2% 1% 1% 3%;
}

.h5_tx span {
  font-size: 3cqw;
  font-weight: 400;

}

.h5_tx_btn {
  font-weight: 400;
  line-height: 1.8em;
  padding: 2% 1% 2% 1%;
  background-color: #5e5e5e;
  color: #fff;
  width: 50%;
  margin: 3% auto 0;
  text-align: center;
  border-radius: 5px;
}


.h5_tx_btn a {
  font-size: 3.2cqw;
  color: #fff;
  text-align: center;
}



.h6_tx {
  font-size: 3.5cqw;
  font-weight: 600;
  line-height: 1.8em;
  padding: 2% 1% 1% 2%;
}

.h7_tx {
  font-size: 3.4cqw;
  font-weight: 400;
  line-height: 1.8em;
  padding: 2% 1% 1% 3%;
}

.h7_tx span {
  font-size: 3cqw;
  font-weight: 400;

}

.h7_tx_btn {
  font-weight: 400;
  line-height: 1.8em;
  padding: 2% 1% 2% 1%;
  background-color: #5e5e5e;
  color: #fff;
  width: 50%;
  margin: 3% auto 13%;
  text-align: center;
  border-radius: 5px;
}


.h7_tx_btn a {
  font-size: 3.2cqw;
  color: #fff;
  text-align: center;
}



.illust {
  width: 96%;
  margin: 0 auto;
  padding: 2% 1% 1% 3%;
}

/* アコーディオン */
.accordion {
  margin: 6% auto 9%;
}

.toggle {
  display: none;
}

.option {
  position: relative;
  margin-bottom: 2%;
  background-color: #b8d7ea;
}

.option_2 {
  position: relative;
  margin-bottom: 2%;
  background-color: #dceaf3;
}

.title,
.content_1,
.title_w,
.content_1,
.title_n,
.content_1 {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  transform: translateZ(0);
  transition: all 0.3s;
}

.title,
.title_w,
.title_n {
  border-bottom: solid 1px #fff;
  padding: 3.9% 0 3.4% 3.2%;
  display: block;
  font-weight: 600;
  font-size: 3.5cqw;
}

.title::after,
.title::before {
  content: "";
  position: absolute;
  right: 1.25em;
  top: 1.1em;
  width: 3px;
  height: 0.9em;
  background-color: #389fcf;
  transition: all 0.3s;
}

.title::after,
.title_w::after,
.title_n::after {
  transform: rotate(90deg);
}

.content_1 {
  max-height: 0;
  overflow: hidden;
}

.content_1 .ad_tx {
  margin: 0;
  padding: 3% 3% 4.3%;
  font-size: 3.2cqw;
  font-weight: 600;
  line-height: 1.85em;
}

.good {
  display: inline-block;
  background-color: #fff;
  border-radius: 3px;
  padding: 1.2% 2.5% 1%;
  font-size: 3.3cqw;
  font-weight: 600;
  line-height: 1.3em;
  margin-left: 3%;
}

.toggle:checked+.title+.content_1 {
  max-height: 2000px;
  transition: all 1.5s;
}

.toggle:checked+.title_w+.content_1 {
  max-height: 2000px;
  transition: all 1.5s;
}

.toggle:checked+.title_n+.content_1 {
  max-height: 2000px;
  transition: all 1.5s;
}

.toggle:checked+.title::before,
.toggle:checked+.title_n::before,
.toggle:checked+.title_w::before {
  transform: rotate(90deg) !important;
}

/* アコーディオン */

.tx_spp_blue {
  font-size: 4cqw;
  font-weight: 600;
  line-height: 1.6em;
  text-align: center;
  padding: 2% 0 2.5%;
}

.tx_spp_blue::before {
  content: "";
  display: inline-block;
  width: 4cqw;
  height: 6cqw;
  background-image: url(https://cdn.lumine.jp/contents/prcontents/2024/241114_plusmirror_shinjuku/slash_blue_lt.png);
  background-size: contain;
  vertical-align: sub;
  background-repeat: no-repeat;
}

.tx_spp_blue::after {
  content: "";
  display: inline-block;
  width: 4cqw;
  height: 6cqw;
  background-image: url(https://cdn.lumine.jp/contents/prcontents/2024/241114_plusmirror_shinjuku/slash_blue_rt.png);
  background-size: contain;
  vertical-align: sub;
  background-repeat: no-repeat;
}



.type_icon_blue {
  display: inline-block;
  background-color: #dceaf3;
  border-radius: 3px;
  padding: 1.2% 2.3% 1%;
  font-size: 3.3cqw;
  font-weight: 600;
  line-height: 1.3em;
  color: #389fcf;
  margin: 2.8% 0 1.6%;
}

.name {
  font-size: 3.2cqw;
  font-weight: 600;
  line-height: 1.85em;
}

/* スリック */
/* スライダー（コーデ）
//////////////////////////////////////////////////*/
.test-slick__item {
  position: relative;
}

.test-slick__item p {
  font-size: 2.8cqw;
  text-align: center;
  padding: 1%;
}

.test-slick__item h4 {
  width: 100%;
  font-size: 2.6cqw;
  text-align: center;
  padding: 3% 0;
  max-width: 1% 0;
  background-color: #007DC5;
  color: #fff;
  border-radius: 2px;
  margin-top: 5%;
}




.code_num {
  position: absolute;
  width: 20%;
  top: 1.3cqw;
  left: 1.5cqw;
  z-index: 1;
}

.test__container li {
  width: 46%;
}

.test__container li img {
  width: 46%;
}

.test__container li img {
  width: 46%;
}


.test-slick {
  width: 100%;
  max-width: 500px;
  display: flex;
  /* grid-template-columns: repeat(3, 1fr); */
  column-gap: 1px;
  justify-content: center;

  @include breakpoint(500px) {
    margin: 5% auto;
  }
}

.test-slick__item {
    width: 30%;
    margin: 3% 1.8% 7% 1.5%;
  /* border: 1px solid #b1b1b1; */
}


.test-slick__item span{
    width: 45%;
    margin: 3% 1.8% 7% 1.5%;
  /* border: 1px solid #b1b1b1; */
}

.test-slick__item .img {
  height: auto;
  width: 90%;
  border: 1px solid #adadad;
}


.test-slick__item2 {
  position: relative;

}

.test-slick__item2 p {
  font-size: 2.5cqw;
  text-align: center;
  padding: 1%;
}

.test-slick__item2 h4 {
  width: 100%;
  font-size: 2.2cqw;
  text-align: center;
  padding: 3% 0;
  max-width: 1% 0;
  background-color: #007DC5;
  color: #fff;
  border-radius: 2px;
  margin-top: 5%;
}


.test-slick__item2 {
  width: 93%;
  margin: 2% auto;
  /* border: 1px solid #b1b1b1; */
}

.test-slick__item2 .img {
  height: auto;
  width: 90%;
  /* border:  1px solid #adadad; */
}




.test-slick__item3 {
  position: relative;

}

.test-slick__item3 p {
  font-size: 2.5cqw;
  text-align: center;
  padding: 1%;
}

.test-slick__item3 h4 {
  width: 100%;
  font-size: 2.6cqw;
  text-align: center;
  padding: 3% 0;
  max-width: 1% 0;
  background-color: #007DC5;
  color: #fff;
  border-radius: 2px;
  margin-top: 5%;
}


.test-slick__item3 {
  width: 45%;
  margin: 2% auto;
  /* border: 1px solid #b1b1b1; */
}

.test-slick__item3 .img {
  height: auto;
  width: 90%;
  /* border:  1px solid #adadad; */
}


.dots-class button {
  display: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
  padding: 0;
  border: none;
  background-color: transparent;
}

.dots-class {
  display: flex;
  justify-content: center;
  margin-top: 3.5%;
}

.dots-class li {
  width: 10px;
  height: 10px;
  background-color: #fff;
  border: 1px solid #5e5e5e;
  border-radius: 50%;
  margin-right: 10px;
  cursor: pointer;
  transition: background-color 0.5s ease;
}

.dots-class li.slick-active {
  background-color: #5e5e5e;
}

/* .dots-class li:hover {
    background-color: #853246;
} */
.dots-class li:last-child {
  margin-right: 0;
}

/* #wave */
.sen_pink {
  border-bottom: 1px solid #e1799c;
}


.h5_pink {
  display: inline-block;
  background-color: #f3e3e8;
  border-radius: 3px;
  padding: 1.2% 2.5% 1%;
  font-size: 3.5cqw;
  font-weight: 600;
  line-height: 1.3em;
  color: #e1799c;
}

.type_icon_pink {
  display: inline-block;
  background-color: #f3e3e8;
  border-radius: 3px;
  padding: 1.2% 2.3% 1%;
  font-size: 3.3cqw;
  font-weight: 600;
  line-height: 1.3em;
  color: #e1799c;
  margin: 2.8% 0 1.6%;
}

.tx_spp_pink {
  font-size: 4cqw;
  font-weight: 600;
  line-height: 1.6em;
  text-align: center;
  padding: 2% 0 2.5%;
}

.tx_spp_pink::before {
  content: "";
  display: inline-block;
  width: 4cqw;
  height: 6cqw;
  background-image: url(https://cdn.lumine.jp/contents/prcontents/2024/241114_plusmirror_shinjuku/slash_pink_lt.png);
  background-size: contain;
  vertical-align: sub;
  background-repeat: no-repeat;
}

.tx_spp_pink::after {
  content: "";
  display: inline-block;
  width: 4cqw;
  height: 6cqw;
  background-image: url(https://cdn.lumine.jp/contents/prcontents/2024/241114_plusmirror_shinjuku/slash_pink_rt.png);
  background-size: contain;
  vertical-align: sub;
  background-repeat: no-repeat;
}

/* アコーディオン */
.option_3 {
  position: relative;
  margin-bottom: 2%;
  background-color: #e7c4cf;
}

.option_4 {
  position: relative;
  margin-bottom: 2%;
  background-color: #f3e3e8;
}

.title_w::after,
.title_w::before {
  content: "";
  position: absolute;
  right: 1.25em;
  top: 1.1em;
  width: 3px;
  height: 0.9em;
  background-color: #e1799c;
  transition: all 0.3s;
}

/* #natural */
#natural {
  width: 96%;
  margin: 0 auto;
  background-color: #fff;
  border-radius: 50px;
  padding-bottom: 6%;
}

.sen_yellow {
  border-bottom: 1px solid #c39901;
}



.h5_yellow {
  display: inline-block;
  background-color: #ece7d7;
  border-radius: 3px;
  padding: 1.2% 2.5% 1%;
  font-size: 3.5cqw;
  font-weight: 600;
  line-height: 1.3em;
  color: #c39901;
}

.tx_spp_yellow {
  font-size: 4cqw;
  font-weight: 600;
  line-height: 1.6em;
  text-align: center;
  padding: 2% 0 2.5%;
}

.type_icon_yellow {
  display: inline-block;
  background-color: #ece7d7;
  border-radius: 3px;
  padding: 1.2% 2.3% 1%;
  font-size: 3.3cqw;
  font-weight: 600;
  line-height: 1.3em;
  color: #c39901;
  margin: 2.8% 0 1.6%;
}

.tx_spp_yellow::before {
  content: "";
  display: inline-block;
  width: 4cqw;
  height: 6cqw;
  background-image: url(https://cdn.lumine.jp/contents/prcontents/2024/241114_plusmirror_shinjuku/slash_yellow_lt.png);
  background-size: contain;
  vertical-align: sub;
  background-repeat: no-repeat;
}

.tx_spp_yellow::after {
  content: "";
  display: inline-block;
  width: 4cqw;
  height: 6cqw;
  background-image: url(https://cdn.lumine.jp/contents/prcontents/2024/241114_plusmirror_shinjuku/slash_yellow_rt.png);
  background-size: contain;
  vertical-align: sub;
  background-repeat: no-repeat;
}

/* アコーディオン */
.option_5 {
  position: relative;
  margin-bottom: 2%;
  background-color: #d6c897;
}

.option_6 {
  position: relative;
  margin-bottom: 2%;
  background-color: #ece7d7;
}

.title_n::after,
.title_n::before {
  content: "";
  position: absolute;
  right: 1.25em;
  top: 1.1em;
  width: 3px;
  height: 0.9em;
  background-color: #c39901;
  transition: all 0.3s;
}

/* #other */
#other {
  width: 98%;
  padding: 0 0 4.5%;
}

#other h2 {
  /* padding-top: 9%; */
}

.bnImg {
  width: 50%;
  margin: 0 auto;
}

.bnImg2 {
  width: 80%;
  margin: 0 auto;
}

.bn_wrap {
  margin-bottom: 4%;
  padding-top: 2%;
}

/* 移行区分E：mobile_firstテンプレートのstyle */
#feature {
  width: 100cqw;
}

.mobile_first_to_page_top {
  display: block;
}