.page_simulation #conts,
.page_simulation #conts .contsInner {
  width: 1120px;
}

.page_simulation .section {
  padding-top: 65px;
  color: #000;
}
.page_simulation .section * {
  color: #000;
}
.page_simulation .section p {
  line-height: 1.7;
}
.page_simulation .section .txt {
  font-size: 24px;
}
.page_simulation .section .txt_m {
  font-size: 18px;
}
.page_simulation .section h1, .page_simulation .section h2, .page_simulation .section h3, .page_simulation .section h4, .page_simulation .section h5 {
  line-height: 1.5;
}
.page_simulation #conts .simulationSec {
  margin-top: 0;
}
.page_simulation #conts {
  padding-top: 0;
}
.page_simulation .container {
  width: 1120px;
  margin: 0 auto;
}
.page_simulation em, .page_simulation strong, .page_simulation small {
  font-style: normal;
}
.page_simulation .ttl_common {
  font-weight: 700;
  font-size: 40px;
  text-align: center;
}

#fv_simulation {
  height: 400px;
  background-color: #000;
}
#fv_simulation .container {
  position: relative;
}
#fv_simulation .ttl {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
#fv_simulation h1 {
  text-align: center;
}
#fv_simulation h1 em {
  display: block;
  font-weight: 700;
  font-size: 29px;
  color: #BBA171;
}
#fv_simulation h1 strong {
  display: block;
  margin-top: 10px;
  font-weight: 700;
  font-size: 36px;
  color: #fff;
}

#payment h2 + p {
  padding-top: 28px;
}

#simulation h2 + p {
  padding-top: 24px;
}

.box_gray {
  margin-top: 69px;
  padding: 22px 33px 28px;
  background-color: #F5F5F5;
}
.box_gray .txt {
  color: #C1272D;
}

.payment_tb *,
.paymentTable * {
  color: #000;
}

#conts .simulationSec #table2, #conts .simulationSec #table3, #conts .simulationSec #table4,
#conts .simulationSec .paymentTable {
  width: 100%;
}

#conts .simulationSec #table2 .plan, #conts .simulationSec #table3 .plan, #conts .simulationSec #table4 .plan,
#conts .simulationSec .paymentTable th.head {
  height: 80px;
  padding: 0;
  border: 1px solid #000;
  text-align: center;
  vertical-align: middle;
  font-size: 22px;
  background-color: #000;
  color: #fff;
}

#conts .simulationSec #table2 th, #conts .simulationSec #table3 th, #conts .simulationSec #table4 th,
#conts .simulationSec .courseList .paymentTable th.checkHead,
#conts .simulationSec .courseList .paymentTable th.partsHead,
#conts .simulationSec .courseList .paymentTable th.priceHead {
  min-height: 80px;
  padding: 22px 10px;
  background: #F5F5F5;
  border: 1px solid #000;
  font-size: 22px;
}

#conts .simulationSec .inner {
  padding: 0;
}

