@charset "UTF-8";
/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
MODULE
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
.header {
  position: fixed;
  background-color: #ffffff;
  top: 0;
  left: 0;
  width: 100%;
  height: 5rem;
  z-index: 1;
}

.header_wrap {
  width: 92.5%;
  height: 100%;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.header_logo {
  width: 18.8rem;
  z-index: 1;
}

@media print, screen and (min-width: 1024px) {
  .header {
    height: 8.8rem;
  }
  .header_logo {
    width: auto;
  }
}

@media print, screen and (min-width: 992px) {
  .header_logo {
    width: 23.2vw;
  }
}

/*-------------
グロナビ
-------------*/
.gnav {
  position: fixed;
  top: 0;
  right: 0;
  width: 30rem;
  height: 100%;
  background-color: rgba(178, 0, 0, 0.9);
  -webkit-transform: translateX(100%);
          transform: translateX(100%);
  visibility: hidden;
  -webkit-transition: all .3s;
  transition: all .3s;
  z-index: 100;
}

.gnav_wrap {
  padding: 2.5rem 2rem 0 7rem;
}

.gnav_cap {
  margin-bottom: 2.4rem;
  width: 8.6rem;
}

.gnav_item {
  border-bottom: 1px solid #ffffff;
}

.gnav_item:first-child {
  border-top: 1px solid #ffffff;
}

.gnav_item a {
  position: relative;
  color: #ffffff;
  padding: 2.2rem .9rem;
  font-size: 1.3rem;
  letter-spacing: .1em;
  display: block;
  font-weight: 700;
}

.gnav_item a::before {
  position: absolute;
  content: "";
  display: inline-block;
  width: .8rem;
  height: .8rem;
  background-color: transparent;
  border-top: 2px solid #ffffff;
  border-right: 2px solid #ffffff;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  right: .9rem;
  top: 0;
  bottom: 0;
  margin: auto 0;
}

.gnav_item.-manager {
  border-bottom: 0;
}

.gnav_item.-manager a {
  margin: 2.4rem 0;
  padding: 1.4rem .9rem;
  background-color: rgba(255, 255, 255, 0.8);
  color: #B20000;
  border-radius: .5rem;
}

.gnav_item.-manager a::before {
  border-top: 2px solid #B20000;
  border-right: 2px solid #B20000;
}

.gnav_btn {
  position: absolute;
  width: 4rem;
  height: 2.3rem;
  top: 2.5rem;
  left: 2rem;
}

.gnav_btnLine {
  position: absolute;
  content: "";
  display: block;
  width: 2.3rem;
  height: .15rem;
  background-color: transparent;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%);
          transform: translate(-50%);
}

.gnav_btnLine::before, .gnav_btnLine::after {
  position: absolute;
  content: "";
  display: block;
  height: .15rem;
  background-color: #ffffff;
  left: 0;
  right: 0;
  margin: 0 auto;
  -webkit-transition: all .3s;
  transition: all .3s;
}

.gnav_btnLine::before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.gnav_btnLine::after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

.drawerActive .gnav {
  -webkit-transform: translateX(0);
          transform: translateX(0);
  visibility: visible;
}

.gnav_trigger {
  position: fixed;
  width: calc(100% - 300px);
  height: 100%;
  visibility: hidden;
  background-color: transparent;
  top: 0;
  left: 0;
}

.gnav_trigger.active {
  visibility: visible;
  z-index: 5;
}

@media print, screen and (min-width: 992px) {
  .gnav {
    position: static;
    -webkit-transform: translateX(0);
            transform: translateX(0);
    visibility: visible;
    height: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    width: auto;
    background-color: transparent;
  }
  .gnav_wrap {
    padding: 0;
  }
  .gnav_cap {
    display: none;
  }
  .gnav_list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 0;
  }
  .gnav_item {
    border-bottom: none;
    margin-left: 3rem;
  }
  .gnav_item:first-child {
    border: 0;
  }
  .gnav_item a {
    padding: 0;
  }
  .gnav_item a::before {
    display: none;
  }
  .gnav_item.-manager {
    border-bottom: 0;
  }
  .gnav_item.-manager a {
    margin: 0;
    padding: 0;
    background-color: transparent;
    color: #000000;
  }
  .gnav_btnLine {
    display: none;
  }
  /* .sp_none {
    display: inline-block;
  } */
}

