/*----- 共通 -----*/
.m-img-title {
  width: 90.625vw;
  margin: auto;
}
.m-btn {
  width: 81.25vw;
  margin: auto;
}
/* [番号の画像]reason , flow */
.img-number01 {
  width: 4.53125vw;
}
.img-number02 {
  width: 5.625vw;
}
.img-number03 {
  width: 5.46875vw;
}

/*----- fv -----*/
#fv {
  background: url(../img/fv_background.png)no-repeat center top / 100% auto;
  padding-bottom: 6.25vw;
}
#fv .bl_top_box {
  padding: 0.78vw 3.56vw 0.78vw 0;
  background-color: #fff;
  margin-bottom: 2.656vw;
}
#fv .bl_top_box h1 {
  width: 50vw;
}

.bl_client_btn{
  text-align: right;
  padding-bottom: 0.469vw;
  text-decoration: underline;
}
.bl_client_btn a{
  font-size: 2.867vw;
  color: #333;
}
#fv .bl_topBox_contact li + li {
  padding-top: 1.3vw;
}
#fv h2 {
  width: 96.875vw;
  margin: 0 auto 7.5vw;
}
#fv .img-medal {
  width: 44.0625vw;
  margin: 0 0 4.688vw 9.375vw;
}
#fv .bl_fv_contactArea {
  background-color: rgb(255, 255, 255, 90%);
  width: 90.625vw;
  margin: auto;
  padding: 6.25vw 4.68vw;
}
.el_contactArea_btn {
  box-shadow: 0 0 3.125vw 0 rgba(0, 0, 0, 0.2);
}

/*----- example -----*/
#example {
  padding-top: 6.25vw;
  margin-bottom: 21.875vw;
}
#example .el_exmple_title {
  width: 90.62vw;
  margin: 0 auto;
}
#example .bl_example_cra,
#example .bl_example_pv {
  padding: 6.25vw 0 12.5vw;
  margin-bottom: 6.25vw;
  background: linear-gradient(transparent 20%, rgb(29, 213, 230) 20%, rgb(61, 169, 252) 100%);
  background: -moz-linear-gradient(transparent 20%, rgb(29, 213, 230) 20%, rgb(61, 169, 252) 100%);
  background: -webkit-linear-gradient(transparent 20%, rgb(29, 213, 230) 20%, rgb(61, 169, 252) 100%);
  background: -ms-linear-gradient(transparent 20%, rgb(29, 213, 230) 20%, rgb(61, 169, 252) 100%);
}
#example .bl_example_cra .slider-box {
  min-height: 139.06vw;
  background-color: #fff;
  padding: 4.68vw 4.68vw 0;
  margin: 4.68vw;
  box-shadow: 0 0 3.12vw 0 rgba(0, 0, 0, 0.2);
  position: relative;
}
#example .bl_example_pv .slider-box {
  min-height: 139.75vw;
  background-color: #fff;
  padding: 4.68vw 4.68vw 0;
  margin: 4.68vw;
  box-shadow: 0 0 3.12vw 0 rgba(0, 0, 0, 0.2);
  position: relative;
}
#example .slider-box h3 {
  font-size: 6.25vw;
  text-align: center;
  color: #fff;
  background-color: #094067;
  margin: 0 4.68vw 3.9vw;
  line-height: 9.375vw;
  letter-spacing: 0.08em;
}
.bl_example_salary{
  text-align: center;
  font-size: 5.688vw;
  font-weight: bold;
  margin-bottom: 1.563vw;
}
.bl_example_salary span{
  font-size: 7.531vw;
  color: #d41111;
  font-weight: bold;
}
#example .slider-box .bl_exampleBox_point {
  position: relative;
}
#example .slider-box .bl_exampleBox_point li {
  padding: 0 1.56vw;
  margin: 0 0.78vw 0.78vw 0;
  background-color: #c0c0c0;
  border-radius: 0.78vw;
}
#example .slider-box .l-box {
  margin: 0 4.68vw;
  font-size: 3.75vw;
}
#example .slider-box .l-box_height{
  margin: 0 4.68vw 20vw;
}
#example .l-box th {
  font-weight: bold;
  color: #094067;
  width: 18.75vw;
  line-height: 1.42;
  letter-spacing: 0.08em;
}
#example table .work-location {
  letter-spacing: 0.6em;
}
#example .l-box td {
  line-height: 1.42;
  margin-bottom: 2.344vw;
  display: block;
}
#example .slider-box.bl_example__lastbox {
  min-height: 60.9375vw;
  top: 40vw;
}
#example .bl_example_pv .slider-box.bl_example__lastbox {
  top: 20vw;
}
#example .l-box .el_register_txt {
  width: 70.625vw;
  position: absolute;
  left: 50%;
  top: 25.68vw;
  transform: translateX(-50%);
}
#example .l-box .el_register_btn {
  width: 81.25vw;
  position: absolute;
  left: 50%;
  bottom: 4.68vw;
  transform: translateX(-50%);
}
#example .bottom-box {
  position: relative;
}
#example .bottom-img {
  width: 95.46875vw;
  margin: 6.75vw 0 -12.5vw auto;
}
#example .bottom-box .m-btn {
  position: absolute;
  bottom: -6.25vw;
  left: 0;
  right: 0;
}
/* #example slider */
#example .slick-arrow {
  position: absolute;
  top: 50%;
  z-index: 98;
  width: 9.375vw;
  padding: 2.031vw;
  background-color: #2c2c2c;
  transform: translateY(-50%);
}
#example .slick-arrow.prev-arrow {
  left: 0;
  padding-right: 5.156vw;
}
#example .slick-arrow.next-arrow {
  right: 0;
  padding-left: 5.156vw;
}
#example .slick-dots {
  width: 17.188vw;
  margin: 0 auto;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}