#conts .simulationSec #table2,
#conts .simulationSec #table3,
#conts .simulationSec #table4,
#conts .simulationSec .paymentTable {
  max-width: 100%;
  table-layout: fixed;
  box-sizing: border-box;
}
#conts .simulationSec #table2 *,
#conts .simulationSec #table3 *,
#conts .simulationSec #table4 *,
#conts .simulationSec .paymentTable * {
  box-sizing: border-box;
}
#conts .simulationSec #table2 input[type=checkbox],
#conts .simulationSec #table3 input[type=checkbox],
#conts .simulationSec #table4 input[type=checkbox],
#conts .simulationSec .paymentTable input[type=checkbox] {
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
  width: 28px;
  height: 28px;
  border: 1px solid #333;
  border-radius: 0;
  background: #fff;
  position: relative;
  cursor: pointer;
}
#conts .simulationSec #table2 input[type=checkbox]:checked::after,
#conts .simulationSec #table3 input[type=checkbox]:checked::after,
#conts .simulationSec #table4 input[type=checkbox]:checked::after,
#conts .simulationSec .paymentTable input[type=checkbox]:checked::after {
  content: "";
  position: absolute;
  top: 3px;
  left: 8px;
  width: 7px;
  height: 14px;
  border: solid #000;
  border-width: 0 3px 3px 0;
  transform: rotate(45deg);
}
#conts .simulationSec #table2 .col-check,
#conts .simulationSec #table3 .col-check,
#conts .simulationSec #table4 .col-check,
#conts .simulationSec .paymentTable .col-check {
  width: 230px;
}
#conts .simulationSec #table2 .col-bui,
#conts .simulationSec #table3 .col-bui,
#conts .simulationSec #table4 .col-bui,
#conts .simulationSec .paymentTable .col-bui {
  width: 660px;
}
#conts .simulationSec #table2 .col-price,
#conts .simulationSec #table3 .col-price,
#conts .simulationSec #table4 .col-price,
#conts .simulationSec .paymentTable .col-price {
  width: 230px;
}
#conts .simulationSec #table2 .plan,
#conts .simulationSec #table3 .plan,
#conts .simulationSec #table4 .plan,
#conts .simulationSec .paymentTable .plan {
  position: relative;
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
#conts .simulationSec #table2 .plan::after,
#conts .simulationSec #table3 .plan::after,
#conts .simulationSec #table4 .plan::after,
#conts .simulationSec .paymentTable .plan::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 33px;
  width: 40px;
  height: 4px;
  background-color: #fff;
  transform: translateY(-50%);
}
#conts .simulationSec #table2 .plan::before,
#conts .simulationSec #table3 .plan::before,
#conts .simulationSec #table4 .plan::before,
#conts .simulationSec .paymentTable .plan::before {
  content: "";
  position: absolute;
  top: 50%;
  right: 51px;
  width: 4px;
  height: 40px;
  background-color: #fff;
  transform: translateY(-50%) rotate(0deg);
  transition: transform 0.3s ease;
}
#conts .simulationSec #table2 .plan.is-closed::before,
#conts .simulationSec #table3 .plan.is-closed::before,
#conts .simulationSec #table4 .plan.is-closed::before,
#conts .simulationSec .paymentTable .plan.is-closed::before {
  transform: translateY(-50%) rotate(0deg);
}
#conts .simulationSec #table2 .plan:not(.is-closed)::before,
#conts .simulationSec #table3 .plan:not(.is-closed)::before,
#conts .simulationSec #table4 .plan:not(.is-closed)::before,
#conts .simulationSec .paymentTable .plan:not(.is-closed)::before {
  transform: translateY(-50%) rotate(-90deg);
}

#conts .simulationSec #table2 .bui, #conts .simulationSec #table3 .bui, #conts .simulationSec #table4 .bui,
#conts .simulationSec .paymentTable td {
  font-size: 16px;
  line-height: 1.6;
}

#conts .simulationSec #table2 td, #conts .simulationSec #table3 td, #conts .simulationSec #table4 td,
#conts .simulationSec .paymentTable td {
  height: 80px;
  padding: 0 30px;
  border: 1px solid #000;
}

#conts .simulationSec #table2 .checkData, #conts .simulationSec #table3 .checkData, #conts .simulationSec #table4 .checkData,
#conts .simulationSec .paymentTable td.checkData {
  text-align: center;
}

#conts .simulationSec #table2 .course_price, #conts .simulationSec #table3 .course_price, #conts .simulationSec #table4 .course_price,
#conts .simulationSec .paymentTable .coursePrice {
  font-size: 22px;
  font-weight: 600;
  text-align: center;
}

#merit h2 + dl {
  margin-top: 22px;
}
#merit dl + dl {
  margin-top: 20px;
}
#merit dt, #merit dd {
  line-height: 1.6;
}
#merit dt {
  font-weight: 600;
  font-size: 30px;
  color: #026EA8;
}
#merit dd {
  margin-top: 10px;
  font-size: 18px;
}
#merit .btn_wrapper {
  margin-top: 69px;
}

.btn_wrapper {
  display: flex;
  justify-content: center;
}

.qa .btn_wrapper {
  margin-top: 30px;
}