@media print, screen and (min-width: 992px) {
  .gnav_item a {
    color: #000000;
    font-size: 1.6rem;
  }
  .gnav_item a::after {
    position: absolute;
    content: "";
    display: block;
    opacity: 0;
    width: .8rem;
    height: .8rem;
    border-bottom: 3px solid #E63C3C;
    border-right: 3px solid #E63C3C;
    bottom: 0;
    left: 50%;
    -webkit-transform: translateX(-50%) rotate(45deg);
            transform: translateX(-50%) rotate(45deg);
    -webkit-transition: all .3s;
    transition: all .3s;
  }
  .gnav_item a:hover {
    color: #E63C3C;
  }
  .gnav_item a:hover::after {
    bottom: -.5rem;
    -webkit-transition: all .3s;
    transition: all .3s;
    opacity: 1;
  }
  .gnav_item.-manager a::after {
    display: none;
  }
}

@media print, screen and (min-width: 992px) and (max-width: 1500px) {
  .gnav_item {
    margin-left: 2vw;
  }
  .gnav_item a {
    font-size: 1.06667vw;
  }
}

/*-------------
ハンバーガーボタン
-------------*/
.gnavBtn {
  position: relative;
  width: 3rem;
  height: 3rem;
  background-color: transparent;
  z-index: 1;
}

