/* PUBLIC */
h2 {
  font-weight: 800;
  font-size: 22rem;
  line-height: 24rem;
  text-align: center;
  color: #003066;
  margin-bottom: 50rem;
}

.ptpb {
  padding: 130rem 0;
}

/* button */
.bu_more {
  display: block;
  border: 2px solid #003066;
  border-radius: 100px;
  width: 162rem;
  height: 56rem;
  line-height: 56rem;
  font-weight: 700;
  font-size: 18rem;
  background-color: #fff;
  color: #003066;
  transition: 0.3s;
  text-align: center;
}
.bu_more:hover {
  background-color: #003066;
  color: #fff;
}

#main .visual_wrap {
  height: 100vh;
  background: #D2DFF2 linear-gradient(270deg, #9FB9E1 11.53%, rgba(191, 224, 215, 0) 94.86%);
  overflow: hidden;
}
#main .visual_wrap .txt_wrap {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
  z-index: 2;
}
#main .visual_wrap .txt_wrap .title {
  font-weight: 800;
  font-size: 56rem;
  line-height: 74rem;
  color: #003066;
  display: block;
}
#main .visual_wrap .txt_wrap .text {
  display: block;
  font-weight: 600;
  font-size: 22rem;
  line-height: 34rem;
  letter-spacing: -0.02em;
  color: #0B396C;
  margin: 32rem 0 50rem;
}
#main .visual_wrap .wrap_bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  background: url(../images/main/main_visual_bg.png) no-repeat right -100rem center/70%;
}
#main .background_wrap {
  background: url(../images/main/main_wrap2_bg1.png) no-repeat center/contain #E6F2FF;
  padding: 170rem 0;
}
#main .background_wrap .txt_wrap {
  color: #003066;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
