@charset "UTF-8";



/*==================================================================

  メインビジュアル

==================================================================*/
.top_mainvisual{
  display:block;
  position:relative;
  height: 910px;
  background: url("../images/mv_img.jpg") top center no-repeat;
  background-size: cover;
}
.mainvisual_wrap{
  height: 910px;
}
.top_mainvisual .inner{
  height: inherit;
  padding: 0 3.2%; 
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  max-width: 100%;
}

/*MV動画*/
.mainvisual_movie {
	position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    margin: auto;
    overflow: hidden;
}
.mainvisual_movie video {
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
}

/* キャッチフレーズ */
.mv_catch_list {
  position: absolute;
  left: 0;
  right: 0;
  display: flex;
  top: 700px;
  max-width: 94%;
  margin: auto;
}
.mv_catch_item {
  margin-right: 24px;
}
/* メインスライド */
#slick_fade{
  width: 100%;
  height: 600px;
}
#slick_fade .slide_item img{
  width: 100%;
  height: 600px;
  object-fit: cover;
  object-position: center;
}


/*==================================================================

  top_pc_nav

==================================================================*/
.top_pc_nav_list {
  display: flex;
  justify-content: space-between;
  width: 85%;
  padding: 40px 0;
  margin: auto;
}
.top_pc_nav_item {
  position: relative;
  margin: 0 0%;
}
.top_pc_nav_item:not(:first-child)::before {
  position: absolute;
  top: 26px;
  left: -3.8vw;
  background: url("../images/nav_border.png") center no-repeat;
  width: 16px;
  height: 14px;
  content: "";
}
@media screen and (max-width: 1500px) {
  .top_pc_nav_item:not(:first-child)::before {
    left: -3.5vw;
  }
  
}
@media screen and (max-width: 1350px) {
  .top_pc_nav_list {
    width: 90%;
  }
  .top_pc_nav_item:not(:first-child)::before {
    left: -5.0vw;
  }
  
}

.top_pc_nav_item a{  
  display:flex;
  justify-content: center;
  align-items: center;
  padding: 0 0;
  line-height: 1.7;
  font-size: 2.0rem;
  color: #333;
  letter-spacing: 0.12em;
  text-align: center;
  font-family: "zen-maru-gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  height: 100%;
  z-index: 1;

  
}
.top_pc_nav_item a::before {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    width: 80px;
    height: 80px;
    margin: auto;
    background-color: #e7f9f2;
    transition: 0.15s ease-out;
    transform: scale(0);
    content: "";
    z-index: -1;
    border-radius: 100%;
}
.top_pc_nav_item a:hover::before {

transform: scale(1);
}

/*==================================================================

  top_worries

==================================================================*/
.top_worries {
  background: url("../images/worries_bg.jpg") top center repeat;
  background-size: 100%;
  padding-top: 6.8%;
  position: relative;
  z-index: 2;
}
.top_worries_tit {
  text-align: center;
  margin-left: -4%;
  margin-bottom: 8.1%;
  position: relative;
  z-index: 2;
}
.top_worries_list_wrapper {
  position: relative;
  z-index: 1;
}
.top_worries_list {
  width: 90%;
  max-width: 1120px;
  margin: auto;
  padding-left: 40%;
  padding-left: 21%;
  position: relative;
  z-index: 2;
}
.top_worries_list_wrapper::before {
  position: absolute;
  top: -27%;
  left: 0;
  right: 0;
  margin: auto;
  background: url("../images/bg_white.png") top center no-repeat;
  width: 100%;
  max-width: 1396px;
  height: 1182px;
  content: "";
  z-index: -1;
}
.top_worries_item {
  font-size: 2.0rem;
  letter-spacing: 0.12em;
  font-family: "zen-maru-gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  position: relative;
  padding-left: 46px;
  margin-bottom: 30px;
  text-shadow: 0 0 14px #fff,
   0 0 13px #fff,
  0 0 13px #fff;;
}
.top_worries_item::before {
  position: absolute;
  top: 3px;
  left: -8px;
  background: url("../images/worries_check.png") center no-repeat;
  width: 36px;
  height: 36px;
  content: "";
}
.top_worries_list_img {
  position: absolute;
  top: -15%;
  width: 100%;
  z-index: 2;
}
.top_worries_list_img01 {
  position: absolute;
  left: 0;
  width: 54.6%;
  max-width: 740px;
  text-align: left;

}
.top_worries_list_img02 {
  position: absolute;
  top: -86px;
  right: 0;
  width: 32%;
  max-width: 502px;
  text-align: right;

}
.top_warries_list_ill {
  position: relative;
}
.top_warries_list_ill::before {
  position: absolute;
  top: -461px;
  left: 0;
  background: url("../images/worries_ill_left.png") top left no-repeat;
  width: 30%;
  max-width: 517px;
  height: 801px;
  content: "";
  background-size: 100%;
}
.top_warries_list_ill::after {
  position: absolute;
  top: -467px;
  right: 0;
  background: url("../images/worries_ill_right.png") top left no-repeat;
  width: 38%;
  max-width: 582px;
  height: 786px;
  content: "";
  background-size: 100%;
}
.top_worries_box {  
  background: url("../images/worries_bg_bottom.jpg") top left repeat;
  padding-bottom: 199px;
  position: relative;
}
.top_worries_box::before {
  position: absolute;
  bottom: -20px;
  left: 0;
  background: url("../images/worries_line.png") bottom left repeat-x;
  width: 100%;
  height: 43px;
  content: "";
}