.gnavBtn_line {
  position: absolute;
  width: 2.5rem;
  height: .2rem;
  background-color: #E63C3C;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}

.gnavBtn_line::before, .gnavBtn_line::after {
  position: absolute;
  content: "";
  display: block;
  height: .2rem;
  background-color: #E63C3C;
  left: 0;
  right: 0;
  margin: 0 auto;
  -webkit-transition: all .3s;
  transition: all .3s;
}

.gnavBtn_line::before {
  width: 3rem;
  bottom: .9rem;
}

.gnavBtn_line::after {
  width: 2.5rem;
  top: .9rem;
}

@media print, screen and (min-width: 992px) {
  .gnavBtn {
    display: none;
  }
}


/* main */
.main {
  margin-top: 5rem;
}

@media print, screen and (min-width: 992px) {
  .main {
    margin-top: 8.8rem;
    width: 100%;
  }
}

.container {
  position: relative;
  width: 78.6%;
  margin: 0 auto;
}

@media print, screen and (min-width: 768px) {
  .container {
    max-width: 1100px;
  }
}


.js-fadeIn {
  opacity: 0;
  -webkit-transform: translateY(15%);
          transform: translateY(15%);
  -webkit-transition: all 1s;
  transition: all 1s;
}

.js-fadeIn.show {
  -webkit-transform: translateY(0);
          transform: translateY(0);
  opacity: 1;
}

/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
PAGE
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/

.pc_none {
  display: none;
}
.sp_none {
  display: block;
}

@media print, screen and (max-width: 768px) {
  .pc_none {
    display: block;
  }
  .sp_none {
    display: none;
  }
}

.flex{
  display: flex;
}

/* fv */
.fv {
  background-color: #D9382B;
  padding: 50px 0 25px;
  position: relative;
}
.fv_inner{
  max-width: 1200px;
  margin: 0 auto;
}
.fv img.scroll{
  position: absolute;
  right: 80px;
  bottom: 0;
  animation: scroll 3.0s infinite;
}
@media print, screen and (max-width: 1200px) {
  .fv img.scroll{
    display: none;
  }
}
@keyframes scroll {
  0% {
    transform: translate(0, 0);
  }
  80% {
    transform: translate( 0, 30px);
  }
  0% {
    opacity: 1;
  }
  80%, 100% {
    opacity: 0;
  }
}
@media print, screen and (max-width: 768px) {
  .fv {
    padding: 40px 0 10px;
  }
  .fv_inner{
    width: 92.5%;
  }
}

/* deau */
.deai{
  margin: 30px auto 40px;
  text-align: center;
  width: 915px;
}
.deai p{
  font-size: 2.5rem;
  font-weight: 600;
  letter-spacing: 1px;
  margin-bottom: 20px;
}
.deai img{
  text-align: center;
}
.deai img.deai_lead{
  margin: 50px auto;
  display: block;
}
.deai .flex{
  justify-content: space-between;
}
@media print, screen and (max-width: 768px) {
  .deai{
    margin: 20px auto;
    width: 92.5%;
  }
  .deai p{
    font-size: 1.5rem;
    letter-spacing: 0;
  }
  .deai img{
    width: 60%;
    height: auto;
  }
  .deai img.deai_lead{
    margin: 20px auto;
    width: 80%;
  }
  .deai .flex{
    justify-content: space-between;
  }
  .deai .flex img{
    width: 31%;
  }
}

/* btn */
.btn_box{
  width: 720px;
  margin: 20px auto 20px;
  text-align: center;
}
.btn_line{
  position: relative;
  z-index: 100;
  width: 290px;
  margin: 0 auto;
  padding: 10px 0;
  background-color: #00A044;
  border-radius: 28px;
  border: 2px solid #fff;
  color: #fff;
  font-size: 2.1rem;
  font-weight: 600;
  letter-spacing: 0.75px;
  text-align: center;
}
.fv_btnBox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: auto;
  height: auto;
}
.fv_btnBox a {
  position: relative;
  display: inline-block;
  color: #ffffff;  
  border-radius: 100px; 
  font-size: 2.8rem;
  font-weight: 600;
  letter-spacing: 5px;
  padding: 40px 0 25px;  
  background: transparent;
  overflow: hidden; 
  top: -25px;
}
.fv_btnBox a.row1 {
  width: 100%;
}
.fv_btnBox a::before {
  position: absolute;
  content: "";
  display: block;
  width: 1.9rem;
  height: 1.9rem;
  border-top: 2px solid #ffffff;
  border-right: 2px solid #ffffff;
  top: calc(50%);
  right: 3.7rem;
  -webkit-transform: translateY(-50%) rotate(45deg);
          transform: translateY(-50%) rotate(45deg);
}
.fv_btnBox a::after {
  position: absolute;
  content: "";
  display: block;
  width: 200%;
  height: 100%;
  background: rgb(237,135,61);
  background: linear-gradient(90deg, rgba(237,135,61,1) 0%, rgba(234,84,76,1) 50%, rgba(237,135,61,1) 100%);
  top: 0;
  right: 0;
  left: auto;
  z-index: -1;
  -webkit-transition: all .3s;
  transition: all .3s;
}
.fv_btnBox a:hover::after {
  right: -100%;
  -webkit-transition: all .3s;
  transition: all .3s;
}