#example .slick-dots li {
  width: 1.563vw;
  height: 1.563vw;
  background-color: #fff;
}
#example .slick-dots li button {
  display: none;
}
#example .slick-dots li.slick-active {
  background-color: #2d79af;
}

/*----- reason -----*/
#reason {
  margin-bottom: 15.625vw;
}
#reason h2 {
  margin-bottom: 7.5vw;
}
#reason li {
  width: 90.625vw;
  background-color: #f8f8f8;
  position: relative;
  padding-top: 7.5vw;
  margin-bottom: 7.5vw;
}
#reason li:nth-of-type(2n) {
  margin-left: auto;
}
#reason li:last-of-type {
  margin-bottom: 0;
}
#reason .img-number {
  position: absolute;
  top: 0;
  margin: -2.969vw 0 0 4.688vw;
}
#reason li:nth-of-type(2n) .img-number {
  right: 0;
  margin-right: 4.688vw;
}
#reason h3 {
  font-size: 5vw;
  font-weight: bold;
  line-height: 1.0;
  margin-bottom: 5vw;
}
#reason li:nth-of-type(2n-1) h3 {
  padding-left: 4.688vw;
}
#reason li:nth-of-type(2n) h3 {
  padding-right: 4.688vw;
  text-align: right;
}
#reason figure {
  width: 90.625vw;
}
#reason li:nth-of-type(2n-1) figure {
  margin-left: 4.688vw;
}
#reason li:nth-of-type(2n) figure {
  margin-left: -4.688vw;
}
#reason .text-box {
  padding: 0 4.688vw 3.906vw;
}
#reason .text-box .m-text-blue {
  color: #3da9fc;
  font-weight: bold;
}
#reason .reason-01 .text-box {
  margin-top: 3.281vw;
}
#reason .reason-02 .text-box {
  margin-top: 4.531vw;
}
#reason .reason-03 .text-box {
  margin-top: 3vw;
}
#reason .text-box > p, #reason .text-box dd {
  font-size: 4.063vw;
  line-height: 1.54;
}
#reason .reason-01 .text-box .reason-text {
  margin-bottom: 5.938vw;
}
#reason .reason-02 dl:not(:last-of-type) {
  margin-bottom: 3.906vw;
}
#reason .reason-02 dt {
  font-size: 4.375vw;
  color: #3da9fc;
  text-align: center;
  padding: 0.313vw 0;
  margin-bottom: 2.031vw;
  border: 0.313vw solid #3da9fc;
}
#reason .reason-03 dl {
  position: relative;
  z-index: 1;
  margin-bottom: 6.25vw;
}
#reason .reason-03 dl:last-of-type {
  margin-bottom: 0;
}
#reason .reason-03 dt {
  font-size: 4.063vw;
  line-height: 1.54;
  color: #3da9fc;
  background-color: #f8f8f8;
  display: inline-block;
  padding-right: 3.125vw;
}
#reason .reason-03 dl::after {
  content: "";
  position: absolute;
  z-index: -1;
  top: 3.125vw;
  right: 0;
  width: 100%;
  border-top: 0.313vw solid #3da9fc;
}

/*----- flow -----*/
#flow {
  margin-bottom: 22.188vw;
}
#flow h2 {
  margin-bottom: 4.688vw;
}
#flow li {
  background-color: #f8f8f8;
  position: relative;
  margin: 0 4.688vw 7.031vw;
}
#flow li:last-of-type {
  margin-bottom: 0;
}
#flow li:not(:last-of-type):after {
  content: "";
  background-image: url(../img/flow_arrow.png);
  background-size: 100%;
  width: 3.125vw;
  height: 2.5vw;
  margin: auto;
  position: absolute;
  bottom: -4.688vw;
  left: 0;
  right: 0;
}
#flow .top-box {
  padding: 3.125vw 0 0 4.688vw;
}
#flow h3 {
  font-size: 5vw;
  font-weight: bold;
  color: #3da9fc;
  line-height: 1.0;
  padding-left: 3.125vw;
  letter-spacing: 0.08em;
  line-height: 1.25;
}
#flow .flow-text {
  font-size: 4.063vw;
  line-height: 1.54;
  padding: 1.719vw 4.688vw 3.906vw;
}
#flow .flow-03 {
  padding-bottom: 10vw;
}
#flow .flow-03 .m-btn {
  position: absolute;
  right: 0;
  left: 0;
  margin: 0 auto;
  bottom: -6.25vw;
}

/*----- faq -----*/
#faq {
  margin-bottom: 15.625vw;
}
#faq h2 {
  margin-bottom: 4.688vw;
}
#faq dl {
  background-color: #f8f8f8;
  margin: 0 4.688vw 4.688vw;
  padding: 0 4.688vw 4.375vw;
}
#faq dt, #faq dd {
  font-size: 4.063vw;
  line-height: 1.54;
  background-repeat: no-repeat;
  background-size: 3.28125vw auto;
}
#faq dt {
  background-image: url(../img/faq_q_icon.png);
  background-position-y: 4.688vw;
  padding: 4.688vw 0 3.125vw 6.563vw;
}
#faq dd {
  background-image: url(../img/faq_a_icon.png);
  padding-left: 6.563vw;
}

/*----- fixed-box -----*/
.fixed-box {
  display: none;
  position: fixed;
  bottom: 6.25vw;
  right: 0;
  left: 0;
  z-index: 9999;
}

/*----- info -----*/
.info .m-btn {
  margin-top: -6.25vw;
}

/*----- footer -----*/
footer {
  margin-top: 41.406vw;
  text-align: center;
  background-color: #2c2c2c;
  line-height: 6.25vw;
}
footer small {
  font-size: 3.438vw;
  color: #fff;
}