.top_warries_text {
  font-size: 3.4rem;
  font-family: "zen-maru-gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  text-align: center;
  width: 90%;
  max-width: 1050px;
  margin: auto;
  position: relative;
  z-index: 2;
  margin-top: 17.9%;
  line-height: 1.6;
  letter-spacing: 0.12em;
  margin-bottom: 158px;
}
.top_warries_text::before {
  position: absolute;
  top: -234px;
  left: 0;
  right: 0;
  margin: auto;
  background: url("../images/worries_hukidashi.png") bottom center no-repeat;
  width: 100%;
  height: 470px;
  content: "";
  z-index: -1;
  background-size: 100%
}
.top_warries_text span {
  font-size: 5.0rem;
  color: #4fa685;
  background:linear-gradient(transparent 60%, #f5edfc 60%);
  padding: 0 0 0 15px;
}
.top_warries_text i {
  font-style: normal;
  font-size: 40px;
}
.top_worries_box_ill {
  position: absolute;
  bottom: 0;
  z-index: 1;
  width: 100%
}
.top_worries_box_ill::before {
  position: absolute;
  bottom: 0;
  left: 0;
  background: url("../images/worries_b_ill_left.png") bottom left no-repeat;
  width: 44%;
  max-width: 602px;
  height: 562px;
  content: "";
  background-size: 100%;
}

.top_worries_box_ill::after {
  position: absolute;
  bottom: 40px;
  right: 0;
  background: url("../images/worries_b_ill_right.png") bottom right no-repeat;
  width: 32%;
  max-width: 387px;
  height: 595px;
  content: "";
  background-size: 100%;
}
/*==================================================================

  cv_btn

==================================================================*/
.cv_btn {
  position: relative;
  z-index: 3;
}
.cv_btn a {
  width: 90%;
  max-width: 1120px;
}

.cv_btn a {
  display: block;
  width: 90%;
  max-width: 1120px;
  margin: auto;
  height: 215px;
  text-align: center;
  line-height: 200px;
  color: #fff;
  background: url("../images/cv_btn_ bg.jpg") center no-repeat;
  background-size: cover;
  font-size: 45px;
  letter-spacing: 0.12em;
  font-family: "zen-maru-gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  border-radius: 20px;
  position: relative;
  padding-left: 40px;
  transition: 0.15s ease-out;
  border: solid 6px #fff;
}
.cv_btn a::before {
  position: absolute;
    left: 188px;
    top: 56px;
  background: url("../images/cv_btn_icon.png") center no-repeat;
  width: 97px;
  height: 96px;
  content: "";
  background-size: 100%;
}
.cv_btn a::after {
  position: absolute;
right: 121px;
    top: 96px;
  background: url("../images/cv_btn_arrow.png") center no-repeat;
  width: 41px;
  height: 14px;
  content: "";
  background-size: 100%;
}
.cv_btn a:hover {
  opacity: 0.8;
}
.cv_caption {
  width: 90%;
  margin: auto;
  text-align: center;
  font-size: 1.8rem;
  letter-spacing: 0.12em;
  font-weight: 600;
  margin-top: 28px;
}


/*==================================================================

  .top_for_parent

==================================================================*/
.top_for_parent {
  padding-top: 9.7%;
  position: relative;
  z-index: 1;
}
.top_for_parent::before {
  position: absolute;
  top: 0;
  left: 0;
  background: url("../images/for_parent_bg_k_left.png") bottom left no-repeat;
  width: 45%;
  height: 320px;
  max-width: 851px;
  content: "";
  background-size: 100%;
}
.top_for_parent::after {
  position: absolute;
  top: 0;
  right: 0;
  background: url("../images/for_parent_bg_k_right.png") bottom right no-repeat;
  width: 45%;
  height: 570px;
  max-width: 536px;
  content: "";
  background-size: 100%;
  z-index: -1;
}
.top_for_parent_intro {
  text-align: center;
  position: relative;
  margin-bottom: 187px;
}
.top_for_parent_intro::before {
  position: absolute;
  top: -103px;
  left: 0;
  background: url("../images/for_parent_img_leftt.png") top left no-repeat;
  width: 23%;
  max-width: 367px;
  height: 446px;
  content: "";
  background-size: 100%;
}
.top_for_parent_intro::after {
  position: absolute;
  top: 50px;
  right: 0;
  background: url("../images/for_parent_img_right.png") top left no-repeat;
  width: 24%;
  max-width: 387px;
  height: 444px;
  content: "";
    background-size: 100%;
}
.top_for_parent_tit {
  display: inline-block;
  font-size: 4.5rem;
  letter-spacing: 0.12em;
  font-family: "zen-maru-gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  color: #555;
  line-height: 1.8;
  position: relative;
  z-index: 1;
  width: 90%;
  max-width: 978px;
  padding-top: 3%;
}
.top_for_parent_tit::before {
  position: absolute;
  left: 0;
  top: 0;
  background: url("../images/kakko.png") top center no-repeat;
  width: 70px;
  height: 261px;
  content: "";
}
.top_for_parent_tit::after {
  position: absolute;
  right: 0;
  top: 0;
  background: url("../images/kakko.png") top center no-repeat;
  width: 70px;
  height: 261px;
  content: "";
  transform: scale(-1,1)
}
.top_for_parent_box {
  position: relative;
  padding: 0 5%;
  padding-bottom: 219px;
  background-size: 100%;
}
.top_for_parent_box::before{
  position: absolute;
  background: url("../images/for_parent_bg_wave01.png") bottom  center no-repeat;
  background-size:cover;
  width: 100%;
  height: 100%;
  content: "";
  z-index: -2;
  bottom: -26%;
  left: 0;
}
.top_for_parent_box::after{
  position: absolute;
  bottom: -29px;
  right: 0;
  background: url("../images/for_parent_bg_rignt.png") top right no-repeat;
  width: 32%;
  max-width: 352px;
  height: 582px;
  content: "";
  z-index: -1;
}
.top_for_parent_box_inner {
  /*padding-left: 24.8%;*/
  width: 100%;
  max-width: 1200px;
  margin: auto;
  padding-top: 3.7%;
}
.top_for_parent_box_img {
  position: absolute;
  top: 0;
  left:3.7%;
  width: 45.3%;
  z-index: -1;
}
.top_for_parent_box_img::before {
  position: absolute;
left: 14%;
    bottom: -196px;
  background: url("../images/for_parent_img_k01.png") bottom center no-repeat;
  width: 70%;
  max-width: 480px;
  height: 480px;
  content: "";
  z-index: -1;
  background-size: 100%;
}
.top_for_parent_box_img img {
    border-radius: 20px;
}
.top_for_parent_box_tit {
  font-size: 3.2rem;
  letter-spacing: 0.12em;
  line-height: 1.6;
  background: #daf0ef;
  border-radius: 100vh;
  padding: 1.7% 2.6%;;
  font-family: "zen-maru-gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  color: #555;
  text-align: center;
  margin-left: auto;
  max-width: 771px;
}
.top_for_parent_box_text {
  padding: 4.1% 0 0 0;
  font-size: 1.7rem;
  letter-spacing: 0.12em;
  line-height: 2.529;
  margin-left: auto;
  width: 52%;
}
.top_for_parent_box_text p {
  margin-bottom: 7%;
}
.top_for_parent_box_text span {
  font-weight: bold;
  color: #498e8b;
}
.top_for_parent_check_box_wrapper {
  width: 100%;
  max-width: 1200px;
  margin: auto;
  position: relative;
  padding-top: 4px;
}
.top_for_parent_check_box {
  display: flex;
  flex-wrap: wrap;
  position: absolute;
  background: #f8f6e0;
  padding: 6% 3.6% 5% 4.3%;
  left: 38px;
  border-radius: 20px;
  bottom: -63px;
  width: 39%;
}
.top_for_parent_check_box dt {
  position: absolute;
  background: #fff;
  color: #518888;
  font-size: 2.4rem;
  letter-spacing: 0.12em;
  font-family: "zen-maru-gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  top: -30px;
  left: -73px;
  border-radius: 20px;
  padding: 3.3% 8.3% 3% 8.9%;
  
}
.top_for_parent_check_box dd {
  font-size: 1.7rem;
  letter-spacing: 0.12em;
  font-weight: 600;
  margin-top: 11px;
  width: 38%;
  padding-left: 34px;
  position: relative;
}
.top_for_parent_check_box dd::before {
  position: absolute;
  left: 0;
  top: 5px;
  background: url("../images/for_parent_check_mark.png");
  width: 22px;
  height: 21px;
  content: "";
}

.top_for_parent_check_box dd.item_100p {
  width: 100%;
}
.top_for_parent_box.item_even::before {
  background-image: url("../images/for_parent_bg_wave02.png");
  bottom: -29%;
}
.top_for_parent_box.item_even::after {
  position: absolute;
  top: -273px;
  left: 0;
  background: url("../images/for_parent_bg_left.png") top left no-repeat;
  width: 30%;
  max-width: 324px;
  height: 1101px;
  content: "";
}

.top_for_parent_box.item_even .top_for_parent_box_tit {
  margin-left: 0;
  margin-right: auto;
}
.top_for_parent_box.item_even .top_for_parent_box_img {
  left: auto;
  right: 0;
}
.top_for_parent_box.item_even .top_for_parent_box_text {
  margin-left: 0;
}
.top_for_parent_box.item_even .top_for_parent_box_tit {
  background: #efe5f8;
}
.top_for_parent_box.item_even .top_for_parent_box_img::before {
  left: auto;
  right: 0;
  bottom: -277px;
  background:url(../images/for_parent_img_k02.png) top right no-repeat;
  max-width: 331px;
  width: 50%;
  height: 386px;
  content: "";
  background-size: 100%;
}
/*==================================================================

.top_testing

==================================================================*/

.top_testing {
  position: relative;
  z-index: 1;
  margin-top: -50px;
  overflow: hidden;
}
.top_testing::before {
  position: absolute;
  left: 0;
  top: 6px;
  background: url("../images/testing_bg01.png") top left no-repeat;
  width: 100%;
  height: 100%;
  background-size: 100%;
  content: "";
  z-index: -1;
}
.top_testing::after {
  position: absolute;
  left: 0;
  top: 300px;
  background: url("../images/testing_bg_r.png") top center no-repeat;
  width: 100%;
  height: 70%;
  background-size: cover;
  content: "";
  z-index: -2;
}
.top_testing_tit {
  text-align: center;
  width: 90%;
  max-width: 1050px;
  margin: auto;
  padding: 3.1%;
  background: #fff;
  border-radius: 100vh;
  margin-bottom: 7.2%;
}
.top_tesing_point_list {
  padding-bottom: 180px;
}

.top_testing_point_item_inner{
  display: flex;
  z-index: 1;
  position: relative;
    width: 90%;
  margin: auto;
  max-width: 1200px;
}
.top_testing_point_item_inner::before {
  position: absolute;
  left: auto;
  right: 0;
  width: 85%;
  height: 100%;
  background: #fff;
  border-radius: 20px;
  content: "";
  z-index: -1;
  max-width: 820px;
}
.top_testing_point_item {
  position: relative;
  z-index: 1;
  margin-bottom: 110px;
}
.top_testing_point_item::before {
  position: absolute;
  left: 3%;
  top: -11%;
  background: url("../images/testing_item_bg01.png") top left no-repeat;
  width: 10%;
  max-width:  141px;
  height: 961px;
  content: "";
  z-index: -2; 
  background-size: 100%;
}
.top_testing_point_item_inner::after{
  position: absolute;
  left: -11.3%;
  bottom: -12%;
  background: url("../images/testing_item_bg01_1.png") top left no-repeat;
  width: 70%;
  max-width:  699px;
  height:577px;
  content: "";
  z-index: -2;
  background-size: 100%;
}

.top_testing_point_detail {
  position: relative;
  z-index: 1;
  padding: 7.9% 3% 6.3% 4%;
  width: 58%;
}
.top_point_item_img{
  position: relative;
  z-index: 2;
  top: -24px;
}
.top_testing_point_item_num {
  position: absolute;
    top: -51px;
    right: 31px;
}
.top_testing_point_item_tit {
  color: #60ad77;
  font-size: 3.2rem;
  letter-spacing: 0.12em;
  line-height: 1.718;
  font-family: "zen-maru-gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  position: relative;
  padding-bottom: 5%;
  margin-bottom: 5%;
}
.top_testing_point_item_tit::before {
  position: absolute;
  left: -10px;
  bottom: 0;
  background: url("../images/testing_item_border01.png") bottom left no-repeat;
  width: 100%;
  height: 18px;
  background-size: 100%;
  content: "";;

}
.top_testing_point_item_text {
  font-size: 1.8rem;
  line-height: 2.222;
  letter-spacing: 0.12em;
}
.top_testing_point_item_text p {
  margin-bottom: 18px;
}
.top_testing_item_btn {
  
  color: #fff;
  margin-top:7.4%;
}
.top_testing_item_btn a {
  display: inline-block;
  color: #fff;
  letter-spacing: 0.12em;
  background: url("../images/top_teseting_item_btn_bg.jpg") top center no-repeat;
  background-size:cover;
  font-family: "zen-maru-gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  padding: 3% 14% 3% 7%;
  border-radius: 20px;
  position: relative;
}
.top_testing_item_btn a::before{
  position: absolute;
  background: url("../images/top_testing_point_item_arrow.png") center no-repeat;
  width: 17px;
  height: 6px;
  content: "";
    right: 36px;
    top: 34px;
}
.top_testing_item_btn a:hover {
  opacity: 0.8;
}

.top_testing_point_item:nth-child(even) .top_testing_point_item_inner {
  flex-direction: row-reverse;
}
.top_testing_point_item:nth-child(even) .top_testing_point_item_inner::before {
  right: auto;
  left: 0;
}
.top_testing_point_item:nth-child(even) .top_testing_point_item_num {
  right: auto;
  left: 48px;
}
.top_testing_point_item:nth-child(even) .top_testing_point_detail {
  padding: 7.9% 2% 6.3% 4.5%;
}
.top_testing_point_item:nth-child(2) .top_testing_item_btn a {
  background-image: url(../images/top_teseting_item_btn_bg02.jpg);
}
.top_testing_point_item:nth-child(2) .top_testing_point_item_tit {
  color: #5d9cc1;
  
}
.top_testing_point_item:nth-child(2) .top_testing_point_item_tit::before {
  background-image: url("../images/testing_item_border02.png");
}
.top_testing_point_item:nth-child(2) .top_testing_point_item_inner::after {
  background-image: url("../images/testing_item_bg02_1.png");
  left: auto;
  right: -19%;
  bottom: -25%;
  width: 80%;
  max-width: 699px;
  height: 577px;
}
.top_testing_point_item:nth-child(2)::before {
  background-image: url("../images/testing_item_bg02.png");
  left: auto;
  top: -71%;
  right: 0;
  width: 35%;
  max-width: 451px;
  height: 601px;
}



.top_testing_point_item:nth-child(3) .top_testing_point_item_tit {
  color: #9979b7;
  
}
.top_testing_point_item:nth-child(3) .top_testing_point_item_tit::before {
  background-image: url("../images/testing_item_border03.png");
}
.top_testing_point_item:nth-child(3) .top_testing_point_item_inner::after {
  background-image: url("../images/testing_item_bg03_1.png");
  left: auto;
    left: -27%;
    bottom: -14%;
  width: 80%;
  max-width: 699px;
  height: 577px;
}
.top_testing_point_item:nth-child(3) .top_testing_point_item_inner::before {
  height: 77%;
}
.top_testing_point_item:nth-child(3)::before {
  background-image: url("../images/testing_item_bg03.png");
  left: 0;
  top: -43%;
  width: 35%;
  max-width: 309px;
  height:1408px;
  background-size: 100%;
}
.top_testing_point_item:nth-child(4) {
  margin-top: -55px;
}
.top_testing_point_item:nth-child(4) .top_testing_point_item_tit {
  color:#e37c7c;
  
}
.top_testing_point_item:nth-child(4) .top_testing_point_item_tit::before {
  background-image: url("../images/testing_item_border04.png");
}
.top_testing_point_item:nth-child(4) .top_testing_point_item_inner::after {
  background-image: url("../images/testing_item_bg04_1.png");
  left: auto;
    right: -18%;
    bottom: -14%;
  width: 80%;
  max-width: 691px;
  height: 571px;
}
.top_testing_point_item:nth-child(4) .top_testing_point_item_inner::before {
  height: 71%;
}
.top_testing_point_item:nth-child(4)::before {
  background-image: url("../images/testing_item_bg04.png");
  left: auto;
  right: 30px;
  top: -33%;
  width: 40%;
  max-width: 536px;
  height:1284px;
  background-size: 100%;
}

.top_testing_point_item:nth-child(5) {
  margin-top: -55px;
}

.top_testing_point_item:nth-child(5) .top_testing_point_item_tit {
  color:#e6a423;
  
}
.top_testing_point_item:nth-child(5) .top_testing_point_item_tit::before {
  background-image: url("../images/testing_item_border05.png");
}
.top_testing_point_item:nth-child(5) .top_testing_point_item_inner::after {
  background-image: url("../images/testing_item_bg05.png");
left: -9%;
    bottom: -10%;
  width: 80%;
  max-width: 691px;
  height: 571px;
}
.top_testing_point_item:nth-child(5) .top_testing_point_item_inner::before {
  height: 78%;
}
.top_testing_point_item:nth-child(5)::before {
  display: none;
}


.top_testing_point_item_text_red {
  color: #df5555;
}


/*==================================================================

.top_testing_graph

==================================================================*/

.top_testing_graph {
  position: relative;
  z-index: 3;
  background-size: 100%;
  margin-top: -114px;

}
.top_testing_graph::before {
  position: absolute;
  left: 0;
  top: -3px;
    background: url(../images/testing_bg02.png) top 40px center no-repeat;
  width: 100%;
  height: 300px;
  background-size: 100%;
  content: "";
  z-index: -1;
}
.top_testing_graph::after {
  position: absolute;
  left: 0;
  top: 300px;
  background: url("../images/testing_bg02_r.png") top center no-repeat;
  width: 100%;
  height: 70%;
  background-size: cover;
  content: "";
  z-index: -2;
}
.top_testing_graph_tit {
  text-align: center;
  margin-bottom: 28px;
}
.top_testing_graph_inner {
  width: 96%;
  max-width: 1500px;
  margin: auto;
  text-align: center;
  position: relative;
  padding: 0 4% 8.4%;
  z-index: 1;
}
.top_testing_graph_inner::before {
  position: absolute;
  left: 0;
  top: 147px;
  background: #fff;
  border-radius: 50px;
  width: 100%;
  height: calc(100% - 147px);
  content: "";
  z-index: -1;
  
}
.top_testing_graph01 {
  padding-bottom: 65px;
}
.top_graph_list {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 90%;
  max-width: 1080px;
  margin: auto;
  
}
.top_graph_item:first-child {
  margin-left: -60px;
}
.top_graph_item:last-child {
  margin-top: 10px;
}
.top_graph_text {
  background: url("../images/graph_text_bg.jpg") top center no-repeat;
  position: relative;
  font-size: 1.9rem;
  line-height: 2.1;
  padding: 3.8%;
  margin-top: 42px;
  letter-spacing: 0.12em;
  
}
.top_graph_text::before {
  position: absolute;
  background: url("../images/graph_text_balloon.png") top center no-repeat;
  width: 41px;
  height: 36px;
  top: -34px;
  right:333px;
  content: ""
}


/*==================================================================

.top_testing_area

==================================================================*/
.top_testing_area {
  padding-top: 110px;
  position: relative;
  z-index: 2;
  padding-bottom: 292px;

}
.top_testing_area::before {
    position: absolute;
    left: 0;
    top: -1040px;
    background: url(../images/testing_contents_bg.png) top center no-repeat;
    width: 100%;
    height: calc(100%);
    background-size: 100%;
    content: "";
    z-index: -1;
}
.top_testing_area::after {
    position: absolute;
    left: 0;
    top: 0;
    background: url(../images/testing_list_bg_1.png) top center no-repeat;
    width: 100%;
    height: 100%;
    background-size: cover;
    content: "";
    z-index: -2;
}
.top_testing_area_wrap {
  position: relative;
}


.top_testing_area_tit {
  text-align: center;
  position: relative;
}
.top_testing_area_tit::before {
  position: absolute;
  top: -132px;
  left: 0;
  background: url("../images/testing_bg_ill01.png") top left no-repeat;
  width: 25%;
  max-width: 490px;
  height: 796px;
  content: "";
  background-size: 100%;
}
.top_testing_area_tit::after {
  position: absolute;
  top: -62px;
  right: 0;
  background: url("../images/testing_bg_ill02.png") top left no-repeat;
  width: 25%;
  max-width: 530px;
  height: 389px;
  content: "";
  background-size: 100%;
}

.top_testing_area_list {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  width: 90%;
  max-width: 1200px;
  margin: auto;
  gap: 2.22%;
  padding-top: 3.3%;
  position: relative;
  z-index: 2;
}

.top_testing_area_item {
  width: 23.33%;
  margin-bottom: 30px;
}

.top_testing_area_item a {
  display: block;
  text-align: center;
  border-radius: 20px;
  border: solid 3px #fff;
  background: url("../images/testing_list_item_bg01.png") center no-repeat;
  background-size: cover;
  height: 280px;
  padding-top: 11.6%;
  font-size: 2.4rem;
  letter-spacing: 0.12em;
  color: #333;
    font-family: "zen-maru-gothic", sans-serif;
    font-weight: 700;
    font-style: normal;
}
.top_testing_area_item a p {
  height: 69px;
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 1.33;
}
.top_testing_area_item a:hover {
  opacity: 0.8;
}
.top_testing_area_item:nth-child(3) {
  margin-right: 5px;
}


.top_testing_area_ill {
  position:relative;
  z-index: 1;
}

.top_testing_area_ill::before {
  position: absolute;
  bottom: -263px;
  left: 0;
  background: url("../images/testing_bg_ill03.png") center left no-repeat;
  width: 26%;
  max-width: 503px;
  height: 645px;
  content: "";
  background-size: 100%;
  z-index: -1;
}
.top_testing_area_ill::after {
  position: absolute;
  bottom: -140px;
  right: 0;
  background: url("../images/testing_bg_ill04.png") center left no-repeat;
  width: 26%;
  max-width: 462px;
  height: 636px;
  content: "";
  background-size: 100%;
  z-index: -1;
}


/*==================================================================

.top_disease

==================================================================*/
.top_disease .cv_btn.item_top {
  position: relative;
  margin-top: -211px;
  z-index: 2;
  margin-bottom: 142px;
}
.top_disease {
  z-index: 2;
  position: relative;
}
.top_disease::before{
  position: absolute;
  left: 0;
  top: 125px;
  background: url("../images/testing_bottom_wave.png") top center no-repeat;
  width: 100%;
  height: 186px;
  content: "";
  z-index: -1;
  background-size: 100%;
}
.top_disease::after {
  position: absolute;
  left: 0;
  top: 180px;
  width: 100%;
  height: 110%;
    background: url("../images/disease_bg.jpg") top center repeat-y;
  background-size: 100%;
  content: ""
}
.top_disease_tit {
  text-align: center;
  margin-bottom: 5.2%;
  position: relative;
  z-index: 1;
}
.top_disease_tit::before {
  position: absolute;
  top: -40px;
  left: 0;
  background: url("../images/disease_ill_left.png") top left no-repeat;
  width: 25%;
  max-width: 311px;
  height: 800px;
  content: "";
  background-size: 100%;
  z-index: -1;
}

.top_disease_tit::after {
  position: absolute;
  top: -254px;
  right: 0;
  background: url("../images/disease_ill_right.png") center left no-repeat;
  width: 29%;
  max-width: 534px;
  height: 780px;
  content: "";
  background-size: 100%;
  z-index: -1;
}
.top_disease_list {
  margin-bottom: 7.7%;
}
.top_disease_item_wrapper {
  position: relative;
  z-index: 1;
}
.top_disease_item_wrapper:nth-child(1)::before {
  position: absolute;
  bottom: -107%;
  right: 0; 
  background: url("../images/disease_item_ill01.png") top right no-repeat;
  width: 50%;
  max-width: 860px;
  height: 669px;
  content: "";
  background-size: 100%;
}
.top_disease_item_wrapper:nth-child(4)::before {
  position: absolute;
  top: 23%;
  left: 0; 
  background: url("../images/disease_item_ill02.png") top left no-repeat;
  width: 35%;
  max-width: 646px;
  height: 865px;
  content: "";
  background-size: 100%;
}
.top_disease_item_wrapper:nth-child(5)::before {
  position: absolute;
  bottom: -44%;
  right: 0; 
  background: url("../images/disease_item_ill03.png") top right no-repeat;
  width: 30%;
  max-width: 440px;
  height: 340px;
  content: "";
  background-size: 100%;
}


.top_disease_item {
  width: 90%;
  max-width: 1200px;
  margin: auto;
  display: flex;
  justify-content:space-between;
  align-items: center;
  padding: 2.5%;
  position: relative;
  z-index: 1;
  margin-bottom: 73px;
}
.top_disease_item::before {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: #fff;
  content: "";
  z-index: -1;
  border-radius: 20px;
}
.top_disease_item::after {
  position: absolute;
  left: -25px;
  top:25px;
  width: 100%;
  height: 100%;
  background: url("../images/disease_item_bg_b.png") top center no-repeat;
  background-size: cover;
  content: "";
  z-index: -2;
  border-radius: 20px;
}
.top_disease_detail {
  width: 50.7%;
  text-align: center;
}
.top_disease_item_img {
  width: 46.7%;
}
.top_disease_item_img img {
  border-radius: 20px;
}
.top_disease_item_tit{ 
  display: inline-block;
  font-size: 3.2rem;
  color: #6e655f;
  letter-spacing: 0.12em;
  font-family: "zen-maru-gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  padding-top: 6.2%;
  margin-bottom: 15px;
  position: relative;
}
.top_disease_item_tit::before {
  position: absolute;
  left: -77px;
  top: 14px;
  background: url("../images/disease_item_tit_kazari_b.png") top center no-repeat;
  width: 61px;
  height: 64px;
  content: "";
}
.top_disease_item_tit::after {
  position: absolute;
  right: -77px;
  top: 14px;
  background: url("../images/disease_item_tit_kazari_b.png") top center no-repeat;
  width: 61px;
  height: 64px;
  content: "";
  transform: scale(-1,1)
}
.top_disease_item_sub_tit{ 
  display: inline-block;
  font-size: 2.4rem;
  color: #fff;
  background: #74bcbc;
  letter-spacing: 0.12em;
  font-family: "zen-maru-gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  padding:0 9%;
  border-radius: 100vh;
  margin-bottom: 29px;
}
.top_disease_c_list{
  text-align: left;
  background: #f1f9f9;
  border-radius: 20px;
  padding: 6.4% 1.9% 6.4% 8.9%;
}
.top_disease_c_item {
  float: left;
  font-size: 2.0rem;
  letter-spacing: 0.12em;
  font-family: "zen-maru-gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  padding-left: 32px;
  margin-right: 8.3%;
  margin-bottom: 1%;
  position: relative;
}
.top_disease_c_item span {
  font-size: 1.7rem;
}
.top_disease_c_item::before {
  position: absolute;
  background: url("../images/disease_item_check_b.png") center no-repeat;
  width: 20px;
  height: 20px;
  content: "";  
  left: 0;
  top:12px;
}

.top_disease_item_wrapper:nth-child(odd) .top_disease_item{
  flex-direction: row-reverse;
}

.top_disease_item_wrapper:nth-child(even) .top_disease_item::after {
  left: auto;
  right:-25px;
}
.top_disease_item.item_y::after{
  background-image: url(../images/disease_item_bg_y.png);
}
.top_disease_item.item_y .top_disease_item_sub_tit {
  background: #f0c76a;
}
.top_disease_item.item_y .top_disease_c_list {
  background: #f8f6e0;
}
.top_disease_item.item_y .top_disease_c_item::before {
  background-image: url(../images/disease_item_check_y.png);
}
.top_disease_item.item_y .top_disease_item_tit::before,
.top_disease_item.item_y .top_disease_item_tit::after {
  background-image: url(../images/disease_item_tit_kazari_y.png);
}

.top_disease_item.item_p::after{
  background-image: url(../images/disease_item_bg_p.png);
}
.top_disease_item.item_p .top_disease_item_sub_tit {
  background: #b798d2;
}
.top_disease_item.item_p .top_disease_c_list {
  background: #f2ecf8;
}
.top_disease_item.item_p .top_disease_c_item::before {
  background-image: url(../images/disease_item_check_p.png);
}
.top_disease_item.item_p .top_disease_item_tit::before,
.top_disease_item.item_p .top_disease_item_tit::after {
  background-image: url(../images/disease_item_tit_kazari_p.png);
}




/*==================================================================

.top_flow

==================================================================*/
.top_flow {
  position: relative;
  z-index: 2;
  padding-bottom: 172px;
}
.top_flow::before {
  position: absolute;
  top: 150px;
  left: 0;
  background: url("../images/flow_bg.jpg") center no-repeat;
  background-size: cover;
  width: 100%;
  height: 100%;
  content: "";
  z-index: -1;
}

.top_flow_tit {
  text-align: center;
  margin-top: 6%;
  margin-bottom: 3%;
}
.top_flow_list {
  display: flex;
  justify-content: space-between;
  margin: auto;
  width: 94%;
  position: relative;
  z-index: 1;
  margin-bottom: 173px;
}
.top_flow_list::before {
  position: absolute;
  top: 34px;
  left: 0;
  right:0;
  width: 76%;
  height: 5px;
  margin: auto;
  background: #87C69D;
  background: linear-gradient(144deg,rgba(135, 198, 157, 1) 0%, rgba(136, 169, 215, 1) 100%);
  content: "";
  z-index: -1;
}
.top_flow_item {
  width: 24.4%;
  text-align: center;
}
.top_flow_item_detail {
  background: #fff;
  border-radius: 20px;
  height: 89%;
  padding-top: 14%;
}
.top_flow_item_num {
  display: inline-block;
  font-family: "futura-pt", sans-serif;
  font-weight: 500;
  font-style: normal;
  background: #87c69d;
  color: #fff;
  font-size: 4.0rem;
  letter-spacing: 0.12em;
  padding: 0 5.2% 0 7.8%;
  border-radius: 100vh;
  line-height: 1.8;
  margin-bottom: 35px;
}
.top_flow_text {
  font-size: 1.8rem;
  line-height: 1.777;
  letter-spacing: 0.12em;
  font-weight: 600;
  padding-top: 5.8%;
  width: 80%;
  margin: auto;
}

.top_flow_item:nth-child(2) .top_flow_item_num{
  background: #63c2b4;
}
.top_flow_item:nth-child(3) .top_flow_item_num{
  background: #82b1c5;
}
.top_flow_item:nth-child(4) .top_flow_item_num{
  background: #88a9d7;
}

.top_flow_prec {
  width: 90%;
  max-width: 1200px;
  border: solid 10px #f8ddef;
  background: #fff;
  margin: auto;
  text-align: center;
}
.top_flow_prec_tit {
  background: #f8ddef;
  text-align: center;
  width: 60%;
  margin: auto;
  font-size: 3.2rem;
  letter-spacing: 0.12em;
  font-family: "zen-maru-gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  max-width: 601px;
  border-radius: 100vh;
  margin-top: -45px;
  color: #555;
  padding: 0.8%;
}
.top_flow_prec_text {
  font-size: 1.8rem;
  letter-spacing: 0.12em;
  line-height: 2.22;
  padding:3.5% 3% 6.2%;
}
.top_flow_prec_text span {
  font-size: 2.0rem;
  color: #cc85cf;
  font-weight: 600;
}


/*==================================================================

.top_features

==================================================================*/
.top_features {
  position: relative;
  z-index: 2;
  text-align: center;
  padding-top: 196px;
  background: url("../images/wave.png") top center repeat-x;
  width: 100%;
  content: "";
  padding-bottom: 33px;
}
.top_features::before {
  position: absolute;
  top: -80px;
  right: 0;
  background: url("../images/features_ill01.png") top right no-repeat;
  width: 40%;
  max-width: 558px;
  height: 297px;
  content: "";
}
.top_features_tit {
  display: inline-block;
  position: relative;
  padding-top: 43px;
  padding-bottom: 43px;
}
.top_features_tit::before {
  position: absolute;
  background: url("../images/features_tit_kakko.png") center no-repeat;
  top: 8px;
  right: -164px;
  width: 20%;
  max-width: 82px;
  height: 171px;
  content: "";
  background-size: 100%;
}
.top_features_tit::after {
  position: absolute;
  background: url("../images/features_tit_kakko.png") center no-repeat;
  top: 8px;
  left: -161px;
  width: 20%;
  max-width: 82px;
  height: 171px;
  content: "";
  background-size: 100%;
  transform: scale(-1,1)
}
.top_features_list {
  text-align: left;
  margin-top: 83px;

}
.top_features_item {
  margin-bottom: 108px;
  position: relative;
}
.top_features_item_inner {
  display: flex;
  justify-content: space-between;
  width: 90%;
  max-width: 1414px;
  margin: auto;
  position: relative;
}
.top_features_item_img {
  width: 47%;
}
.top_features_item_detail {
  position: relative;
  width: 50%;
  z-index: 1;
}
.top_features_item_num {
  position: absolute;
  left: -6px;
  top: 21px;
  z-index: -1;
}
.top_features_item_tit {
  font-family: "zen-maru-gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 3.2rem;
  letter-spacing: 0.12em;
  color: #555;
  padding-top: 7%;
  padding-bottom: 7%;
  padding-left: 5%;
  padding-left: 12%;
}
.top_features_item_tit.item_line2 {
  line-height: 1.4;
  padding-top: 9.4%;
}

.top_features_item_tit span {
 font-size: 3.8rem;
 color: #60ad98;
}

.top_features_item_text {
  font-size: 1.7rem;
  letter-spacing: 0.12em;
  line-height: 2.35;
}


.top_features_item:nth-child(even) .top_features_item_inner {
  flex-direction: row-reverse;
}

.top_features_item:nth-child(1) {
  z-index: 1;
}
.top_features_item:nth-child(1)::before {
  position: absolute;
  left: 0;
  top: 15px;
  background: url("../images/features_item_bg01.png") top left no-repeat;
  width: 56%;
  max-width: 1070px;
  height: 882px;
  content: "";
  background-size: 100%;
}
.top_features_item:nth-child(1)::after {
  position: absolute;
  right: 0;
  top: -124px;
  background: url("../images/features_item_bg_moya01.jpg") top left no-repeat;
  width: 40%;
  max-width:605px;
  height: 642px;
  content: "";
  background-size: 100%;
  z-index: -1
}

.top_features_item:nth-child(2) {
  z-index:2;
}
.top_features_item:nth-child(2)::before {
  position: absolute;
  right: 0;
  top: -85px;
  background: url("../images/features_item_bg02.png") top right no-repeat;
  width: 46%;
  max-width: 760px;
  height: 879px;
  content: "";
  background-size: 100%;
}
.top_features_item:nth-child(2)::after {
  position: absolute;
  left: 0;
  top: 276px;
  background: url("../images/features_item_bg_moya02.jpg") top left no-repeat;
  width: 40%;
  max-width:435px;
  height: 642px;
  content: "";
  background-size: 100%;
  z-index: -1
}
.top_features_item:nth-child(2) .top_features_item_tit span  {
  color: #73adcb;
}


.top_features_item:nth-child(3) {
  z-index:3;
}
.top_features_item:nth-child(3)::before {
  position: absolute;
  left: 0;
  top: 27px;
  background: url("../images/features_item_bg03.png") top left no-repeat;
  width: 51%;
  max-width: 974px;
  height: 852px;
  content: "";
  background-size: 100%;
}
.top_features_item:nth-child(3)::after {
  position: absolute;
  right: 0;
  top: 238px;
  background: url("../images/features_item_bg_moya03.jpg") top left no-repeat;
  width: 40%;
  max-width:545px;
  height: 552px;
  content: "";
  background-size: 100%;
  z-index: -1
}
.top_features_item:nth-child(3) .top_features_item_tit span  {
  color: #b798d2;
}

.top_features_item:nth-child(4) {
  z-index:4;
}
.top_features_item:nth-child(4)::before {
  position: absolute;
  right: 0;
  top: -20px;
  background: url("../images/features_item_bg04.png") top right no-repeat;
  width: 56%;
  max-width: 1007px;
  height: 835px;
  content: "";
  background-size: 100%;
}

.top_features_item:nth-child(4) .top_features_item_tit span  {
  color: #e37c7c;
}


.top_features_item:nth-child(5) {
  z-index:5;
}
.top_features_item:nth-child(5)::before {
  position: absolute;
  left: 0;
  top: -43px;
  background: url("../images/features_item_bg05.png") top left no-repeat;
  width: 51%;
  max-width: 956px;
  height: 928px;
  content: "";
  background-size: 100%;
}
.top_features_item:nth-child(5) .top_features_item_tit span  {
  color: #e6a423;
}


/*==================================================================

.top_prev

==================================================================*/
.top_prev {
  background: url("../images/prev_bg.jpg") top center repeat;
  position: relative;
  z-index: 2;
  text-align: center;
  padding-top: 9.2%;
  padding-bottom: 12%;
}
.top_prev::before {
  position: absolute;
  top: -15px;
  left: 0;
  background: url("../images/prev_line.png") top left repeat-x;
  width: 100%;
  height: 43px;
  content: "";
}
.top_prev::after {
  position: absolute;
  top: -7px;
  right: 0;
  background: url("../images/prev_ill01.png") top right repeat-x;
  width: 23%;
  max-width: 387px;
  height: 591px;
  content: "";
  background-size: 100%;
}
.top_prev_tit {
  display: inline-block;
  font-family: "zen-maru-gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 4.5rem;
  letter-spacing: 0.12em;
  position: relative;
  margin-bottom: 12.6%;
  
}
.top_prev_tit::before {
  position: absolute;
  left: -110px;
  top: -7px;
  background: url("../images/prev_tit_bg02.png") center no-repeat;
  width: 75px;
  height: 51px;
  content: "";
}
.top_prev_tit::after {
  position: absolute;
  right: -113px;
  bottom: -52px;
  background: url("../images/prev_tit_bg02.png") center no-repeat;
  width: 75px;
  height: 51px;
  content: "";
}
.top_prev_tit i  {
  font-style: normal;
  z-index: 2;
  position: relative;
  color: #555;
}
.top_prev_tit span {
  font-size: 5.0rem;
  color: #eb9fa3;
  padding-left: 6px;
  position: relative;
  z-index: 1;
}
.top_prev_tit span::before {
  position: absolute;
  bottom: -35px;
  left: -56px;
  background: url("../images/prev_tit_kazari.png") bottom left no-repeat;
  width: 349px;
  height: 66px;
  content: "";
  z-index: -1;
}
.top_prev_list  {
  text-align: left;
  width: 90%;
  max-width: 1200px;
  margin: auto;
  position: relative;
  padding: 4.9% 4.2% 3%;
  z-index:3;
  margin-bottom:9%;
}
.top_prev_list::before {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 90%;
  max-width: 978px;
  background: #fff;
  content: "";
  z-index: -1;
  border-radius: 20px;
}
  
.top_prev_list dd {
  font-size: 1.8rem;
  line-height: 1.444;
  letter-spacing: 0.12em;
  padding-left: 28px;
  margin-bottom: 1.6%;
  position: relative;
}
.top_prev_list dd::before {
  position: absolute;
left: 4px;
    top: 8px;
  background: #b893be;
  width: 9px;
  height: 9px;
  content: "";
  border-radius: 100%;
}

.top_prev_list_tit {
  background: #74bcbc;
  max-width: 363px;
  width: 80%;
  color: #fff;
  font-family: "zen-maru-gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 2.6rem;
  letter-spacing: 0.12em;
  text-align: center;
  position: absolute;
  left: 0;
  top: -34px;
  padding: 0.5%;
}
.top_prev_list dd.top_prev_list_img {
  position: absolute;
  top: -128px;
  right: 0;
}
.top_prev_list dd.top_prev_list_img::before {
display: none;
}
.top_prev_box {
  position: relative;
  z-index: 1;
  width: 96%;
  max-width: 1500px;
  margin: auto;
  padding: 7.9% 17.8% 10%;
  background: url("../images/prev_sub_content_bg.jpg") center no-repeat;
  background-size: cover;
  border-radius: 36px;
}
.top_prev_box_ill {
  width: 100%;
  position: relative;
  z-index: 2;
}
.top_prev_box_ill::before {
  position: absolute;
  top: -363px;
  left: 0;
  background: url("../images/prev_img01.png") center left no-repeat;
  width: 25.4%;
  max-width: 487px;
  height: 817px;
  content: "";
  background-size: 100%;
}
.top_prev_box_ill::after {
  position: absolute;
  top: -189px;
  right: 0;
  background: url("../images/prev_img02.png") bottom right no-repeat;
  width: 285.4%;
  max-width: 550px;
  height: 866px;
  content: "";
  background-size: 100%;
}
@media screen and (max-width: 1800px) {
  .top_prev_box_ill::before {
    width: 22%
  }
  .top_prev_box_ill::after {
    width: 26%
  }
}
@media screen and (max-width: 1670px) {
  .top_prev_box_ill::before {
    width: 20%
  }
  .top_prev_box_ill::after {
    width: 23%
  }
  .top_prev_box_text {
    width: 90%;
    margin: auto;
  }
}
.top_prev_box_tit {
  display: inline-block;
  width: 90%;
  max-width: 814px;
  background: url("../images/prev_sub_tit_bg.jpg") center no-repeat;
  padding: 2.1%;
  border-radius: 26px;
  background-size: cover;
  position: absolute;
  top: -70px;
  left: 0;
  right: 0;
  margin: auto;
  
}
.top_prev_box_text {
  text-align: left;
  font-size: 1.8rem;
  letter-spacing: 0.12em;
  line-height: 2.22;
  
}
.top_prev_ill_bottom {
  position: relative;
}
.top_prev_ill_bottom::before {
  position: absolute;
  left: 0;
  bottom: -370px;
  background: url("../images/prev_ill_footer.png") bottom left no-repeat;
  width: 30%;
  max-width: 497px;
  height: 545px;
  content: "";
  z-index: 4;
  background-size: 100%;
}
/*==================================================================

.top_qa

==================================================================*/
.top_qa {
  text-align: center;
  background: url("../images/qa_bg.jpg") top center repeat;
  background-size: 100%;
  padding-top: 7.4%;
  padding-bottom: 13.3%;
  position: relative;
}
.top_qa::before {
  position: absolute;
  top: 35%;
  left: 0;
  background: url("../images/qa_bg_left01.png") center repeat no-repeat;
  width: 20%;
  max-width: 279px;
  height: 384px;
  content: "";
  background-size: 100%;
}
.top_qa::after {
  position: absolute;
  top: 13%;
  right: 1.4%;
  background: url("../images/qa_bg_left02.png") center repeat no-repeat;
  width: 20%;
  max-width: 235px;
  height: 360px;
  content: "";
  background-size: 100%;
}
.top_qa_tit {
  font-size: 4.5rem;
  letter-spacing: 0.12em;
  font-family: "zen-maru-gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  color: #555;
  margin-bottom: 4%;
}
.top_qa_tit_en {
  font-size: 2.4rem;
  letter-spacing: 0.12em;
  color: #74bcbc;
  font-family: "futura-pt", sans-serif;
    font-weight: 500;
    font-style: normal;
}

.top_qa_wrap {
  width: 90%;
  max-width: 1156px;
  margin: auto;
  text-align: left;
  position: relative;
  left: 22px;
  margin-bottom: 101px;
  z-index: 2;
}
.top_qa_item {
  margin-bottom: 36px;
}

.top_qa_wrap .accordion_tit {
  line-height: 1.6666;
  font-size: 2.4rem;
  letter-spacing: 0.12em;
  color: #fff;
  background: #74bcbc;
  font-family: "zen-maru-gothic", sans-serif;
  font-weight: 700;
  font-style: normal;
  border-radius: 20px;
  padding: 2.2% 86px 2.5% 111.4px;
  margin-bottom: 0;
  position: relative;
  z-index: 2;
}
.top_qa_wrap .accordion_tit::after {
  position: absolute;
  left: -44px;
  top: -11px;
  background: url("../images/qa_icon01.png") center no-repeat;
  width: 120px;
  height: 120px;
  content: "";
  
}
.top_qa_wrap .accordion_tit::before {
  background: url("../images/qa_arrrow.png") center no-repeat;
  width: 13px;
  height: 12px;
  transform: rotate(0deg);
  top: 46%;
  right: 6%
}
.top_qa_wrap .accordion_tit.open::before {
  opacity: 1;
  transform: rotate(180deg);
}


.top_qa_wrap .accordion_text {
  margin-top: 6px;
  font-size: 1.7rem;
  letter-spacing: 0.12em;
  line-height: 2.35;
  font-weight: 500;
  background: #fff;
  border-radius: 20px;
  padding: 3.8% 6.1% 4.3% 117px;
  position: relative;
}
.top_qa_wrap .accordion_text::before {
  position: absolute;
  left: 38px;
  top: 30px;
  background: url("../images/qa_a_icon01.png") top center no-repeat;
  width: 49px;
  height: 56px;
  content: "";
}
.top_qa_item:nth-child(even) .accordion_tit {
  background: #c29bc8;
}

.top_qa_wrap .top_qa_item:nth-child(even) .accordion_tit::after {
  background-image: url("../images/qa_icon02.png");
}

.top_qa_wrap .top_qa_item:nth-child(even) .accordion_text::before   {
  background-image: url("../images/qa_a_icon02.png");
}


.top_qa .cv_btn {
  position:relative;
  z-index: 1;
}
.top_qa .cv_btn::before {
  position: absolute;
  left: 0;
  top: -114px;
  background: url("../images/qa_bg_kazari_left.png") center left no-repeat;
  width: 20%;
  max-width: 351px;
  height: 337px;
  content: "";
  pointer-events: none;
}
.top_qa .cv_btn::after {
  position: absolute;
  right: 0;
  top: 80px;
  background: url("../images/qa_bg_kazari_right.png") center left no-repeat;
  width: 25%;
  max-width: 446px;
  height: 327px;
  content: "";
  z-index: -1;
  pointer-events: none;
}
.top_qa .cv_btn a {
  background: url("../images/cv_bg_yellow.jpg");
  background-size: cover;
  border: none;
}

.qa_bg {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 800px;
}
.qa_bg::before {
  position: absolute;
  bottom: 0;
  left:0;
  background: url("../images/qa_bg_bottom.png") top repeat;
  width: 100%;
  height: 820px;
  content: "";
  background-size: cover;
}

/*==================================================================================================================

  スマホ

==================================================================================================================*/
@media screen and (max-width:640px) {
  #wrapper, html, body{
    min-height:500px;
  }

  /*==================================================================

    メインビジュアル（スマホ）

  ==================================================================*/
  .top_mainvisual {
    /*height: 240px;*/
	  height: 210px;
  }
  .mainvisual_wrap {
    /*height: 240px;*/
	  height: 210px;
  }
  .mv_catch_list {
    max-width: 100%;
    position: static;
    padding: 9px 9%;
    gap: 0 4%;
    background: #daf0ef;
  }
  .mv_catch_item {
    margin-right: 0;
  }
	
/*MV動画*/
	.mainvisual_movie {
        position: relative;
        height: 100%;
        width: 100%;
        overflow: hidden;
    }
	.mainvisual_movie video {
        position: static;
        width: 100%;
        min-height: auto;
        transform: unset;
    }
  
  /*==================================================================

    .top_pc_nav（スマホ）

  ==================================================================*/
  .top_pc_nav_list {
    display: none;
  }
 
  /*==================================================================

    .top_worries（スマホ）

  ==================================================================*/
  .top_worries_box {
    padding-bottom: 80px;
  }
  .top_worries_tit {
    width: 90%;
    margin: 0 auto 30px;
  }
  .top_worries_list_img01 {
    width: 50%;
    top: 12vw;

  }
  .top_worries_list_wrapper {
     padding: 50px 0;
   }
  .top_worries_list_wrapper::before {
    top: 0;
    background-size: cover;
    height: 100%;
  }
  .top_worries_list {
    width: 90%;
    padding-left: 0;
  }
  .top_worries_item { 
    font-size: 1.6rem;
    line-height: 1.6;
    padding-left: 30px;
    letter-spacing: 0.07em;
    margin-bottom: 14px;
  }
  .top_worries_item::before {
    width: 24px;
    height: 24px;
    background-size: 100%;
  }
  .top_warries_text {
    font-size: 1.6rem;
    margin-top: 40px;
    margin-bottom: 118px;
  }
  .top_warries_text span {
    font-size: 2.3rem;
  }
  
  .top_warries_text::before {
    height: 180%;
    width: 110%;
    left: -5%;
    top: -53px;

  }
  .top_warries_list_ill::before {
    background-position: bottom left;
  }
  .top_warries_list_ill::after {
   background-position: bottom right;
  }
  .top_worries_box::before {
    background-size: 200%;
  }
  /*==================================================================

     .cv_btn（スマホ）

  ==================================================================*/
  .cv_btn a {
    padding-left: 0;
    font-size: 2rem;
    height: 90px;
    line-height: 80px;
    padding-left: 19px;
  }
  .cv_btn a::before {
    top: 23px;
    left: 23px;
    width: 35px;
    height: 34px;

  }
   .cv_btn a::after {
     top: 34px;
     right: 14px;
     width: 25px;
   }
   .cv_caption {
     font-size: 1.4rem;
     letter-spacing: 0.075em;
     position: relative;
     z-index: 2;
   }
  /*==================================================================

    .top_for_parent（スマホ）

  ==================================================================*/
  .top_for_parent {
    padding-top: 70px
  }
  .top_for_parent_tit {
    font-size: 2.2rem;
    line-height: 1.5
  }
  .top_for_parent_tit::before,
  .top_for_parent_tit::after {
    width: 7%;
    background-size: 100%;
    top: 12px;
  }
  .top_for_parent_intro { 
  
    margin-bottom: 50px
  }
  .top_for_parent_intro::before {
    top: 27vw;
    width: 33%
  }
  .top_for_parent_box {
    z-index: 2;
    padding-bottom: 10px;
  }
  .top_for_parent_box_text {
    width: 100%;
    margin-bottom: 60px;
    font-size: 1.6rem;
    letter-spacing: 0.075em;
    line-height: 1.8
  }
  .top_for_parent_box_tit {
    font-size: 2.0rem;
  }
  .top_for_parent_box_img {
    position: relative
    
  }
  .top_for_parent_check_box {
    position: static;
    width: 100%;
    padding: 25px 10px 25px 20px;
  }
  .top_for_parent_check_box dt {
    left: -3%;
    margin: auto;
    font-size: 1.8rem;
    text-align: center;
    width: 70%;
    padding: 6px;
  }
  .top_for_parent_check_box dd::before {
    width: 18px;
    height: 18px;
    background-size: 100%;
    background-repeat: no-repeat;
  }
  .top_for_parent_check_box dd {
    font-size: 1.5rem;
    letter-spacing: 0.035em;
    padding-left: 28px;
  }
  .top_for_parent_box::after {
    background-size: 100%;
  }
  .top_for_parent_box::before {
    background-size: cover;
  }
  .top_for_parent_box.item_even::after {
    background-size: 100%;
    background-position: bottom left;
  }
  .top_for_parent_box_img {
    width:80%;
    left: 0;
    right: 0;
    margin: auto;
    padding-top: 50px;
    margin-bottom: 40px
  }
  
  .top_for_parent_box_img::before {
    bottom:  -40px;
    right: -3%;
    left: auto;
  }
 
  .top_for_parent_box.item_even {
    padding: 0;
  }
  .top_for_parent_box.item_even::before {
    background-size: cover;
    bottom: -36%;
  
  }
  .top_for_parent_box_inner .top_for_parent_box_img {
    width: 100%;
    text-align: center;
   }
   .top_for_parent_box_inner .top_for_parent_box_img img {
     width: 80%;
     margin: auto;
   }
   .top_for_parent_box.item_even .top_for_parent_box_text,
   .top_for_parent_box.item_even .top_for_parent_box_tit{
      width: 90%;
      margin: auto;
    }
    .top_for_parent_box_text p {
    margin-bottom:   60px;
    text-shadow: 0 0 10px #fff,0 0 10px #fff,0 0 10px #fff,0 0 10px #fff,0 0 10px #fff,0 0 10px #fff;
    }
  /*==================================================================

    .top_disease（スマホ）

  ==================================================================*/
  .top_disease::before {
    top: 175px;
    background-size: 140%
  }
  .top_disease::after {
    top: 210px;
  }
  .top_disease_tit {
    width: 100%;
    margin: auto;
    padding: 0 10%  30px
  }
  .top_disease_item {
    display: block;
  }
  .top_disease_item_tit {
    display: block;
    font-size: 2.2rem;
    width: 90%;
    margin: 0 auto 10px;
    padding-top: 30px;
    
  }
  .top_disease_item_img {
  width: 100%;
  }
  .top_disease_item_sub_tit {
    font-size: 1.8rem;
    letter-spacing: 0.05em;
  }
  .top_disease_detail {
    width: 100%;
  }
  .top_disease_item_tit::before {
    left: 0;
    width: 16%;
    background-size: 100%
  }
  .top_disease_item_tit::after {
    right: 0;
        width: 16%;
    background-size: 100%
  }
  .top_disease_item::after {
    left: -4%;
  }
  .top_disease_item_wrapper:nth-child(even) .top_disease_item::after {
    right: -4%;
  }
  .top_disease_c_list {
  padding:   15px 10px 15px 20px
  }
  .top_disease_c_item {
    font-size: 1.6rem;
  }
  .top_disease_c_item {
  padding-left: 26px;
  line-height: 1.5;
  margin-bottom: 7px;
  }
  .top_disease_c_item::before {
    width: 17px;
    height: 17px;
    top: 5px;
    background-size: 100%
  }
  
  
  
  /*==================================================================

    .op_testing（スマホ）

  ==================================================================*/
  .top_testing {
    margin-top: 0
  }
  .top_testing_tit {
    width: 98%;
    margin: auto;
    padding: 20px 55px;
    margin-bottom: 30px;
  }
  .top_testing_point_item_tit {
    font-size: 2.0rem;
    line-height: 1.6;
    text-align: center;
    letter-spacing: 0.05em;
  }
  .top_testing_point_item_tit::before {
    left: 0;
  }
   .top_testing_point_item_inner {
     display: block;
     width: 94%;
   }
   .top_testing_point_detail {
     width: 100%;
   }
   .top_testing_point_item_text {
     font-size: 1.6rem;
     line-height: 1.7;
     letter-spacing: 0.075em;
   }

   .top_testing_point_item {
     margin-bottom: 50px;
     margin-top: 0 !important;
   }
   
   .top_testing_point_item::before {
     top: -6% !important;
   }
   .top_testing_point_item_inner::before {
     width: 100%;
     height: 100% !important;
   }
   .top_point_item_img {
     width: 70%;
     margin: auto;
     top: 0;
     padding-top: 20px;
   }
   .top_testing_item_btn {
     text-align: center;
   }
   .top_testing_item_btn a::before {
     right: 20px;
     top: 21px;
   }
   .top_testing_point_detail {
     position: static;
     padding-top: 14px;
   }
   .top_testing_point_item_num {
      width: 38%;
      top: -24px !important;
      right: 12px !important;
      left: auto !important;
   }
   .top_testing_area {
    padding-bottom: 239px;
   }
  .top_testing_area_tit {
    margin: auto;
    padding: 0 28%;
  }
  .top_testing_area_tit::before {
    top: -82px;
    width: 30%
  }
  .top_testing_area_tit::after {
    width: 34%
  }
  .top_testing_area_list {
    margin-top: 30px;
    justify-content: space-between;
  }
   .top_testing_area_item {
     width: 48%;
     margin-bottom: 15px;
   }
   .top_testing_area_item:nth-child(3){
     margin-right: 0;
   }
   .top_testing_area_item a {
     font-size: 1.8rem;
     height: 210px;
   }
   .top_testing_area_item a img {
   width:   70%;
   margin: auto;
   }
   .top_testing_area_ill::before {
     width: 34%;
     bottom: -206px;
     background-position: bottom left;
   }
   .top_testing_graph_inner {
     width: 98%;
     padding:   0 2% 6%;
   }
   .top_testing_graph_inner::before {
     top:  108px;
     border-radius: 20px;
     height: calc(100% - 100px);
   }
   .top_testing_graph::before {
     background-size: 200%
   }
   .top_graph_item:first-child {
     margin-left: 0;
     margin-right: 3%
   }
   .top_testing_graph01 {
     padding-bottom: 50px
   }
   .top_graph_list {
     width: 98%;
     margin-top: 14px;
   }
   .top_graph_text {
     background-repeat: repeat;
     font-size: 1.6rem;
    line-height: 1.7;
    text-align: left;
    width: 95%;
    margin: auto;
   }
   .top_graph_text::before {
     right: 0;
     left: 0;
     margin: auto;
   }
  /*==================================================================

    .top_prev（スマホ）

  ==================================================================*/
  .top_prev {
    background-size: 200%;
    padding-bottom: 70px
  }
  .top_prev::after {
    width: 30%;
    top: -10px;
  }
  .top_prev::before {
    background-size: 200%
  }
  .top_prev_tit {
    display: block;
    font-size: 1.8rem;
    margin-bottom:90px;
  }
  .top_prev_tit::before {
    width: 12%;
    background-size: 100%;
    left :3%;
  }
  .top_prev_tit::after {
    width: 12%;
    background-size: 100%;
    right: 3%;
  }
   .top_prev_tit span {
     display: block;
     font-size:   2.7rem;
     line-height: 1.3;
   }
   .top_prev_tit span::before {
     left: auto;
     width: 70%;
     background-size: 100%;
     left: 0;right: 0;
     margin: auto;
     bottom: -20px;
   }
   .top_prev_list {
     padding: 30px 20px;
   }
   .top_prev_list::before {
     width: 100%
   }
   .top_prev_list dd {
     font-size: 1.6rem;
     letter-spacing: 0.04em;
     margin-bottom: 12px;
   }


   .top_prev_tit i {
     font-size: 2.2rem;
   }
   .top_prev_list_tit {
     font-size: 2rem;
   }
   .top_prev_list dd.top_prev_list_img {
     position: static;
     width: 90%;
     margin: 25px auto 0;
   }
   .top_prev_box {
     margin-top:   150px;
     padding: 60px 0 30px;

   }
   .top_prev_box_text {
    font-size: 1.6rem;
     letter-spacing: 0.05rem;
     line-height: 1.8;
   }
   .top_prev_box_ill {
     z-index: 3;
   }
   .top_prev_box_ill::before {
     top: -42vw;
     background-position: top left;
     width: 31%
   }
   .top_prev_box_ill::after{
     width: 38%;
     bottom: -10vw;
     background-position: bottom right;
     top: auto;
   }
   .top_prev_box_tit {
     padding: 20px;
     margin-top: 30px;
   }
   .top_prev_ill_bottom::before {
     bottom: -190px;
     width: 34%
   }

/*==================================================================

    .top_featuress（スマホ）

  ==================================================================*/
  .top_features  {
    padding-top: 60px;
    background-size: 170%
  }
  .top_features::before {
    width: 52%
  }
  .top_features::before {
    background-size: 100%;
  }
  .top_features_tit {
  padding:   0 23%;
  position: relative;
  z-index: 2;
  }
  .top_features_tit::before {
    top: -2px;
    right: 4%;
    width: 10%;
    background-size: 100%;
    background-position: top right;
  }
  .top_features_tit::after {
  top: -2px;
    left: 4%;
    width: 10%;
    background-size: 100%;
    background-position: top left;
  }
  .top_features_list {
    margin-top: 40px;
  }
  .top_features_item {
  margin-bottom: 40px;
  }
  .top_features_item::before {
    width: 80% !important;
    top: -10px !important;
  }
  .top_features_item_num {
  position: static;
  width: 47%;
  }
  
  .top_features_item_inner {
    display: block;
  }
  .top_features_item_img {
    width:  70%;
    margin: auto;
  }
  .top_features_item_detail {
    width: 100%;
    
  }
  .top_features_item_tit {
    font-size: 2rem;;
    padding-left: 0;
    padding-top: 0;
    margin-top: -10px;
    padding-bottom: 15px
  }
  .top_features_item_tit.item_line2 {
    padding-top: 10px;
  }
  .top_features_item_tit span {
    font-size: 2.5rem;
  }
  .top_features_item_text {
    font-size: 1.6rem;
    line-height: 1.8;
    letter-spacing: 0.1em;
  }
  /*==================================================================

    .top_flow（スマホ）

  ==================================================================*/ 
  .top_flow {
    padding-bottom: 112px;
  }
  .top_flow::before {
    top:  36px;
  }
  
  .top_flow::before {
    height: 96%;
  }
  .top_flow_tit {
    padding: 20px 28% 0;
    margin-bottom: 30px;
  }
   .top_flow_list {
     display: block;
     margin-bottom: 70px;
   }
   .top_flow_list::before {
     top: 10vw;
     width: 5px;
     height:74%;
     left: 17px;
     right: auto;
   }
   .top_flow_item {
     width: 100%;
     text-align: left;
     margin-bottom: 10%;
   }
   .top_flow_item_num {
     margin-left: 0;
     font-size: 2.8rem;
     margin-bottom: 15px;
   }
 
 .top_flow_item_detail {
   text-align: center;
   padding-top: 20px;
   width: 86%;
   margin: auto;
   
 }
 .top_flow_item_detail img {
   width: 40%;
 }
 .top_flow_text {
   font-size:   1.6rem;
   padding-top: 10px;
   padding-bottom: 15px;
   width: 90%;
   letter-spacing: 0.04em;
 }
 .top_flow_prec_tit {
 font-size:2.2rem;
 }
 .top_flow_prec_text {
   font-size:  1.5rem;
   letter-spacing: 0.04em;
 }
 
 .top_flow_prec {
   border: solid 5px #f8ddef;
   padding: 20px 15px 10px;
 }
 
  /*==================================================================

    .top_flow（スマホ）

  ==================================================================*/ 
  .top_qa {
    padding-top: 45px;
  }
  .qa_bg {
    z-index: 1;
  }
  .qa_bg::before {
    background-size: cover;
    z-index: -1;
  }
  .top_qa .cv_btn {
    position: relative;
    z-index: 2;
  }
  .top_qa .cv_btn::before {
    background-size: 100%;
    width: 40%;
  }
  .top_qa .cv_btn::after {
    width: 50%;
    background-size: 100%;
    top: auto;
    bottom: -50px;
    background-position: bottom right;
  }
  .top_qa_tit {
     font-size: 2.8rem;
  }
  .top_qa_tit_en {
     font-size: 1.9rem;
     line-height: 1.5;
  }
  .top_qa_wrap {
    margin: auto;
    left: 0;
    position: relative;
    z-index: 2;
  }
  .top_qa_wrap .accordion_tit::after {
    left: -3%;
    width: 54px;
    height: 54px;
    background-size: 100%;
  }
  .top_qa_wrap .accordion_tit {
    font-size: 1.6rem;
    padding: 15px 30px 15px 50px;
    line-height: 1.6
  }
  .top_qa_wrap .accordion_tit::before {
    width: 10px;
    height: 10px;
    right: 15px;
    background-size: 100%;
  }
  .top_qa_wrap .accordion_text::before {
    top: 18px;
    width: 35px;
    height: 46px;
    background-size: 100%;
    left: 3%;
  
  }
  .top_qa_wrap .accordion_text {
      padding: 16px 16px 16px 56px;
      font-size: 1.5rem;
      line-height: 1.7;
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
}