@media print, screen and (max-width: 768px) {
  .btn_box_sp{
    margin: 30px auto 0;
    text-align: center;
    position: relative;
  }
  .btn_box_sp .btn_line{
    position: relative;
    top: -10px;
    width: auto;
    display: inline-block;
    font-size: 1.1rem;
    padding: 5px 10px ;
  }
  .btn_box_sp .fv_btnBox {
    margin-bottom: -5px;
  }
  .btn_box_sp .fv_btnBox a {
    background: rgb(237,135,61);
    background: linear-gradient(90deg, rgba(234,84,76,1) 0%, rgba(237,135,61,1) 100%);
    border-radius: 0;
    font-size: 1.6rem;
    letter-spacing: 1px;
    padding: 20px 0 10px ;
    margin: 0 auto;
  }
  .btn_box_sp .fv_btnBox a span{
    margin-left: 60px;
  }
  .btn_box_sp .fv_btnBox img.btn_img01{
    position: absolute;
    width: 72px;
    height: auto;
    top: -10px;
    left: 40px;
  }
  .fv_btnBox a::before {
    width: 1.0rem;
    height: 1.0rem;
    border-top: 2px solid #ffffff;
    border-right: 2px solid #ffffff;
  }
}
/* company */
.company {
  background-color: #E7E7E7;
  padding: 50px 0;
}
.company h2{
  text-align: center;
  padding-bottom: 50px;
}
.company_wrap,
.company_wrap2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 11.2rem;
  overflow: hidden;
}
.company_wrap2{
  margin-top: 20px;
}
.company_list,
.company_list2{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-animation: loop 120s infinite linear 1s both;
          animation: loop 120s infinite linear 1s both;
}
@-webkit-keyframes loop {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
}
@keyframes loop {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
}
.company_item {
  width: 15.3rem;
  height: 11.2rem;
  margin: 0 1.5rem;
}
.company_item img {
  width: 100%;
}
@media print, screen and (max-width: 768px) {
  .company {
    padding: 30px 0;
    margin: 0 auto;
  }
  .company_heading {
    width: 70%;
    height: auto;
    margin: 0 auto 20px;
  }
  .company h2{
    text-align: center;
    padding-bottom: 0;
  }
}

/* onayami */
.onayami{
  padding: 50px 0;
  background-color: #D9382B;
  margin-bottom: 26px;
  position: relative;
  text-align: center;
}
.onayami::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  border-style: solid;
  border-width: 26px 30px 0 30px;
  border-color: #D9382B transparent transparent;
  translate: -50% 100%;
}
.onayami .case {
  width: 1200px;
  margin: 70px auto 0;
  justify-content: space-between;
}
.onayami .case li{
  width: 356px;
  border-radius: 30px;
  background: #fff;
  position: relative;
  text-align: center;
}
.onayami .case li h3{
  background: #2F5882;
  font-weight: 600;
  font-size: 2rem;
  letter-spacing: 2px;
  display: inline-block;
  padding: 10px 50px;
  color: #fff;
  border-radius: 30px;
  position: relative;
  top: -26px;
}
.onayami .case li p{
  color: #2F5882;
  font-size: 2.2rem;
  font-weight: 600;
  letter-spacing: 1px;
  line-height: 1.4;
}
.onayami .case li p span{
  color: #D9382B;
}
.onayami .case li img{
  margin: 10px auto 20px;
}
@media print, screen and (max-width: 768px) {
  .onayami{
    width: 100%;
    padding: 30px 0 10px;
    margin: 0;
  }
  .onayami::after {
    border-width: 13px 15px 0 15px;
  }
  .onayami h2 img{
    width: 90%;
  }
  .onayami .sp_none {
    display: none;
  }
  .onayami .case {
    width: 92.5%;
    margin: 20px auto 10px;
    border-radius: 10px;
    background: #fff;
  }
  .onayami .case .case_box{
    width: 50%;
    height: auto;
    border-radius: 0;
    background: none;
    margin: 0 auto;
  }
  .onayami .case h3{
    background: #2F5882;
    font-weight: 600;
    color: #fff;
    display: inline-block;
    border-radius: 30px;
    letter-spacing: 2px;
    font-size: 1.4rem;
    top: auto;
    padding: 5px 20px 4px;
    margin: 15px auto 10px;
  }
  .onayami .case .case_box p{
    color: #2F5882;
    font-size: 1.4rem;
    font-weight: 600;
    letter-spacing: 0;
    line-height: 1.4;
  }
  .onayami .case .case_box p span{
    color: #D9382B;
  }
  .onayami .case .case_box img{
    width: 60px;
    height: auto;
    padding: 0;
    margin: 0;
  }
  .onayami .case > .case_box:first-child{
    width: 100%;
  }
  .onayami .case .case_box:first-child .case_inner{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 70%;
    margin: 0 auto;
  }
  .onayami .case .case_wrap{
    display: flex;
    width: 100%;
  }
}