#main .background_wrap .txt_wrap .tit {
  font-size: 56rem;
  font-weight: 800;
  line-height: 74rem;
  margin-bottom: 56rem;
}
#main .background_wrap .txt_wrap .txt {
  font-weight: 600;
  font-size: 24rem;
  line-height: 40rem;
  letter-spacing: -1.2rem;
  color: #0B396C;
  margin-bottom: 64rem;
}
#main .background_wrap .txt_wrap .bu_more .icon {
  margin-left: 8rem;
  width: 12rem;
  height: 12rem;
  background: url(../images/main/main_wrap2_bu_icon.svg) no-repeat center center;
  transition: 0.3s;
}
#main .background_wrap .txt_wrap .bu_more:hover .icon {
  background-image: url(../images/main/main_wrap2_bu_icon_.svg);
}
#main .concept_wrap {
  background: url(../images/main/main_wrap3_bg12.png) no-repeat center/cover #003066;
}
#main .concept_wrap .box {
  width: 100%;
  background: #FFF;
  border-radius: 32rem;
  padding: 80rem 0 106rem;
  margin: 0 auto;
}
#main .concept_wrap .box .title {
  font-weight: 700;
  font-size: 32rem;
  line-height: 28rem;
  text-align: center;
  color: #003066;
  margin-bottom: 40rem;
}
#main .concept_wrap .box .title span {
  font-size: 24rem;
  line-height: 35rem;
  color: #000;
  display: block;
  font-weight: 400;
}
#main .concept_wrap .box .cont {
  display: flex;
  align-items: center;
  justify-content: center;
}
#main .concept_wrap .box .cont .obj {
  text-align: center;
}
#main .concept_wrap .box .cont .obj .tit {
  font-size: 24rem;
  font-weight: 700;
  line-height: 28rem;
}
#main .concept_wrap .box .cont .obj .tit span {
  font-size: 20rem;
  font-weight: 400;
}
#main .concept_wrap .box .cont .obj .obj_cont {
  width: 302rem;
  height: 302rem;
  display: flex;
  flex-direction: column;
  align-items: center;
}
#main .concept_wrap .box .cont .obj .obj_cont em {
  margin: 56rem 0 18rem;
  width: 123rem;
  height: 32rem;
  border-radius: 18rem;
  font-weight: 700;
  font-size: 20rem;
  line-height: 32rem;
  text-align: center;
  color: #FFF;
}
#main .concept_wrap .box .cont .obj .obj_cont ul li {
  font-size: 20rem;
  font-weight: 500;
  line-height: 28rem;
}
#main .concept_wrap .box .cont .obj.obj1 .tit {
  color: #1B63B5;
}
#main .concept_wrap .box .cont .obj.obj1 .obj_cont {
  background: url(../images/main/main_wrap3_obj1.png) no-repeat center/contain;
}
#main .concept_wrap .box .cont .obj.obj1 .obj_cont em {
  background: #1B63B5;
}
#main .concept_wrap .box .cont .obj.obj3 .tit {
  color: #6F96D1;
}
#main .concept_wrap .box .cont .obj.obj3 .obj_cont {
  background: url(../images/main/main_wrap3_obj3.png) no-repeat center/contain;
}
#main .concept_wrap .box .cont .obj.obj3 .obj_cont em {
  background: #6F96D1;
}
#main .concept_wrap .box .cont .obj.obj3 .obj_cont ul li {
  margin-bottom: 6rem;
}
#main .concept_wrap .box .cont .obj2 {
  background: url(../images/main/main_wrap3_obj2.svg) no-repeat center/contain;
  width: 356rem;
  height: 302rem;
  margin: 28rem 20rem 0;
  text-align: center;
}
#main .concept_wrap .box .cont .obj2 ul {
  text-align: center;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  align-content: center;
  height: 100%;
}
#main .concept_wrap .box .cont .obj2 ul li {
  font-weight: 700;
  font-size: 22rem;
  line-height: 36rem;
  width: 100%;
  color: #003066;
}
#main .keyFeature_wrap {
  background: #E6F2FF;
}
#main .keyFeature_wrap > .list {
  display: flex;
  justify-content: space-between;
}
#main .keyFeature_wrap > .list > .box {
  width: calc((100% - 24rem) / 2);
  background: #fff;
  border-radius: 16px;
  padding: 60rem 50rem;
}
#main .keyFeature_wrap > .list > .box em {
  width: 100%;
  font-size: 28rem;
  text-align: center;
  padding-bottom: 280rem;
  font-weight: 800;
  color: #000;
}
#main .keyFeature_wrap > .list > .box:nth-child(1) em {
  background: url(../images/main/main_wrap4_icon1.svg) no-repeat center 73rem/230rem;
}
#main .keyFeature_wrap > .list > .box:nth-child(2) em {
  background: url(../images/main/main_wrap4_icon2.svg) no-repeat center 73rem/230rem;
}
#main .keyFeature_wrap > .list > .box li {
  font-size: 22rem;
  line-height: 29rem;
  letter-spacing: -0.02em;
  background: url(../images/main/main_wrap4_icon_list.svg) no-repeat 0 2px/24rem;
  padding-left: 40rem;
}
#main .keyFeature_wrap > .list > .box li:not(:last-child) {
  margin-bottom: 16px;
}
#main .lineup_wrap .title, #main .apply_wrap .title {
  text-align: center;
  font-weight: 700;
  font-size: 56rem;
  line-height: 1;
  color: #003066;
  margin-bottom: 50rem;
}
#main .lineup_wrap .title span, #main .apply_wrap .title span {
  color: #6F96D1;
  margin-right: 10rem;
  font-weight: 700;
}
#main .lineup_wrap {
  background: #f6faff;
}
#main .lineup_wrap .table .table_wrap > div {
  align-items: center;
}
#main .lineup_wrap .table .table_wrap > div span:nth-child(1) {
  width: 17%;
}
#main .lineup_wrap .table .table_wrap > div span:nth-child(2) {
  width: 33%;
}
#main .lineup_wrap .table .table_wrap > div span:nth-child(3) {
  width: 35%;
}
#main .lineup_wrap .table .table_wrap > div span:nth-child(4) {
  width: 15%;
}
#main .lineup_wrap .table .tr span .bu_view {
  width: 106rem;
  height: 32rem;
  background: #003066;
  border-radius: 16rem;
  font-weight: 400;
  text-align: center;
  font-size: 16rem;
  line-height: 32rem;
  color: #FFF;
  margin-left: 20rem;
  transition: 0.3s;
}
#main .lineup_wrap .table .tr span .bu_view:hover {
  background: #7488ad;
}
#main .lineup_wrap .table .tr span .bu_view.none {
  background: #A6A6A6;
  cursor: default;
}
#main .apply_wrap {
  background: #E6F2FF;
}
#main .apply_wrap .box {
  background: #FFF;
  border: 2px solid #1B63B5;
  border-left: 0;
  border-right: 0;
  padding-left: 207rem;
  position: relative;
}
#main .apply_wrap .box em {
  position: absolute;
  top: 0;
  left: 0;
  width: 207rem;
  font-weight: 700;
  line-height: 24rem;
  color: #003066;
  padding: 17rem 0 0 17rem;
  font-size: 17rem;
}
#main .apply_wrap .box em span {
  font-weight: 700;
}
#main .apply_wrap .box em span.mt {
  margin-top: 54rem;
}
#main .apply_wrap .box:not(:last-child) {
  margin-bottom: 20rem;
}
#main .apply_wrap .box ul {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
#main .apply_wrap .box ul li {
  width: 50%;
  min-height: 52rem;
  padding: 15rem 20rem 15rem 26rem;
  letter-spacing: -1rem;
  float: left;
  font-weight: 400;
  font-size: 17rem;
  line-height: 24rem;
}
#main .apply_wrap .box ul li:not(:nth-child(-n+2)) {
  border-top: 1px solid #ABBED1;
}

