/* -------------------- simulation -------------------- */
.simulation-title {
  padding: 40px 20px 0;
  margin-bottom: 40px;
}
.simulation-title__text {
  font-weight: bold;
  display: block;
  text-align: center;
  color: #2260c6;
  padding: 20px 0;
  max-width: 90%;
  margin: 0 auto;
  border-top: 2px solid #2260c6;
  border-right: 1px solid #2260c6;
  border-left: 1px solid #2260c6;
  border-bottom: 4px solid #2260c6;
  border-radius: 100px;
}


/* -------------------- repayment -------------------- */
.repayment__title {
  color: #fff;
  background: #004692;
  padding: 30px 25px;
  margin-bottom: 0;
  border-radius: 20px 20px 0 0;
  font-size: 32px;
  text-align: center;
  background: #1d50a3;
}
.repayment__inner {
  background: #f2f5f9;
  padding: 20px;
  border-radius: 0 0 20px 20px;
}
.repayment__text {
  text-align: left;
}


/* -------------------- simu-wrap -------------------- */
.simu-wrap {
  margin: 0 auto 50px;
}


/* -------------------- conditionsTable -------------------- */
.conditionsTable {
  background: #fff;
  border-radius: 10px;
  margin: 0 auto 10px;
  position: relative;
  box-shadow: 0 3px 6px rgba(0,0,0,0.16);
  width: 100%;
  box-sizing: border-box;
  border-collapse: collapse;
  table-layout: fixed;
}
.conditionsTable th {
  width: 320px;
  text-align: left;
  padding: 20px;
  font-weight: bold;
  color: #444;
  box-sizing: border-box;
}
.conditionsTable th em {
  font-size: 20px;
  font-style: normal;
}
.conditionsTable th em b {
  margin-left: 14px;
  padding: 3px 10px;
  color: #fff;
  font-size: 12px;
  font-weight: bold;
  line-height: 19px;
  text-align: left;
  background-color: #e83636;
  position: relative;
  top: -2px;
}
.conditionsTable th p {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 23px 0 0;
}
.conditionsTable td {
  width: 70%;
  border-left: 1px solid #e9e9e9;
  padding: 15px 30px;
}
.conditionsTable .FormNum {
  border: 2px solid #666;
  border-radius:  10px;
  color: #333;
  box-sizing: border-box;
  width: 200px;
  display: block;
  height: 53px;
  padding: 0 23px 0;
  font-size: 32px;
  font-weight: normal;
  text-align: left;
  outline: none;
  margin-right: 8px;
}
.conditionsTable select.FormNum {
  width: auto;
  padding: 0 10px;
}
.conditionsTable #F_Period_Month {
  margin-left: 15px;
}