/* osusume */
.osusume { 
  width: 700px;
  margin: 40px auto;
  text-align: center;
  position: relative;
}
.osusume h2{
  color: #D9382B;
  font-size: 4rem;
  font-weight: 600;
  letter-spacing: 5px;

  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
}
.osusume h2::before,
.osusume h2::after{
  content: "";
  width: 44px;
  height: 2px;
  background-color: #D9382B;
}
.osusume h2::before {
  transform: rotate(60deg);
  margin-right: 6px;
}
.osusume h2::after {
  transform: rotate(-70deg);
}
.osusume .flex{
  margin-top: 30px;
  justify-content: space-around;
  align-items: flex-start;
  position: relative;
}
.osusume p{
  width: 450px;
  position: relative;
  font-size: 1.2rem;
  color: #666;
  margin-top: 10px;
  letter-spacing: 2px;
  margin-top: -40px;
} 

@media print, screen and (max-width: 768px) {
  .osusume{
    width: 92.5%;
    margin: 30px auto ;
  }
   .osusume h2{
    font-size: 2.4rem;
    letter-spacing: 0;
  }
  .osusume h2::before,
  .osusume h2::after{
    height: 1px;
  }
  .osusume h2::before {
    margin-right: 3px;
  }
  .osusume .flex {
    margin: 20px auto;
    justify-content: space-evenly;
    align-items: center;
  }
  .osusume .flex img{
    width: 60%;
  }
  .osusume .flex img.oricon{
    width: 25%;
    height: auto;
  }
  .osusume p{
    width: auto;
    height: auto;
    margin: 0;
  }
}