@media screen and (max-width: 1280px) {
  .bu_more {
    margin: 0 auto;
  }
  h2 {
    font-size: 20rem;
    margin-bottom: 40rem;
  }
  .ptpb {
    padding: 56rem 0;
  }
  #main .visual_wrap {
    height: auto;
    padding: 120rem 0 56rem;
  }
  #main .visual_wrap .txt_wrap {
    text-align: center;
  }
  #main .visual_wrap .txt_wrap .title {
    font-size: 32rem;
    line-height: 44rem;
  }
  #main .visual_wrap .txt_wrap .text {
    font-size: 22rem;
    margin: 24rem 0 300rem;
  }
  #main .visual_wrap .wrap_bg {
    background-position: center 336rem;
    background-size: 662rem;
  }
  #main .background_wrap {
    padding: 56rem 0;
  }
  #main .background_wrap .txt_wrap .tit {
    font-size: 32rem;
    line-height: 44rem;
    margin-bottom: 32rem;
  }
  #main .background_wrap .txt_wrap .txt {
    font-size: 20rem;
    line-height: 34rem;
    margin-bottom: 40rem;
  }
  #main .concept_wrap .box {
    padding: 40rem 0;
  }
  #main .concept_wrap .box .title {
    font-size: 24rem;
    line-height: 21rem;
    margin-bottom: 34rem;
  }
  #main .concept_wrap .box .title span {
    font-size: 18rem;
    line-height: 21rem;
  }
  #main .concept_wrap .box .cont {
    flex-direction: column;
  }
  #main .concept_wrap .box .cont .obj .tit {
    font-size: 18rem;
    line-height: 21rem;
  }
  #main .concept_wrap .box .cont .obj .tit span {
    font-size: 15rem;
  }
  #main .concept_wrap .box .cont .obj .obj_cont {
    width: 226rem;
    height: 226rem;
  }
  #main .concept_wrap .box .cont .obj .obj_cont em {
    width: 93rem;
    height: 24rem;
    line-height: 24rem;
    margin: 40rem 0 14rem;
    font-size: 15rem;
  }
  #main .concept_wrap .box .cont .obj .obj_cont ul li {
    font-size: 16rem;
    line-height: 21rem;
  }
  #main .concept_wrap .box .cont .obj2 {
    width: 268rem;
    height: 265rem;
    background-image: url(../images/main/main_wrap3_obj2.png);
    margin: 0;
  }
  #main .concept_wrap .box .cont .obj2 ul li {
    font-size: 16rem;
    line-height: 21rem;
  }
  #main .keyFeature_wrap > .list {
    flex-wrap: wrap;
  }
  #main .keyFeature_wrap > .list > .box {
    width: 100%;
    padding: 40rem 20rem;
  }
  #main .keyFeature_wrap > .list > .box:not(:last-child) {
    margin-bottom: 16rem;
  }
  #main .keyFeature_wrap > .list > .box em {
    font-size: 26rem;
    padding-bottom: 205rem;
    background-position: center 53rem !important;
    background-size: 180rem !important;
  }
  #main .keyFeature_wrap > .list > .box li {
    font-size: 18rem;
    line-height: 24rem;
    background-size: 20rem;
    padding-left: 36rem;
  }
  #main .keyFeature_wrap > .list > .box li:not(:last-child) {
    margin-bottom: 12rem;
  }
  #main .lineup_wrap .title, #main .apply_wrap .title {
    margin-bottom: 32rem;
    font-size: 32rem;
  }
  #main .lineup_wrap .table .table_wrap > div span {
    width: 100% !important;
    padding-left: 165rem;
  }
  #main .lineup_wrap .table .table_wrap > div span:nth-child(1) {
    width: 165rem !important;
  }
  #main .lineup_wrap .table .th span:nth-child(2) {
    display: none;
  }
  #main .lineup_wrap .table .th span:nth-child(3) {
    display: none;
  }
  #main .lineup_wrap .table .th span:nth-child(4) {
    padding-left: 0rem;
    width: calc(100% - 165rem) !important;
  }
  #main .lineup_wrap .table .tr {
    flex-direction: column;
  }
  #main .lineup_wrap .table .tr span:nth-child(1) {
    position: absolute;
    left: 0;
  }
  #main .lineup_wrap .table .tr span:not(:last-child) {
    padding-bottom: 0 !important;
  }
  #main .lineup_wrap .table .tr span .bu_view {
    margin-left: 0;
  }
  #main .apply_wrap .box {
    padding-left: 0;
  }
  #main .apply_wrap .box em {
    position: static;
    padding: 30rem 17rem;
  }
  #main .apply_wrap .box em span.mt {
    margin-top: 10rem;
  }
  #main .apply_wrap .box ul li {
    width: 100%;
    border-top: 1px solid #ABBED1;
  }
}/*# sourceMappingURL=main.css.map */