.btn_wrapper .btn {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 460px;
  height: 100px;
  border-radius: 18px;
  background-color: #026EA8;
  font-weight: 600;
  font-size: 22px;
  color: #fff;
  background-image: url(/operation/epilation/price/assets/img/202608/icon_arrow_btn.webp);
  background-repeat: no-repeat;
  background-size: 45px 9px;
  background-position: right 13px center;
  text-decoration: unset !important;
  text-align: center;
  line-height: 1.6;
  transition: 0.3s;
}

#conts .simulationSec #table1,
#conts .simulationSec .resultBox .paymentTable {
  margin-top: 80px;
}

#conts .simulationSec #table1 th,
#conts .simulationSec .resultBox .paymentTable th {
  box-sizing: border-box;
  width: 33.33%;
  height: 120px;
  padding: 0;
  font-size: 22px;
  border: 1px solid #000;
  background: #F5F5F5;
  text-align: center;
}

#conts .simulationSec #table1 th span.pcMargin,
#conts .simulationSec .resultBox .paymentTable th span.pcSpace {
  margin-left: 5px;
}

#conts .simulationSec #table1 th span.result_price, #conts .simulationSec #table1 th span.yen,
#conts .simulationSec .resultBox .paymentTable th span.resultPrice, #conts .simulationSec .resultBox .paymentTable th span.yen {
  font-size: 30px;
}

#conts .simulationSec #table1 select,
#conts .simulationSec .resultBox .paymentTable select,
#conts .simulationSec .tableWrap .paymentTable .paymentSelect {
  width: 178px;
  height: 41px;
  line-height: 41px;
  margin-top: 7px;
  padding: 0;
  font-weight: 500;
  font-size: 18px;
  text-align: center;
}

#conts .notes {
  margin-top: 15px;
  font-weight: 400;
  font-size: 14px;
}

#conts .simulationSec .payment_tb + .payment_tb,
#conts .simulationSec .paymentTable + .paymentTable {
  margin-top: 39px !important;
}