/* point4 */
.point4 {
  background: #E7E7E7;
  text-align: center;
  margin: 0 auto;
  padding: 50px 0;
}
.reason_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  max-width: 1200px;
  margin: 60px auto 0;
  text-align: left;
}
.reason_item {
  position: relative;
  background-color: #ffffff;
  border-radius: .8rem;
  width: calc((100% - 4rem) / 2);
  margin: 0;
  padding: 4.7rem 2.8rem 3.0rem 2.8rem;
}
.reason_item:nth-child(odd) {
  margin-right: 4rem;
}
.reason_item:nth-of-type(n+3) {
  margin-top: 6.2rem;
}  
.reason_num {
  position: absolute;
  top: -2.2rem;
  left: 2.8rem;
  width: 6.1rem;
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
.reason_img {
  margin: 0 auto;
  margin-bottom: 2.4rem;
  position: absolute;
  max-width: 208px;
  right: 2.8rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.reason_catch {
  font-weight: 700;
  text-align: left;
  font-size: 2.2rem;
  /* display: inline-block; */
  margin-top: 5px;
  line-height: 1.4;
}
.reason_itemTxt {
  font-size: 1.4rem;
  max-width: 265px;
  text-align: left;
  line-height: 1.6;
  margin-top: 5px;
}

@media print, screen and (max-width: 768px) {
  .point4 {
    width: 100%;
    padding: 30px 0 1px;
  }
  .point4 h2 img{
    width: 92.5%;
    height: auto;
  }
  .reason_list {
    display: inherit;
    max-width: 92.5%;
    margin: 10px auto 0;
  }
  .reason_item {
    position: relative;
    width: 100%;
    margin-bottom: 20px;
    padding: 2.7rem 2.8rem;
    text-align: center;
    border-radius: 0.5rem;
  }
 .reason_item:nth-child(odd) {
    margin-right: 0;
  }
  .reason_item:nth-of-type(n+3) {
    margin-top: 0;
  }  
  .point4 .flex{
    width: 88%;
    margin: 0 auto;
    align-items: center;
    justify-content: space-evenly;    
  }
  .reason_num{
    position: relative;
    top: auto;
    left: auto;
    -webkit-transform: inherit;
    transform: inherit;
    width: 7rem;
    height: auto;
    margin-left: 10px;
  }
  .reason_img{
    position: relative;
    top: auto;
    right: auto;
    -webkit-transform: inherit;
    transform: inherit;
    width: 120px;
    height: auto;
    margin: 0;
  } 
  .reason_catch {
    margin: 10px auto;
    font-weight: 600;
    font-size: 1.8rem;
    text-align: center;
  }
  .reason_itemTxt {
    text-align: center;
    font-size: 1.2rem;
    width: 100%;
    margin: 0 auto;
  }
  .reason_itemTxt span {
    padding-left: 5px;
    display: inline;
  }
}

/* support */
.step{
  background: #D9382B;
  text-align: center;
  margin: 0 auto;
  padding: 50px 0 0;
}
.step .step_list{
  margin: 50px auto 0;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  text-align: left;
  width: 1200px;
}
.step .step_list .step_item {
  width: 575px;
  background: #fff;
  margin-bottom: 50px;
  border-radius: 10px;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-direction: row-reverse;
  padding: 45px 0; 
} 
.step .step_list li .supppot_item{
  width: 300px;
  margin-left: 30px;
  font-size: 1.4rem;
}
.step li .supppot_item h3{
  font-size: 2.2rem;
  font-weight: 600;
  margin-bottom: 10px;
}
.step li img{
  margin-right: 30px;
  width: 185px;
  height: auto;
}

@media print, screen and (max-width: 768px) {
  .step {
    background-color: #E63C3C;
    padding: 3.0rem 0;
  }
  .step h2{
    width: 85%;
    margin: 0 auto 20px;
    font-size: 1.6rem;
  }  
  .step_wrap {
    max-width: 1100px;
    margin: 0 auto;
  }
  .step .step_list{
    width: 100%;
    margin: 0;
    position: relative;
  }
  .step .step_list li.step_item {
    width: 250px;
    margin: 0 .8rem;
    background-color: #ffffff;
    border-radius: .8rem;
    text-align: center;
    padding: 3.4rem 1.6rem 3rem;
    display: inline-block;
  }   
  .step .step_list li img{
    margin: 0 auto 10px;
    width: 80%;
    height: auto;
  }
  .step .step_list li .supppot_item{
    width: 95%;
    margin: 0 auto;
    font-size: 1.4rem;
  }  
  .step .step_list li .supppot_item h3{
    font-size: 1.8rem;
    font-weight: 600;
  }
  .step .step_list li .supppot_item .supppot_itemTxt{
    font-size: 1.3rem;
    line-height: 1.6;
  }
  .step .slick-slider {
    position: relative;
  }
  .step .slick-slide img {
    display: inline-block;
  }
  .step_dots {
    margin-top: 2.8rem;
  }
  .step .slick-dots {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .step .slick-dots li {
    font-size: 0;
    width: .7rem;
    height: .7rem;
    background-color: #F7C3C3;
    border-radius: 100px;
    margin: 0 .6rem;
  }
  .step .slick-dots li.slick-active {
    background-color: #424242;
  }
}

/* voice */
.voice{
  background: #E7E7E7;
  padding: 50px 0 0;
  text-align: center;
}
.voice ol{
  width: 1200px;
  margin: 60px auto 0;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.voice ol li{
  position: relative;
  width: 575px;
  background: #fff;
  margin-bottom: 50px;
  border-radius: 10px 10px 0 0;
  padding-top: 10px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.voice ol li .nun{
  position: relative;
  display: inline-block;
  color: #fff;
  font-size: 2.0rem;
  font-weight: 600;
  letter-spacing: 2px;
  width: 180px;
  padding: 5px;  
  border-radius: 100px; 
  top: -28px; 
  margin: 0 auto;
}
.voice ol li.v01 .nun,
.voice li.v01 .info dl dt,
.voice ol li.v01 .merit{
  background-color: #D9382B;
}
.voice ol li.v02 .nun,
.voice li.v02 .info dl dt,
.voice ol li.v02 .merit{
  background-color: #00C373;
}
.voice ol li.v03 .nun,
.voice li.v03 .info dl dt,
.voice ol li.v03 .merit{
  background-color: #D9992B;
}
.voice ol li.v04 .nun,
.voice li.v04 .info dl dt,
.voice ol li.v04 .merit{
  background-color: #1ACBD7;
}
.voice li .info{
  display: flex;
  align-items: center;
  width: 520px;
  margin: 0 auto;
}
.voice li .info dl{
  margin-left: 20px;
  font-size: 1.3rem;
  display: flex;
  align-items: center;
  letter-spacing: 2px;
}
.voice li .info dl:first-child{
  margin-bottom: 15px;
}
.voice li .info dl dt{
  color: #fff;
  font-weight: 400;
  padding: 2px 4px 2px 5px;
  margin-right: 10px;
}
.voice li .info dl dd{
  font-weight: 600;
  font-size: 1.4rem;
}
.voice ol li h3{
  font-weight: 600;
  font-size: 2.0rem;
  text-align: left;
  margin: 20px 30px 0;
}
.voice ol li p{
  text-align: left;
  margin: 5px 30px 20px;
  font-size: 1.4rem;
  letter-spacing: 1px;
}
.voice ol li .merit{
  padding: 20px 20px 0;
  position: relative;
  color: #fff;
  font-weight: 600;
  text-align: center;
  letter-spacing: 1px;
}
.voice ol li .merit::before{
  content: "";
  position: absolute;
  top: -10px;
  left: 50%;
  border-style: solid;
  border-width: 10px 13px 0 13px;
  border-color: #fff transparent transparent;
  translate: -50% 100%;
}
.voice ol li .merit .tit{
  border-bottom: 1px solid #fff;
  font-size: 1.3rem;
  padding-bottom: 5px;
  margin-bottom: 5px;
}
.voice ol li .merit p{
  text-align: center;
  font-size: 1.7rem;
}

@media print, screen and (max-width: 768px) {
  .voice{
    padding: 30px 0 0;
  }
  .voice h2{
    width: 90%;
    margin: 0 auto;
  }
  .voice ol{
    width: 92.5%;
    margin: 30px auto 0;
  }
  .voice ol li{
    width: 100%;
    margin-bottom: 30px;
  }
  .voice ol li .nun{
    font-size: 1.4rem;
    width: auto;
    padding: 4px 20px 3px; 
    top: -24px; 
  }
  .voice li .info{
    width: 90%;
  }
  .voice li .info img{
    width: 65px;
  }
  .voice li .info dl{
    margin-left: 10px;
    font-size: 1.1rem;
    letter-spacing: 1px;
  }
  .voice li .info dl dt{
    padding: 1px 3px 1px 3px;
  }
  .voice li .info dl dd{
    font-size: 1.2rem;
  }
  .voice li .info dl:first-child{
    margin-bottom: 5px;
  }
  .voice ol li h3{
    font-weight: 600;
    font-size: 1.8rem;
    text-align: center;
    margin: 20px 0 0;
  }
  .voice ol li p{
    text-align: center;
  }
  .voice ol li .merit .tit{
    font-size: 1.0rem;
  }
  .voice ol li .merit p{
    font-size: 1.4rem;
  }
}

/* footer */
.footer {
  margin-top: 6rem;
  padding-bottom: 9.8rem;
  text-align: center;
}
.footer_sns {
  margin-bottom: 4rem;
}
.footer_snsShare {
  text-align: center;
  margin-bottom: 1rem;
}
.footer_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
  justify-content: space-around;
  margin: 10px auto 80px;
  width: 400px; 
}
.footer_list li{
  width: 8rem;
}
.footer_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 2.2rem;
}
.footer_logo {
  margin-right: 1.5rem;
}
.footer_copyright {
  font-size: 1.4rem;
  text-align: center;
  letter-spacing: 2px;
}

@media print, screen and (max-width: 768px) {
  .footer{
    margin: 30px auto 0;
    padding-bottom: 80px;
    /* padding-bottom: 3rem; */
  }
  .footer h2 {
    width: 85px;
    margin: 0 auto;
  }
  .footer_sns {
    margin-bottom: 30px;
  }
  .footer_list {
    margin: 10px auto;
    width: 55%
  }
  .footer_list li{
    width: 4.5rem;
  }
  .footer_box {
    justify-content: center;
    margin-bottom: 10px;
  }
  .footer_logo {
    width: 7.5rem;
  }
  .footer_privacymark{
    width: 6.5rem;
  }
  .footer_copyright {
    font-size: 1.2rem;
  }
}

/* cta */
.cta {
  width: 100%;
  background-color: rgba(255, 255, 255, 0.77);
  position: fixed;
  bottom: 0;
  left: 0;
  padding: 1.2rem 0;
  -webkit-transform: translateY(100%);
          transform: translateY(100%);
  -webkit-transition: all 0.3s cubic-bezier(0.68, -0.55, 0.265, 1.55);
  transition: all 0.3s cubic-bezier(0.68, -0.55, 0.265, 1.55);
  text-align: center;
}
.cta_wrap {
  padding: 0 2.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  letter-spacing: .018em;
}
.cta_btn {
  position: relative;
  font-size: 1.3rem;
  display: block;
  padding: .75rem 1.6rem;
  background: #eb7730;
  background: linear-gradient(225deg, #eb7730 50%, #e63c3c 100%);
  border-radius: 100px;
  text-align: center;
  font-weight: 700;
  color: #ffffff;
}
.cta_btn span {
  display: block;
  font-size: 1rem;
}
.cta_btn:nth-of-type(2) {
  margin-left: 1.6rem;
}
.cta.show {
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition: all 0.3s cubic-bezier(0.68, -0.55, 0.265, 1.55);
  transition: all 0.3s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}
@media print, screen and (min-width: 768px) {
  .cta {
    width: 100%;
    background-color: rgba(255, 255, 255, 0.77);
    position: fixed;
    bottom: 0;
    left: 0;
    padding: 1.2rem 0;
  }
  .cta .btn_box{
    margin: 5px auto -15px;
  }
  .cta_wrap {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
}
@media print, screen and (max-width: 768px) {
  .btn_line{
    font-size: 1.4rem;
    padding: 5px 20px;
    width: auto;
    display: inline-block;

  }
  .fv_btnBox a {
    font-size: 1.6rem;
    padding: 15px 0 10px;  
    letter-spacing: 1px;
    top: -15px;
  }
  .btn_box {
    margin: 5px auto -10px;
  }
  .fv_btn{
    margin-bottom: 0;
  }
}

.notice{
  border: #E61E19 1px solid;
  padding: 25px;
  color: #E61E19;
  font-weight: 400;
  font-size: 15px;
  line-height: 1.8;
  width: 500px;
  margin: 40px auto 60px;
  
}
.notice .readmore02{
  color: #000;
  text-align: center;
  margin-top: 1em;
}
.notice .readmore02 p{
  text-align: left;
}
.notice .readmore02 button.b_hidden02{
  display: none;
}
.notice .readmore02 button {
  border: none;
  background: none;
  vertical-align: middle;
  font-size: 13px;
  color: #666;
  font-weight: 400;
  position: relative;
}
.notice .readmore02 button.close {
  margin-top: 15px;
}
.notice .readmore02 button span {
  font-weight: 600;
  font-size: 16px;
  color: #000;
  position: relative;
  top: 2px;
  margin-left: 10px;
} 
.notice .readmore02 button.close span {
  top: 1px;
}
.notice .readmore02{
  position: relative;
  /* margin: 1em auto; */
}
.notice .readmore-content02{
  position: relative;
  height: 0;
  transition: all 0.4s;
  overflow: hidden;
}
.notice .readmore-content02 p strong{
  font-weight: 600;
}