/* -------------------- ui-slider -------------------- */
.ui-slider {
  background: #316caa;
  height: 3px;
  position: relative;
  width: 100%;
  margin: 25px 0 10px;
  border: none;
  color: #222;
}
.ul-slider .ui-slider-handle {
  box-sizing: border-box;
  position: absolute;
  z-index: 100;
  width: 31px;
  height: 31px;
  top: -14px;
  border: none;
  border-radius:  50%;
  background: linear-gradient(134deg, #5a8ec9, #1d50a3, #5a8ec9);
  outline: none;
  box-shadow: 0 3px 6px rgba(37,80,178,0.16);
  margin-left: -0.6em;
  cursor: pointer;
}
.ul-slider .ui-slider-handle .handle-label_wrap {
  position: absolute;
  top: -75px;
  left: 50%;;
}
.ul-slider .ui-slider-handle .handle-label_wrap .handle-label {
  background: #004692;
  border-radius: 10px;
  position: relative;
  min-width: 164px;
  font-size: 20px;
  font-weight: bold;
  color: #fff;
  padding: 10px 15px;
  text-align: center;
  white-space: nowrap;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  -webkit-box-shadow: 4px 4px 4px rgba(0, 0, 0, 0.2);
  box-shadow: 4px 4px 4px rgba(0, 0, 0, 0.2);
  box-sizing: border-box;
}
.ul-slider .ui-slider-handle .handle-label_wrap .handle-label:after {
  border-color: #004692 transparent transparent transparent;
  content: "";
  display: block;
  position: absolute;
  left: 50%;
  bottom: -15px;
  margin-left: -10px;
  width: 0;
  height: 0;
  border-width: 17.3px 10px 0 10px;
  border-style: solid;
}

.slider_caption {
  list-style: none;
  padding-left: 0;
  margin-top: 20px;
  font-weight: bold;
  font-size: 20px;
  color: #004692;
}
.slider_caption li.min {
  float: left;
}
.slider_caption li small {
  font-weight: bold;
  font-size: 16px;
}
.slider_caption li.max {
  float: right;
}




/* -------------------- result -------------------- */
.result-wrap .e_hd_h2_default {
  margin-top: 50px;
  background: #4e932d;
  color: #fff;
  padding: 25px 15px;
  margin-bottom: 0;
  border-radius: 20px 20px 0 0;
  text-align: center;
}
.result-wrap .e_tbl_default {
  margin: 0 auto 30px;
  background: #fff;
  border-radius: 0 0 20px 20px;
  width: 100%;
  box-sizing: border-box;
}
.result-wrap .e_tbl_default tr {
  border-bottom: 2px solid #999;
  display: block;
  width: 90%;
  margin: auto;
}
.result-wrap .e_tbl_default tr:last-child {
  border-bottom: none;
}
.result-wrap .e_tbl_default th {
  color: #444;
  background: #fff;
  font-size: 20px;
  padding: 20px 10px;
  border: none;
  width: 320px;
  text-align: left;
  font-weight: bold;
  box-sizing:  border-box;
}
.result-wrap .e_tbl_default td {
  color: #4e932d;
  text-align: right;
  font-size: 24px;
  font-weight: bold;
  width: 65%;
  background: #fff;
  padding: 20px 10px;
  border: none;
}
.result-wrap .e_tbl_default td .resultText {
  font-size: 35px;
  font-weight: bold;
}


/* -------------------- btn -------------------- */
.btn-wrap {
  text-align: center;
}
.btn-wrap button {
  display: inline-block;
  border: none;
  width: 300px;
  padding: 15px 0 15px;
  color: #fff;
  font-size: 20px;
  font-weight: bold;
  line-height: 29px;
  text-align: center;
  outline: none;
  margin: 0 10px;
  cursor: pointer;
  border-radius: 10px;
}
.btn-wrap .startbtn {
  background: #1d50a3;
}
.btn-wrap .resetbtn {
  background: #4e932d;
}


/* -------------------- sim_caption -------------------- */
.sim_caption {
  border-radius: 20px;
  background: #fff;
  padding: 30px;
  color: #cc0000;
  border: none;
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 30px;
  text-align: center;
}




@media only screen and (max-width: 1023px) {
  .simulation-title {
    font-size: 18px;
    padding: 10px;
    box-shadow: none;
    margin-top: 7%;
    margin-bottom: 7%;
  }
  .slider_caption {
    margin-bottom: 80px;
  }

  .repayment__title {
    font-size: 20px;
  }

  .conditionsTable th {
    width: 100%;
    display: block;
    text-align: left;
    box-sizing: border-box;
    border-bottom: 0;
  }
  .conditionsTable td {
    border-left: none;
    width: 100%;
    display: block;
    box-sizing: border-box;
    padding: 15px 20px;
  }
  
  .ul-slider .ui-slider-handle .handle-label_wrap {
    display: none;
  }
  .slider_caption {
    margin-bottom: 80px;
  }

  .result-wrap .e_tbl_default tr {
    padding: 20px 0;
  }
  .result-wrap .e_tbl_default th {
    padding: 0;
    width: 100%;
    display: block;
  }
  .result-wrap .e_tbl_default td {
    padding: 0;
    width: 100%;
    display: block;
    text-align: left;
  }

  .sim_caption {
    text-align: left;
  }
}
@media only screen and (max-width: 600px) {


  .repayment__title {
    padding: 20px 10px;
  }
  .simu-wrap {
    margin: 0 auto 30px;
  }
  #simulation .FormNum,
  #simulation2 .FormNum {
    width: 160px;
    height: 45px;
    font-size: 24px;
  }
  .hensai_simu_inner {
    padding: 10px;
  }
  .slider_caption {
    font-size: 16px;
    list-style: none;
    padding-left: 0;
  }

  .result-wrap .e_hd_h2_default {
    padding: 15px 10px;
    font-size: 18px;
  }
  .result-wrap .e_tbl_default th {
    font-size: 18px;
  }
  .result-wrap .e_tbl_default td .resultText {
    font-size: 30px;
  }

  .btn-wrap .resetbtn {
    width: 80%;
    padding: 10px 0;
  }
  .btn-wrap .startbtn {
    width: 80%;
    margin-left: auto;
    margin-top: 20px;
    padding: 10px 0;
  }

  .sim_caption {
    padding: 15px;
    font-size: 14px;
  }
  
}