@media screen and (min-width: 768px) {
  .for_sp {
    display: none !important;
  }
}
@media screen and (max-width: 767px) {
  .for_pc {
    display: none !important;
  }
}
@media screen and (max-width: 767px) {
  .page_simulation #conts,
  .page_simulation #conts .contsInner {
    width: 100%;
  }
  #conts .simulationSec .payment_tb + .payment_tb,
  #conts .simulationSec .paymentTable + .paymentTable {
    margin-top: 5.3333vw !important;
  }
  #conts .simulationSec .payment_tb + .payment_tb.payment_tb_bottom,
  #conts .simulationSec .paymentTable + .paymentTable.payment_tb_bottom {
    margin-top: 10.8vw !important;
  }
  .page_simulation .section {
    padding-top: 8.6666vw;
  }
  .page_simulation .section .txt {
    font-size: 3.2vw;
  }
  .page_simulation .section .txt_m {
    font-size: 3.2vw;
  }
  .page_simulation .section h1, .page_simulation .section h2, .page_simulation .section h3, .page_simulation .section h4, .page_simulation .section h5 {
    line-height: 1.5;
  }
  .page_simulation #conts .simulationSec {
    margin-top: 0;
  }
  .page_simulation #conts {
    padding-top: 0;
  }
  .page_simulation .container {
    width: 92vw;
  }
  .page_simulation .ttl_common {
    font-size: 5.3333vw;
  }
  #fv_simulation {
    height: unset;
  }
  #fv_simulation .container {
    width: 100%;
    height: 100%;
  }
  #fv_simulation h1 em {
    font-size: 4.8vw;
  }
  #fv_simulation h1 strong {
    margin-top: 0.6666vw;
    font-size: 5.8666vw;
  }
  #payment h2 + p {
    padding-top: 3.4666vw;
  }
  #simulation h2 + p {
    padding-top: 3.6vw;
  }
  .box_gray {
    margin-top: 9.8666vw;
    padding: 3.4666vw 3.3333vw 3.7333vw;
  }
  .box_gray .txt {
    font-size: 3.3333vw;
  }
  #conts .simulationSec #table2,
  #conts .simulationSec .paymentTable {
    width: 100%;
    margin: 0 auto !important;
  }
  #conts .simulationSec .tableOuter,
  #conts .simulationSec .tableWrap {
    width: 92vw;
    margin: 4.1333vw auto 0;
  }
  #conts .simulationSec #table2 .plan, #conts .simulationSec #table3 .plan, #conts .simulationSec #table4 .plan,
  #conts .simulationSec .paymentTable th.head {
    height: 13.3333vw;
    padding: 0;
    border: 1px solid #000;
    text-align: center;
    vertical-align: middle;
    font-size: 4vw;
    background-color: #000;
  }
  #conts .simulationSec #table2 th, #conts .simulationSec #table3 th, #conts .simulationSec #table4 th,
  #conts .simulationSec .courseList .paymentTable th.checkHead,
  #conts .simulationSec .courseList .paymentTable th.partsHead,
  #conts .simulationSec .courseList .paymentTable th.priceHead {
    min-height: 13.3333vw;
    padding: 4.6666vw 1.3333vw;
    background: #F5F5F5;
    border: 1px solid #000;
    font-size: 2.8vw;
  }
  #conts .simulationSec .inner {
    padding: 0;
  }
  #conts .simulationSec #table2,
  #conts .simulationSec #table3,
  #conts .simulationSec #table4,
  #conts .simulationSec .paymentTable {
    max-width: 100%;
    table-layout: fixed;
    box-sizing: border-box;
  }
  #conts .simulationSec #table2 *,
  #conts .simulationSec #table3 *,
  #conts .simulationSec #table4 *,
  #conts .simulationSec .paymentTable * {
    box-sizing: border-box;
  }
  #conts .simulationSec #table2 input[type=checkbox],
  #conts .simulationSec #table3 input[type=checkbox],
  #conts .simulationSec #table4 input[type=checkbox],
  #conts .simulationSec .paymentTable input[type=checkbox] {
    -moz-appearance: none;
         appearance: none;
    -webkit-appearance: none;
    width: 4.6666vw;
    height: 4.6666vw;
    border: 1px solid #333;
    border-radius: 0;
    background: #fff;
    position: relative;
    cursor: pointer;
  }
  #conts .simulationSec #table2 input[type=checkbox]:checked::after,
  #conts .simulationSec #table3 input[type=checkbox]:checked::after,
  #conts .simulationSec #table4 input[type=checkbox]:checked::after,
  #conts .simulationSec .paymentTable input[type=checkbox]:checked::after {
    content: "";
    position: absolute;
    top: 0.6666vw;
    left: 1.4666vw;
    width: 0.9333vw;
    height: 1.8666vw;
    border: solid #000;
    border-width: 0 0.4vw 0.4vw 0;
    transform: rotate(45deg);
  }
  #conts .simulationSec #table2 .col-check,
  #conts .simulationSec #table2 th.checkHead,
  #conts .simulationSec #table2 td.checkData,
  #conts .simulationSec #table3 .col-check,
  #conts .simulationSec #table3 th.checkHead,
  #conts .simulationSec #table3 td.checkData,
  #conts .simulationSec #table4 .col-check,
  #conts .simulationSec #table4 th.checkHead,
  #conts .simulationSec #table4 td.checkData,
  #conts .simulationSec .paymentTable .col-check,
  #conts .simulationSec .paymentTable th.checkHead,
  #conts .simulationSec .paymentTable td.checkData {
    width: 13.3333vw !important;
  }
  #conts .simulationSec #table2 .col-bui,
  #conts .simulationSec #table2 th.partsHead,
  #conts .simulationSec #table3 .col-bui,
  #conts .simulationSec #table3 th.partsHead,
  #conts .simulationSec #table4 .col-bui,
  #conts .simulationSec #table4 th.partsHead,
  #conts .simulationSec .paymentTable .col-bui,
  #conts .simulationSec .paymentTable th.partsHead {
    width: 58.1333vw !important;
  }
  #conts .simulationSec #table2 .col-price,
  #conts .simulationSec #table2 th.priceHead,
  #conts .simulationSec #table2 td.coursePrice,
  #conts .simulationSec #table3 .col-price,
  #conts .simulationSec #table3 th.priceHead,
  #conts .simulationSec #table3 td.coursePrice,
  #conts .simulationSec #table4 .col-price,
  #conts .simulationSec #table4 th.priceHead,
  #conts .simulationSec #table4 td.coursePrice,
  #conts .simulationSec .paymentTable .col-price,
  #conts .simulationSec .paymentTable th.priceHead,
  #conts .simulationSec .paymentTable td.coursePrice {
    width: 20.5333vw !important;
  }
  #conts .simulationSec #table2 .plan,
  #conts .simulationSec #table3 .plan,
  #conts .simulationSec #table4 .plan,
  #conts .simulationSec .paymentTable .plan {
    position: relative;
    cursor: pointer;
    -webkit-user-select: none;
       -moz-user-select: none;
            user-select: none;
  }
  #conts .simulationSec #table2 .plan::after,
  #conts .simulationSec #table3 .plan::after,
  #conts .simulationSec #table4 .plan::after,
  #conts .simulationSec .paymentTable .plan::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 4.4vw;
    width: 5.3333vw;
    height: 0.5333vw;
    background-color: #fff;
    transform: translateY(-50%);
  }
  #conts .simulationSec #table2 .plan::before,
  #conts .simulationSec #table3 .plan::before,
  #conts .simulationSec #table4 .plan::before,
  #conts .simulationSec .paymentTable .plan::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 6.8vw;
    width: 0.5333vw;
    height: 5.3333vw;
    background-color: #fff;
    transform: translateY(-50%) rotate(0deg);
    transition: transform 0.3s ease;
  }
  #conts .simulationSec #table2 .plan.is-closed::before,
  #conts .simulationSec #table3 .plan.is-closed::before,
  #conts .simulationSec #table4 .plan.is-closed::before,
  #conts .simulationSec .paymentTable .plan.is-closed::before {
    transform: translateY(-50%) rotate(0deg);
  }
  #conts .simulationSec #table2 .plan:not(.is-closed)::before,
  #conts .simulationSec #table3 .plan:not(.is-closed)::before,
  #conts .simulationSec #table4 .plan:not(.is-closed)::before,
  #conts .simulationSec .paymentTable .plan:not(.is-closed)::before {
    transform: translateY(-50%) rotate(-90deg);
  }
  #conts .simulationSec #table2 .bui, #conts .simulationSec #table3 .bui, #conts .simulationSec #table4 .bui,
  #conts .simulationSec .paymentTable td {
    font-size: 2.8vw;
    line-height: 1.6;
  }
  #conts .simulationSec #table2 td, #conts .simulationSec #table3 td, #conts .simulationSec #table4 td,
  #conts .simulationSec .paymentTable td {
    height: 13.3333vw;
    padding: 0 1.7333vw;
  }
  #conts .simulationSec #table2 .course_price, #conts .simulationSec #table3 .course_price, #conts .simulationSec #table4 .course_price,
  #conts .simulationSec .paymentTable .coursePrice {
    font-size: 2.8vw;
    font-weight: 600;
    text-align: center;
    white-space: nowrap;
    padding: 0 0.5333vw;
  }
  #merit h2 + dl {
    margin-top: 3.0666vw;
  }
  #merit dl + dl {
    margin-top: 3.6vw;
  }
  #merit dt, #merit dd {
    line-height: 1.6;
  }
  #merit dt {
    font-weight: 600;
    font-size: 4vw;
    color: #026EA8;
  }
  #merit dd {
    margin-top: 1.3333vw;
    font-size: 3.2vw;
  }
  #merit .btn_wrapper {
    margin-top: 10.1333vw;
  }
  .btn_wrapper {
    display: flex;
    justify-content: center;
  }
  .qa .btn_wrapper {
    margin-top: 30px;
  }
  .btn_wrapper .btn {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 72vw;
    height: 14.8vw;
    border-radius: 2.4vw;
    background-color: #026EA8;
    font-weight: 600;
    font-size: 3.4666vw;
    color: #fff;
    background-image: url(/operation/epilation/price/assets/img/202608/icon_arrow_btn.webp);
    background-repeat: no-repeat;
    background-size: 6vw 1.2vw;
    background-position: right 13px center;
    text-decoration: unset !important;
    text-align: center;
    line-height: 1.6;
    transition: 0.3s;
  }
  #conts .simulationSec #table1 th,
  #conts .simulationSec .resultBox .paymentTable th {
    box-sizing: border-box;
    width: 33.33%;
    height: 13.3333vw;
    padding: 0;
    font-size: 2.9333vw;
  }
  #conts .simulationSec #table1 th span.result_price, #conts .simulationSec #table1 th span.yen,
  #conts .simulationSec .resultBox .paymentTable th span.resultPrice, #conts .simulationSec .resultBox .paymentTable th span.yen {
    font-size: 3.7333vw;
  }
  #conts .simulationSec #table1 select,
  #conts .simulationSec .resultBox .paymentTable select,
  #conts .simulationSec .tableWrap .paymentTable .paymentSelect {
    width: 14.6666vw;
    height: 5.6vw;
    line-height: 5.6vw;
    margin-top: 0.9333vw;
    padding: 0;
    font-weight: 500;
    font-size: 2.6666vw;
    text-align: center;
  }
  #conts .simulationSec #table1 select *,
  #conts .simulationSec .resultBox .paymentTable select *,
  #conts .simulationSec .tableWrap .paymentTable .paymentSelect * {
    line-height: 5.3333vw;
  }
  #conts .notes {
    width: 92vw;
    margin-top: 2.1333vw;
    margin-right: auto;
    margin-left: auto;
    font-weight: 400;
    font-size: 3.2vw;
  }
  #conts .simulationSec #table1 th.lineheight,
  #conts .simulationSec .resultBox .paymentTable th.lineheight {
    line-height: 1.3;
  }
}
#conts .simulationSec #table1 select,
#conts .simulationSec .resultBox .paymentTable select {
  background-color: #fff;
}

#conts .simulationSec .tableWrap .courseList {
  padding: 0;
}

#conts .simulationSec .tableWrap {
  margin-top: 0;
  padding: 0;
}

#conts .notes.notes_table_bottom {
  margin-top: min(1.3333333333vw, 10px);
  line-height: 1.5;
}

.container + .paymentTable {
  margin-top: min(3.4666666667vw, 26px);
}

#conts .simulationSec .tableWrap .paymentTable th.head {
  background-color: #000;
  color: #fff;
}

#conts .simulationSec .tableWrap .paymentTable th {
  font-weight: 600;
  color: #000;
}

#conts .simulationSec .tableWrap .courseList .paymentTable td.coursePrice {
  text-align: center;
}

#conts .simulationSec .tableWrap .paymentTable .resultPrice, #conts .simulationSec .tableWrap .paymentTable .yen {
  color: #C1272D;
}

@media screen and (max-width: 767px) {
  #conts .simulationSec .tableWrap .courseList .paymentTable th.checkHead {
    padding: 0;
  }
  #conts .simulationSec .tableWrap .paymentTable td {
    font-size: 2.8vw;
  }
  #conts .simulationSec .tableWrap .courseList .paymentTable td.coursePrice {
    font-size: 2.8vw;
    white-space: nowrap;
    padding: 0 0.5333vw;
  }
  .notes_table_bottom {
    padding-bottom: 3.8666vw;
  }
  .resultBox {
    margin-top: 10.5333vw;
  }
}
#conts .simulationSec #table2 tr:not(:has(.plan)),
#conts .simulationSec #table3 tr:not(:has(.plan)),
#conts .simulationSec #table4 tr:not(:has(.plan)) {
  display: none;
}
#conts .simulationSec .courseList tr:not(:has(.plan)) {
  display: none;
}/*# sourceMappingURL=simulation.css.map */