
/* 全体設定
------------------------------------------------------------*/
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@500;700;900&display=swap');
body {
  font-family: 'Noto Sans JP', Arial,Helvetica, "Yu Gothic", "游ゴシック体","游ゴシック", "ヒラギノ角ゴProN W3", "Hiragino Kaku Gothic ProN","メイリオ ", Meiryo, sans-serif;
  font-size: 16px;
  line-height: 1.1;
  letter-spacing: 1px;
  color: #4f4f4f;
  width: 100%;
  word-wrap: break-word;
  overflow-wrap: break-word;
  font-feature-settings: "palt";
  overflow-x: hidden;
  text-align: justify;
}
@media screen and (max-width: 768px) {
  body {
    font-size: 3.645vw;
  }
}

*, *:before, *:after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}


a {
  margin: 0;
  padding: 0;
  text-decoration: none;
  outline: 0;
  vertical-align: baseline;
  background: transparent;
  font-size: 100%;
  transition: opacity .3s ease;
}

a:hover, a:active {
  outline: none;
  text-decoration: none;
  opacity: 0.7;
  transition: opacity .3s ease;
}

img {
  vertical-align: top;
  image-rendering: -webkit-optimize-contrast;
  max-width: 100%;
  height: auto;
}
@media screen and (max-width: 768px) {
  img {
    width: 100%;
  }
}


.pc_dpb {
  display: block;
}
.sp_dpb {
  display: none;
}
@media screen and (max-width: 768px) {
  .pc_dpb {
    display: none;
  }
  .sp_dpb {
    display: block;
  }
}

.link_none {
  pointer-events: none
}

.block {
  max-width: 1000px;
  width: 100%;
  margin: 0 auto;
}
.sp_block_inner {
  width: 96%;
  margin: 0 auto;
}
.fw-bold {
  font-weight: bold;
}
.txt-al-r {
  text-align: right;
}
.txt-al-l {
  text-align: justify;
}
.text_blue {
  color: #5590e1;
}
.text_red {
  color: #f07171;
}
.text_yellow {
  color: #f9fbc3;
}
.text_white {
  color: #fff;
}
.sm_text {
  font-size: 14px;
}
.note_text {
  font-size: 10px;
}
.p_re {
  position: relative;
}
.float_l {
  float: left;
}
.blue_btn {
  background-image: url("../img/fv_cv_btn01.png");
  background-size: cover;
  display: inline-block;
  position: relative;
  color: #fff;
  border-radius: 5px;
  padding: 6% 0 8%;
}
.red_btn {
  background-image: url("../img/fv_cv_btn02.png");
  background-size: cover;
  display: inline-block;
  position: relative;
  color: #fff;
  border-radius: 5px;
  padding: 6% 0 8%;
}
.right_arrow::before {
  content: "";
  width: 10px;
  height: 10px;
  background-image: url("../img/right_arrow.png");
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  right: 3%;
  top: 50%;
  transform: translateY(-50%);
}
.down_arrow::before {
  content: "";
  width: 10px;
  height: 10px;
  background-image: url("../img/down_arrow.png");
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  right: 3%;
  top: 50%;
  transform: translateY(-50%);
}
@media screen and (max-width: 768px) {
  .right_arrow::before {
    width: 2.5vw;
    height: 2.5vw;
  }
  .down_arrow::before {
    width: 2.5vw;
    height: 2.5vw;
  }
}

/*------------kv------------------*/
.kv_btn {
  display: flex;
  align-items: end;
  justify-content: space-between;
  text-align: center;
  margin-top: 10px;
}
.kv_btn_l, .kv_btn_r {
  display: flex;
  align-items: center;
  justify-content: right;
  width: 50%;
  font-weight: bold;
}
/*---キャンペーン実施中をいれたいときの下文字揃え---*/
/* .kv_btn_r {
  align-items: end;
} */
.kv_btn_l {
  color: #5590e1;
}
.kv_btn_r {
  color: #f07171;
}
.campaign_icon_pc {
  margin-bottom: 5px;
}
.kv_btn_block {
  width: 62%;
  text-align: justify;
}
.kv_btn a {
  font-size: 22px;
  width: 79%;
  height: 55px;
  text-align: center;
  margin-left: 15px;
  font-weight: bold;
}
.kv_btn a.blue_btn, .kv_btn a.red_btn {
  border-radius: 5px;
  padding: 4.5% 0 6%;
}
.kv .note_text {
  margin-right: 49px;
}

@media screen and (max-width: 768px) {
  .kv_btn_l, .kv_btn_r {
    display: block;
  }
  .kv_btn {
    margin-bottom: 15px;
    width: 96%;
    margin-left: auto;
    margin-right: auto;
  }
  .kv_btn_block {
    width: 100%;
    text-align: center;
    margin-top: 1vw;
  }
  .kv_btn a {
    font-size: 4.864vw;
    width: 95%;
    text-align: center;
    margin-left: 0;
    font-weight: normal;
    height: auto;
  }
  .kv .note_text.txt-al-r {
    font-size: 2.302vw;
    text-align: justify;
    margin-bottom: 12vw;
    margin-right: auto;
  }
  .fv_campaign_sp {
    width: 60%;
    margin-bottom: 1vw;
  }
}



/*--------cnt01---------*/
.cnt01 {
  background-image: url("../img/cnt01_bg.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  padding: 5% 0;
}
.cnt01-01 {
  position: absolute;
  right: 8.5%;
  width: 455px;
  bottom: 180px;
  line-height: 1.8;
}
.cnt01-02 {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 150px;
}
.cnt01-02 ul {
  display: table;
  width: 850px;
  font-size: 14px;
}
.cnt01-02 ul li {
  padding: 8px 15px 0;
  display: table-cell;
  border-right: 2px solid #fbd799;
  width: 25%;
}
.cnt01-02 ul li:last-child {
  border-right: none;
}
.cnt01-02_title {
  color: #5590e1;
  font-weight: bold;
  text-align: center;
  margin: 10px 0;
  font-size: 16px;
}
.cnt01-02_text {
  font-size: 14px;
  line-height: 1.8;
}
@media screen and (max-width: 768px) {
  .cnt01 {
    padding: 0;
  }
  .cnt01 .mb30 {
    margin-bottom: 0;
  }
  .cnt01-01 {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    width: 80%;
    bottom: 24%;
    line-height: 1.8;
  }
  .cnt01-02 {
    position: relative;
  }
  .cnt01-02_text {
    font-size: 3.385vw;
    line-height: 1.3;
  }
  .cnt01-02_sp01, .cnt01-02_sp02,
  .cnt01-02_sp03, .cnt01-02_sp04 {
    position: absolute;
    width: 40%;
    line-height: 1.1;
  }
  .cnt01-02_sp01 {
    top: 35%;
    left: 6.5%;
  }
   .cnt01-02_sp02 {
    left: 6.5%;
    top: 70%;
  }
   .cnt01-02_sp03 {
    top: 35%;
    right: 5.5%;
  }
   .cnt01-02_sp04 {
    right: 5.5%;
    top: 70%;
  }
  .cnt01-02_title {
    margin: 3vw 0;
    font-size: 3.733vw;
  }
}

/*-------------cnt02--------------------*/
.cnt02-point1 {
  background-image: url("../img/cnt02-poiont01-bg.jpg");
  background-size: cover;
  background-repeat: no-repeat;
}
.cnt02-point1_text {
  line-height: 1.8;
  margin: 3vw auto;
  text-align: center;
}
.cnt02-point1_02l {
  width: 50%;
}
.cnt02-point1_02r {
  position: absolute;
  bottom: -7%;
  right: 5%;
}
@media screen and (max-width: 768px) {
  .cnt02-point1 {
    background: none;
  }
  .cnt02-point1 .block {
    background-image: url("../img/sp/cnt02-point01-bg.jpg");
    background-size: cover;
    background-repeat: no-repeat;
  }
  .cnt02-point1_text {
    text-align: justify;
    width: 90%;
  }
}

.cnt02-point2 {
  margin-top: 100px;
}
.cnt02-point2_block {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}
.cnt02-point2_r {
  width: 48%;
  margin-right: 3.5%;
}
.cnt02-point2_title {
  text-align: center;
}
.cnt02-point2_title span {
  background-color: #5590e1;
  font-weight: bold;
  border-radius: 50px;
  padding: 5px 20px;
  color: #fff;
  position: relative;
  display: inline-block;
}
.cnt02-point2_title span::before {
  content: "";
  width: 22px;
  height: 16px;
  background-image: url("../img/blue-tri.png");
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  bottom: -10px;
  left: 50%;
  transform: translateX(-50%);
}
.cnt02-point2_text {
  line-height: 1.8;
  margin-top: 15px;
}
.cnt02-point2_text span {
  font-size: 26px;
  color: #0055b8;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  .cnt02-point2 {
    margin-top: 0;
  }
  .cnt02-point2_block {
    display: block;
    background-color: #f0f7ff;
    text-align: center;
    padding-bottom: 4vw;
  }
  .cnt02-point2_title span {
    padding: 1vw 3vw 1.5vw;
  }
  .cnt02-point2_text span {
    font-size: 6.25vw;
    color: #0055b8;
  }
  .cnt02-point2_title span::before {
    width: 3vw;
    height: 2.5vw;
    bottom: -2.4vw;
  }
}



/*-----------cnt03---------------*/
.cnt03_box {
  display: flex;
  justify-content: center;
}
.cnt03_l_title, .cnt03_r_title {
  font-size: 20px;
  color: #fff;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  width: 95%;
  font-weight: bold;
  text-align: center;
}
.cnt03_l_title {
  top: 30px;
}
.cnt03_r_title {
  top: 10px;
  line-height: 1.5;
}
.cnt03_l_inner, .cnt03_r_inner {
  width: max-content;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 130px;
}
.cnt03_l_inner ul li, .cnt03_r_inner ul li {
  margin-bottom: 15px;
  padding-left: 35px;
  font-size: 14px;
  line-height: 1.5;
  position: relative;
}
.cnt03_l_inner ul li::before {
  content: "";
  width: 23px;
  height: 23px;
  background-image: url("../img/check-blue.png");
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  top: 4px;
  left: 0;
}
.cnt03_r_inner ul li::before {
  content: "";
  width: 23px;
  height: 23px;
  background-image: url("../img/check-red.png");
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  top: 4px;
  left: 0;
}
.cnt03_l_inner ul li:last-child, .cnt03_r_inner ul li:last-child {
  margin-bottom: 0;
}
.cnt03_l_inner ul li .text_blue {
  font-size: 18px;
}
.cnt03_r_inner ul li .text_red {
  font-size: 18px;
}
.cnt03_l_inner_btn, .cnt03_r_inner_btn {
  text-align: center;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 35px;
  width: 100%;
}
.cnt03_l_inner_btn .blue_btn, .cnt03_r_inner_btn .red_btn {
  padding: 2.5% 0% 3.5%;
  font-size: 22px;
  height: 50px;
  width: 180px;
}
.cnt03_l_inner_btn .down_arrow::before, .cnt03_r_inner_btn .down_arrow::before {
  right: 5%;
}
@media screen and (max-width: 768px) {
  .cnt03_box {
    display: block;
  }
  .cnt03_l_title, .cnt03_r_title {
    width: 47%;
    font-size: 3.645vw;
    transform: none;
    font-weight: bold;
  }
  .cnt03_l_title {
    top: 5vw;
    left: 2%;
  }
  .cnt03_r_title {
    top: 2vw;
    line-height: 1.5;
    right: 1.5%;
    left: auto;
  }
  .cnt03_r_title .sm_text {
    font-size: 2.213vw;
  }
  .cnt03_l_inner, .cnt03_r_inner {
    width: 47%;
    position: static;
    transform: none;
  }
  .cnt03_l_inner ul li {
    padding-left: 0;
    margin-bottom: 0;
    position: absolute;
    left: 2%;
  }
  .cnt03_r_inner ul li {
    padding-left: 0;
    margin-bottom: 0;
    position: absolute;
    left: 52vw;
  }
  .cnt03_l_inner ul li:nth-child(1), .cnt03_r_inner ul li:nth-child(1) {
    top: 22%;
  }
  .cnt03_l_inner ul li:nth-child(2), .cnt03_r_inner ul li:nth-child(2) {
    top: 36%;
  }
  .cnt03_l_inner ul li:nth-child(3), .cnt03_r_inner ul li:nth-child(3) {
    top: 51%;
  }
  .cnt03_l_inner ul li:nth-child(4), .cnt03_r_inner ul li:nth-child(4) {
    top: 65%;
  }
  .cnt03_l_inner ul li::before {
    display: none;
  }
  .cnt03_r_inner ul li::before {
    display: none;
  }
  .cnt03_l_inner ul li div, .cnt03_r_inner ul li div {
    margin-bottom: 5vw;
    padding-left: 6vw;
    font-size: 2.604vw;
    line-height: 1.5;
    position: relative;
  }
  .cnt03_l_inner ul li div::before {
    content: "";
    background-image: url("../img/check-blue.png");
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    width: 4.2vw;
    height: 4.2vw;
    top: 1vw;
    left: 0;
  }
  .cnt03_r_inner ul li div::before {
    content: "";
    background-image: url("../img/check-red.png");
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    width: 4.2vw;
    height: 4.2vw;
    top: 1vw;
    left: 0;
  }
  .cnt03_l_inner ul li .text_blue {
    font-size: 3.38vw;
  }
  .cnt03_r_inner ul li .text_red {
    font-size: 3.38vw;
  }
  .cnt03_l_inner_btn {
    text-align: center;
    position: absolute;
    left: 0;
    transform: none;
    bottom: 8vw;
    width: 50%;
  }
  .cnt03_r_inner_btn {
    text-align: center;
    position: absolute;
    left: auto;
    right: 0;
    transform: none;
    bottom: 8vw;
    width: 50%;
  }
  .cnt03_l_inner_btn .blue_btn, .cnt03_r_inner_btn .red_btn {
    padding: 6% 15% 8%;
    font-size: 4.687vw;
    border-radius: 5px;
    width: 90%;
    height: auto;
  }
  .cnt03_l_inner_btn .down_arrow::before, .cnt03_r_inner_btn .down_arrow::before {
    right: 5%;
  }
}



/*---------------cnt04----------------------*/
.cnt04-nav {
  margin: 30px 0;
}
.cnt04-nav ul {
  display: flex;
  justify-content: space-around;
}
.cnt04-nav ul li {
  width: 23%;
}
.cnt04-nav ul li a {
  display: block;
  background-image: url("../img/fv_cv_btn01.png");
  background-size: cover;
  position: relative;
  color: #fff;
  border-radius: 5px;
  padding: 10px 0 20px;
  text-align: center;
}
.cnt04-nav ul li a .cnt04-nav-num {
  font-size: 12px;
  display: inline-block;
  border-bottom: 1px solid #fff;
  padding-bottom: 2px;
  margin-bottom: 5px;
}
.cnt04-nav ul li a::before {
  content: "";
  width: 10px;
  height: 10px;
  background-image: url("../img/down_arrow.png");
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 5px;
}
@media screen and (max-width: 768px) {
  .cnt04-nav {
    width: 96%;
    margin: 0 auto 5vw;
  }
  .cnt04-nav ul {
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
  }
  .cnt04-nav ul li {
    width: 48%;
    margin-bottom: 1.8vw;
  }
  .cnt04-nav ul li a .cnt04-nav-num {
    font-size: 2.864vw;
  }
  .cnt04-nav ul li a {
    padding: 1vw 0 4.5vw;
  }
  .cnt04-nav ul li a::before {
    width: 2.5vw;
    height: 2.5vw;
    bottom: 1vw;
  }
}

#cnt04-01 {
  background-image: url("../img/cnt04-01-bg.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  padding-bottom: 80px;
}
.cnt04-01_01 {
  margin-bottom: 30px;
}
.cnt04-01_01_l {
  width: 35%;
  font-size: 20px;
  text-align: center;
  position: absolute;
  left: 11%;
  top: 95px;
  line-height: 1.3;
}
.cnt04-01_01_l .text_blue {
  font-size: 32px;
  font-weight: bold;
}
.cnt04-01_01_r {
  width: 40%;
  position: absolute;
  right: 13%;
  top: 80px;
  line-height: 1.8;
}
.cnt04-01_01_c {
  text-align: center;
  position: absolute;
  width: 100%;
  line-height: 1.8;
  left: 50%;
  transform: translateX(-50%);
  bottom: 35px;
}
.cnt04-01_01_c .text_yellow {
  background-color: #5590e1;
}
.cnt04-01_02_l {
  width: 35%;
  font-size: 20px;
  text-align: center;
  position: absolute;
  left: 11.5%;
  top: 115px;
  line-height: 1.3;
}
.cnt04-01_02_l .text_blue {
  font-size: 32px;
  font-weight: bold;
}
.cnt04-01_02_r {
  width: 42%;
  position: absolute;
  right: 10%;
  top: 80px;
  line-height: 1.8;
}
.cnt04-01_02_r .note_text {
  text-align: right;
}
@media screen and (max-width: 768px) {
  #cnt04-01 {
    padding-bottom: 0;
  }
  .cnt04-01_01 {
    margin-bottom: 0;
  }
  .cnt04-01_01_l {
    width: 85%;
    font-size: 5.208vw;
    text-align: center;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: 15vw;
    line-height: 1.4;
  }
  .cnt04-01_01_l .text_blue {
    font-size: 7.29vw;
  }
  .cnt04-01_01_r {
    font-size: 3.5vw;
    width: 80%;
    position: absolute;
    right: auto;
    left: 50%;
    transform: translateX(-50%);
    top: 46vw;
    line-height: 1.8;
  }
  .cnt04-01_01_c {
    text-align: justify;
    position: absolute;
    width: 77%;
    line-height: 1.8;
    left: 50%;
    transform: translateX(-50%);
    bottom: 15vw;
  }
  .cnt04-01_02_l {
    width: 70%;
    font-size: 5.604vw;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: 17vw;
    line-height: 1.3;
  }
  .cnt04-01_02_l .text_blue {
    font-size: 7.166vw;
  }
  .cnt04-01_02_r {
    width: 77%;
    font-size: 3.8vw;;
    position: absolute;
    right: auto;
    left: 50%;
    transform: translateX(-50%);
    top: 17%;
    line-height: 1.8;
  }
  .cnt04-01_02_r .note_text {
    text-align: right;
    font-size: 2.34vw;
  }
}

#cnt04-02 {
  padding: 65px 0 80px;
}
.cnt04-02-01 {
  margin: 20px 0 40px;
  line-height: 1.8;
  text-align: center;
}
.cnt04-02-02_block {
  display: flex;
  justify-content: space-between;
}
.cnt04-02-02l, .cnt04-02-02r {
  width: 48%;
  text-align: center;
}
.cnt04-02-02l_title {
  font-size: 20px;
  width: 100%;
  position: absolute;
  color: #fff;
  left: 50%;
  transform: translateX(-50%);
  top: 15px;
}
.cnt04-02-02l_title .text_yellow {
  font-size: 28px;
}
.cnt04-02-02l_text {
  width: 85%;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 235px;
  line-height: 1.8;
  text-align: justify;
}
.cnt04-02-02r_title {
  font-size: 20px;
  width: 100%;
  position: absolute;
  color: #fff;
  left: 50%;
  transform: translateX(-50%);
  top: 15px;
}
.cnt04-02-02r_title .text_yellow {
  font-size: 28px;
}
.cnt04-02-02r_text {
  width: 85%;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 235px;
  line-height: 1.8;
  text-align: justify;
}
@media screen and (max-width: 768px) {
  #cnt04-02 {
    padding: 8.46vw 0 10.41vw;
  }
  .cnt04-02-01 {
    margin: 3vw 0 6vw;
  }
  .sp_cnt04-02-0201 {
    border-radius: 10px;
    border: 3px solid #5590e1;
    width: 95%;
    margin: 0 auto 4vw;
  }
  .sp_cnt04-02-0201_title {
    background-color: #5590e1;
    border-radius: 5px 5px 0 0;
    padding: 2vw 0;
    font-size: 5.208vw;
    margin-bottom: 1.5vw;
    color: #fff;
    text-align: center;
    line-height: 1.3;
  }
  .sp_cnt04-02-0201_title .text_yellow {
    font-size: 6.51vw;
  }
  .sp_cnt04-02-0201_inner {
    padding: 4% 6%;
  }
  .sp_cnt04-02-0201_inner .float_l {
    width: 28.5%;
    margin: 0 4% 0 0;
  }
  .sp_cnt04-02-0201_illust {
    text-align: center;
    margin-bottom: 3vw;
  }
  .sp_cnt04-02-0201_illust img {
    width: 80%;
  }
  .sp_cnt04-02-0201_text {
    line-height: 1.8;
  }
}


#cnt04-03 {
  background-image: url("../img/cnt04-03-bg.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  padding: 80px 0;
}
.cnt04-03_text {
  text-align: center;
  line-height: 1.8;
  margin: 20px auto;
}
@media screen and (max-width: 768px) {
  #cnt04-03 {
    padding: 0;
  }
  .cnt04-03_text {
    text-align: center;
    line-height: 1.8;
    margin: 4vw auto 5vw;
  }
}


#cnt04-04 {
  background-image: url("../img/cnt04-04-bg.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  padding: 80px 0;
}
.cnt04-04_text {
  text-align: center;
  line-height: 1.8;
  margin: 20px auto 30px;
}
.cnt04-04_list {
  max-width: 750px;
  margin: 0 auto 20px;
}
.cnt04-04_list ul {
  display: flex;
  justify-content: center;
  align-items: flex-start;
}
.cnt04-04_list ul li {
  margin: 0 10px 30px;
  text-align: center;
  width: 18%;
}
.cnt04-04_list ul li p {
  margin-top: 10px;
  font-weight: bold;
}
.cnt04-04_list ul li p .mn_text {
  font-size: 10px;
  vertical-align: top;
}
.cnt04-04_list p.note_text {
  text-align: center;
}
.cnt04-04_box {
  border: 2px solid #5590e1;
  background-color: #fff;
  border-radius: 10px;
  padding: 5%;
  text-align: center;
  max-width: 750px;
  margin: 50px auto 0;
}
.cnt04-04_box_inner {
  width: 100%;
}
.cnt04-04_box_inner ul {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-wrap: wrap;
}
.cnt04-04_box_inner ul li {
  width: 45%;
  margin: 0 2%;
}
.cnt04-04_box_inner ul li:last-child {
  margin: 4% 2% 0;
}
.cnt04-04_box_inner ul li .cnt04-04_box_inner_btn a {
  width: 100%;
  display: block;
  font-size: 22px;
  padding: 0;
  height: 60px;
}
.cnt04-04_box_inner ul li .cnt04-04_box_inner_btn a p {
  margin-bottom: 0;
  width: 100%;
  position: absolute;
  top: 28%;
  left: 50%;
  transform: translateX(-50%);
}
.cnt04-04_box_inner ul li .cnt04-04_box_inner_btn a p.btn02 {
  top: 7%;
}
.cnt04-04_box_inner ul li .cnt04-04_box_inner_btn a .btn02 span {
  font-size: 18px;
}
.cnt04-04_box_inner ul li p {
  margin-bottom: 10px;
}
@media screen and (max-width: 768px) {
  #cnt04-04 {
    background-image: url("../img/sp/cnt04-04-bg.jpg");
    padding: 0 0 10.416vw;
  }
  .cnt04-04_text {
    margin: 5vw auto 6vw;
  }
  .cnt04-04_list {
    width: 96%;
    margin: 0 auto 20px;
  }
  .cnt04-04_list ul {
    display: flex;
    justify-content: space-around;
    align-items: flex-start;
    flex-wrap: wrap;
  }
  .cnt04-04_list ul li {
    margin: 0 0 4vw;
    text-align: center;
    width: 30%;
  }
  .cnt04-04_list ul li p .mn_text {
    font-size: 1.6vw;
  }
  .cnt04-04_list p.note_text {
    text-align: justify;
    font-size: 2.34vw;
  }
  .cnt04-04_box {
    padding: 6% 3%;
    text-align: center;
    width: 96%;
    margin: 10vw auto 0;
  }
  .cnt04-04_box_inner ul {
    display: block;
  }
  .cnt04-04_box_inner ul li {
    width: 85%;
    margin: 0 auto 8%;
  }
  .cnt04-04_box_inner ul li:last-child {
    margin: 0 auto;
  }
  .cnt04-04_box_inner .fw-bold {
    font-size: 3.906vw;
  }
  .cnt04-04_box_inner ul li .cnt04-04_box_inner_btn a {
    font-size: 5.208vw;
    height: 14vw;
  }
  .cnt04-04_box_inner ul li .cnt04-04_box_inner_btn a .btn02 span {
    font-size: 4.166vw;
  }
  .cnt04-04_box_inner ul li .cnt04-04_box_inner_btn a p.btn02 {
    top: 5%;
  }
}




/*------------cnt05----------------*/
.cnt05 {
  padding-top: 80px;
}
.cnt05-nav {
  margin: 30px 0;
}
.cnt05-nav ul {
  display: flex;
  justify-content: space-around;
}
.cnt05-nav ul li {
  width: 23%;
}
.cnt05-nav ul li a {
  display: block;
  background-image: url("../img/fv_cv_btn02.png");
  background-size: cover;
  position: relative;
  color: #fff;
  border-radius: 5px;
  padding: 10px 0 20px;
  text-align: center;
}
.cnt05-nav ul li a .cnt05-nav-num {
  font-size: 12px;
  display: inline-block;
  border-bottom: 1px solid #fff;
  padding-bottom: 2px;
  margin-bottom: 5px;
}
.cnt05-nav ul li a::before {
  content: "";
  width: 10px;
  height: 10px;
  background-image: url("../img/down_arrow.png");
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 5px;
}
@media screen and (max-width: 768px) {
  .cnt05 {
    padding-top: 10.416vw;
  }
  .cnt05-nav {
    width: 96%;
    margin: 0 auto 5vw;
  }
  .cnt05-nav ul {
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
  }
  .cnt05-nav ul li {
    width: 48%;
    margin-bottom: 1.8vw;
  }
  .cnt05-nav ul li a .cnt05-nav-num {
    font-size: 2.86vw;
  }
  .cnt05-nav ul li a {
    padding: 1vw 0 4.5vw;
  }
  .cnt05-nav ul li a::before {
    width: 2.5vw;
    height: 2.5vw;
    bottom: 1vw;
  }
}


#cnt05-01 {
  background-image: url("../img/cnt05-01-bg.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  padding: 80px 0;
}
.cnt05-01_text {
  text-align: center;
  line-height: 1.8;
  margin: 20px auto 30px;
}
@media screen and (max-width: 768px) {
  #cnt05-01 {
    background-image: url("../img/sp/cnt05-01-bg.jpg");
    padding: 0;
  }
  .cnt05-01_text {
    margin: 5vw auto 6vw;
  }
}


#cnt05-02 {
  padding: 80px 0;
}
.cnt05-02-01_title {
  font-size: 22px;
  text-align: center;
  color: #fff;
  position: absolute;
  width: 100%;
  left: 50%;
  transform: translateX(-50%);
  top: 12px;
}
.cnt05-02-01 {
  margin-bottom: 50px;
}
.cnt05-02-01_title .text_yellow {
  font-size: 28px;
}
.cnt05-02-01_text {
  width: 45.8%;
  line-height: 1.8;
  position: absolute;
  right: 7.4%;
  bottom: 60px;
}
.cnt05-02-01_text .note_text {
  text-align: right;
}

.cnt05-02-02_title {
  font-size: 22px;
  text-align: center;
  color: #fff;
  position: absolute;
  width: 100%;
  left: 50%;
  transform: translateX(-50%);
  top: 14px;
}
.cnt05-02-02_title .text_yellow {
  font-size: 28px;
}
.cnt05-02-02_text01 {
  width: 100%;
  max-width: 850px;
  line-height: 1.8;
  margin: 30px auto 50px;
}
.cnt05-02-02_box {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  font-size: 20px;
  max-width: 850px;
  width: 100%;
  margin: 0 auto 30px;
}
.cnt05-02-02_box_l, .cnt05-02-02_box_r {
  width: 47%;
}
.sidebar_title {
  position: relative;
  color: #f07171;
  font-weight: bold;
  text-align: center;
  margin-bottom: 10px;
  width: 80%;
  margin-left: auto;
  margin-right: auto;
}
.cnt05-02-02_box_r .sidebar_title {
  width: 80%;
  margin-left: 0;
}
.sidebar_title::before {
  content: '';
  position: absolute;
  top: 48%;
  left: 0;
  right: 0;
  border-top: 2px solid #f07171;
}
.sidebar_title > span {
  position: relative;
  display: inline-block;
  padding: 0 8px;
  background-color: #fff;
}
@media screen and (max-width: 768px) {
  #cnt05-02 {
    padding: 0 0 10.416vw;
  }
  .cnt05-02-01_title {
    font-size: 5.208vw;
    text-align: center;
    color: #fff;
    background-color: #ef8e8e;
    border-radius: 10px;
    padding: 3% 0;
    position: absolute;
    width: 96%;
    left: 50%;
    transform: translateX(-50%);
    top: 12px;
  }
  .cnt05-02-01_title .text_yellow {
    font-size: 6.510vw;
  }
  .cnt05-02-01_text {
    width: 78%;
    line-height: 1.8;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    right: auto;
    bottom: 11vw
  }
  .cnt05-02-01_text .note_text {
    text-align: right;
    font-size: 2.34vw;
  }
  .cnt05-02-02_title {
    font-size: 5.208vw;
    text-align: center;
    color: #fff;
    background-color: #ef8e8e;
    border-radius: 10px;
    padding: 3% 0;
    width: 96%;
    margin: 20px auto 30px;
    position: static;
    transform: none;
  }
  .cnt05-02-02_title .text_yellow {
    font-size: 6.510vw;
  }
  .cnt05-02-02_text {
    width: 78%;
    line-height: 1.8;
    margin: 0 auto 5vw;
  }
  .cnt05-02-02_sp-text02 {
    width: 96%;
    margin: 0 auto 5vw;
    text-align: center;
  }
  .cnt05-02-02_sp-text02 p {
    margin-bottom: 4vw;
    line-height: 1.3;
    font-size: 4.68vw;
  }
  .cnt05-02-02_sp-text02 p.sidebar_title {
    width: 80%;
    margin: 0 auto 3vw;
  }
  .cnt05-02-02_sp-illust {
    text-align: center;
    margin: 0 auto 5vw;
  }
  .cnt05-02-02_sp-illust img {
    width: 7%;
  }
}


#cnt05-03 {
  background-image: url("../img/cnt05-03-bg.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  padding: 80px 0;
}
.cnt05-03_title {
  text-align: center;
  margin-top: 30px;
  margin-bottom: 20px;
}
.cnt05-03_title span {
  background-color: #f07171;
  border-radius: 50px;
  padding: 5px 20px;
  color: #fff;
  position: relative;
  display: inline-block;
}
.cnt05-03_title span::before {
  content: "";
  width: 22px;
  height: 16px;
  background-image: url(../img/red_tri.png);
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  bottom: -10px;
  left: 50%;
  transform: translateX(-50%);
}
.cnt05-03_box ul {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
.cnt05-03_box ul li {
  width: 23%;
  text-align: center;
}
.cnt05-03_box ul li p {
  font-size: 14px;
  line-height: 1.3;
  margin-top: 10px;
}
.cnt05-03_box ul li p .text_red {
  font-size: 18px;
}
@media screen and (max-width: 768px) {
  #cnt05-03 {
    background-image: url("../img/sp/cnt05-03_bg.jpg");
    padding: 0 0 10.416vw;
  }
  .cnt05-03_box {
    width: 96%;
    margin: 0 auto;
  }
  .cnt05-03_box ul {
    display: flex;
    flex-wrap: wrap;
  }
  .cnt05-03_box ul li {
    width: 48%;
    margin-bottom: 3vw;
  }
  .cnt05-03_box ul li p {
    font-size: 3.125vw;
    margin-top: 1.5vw;
  }
  .cnt05-03_box ul li p .text_red {
    font-size: 3.645vw;
  }
  .cnt05-03_title span::before {
    width: 2.5vw;
    height: 2.5vw;
    bottom: -2.4vw;
  }
  .cnt05-03_title {
    margin-top: 5.5vw;
    margin-bottom: 6vw;
  }
}


#cnt05-04 {
  background-image: url("../img/cnt05-04-bg.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  padding: 80px 0;
}
.cnt05-04_text01 {
  text-align: center;
  line-height: 1.8;
  margin: 30px auto;
}
.cnt05-04_block {
  display: flex;
  justify-content: space-between;
  align-items: center;
  max-width: 800px;
  width: 96%;
  margin: 0 auto;
}
.cnt05-04_block_l {
  width: 40%;
}
.cnt05-04_block_r {
  width: 60%;
  text-align: center;
}
.cnt05-04_text02 {
  font-size: 24px;
  line-height: 1.5;
}
.cnt05-04_box {
  border: 2px solid #f07171;
  background-color: #fff;
  border-radius: 10px;
  padding: 4% 3%;
  text-align: center;
  max-width: 750px;
  width: 96%;
  margin: 50px auto 0;
}
.cnt05-04_box_inner {
  width: 100%;
}
.cnt05-04_box_inner ul {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-wrap: wrap;
}
.cnt05-04_box_inner ul li {
  width: 300px;
  margin: 0 35px 30px 0;
}
.cnt05-04_box_inner ul li:nth-of-type(2n) {
  margin-right: 0;
}
.cnt05-04_box_inner ul li:nth-of-type(3), .cnt05-04_box_inner ul li:nth-of-type(4) {
  margin-bottom: 0;
}
.cnt05-04_box_inner ul li .cnt05-04_box_inner_btn a {
  width: 100%;
  display: block;
  font-size: 22px;
  padding: 0;
  height: 55px;
}
.cnt05-04_box_inner ul li .cnt05-04_box_inner_btn a p {
  margin-bottom: 0;
  width: 100%;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}
.cnt05-04_box_inner ul li .cnt05-04_box_inner_btn a p.btn01 {
  top: -1%;
}
.cnt05-04_box_inner ul li .cnt05-04_box_inner_btn a p.btn02 {
  top: 28%;
}
.cnt05-04_box_inner ul li .cnt05-04_box_inner_btn a span.mn_text {
  font-size: 12px;
}
.cnt05-04_box_inner ul li .cnt05-04_box_inner_btn a span.md_text {
  font-size: 18px;
}
.cnt05-04_box_inner ul li p {
  margin-bottom: 10px;
}
.cnt05-04_box_inner .btn01_icon_pc {
  position: absolute;
  left: -7%;
  top: 50%;
  transform: translateY(-50%);
}
@media screen and (max-width: 768px) {
  #cnt05-04 {
    background-image: url("../img/sp/cnt05-04_bg.jpg");
    padding: 0 0 10.41vw;
  }
  .cnt05-04_text01 {
    width: 96%;
    margin: 4vw auto;
  }
  .cnt05-04_text02 {
    font-size: 5.125vw;
    line-height: 1.5;
    text-align: center;
    margin: 4vw auto;
    font-weight: bold;
  }
  .cnt05-04_box {
    padding: 10% 5%;
  }
  .cnt05-04_box_inner ul {
    display: block;
  }
  .cnt05-04_box_inner ul li {
    width: 85%;
    margin: 0 auto 8%;
  }
  .cnt05-04_box_inner ul li:nth-of-type(2n) {
    margin: 0 auto 8%;
  }
  .cnt05-04_box_inner ul li:nth-of-type(3){
    margin-bottom: 8%;
  }
  .cnt05-04_box_inner .fw-bold {
    font-size: 3.906vw;
  }
  .cnt05-04_box_inner ul li:last-child {
    margin: 0 auto;
  }
  .cnt05-04_box_inner ul li .cnt05-04_box_inner_btn a {
    width: 100%;
    display: block;
    font-size: 5.208vw;
    padding: 0;
    height: 14vw;
  }
  .cnt05-04_box_inner ul li .cnt05-04_box_inner_btn a p {
    margin-bottom: 0;
    width: 100%;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
  }
  .cnt05-04_box_inner ul li .cnt05-04_box_inner_btn a.text_yellow {
    color: #f9fbc3;
  } 
  .cnt05-04_box_inner ul li .cnt05-04_box_inner_btn a p.btn01 {
    top: 3%;
  }
  .cnt05-04_box_inner ul li .cnt05-04_box_inner_btn a p.btn02 {
    top: 28%;
  }
  .cnt05-04_box_inner ul li .cnt05-04_box_inner_btn a span.sm_text {
    font-size: 2.864vw;
  }
  .cnt05-04_box_inner ul li .cnt05-04_box_inner_btn a span.mn_text {
    font-size: 2.864vw;
  }
  .cnt05-04_box_inner ul li .cnt05-04_box_inner_btn a span.md_text {
    font-size: 4.166vw;
  }
  .cnt05-04_box_inner ul li p {
    margin-bottom: 10px;
  }
  .cnt05-04_box_inner .btn01_icon_sp {
    position: absolute;
    width: 16.66vw;
    left: -5%;
    top: 50%;
    transform: translateY(-50%);
  }
}




/*--------------closing----------------*/
.closing {
  background-image: url("../img/closing-bg.jpg");
  background-size: auto;
  background-repeat: no-repeat;
  background-position: top center;
  padding-bottom: 150px;
}
.closing_cta {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-top: 75px;
  max-width: 910px;
  margin-left: auto;
  margin-right: auto;
}
.closing_cta_l_box_text, .closing_cta_r_box_text {
  font-size: 20px;
  text-align: center;
  position: absolute;
  width: 100%;
  line-height: 1.5;
  left: 50%;
  transform: translateX(-50%);
}
.closing_cta_l_box_text {
  color: #5590e1;
  top: 35px;
}
.closing_cta_r_box_text {
  color: #ef8e8e;
  top: 15px;
}
.closing_cta_r_box_text .md_text {
  font-size: 16px;
  color: #4f4f4f;
}
.closing_cta_r_box_text .text_yellow {
  background: #ef8e8e;
  padding: 0 0.5%;
}

.closing_cta_l_box_inner ul {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  position: absolute;
  top: 32%;
}
.closing_cta_l_box_inner ul li {
  width: 185px;
  margin-bottom: 15px;
}
.closing_cta_l_box_inner ul li:first-child {
  margin-right: 15px;
}
.closing_cta_l_box_inner ul li:last-child {
  margin-bottom: 15px;
}
.closing_cta_l_box_inner ul li a {
  display: block;
  position: relative;
  height: 85px;
}
.closing_cta_l_box_inner ul li a p {
  position: absolute;
  top: 38%;
  left: 7%;
  font-size: 18px;
}
.closing_cta_l_box_inner ul li a p.btn02 {
  top: 27%;
}
.closing_cta_l_box_inner ul li a p.btn02 .md_text {
  font-size: 14px;
}

.closing_cta_r_box_inner ul {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  position: absolute;
  top: 32%;
}
.closing_cta_r_box_inner ul li {
  width: 185px;
  margin-bottom: 15px;
  margin-right: 15px;
}
.closing_cta_r_box_inner ul li:nth-of-type(2n) {
  margin-right: 0;
}
.closing_cta_r_box_inner ul li:nth-of-type(3) {
  margin-bottom: 0;
}
.closing_cta_r_box_inner ul li:nth-of-type(3):last-child {
  margin-bottom: 0;
}
.closing_cta_r_box_inner ul li a {
  display: block;
  position: relative;
  height: 85px;
}
.closing_cta_r_box_inner ul li a p {
  position: absolute;
  top: 38%;
  left: 7%;
  font-size: 18px;
}
.closing_cta_r_box_inner ul li a p.top50 {
  top: 50%;
}
.closing_cta_r_box_inner ul li a p.btn02 {
  top: 27%;
}
.closing_cta_r_box_inner ul li a p.btn02 .md_text {
  font-size: 14px;
}
.closing_cta_r_box_inner ul li a p.btn02 .mn_text {
  font-size: 13px;
}
.closing_cta_icon_pc {
  position: absolute;
  left: -10%;
  top: -7%;
}
@media screen and (max-width: 768px) {
  .link_bg {
    background-image: url("../img/sp/link-bg.jpg");
    background-size: cover;
    background-repeat: no-repeat;
  }
  .link {
    display: flex;
    justify-content: center;
    width: 96%;
    margin: 0 auto;
    font-size: 3.5vw;
    text-align: center;
    padding: 10.41vw 0;
  }
  .link_l_text {
    position: absolute;
    width: 90%;
    left: 3%;
    top: 7%;
    line-height: 1.3;
    font-size: 3.906vw;
  }
  .link_r_text {
    position: absolute;
    width: 90%;
    right: 3%;
    top: 5%;
    line-height: 1.5;
    font-size: 3.457vw;
  }
  .link_r_text .text_yellow {
    background-color: #ef8e8e;
    padding: 0.5%;
    border-radius: 3px;
    margin-right: 1%;
  }
  .link_r_text .sm_text {
    font-size: 2.996vw;
  }
  .link_l ul {
    position: absolute;
    left: 6%;
    top: 23%;
    width: 85%;
  }
  .link_r ul {
    position: absolute;
    right: 7%;
    top: 23%;
    width: 85%;
  }
  .link ul li {
    margin-bottom: 2vw;
  }
  .link ul li a {
    display: block;
    height: 16.92vw;
    color: #fff;
    text-align: justify;
    font-size: 3.906vw;
  }
  .link ul li a p {
    position: absolute;
    width: 100%;
    left: 10%;
  }
  .link .link_l ul li a p .md_text {
    font-size: 3.125vw;
  }
  .link .link_r ul li a p .md_text {
    font-size: 3.255vw;
  }
  .link ul li a p .mn_text {
    font-size: 2.864vw;
  }
  .link ul li a p.btn01 {
    top: 36%;
  }
  .link ul li a p.btn01.top50 {
    top: 47%;
  }
  .link ul li a p.btn02 {
    top: 25%;
  }
  .closing_icon_sp {
    position: absolute;
    width: 29.86vw;
    left: -2%;
    top: -8%;
  }
}




/*--------footer------------*/
.fl_footer {
  background-color: #fff;
  padding: 20px 0;
  position: fixed;
  bottom: 0;
  width: 100%;
}
.fl_footer_inner {
  display: flex;
  align-items: center;
  justify-content: space-around;
  text-align: center;
}
.fl_footer_l, .fl_footer_r {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: 50%;
  font-weight: bold;
}
.fl_footer_l {
  color: #5590e1;
  position: relative;
}
.fl_footer_r {
  color: #ef8e8e;
  position: relative;
}
.fl_footer_btn_block {
  width: 62%;
  text-align: justify;
}
.fl_footer_btn_block a {
  font-size: 22px;
  width: 90%;
  text-align: center;
  margin-left: 10px;
  font-weight: normal;
}
.fl_btn02_campaign_pc {
  margin-bottom: 5px;
}


/*-----------マウスオーバー(ブルーボックス)------------------*/
.fl_footer_l_box {
  position:absolute;
  border: 2px solid #5590e1;
  background-color: #fff;
  border-radius: 10px;
  padding: 5%;
  text-align: center;
  width: 100%;
  left: 0;
  top: -415%;
  opacity:0;
  visibility:hidden;
  transform: translateY(-6px);
  transition: opacity .18s ease, transform .18s ease, visibility .18s;
  z-index:100;
}
.fl_footer_btn_block:hover .fl_footer_l_box,
.fl_footer_btn_block:focus-within .fl_footer_l_box { /* :focus-within でキーボード対策 */
  opacity:1;
  visibility:visible;
  transform: translateY(0);
}

.fl_footer_l_box_inner {
  width: 100%;
}
.fl_footer_l_box_inner ul {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-wrap: wrap;
}
.fl_footer_l_box_inner ul li {
  width: 45%;
  margin: 0 2%;
  text-align: justify;
}
.fl_footer_l_box_inner ul li:last-child {
  margin: 4% 2% 0;
}
.fl_footer_l_box_inner ul li .fl_footer_l_box_inner_btn a {
  width: 100%;
  display: block;
  padding: 0;
  height: 70px;
  font-size: 18px;
  text-align: justify;
  margin: 0;
}
.fl_footer_l_box_inner ul li .fl_footer_l_box_inner_btn a p {
  margin-bottom: 0;
  width: 100%;
  position: absolute;
  top: 33%;
  left: 10%;
}
.fl_footer_l_box_inner ul li .fl_footer_l_box_inner_btn a p.btn02 {
  top: 22%;
}
.fl_footer_l_box_inner ul li p {
  margin-bottom: 10px;
}
.fl_footer_l_box_text {
  text-align: center;
  margin-bottom: 20px;
}

/*-----------マウスオーバー(レッドボックス)------------------*/
.fl_footer_r_box {
  position:absolute;
  border: 2px solid #f07171;
  background-color: #fff;
  border-radius: 10px;
  padding: 5%;
  text-align: center;
  width: 100%;
  left: 0;
  top: -475%;
  opacity:0;
  visibility:hidden;
  transform: translateY(-6px);
  transition: opacity .18s ease, transform .18s ease, visibility .18s;
  z-index:100;
}
.fl_footer_btn_block:hover .fl_footer_r_box,
.fl_footer_btn_block:focus-within .fl_footer_r_box { /* :focus-within でキーボード対策 */
  opacity:1;
  visibility:visible;
  transform: translateY(0);
}

.fl_footer_r_box_inner {
  width: 100%;
}
.fl_footer_r_box_inner ul {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-wrap: wrap;
}
.fl_footer_r_box_inner ul li {
  width: 45%;
  margin: 2%;
  text-align: justify;
}
.fl_footer_r_box_inner ul li .fl_footer_r_box_inner_btn a {
  width: 100%;
  display: block;
  padding: 0;
  height: 70px;
  font-size: 18px;
  text-align: justify;
  margin: 0;
}
.fl_footer_r_box_inner ul li .fl_footer_r_box_inner_btn a p {
  margin-bottom: 0;
  width: 100%;
  position: absolute;
  top: 33%;
  left: 10%;
}
.fl_footer_r_box_inner ul li .fl_footer_r_box_inner_btn a p.top50 {
  top: 45%;
}
.fl_footer_r_box_inner ul li .fl_footer_r_box_inner_btn a p.btn02 {
  top: 22%;
}
.fl_footer_r_box_inner ul li p {
  margin-bottom: 10px;
}
.fl_footer_r_box_text {
  text-align: center;
  margin-bottom: 20px;
  line-height: 1.5;
  color: #4f4f4f;
}
.fl_footer_r_box_text .text_red {
  color: #ef8e8e;
}
.fl_footer_r_box_text .text_yellow {
  background-color: #ef8e8e;
}
.fl_footer_r_box_inner_btn a .mn_text {
  font-size: 12px;
}

.fl_footer {
  opacity: 0;
  transform: translateY(30px);
  transition: all 0.6s ease;
  pointer-events: none;
}
.fl_footer.active {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}
.pop_btn01_icon_pc {
  position: absolute;
  left: -0;
  top: -25%;
}





@media screen and (max-width: 768px) {
  .sp_fl_btn_block {
    display: flex;
    justify-content: space-around;
    width: 96%;
    margin: 0 auto;
    text-align: center;
    font-size: 3.906vw;
    font-weight: bold;
    position: relative;
    align-items: end;
  }
  .sp_fl_btn_block_l, .sp_fl_btn_block_r {
    width: 48%;
  }
  .sp_fl_btn_block_r .text_red {
    color: #ef8e8e;
  }
  .sp_fl_btn_block_btn {
    color: #fff;
    padding: 7% 0;
    display: block;
    font-size: 5.208vw;
    margin-top: 5px;
  }
  .close_btn {
    display: inline-block;
    padding: 2% 3% 2% 9%;
    position: relative;
    background-color: #e6e6e6;
    font-size: 2.604vw;
  }
  .close_btn::before,
  .close_btn::after {
    content: "";
    position: absolute;
    top: 51%;
    left: 23%;
    width: 12px;       /* 線の長さ */
    height: 2px;       /* 線の太さ */
    background-color: #4f4f4f;
    transform-origin: center;
  }
  /* 1本目（右上がり） */
  .close_btn::before {
    transform: translate(-50%, -50%) rotate(45deg);
  }
  /* 2本目（右下がり） */
  .close_btn::after {
    transform: translate(-50%, -50%) rotate(-45deg);
  }

  /*------ブルーボックス-------*/
  .sp_fl_btn_block_l_linkbox {
    display: none;
    position: absolute;
    width: 96%;
    left: 50%;
    transform: translateX(-50%);
    top: -90vw;
    z-index: 100;
  }
  .sp_fl_btn_block_l_linkbox_inner {
    border: 3.3px solid #5590e1;
    background-color: #fff;
    border-radius: 10px;
    padding: 8% 10%;
    text-align: center;
    position: relative;
    z-index: 90;
    overflow: visible;
  }
  .sp_fl_btn_block_l_linkbox_inner::before {
    content: "";
    background-image: url("../img/sp/fl-sp-tri-blue.png");
    background-repeat: no-repeat;
    background-size: contain;
    width: 12vw;
    height: 4.4vw;
    position: absolute;
    display: block;
    bottom: -4.4vw;
    left: 16%;
    z-index: 100;
  }
  .sp_fl_btn_block_l_linkbox_text {
    margin: 5% auto 3%;
    font-size: 4.687vw;
  }
  .sp_fl_btn_block_l_linkbox_inner ul li {
    width: 100%;
    margin: 0 0 5%;
  }
  .sp_fl_btn_block_l_linkbox_inner ul li:last-child {
    margin: 0;
  }
  .sp_fl_btn_block_l_linkbox_inner ul li .sp_fl_btn_block_l_linkbox_btn a {
    width: 100%;
    display: block;
    font-size: 5.208vw;
    padding: 0;
    height: 14vw;
  }
  .sp_fl_btn_block_l_linkbox_inner ul li .sp_fl_btn_block_l_linkbox_btn a p {
    margin-bottom: 0;
    width: 100%;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
  }
  .sp_fl_btn_block_l_linkbox_inner ul li .sp_fl_btn_block_l_linkbox_btn a p.btn01 {
    top: 30%;
  }
  .sp_fl_btn_block_l_linkbox_inner ul li .sp_fl_btn_block_l_linkbox_btn a p.btn02 {
    top: 7%;
  }
  .sp_fl_btn_block_l_linkbox_inner ul li .sp_fl_btn_block_l_linkbox_btn a p.btn02 .text_yellow {
    font-size: 4.166vw;
  }
  .sp_fl_btn_block_l_linkbox_inner ul li .sp_fl_btn_block_l_linkbox_btn a p.btn02 .mn_text {
    font-size: 4.166vw;
  }

  .fl_btn_campaign_sp {
    width: 65%;
    margin-bottom: 0.5vw;
  }



  /*-----------レッドボックス--------------*/
  .sp_fl_btn_block_r_linkbox {
    display: none;
    position: absolute;
    width: 96%;
    left: 50%;
    transform: translateX(-50%);
    top: -130vw;
    z-index: 100;
  }
  .sp_fl_btn_block_r_linkbox_inner {
    border: 3.3px solid #ef8e8e;
    background-color: #fff;
    border-radius: 10px;
    padding: 8% 10%;
    text-align: center;
    position: relative;
    z-index: 90;
    overflow: visible;
  }
  .sp_fl_btn_block_r_linkbox_inner::before {
    content: "";
    background-image: url("../img/sp/fl-sp-tri-red.png");
    background-repeat: no-repeat;
    background-size: contain;
    width: 12vw;
    height: 4.4vw;
    position: absolute;
    display: block;
    bottom: -4.4vw;
    right: 16%;
    z-index: 100;
  }
  .sp_fl_btn_block_r_linkbox_text {
    margin: 5% auto 3%;
    font-size: 4.687vw;
  }
  .sp_fl_btn_block_r_linkbox_text02 {
    text-align: center;
    color: #4f4f4f;
    margin: 5% auto;
    line-height: 1.5;
    font-size: 3.906vw;
  }
  .sp_fl_btn_block_r_linkbox_text02 p {
    display: inline-block;
    position: relative;
  }
  .sp_fl_btn_block_r_linkbox_text02 p::before {
    content: "";
    background-image: url("../img/sp/text02_left.png");
    background-repeat: no-repeat;
    background-size: contain;
    width: 9vw;
    height: 9vw;
    position: absolute;
    display: block;
    bottom: 10%;
    left: -10%;
  }
  .sp_fl_btn_block_r_linkbox_text02 p::after {
    content: "";
    background-image: url("../img/sp/text02_right.png");
    background-repeat: no-repeat;
    background-size: contain;
    width: 9vw;
    height: 9vw;
    position: absolute;
    display: block;
    bottom: 10%;
    right: -20%;
  }
  .sp_fl_btn_block_r_linkbox_text02 .text_yellow {
    background-color: #ef8e8e;
  }
  .sp_fl_btn_block_r_linkbox_text02 .mn_text {
    font-size: 3.385vw;
  }
  .sp_fl_btn_block_r_linkbox_inner ul li {
    width: 100%;
    margin: 0 0 5%;
  }
  .sp_fl_btn_block_r_linkbox_inner ul li:last-child {
    margin: 0;
  }
  .sp_fl_btn_block_r_linkbox_inner ul li .sp_fl_btn_block_r_linkbox_btn a {
    width: 100%;
    display: block;
    font-size: 5.208vw;
    padding: 0;
    height: 14vw;
  }
  .sp_fl_btn_block_r_linkbox_inner ul li .sp_fl_btn_block_r_linkbox_btn a p {
    margin-bottom: 0;
    width: 100%;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
  }
  .sp_fl_btn_block_r_linkbox_inner ul li .sp_fl_btn_block_r_linkbox_btn a p .mn_text {
    font-size: 2.864vw;
  }
  .sp_fl_btn_block_r_linkbox_inner ul li .sp_fl_btn_block_r_linkbox_btn a p.btn01 {
    top: 30%;
  }
  .sp_fl_btn_block_r_linkbox_inner ul li .sp_fl_btn_block_r_linkbox_btn a p.btn02 {
    top: 2%;
  }
  .sp_fl_btn_block_r_linkbox_inner ul li .sp_fl_btn_block_r_linkbox_btn a p.btn02 .text_yellow {
    font-size: 4.166vw;
  }
  .sp_fl_btn_block_r_linkbox_inner ul li .sp_fl_btn_block_r_linkbox_btn a p.btn02 .mn_text {
    font-size: 4.166vw;
  }
  .pop_icon_sp {
    position: absolute;
    width: 16.26vw;
    left: -5%;
    top: 50%;
    transform: translateY(-50%);
  }
}




@media screen and (min-width: 769px) and (max-width: 1000px) {
  body {
    font-size: 1.6vw;
  }
  .kv_btn {
    width: 96%;
    margin-left: auto;
    margin-right: auto;
  }
  .kv_btn a {
    font-size: 2.2vw;
  }
  .cnt01-01 {
    width: 47%;
    bottom: 40%;
  }
  .cnt01-02 {
    width: 85%;
    top: 30%;
  }
  .cnt01-02 ul {
    width: 100%;
  }
  .cnt01-02 ul li {
    padding: 0 1% 1%;
  }
  .cnt01-02_title {
    font-size: 1.6vw;
  }
  .cnt01-02_text {
    font-size: 1.4vw;
  }
  .cnt02-point1_02l {
    width: 45%;
  }
  .cnt02-point1_02r {
    width: 50%;
    bottom: -10%;
  }
  .cnt02-point2_block {
    width: 96%;
    margin-left: auto;
    margin-right: auto;
  }
  .cnt02-point2_text span {
    font-size: 2.6vw;
  }

  .cnt03_l_title, .cnt03_r_title {
    font-size: 2.0vw;
  }
  .cnt03_l_title {
    top: 6%;
  }
  .cnt03_l_inner, .cnt03_r_inner {
    top: 26%;
  }
  .cnt03_l_inner ul li, .cnt03_r_inner ul li {
    font-size: 1.4vw;
    padding-left: 3.5vw;
  }
  .cnt03_l_inner ul li .text_blue, .cnt03_r_inner ul li .text_red {
    font-size: 1.8vw;
  }
  .cnt03_l_inner_btn .blue_btn, .cnt03_r_inner_btn .red_btn {
    font-size: 2.2vw;
  }

  .cnt04-01_01_l {
    font-size: 2.0vw;
    top: 20%;
  }
  .cnt04-01_01_l .text_blue {
    font-size: 3.2vw;
  }
  .cnt04-01_01_r {
    top: 16%;
  }
  .cnt04-01_01_c {
    bottom: 7%;
  }
  .cnt04-01_02_l {
    font-size: 2.0vw;
    top: 15.5%;
  }
  .cnt04-01_02_l .text_blue {
    font-size: 3.2vw;
  }
  .cnt04-01_02_r {
    top: 11%;
  }
  .note_text {
    font-size: 1vw;
  }

  .cnt04-02-02_block {
    width: 96%;
    margin-left: auto;
    margin-right: auto;
  }
  .cnt04-02-02l_title, .cnt04-02-02r_title {
    font-size: 2.0vw;
    top: 3.5%;
  }
  .cnt04-02-02l_title .text_yellow, .cnt04-02-02r_title .text_yellow {
    font-size: 2.8vw;
  }
  .cnt04-02-02l_text, .cnt04-02-02r_text {
    top: 57%;
  }
  .cnt04-04_box_inner ul li .cnt04-04_box_inner_btn a {
    font-size: 2.2vw;
  }
  .cnt04-04_box_inner ul li .cnt04-04_box_inner_btn a p {
    top: 33%;
  }
  .cnt04-04_box_inner ul li .cnt04-04_box_inner_btn a p.btn02 {
    top: 16%;
  }
  .cnt04-04_box_inner ul li .cnt04-04_box_inner_btn a span {
    font-size: 1.8vw;
  }

  .cnt05-02-01_title {
    font-size: 2.2vw;
    top: 4%
  }
  .cnt05-02-02_title {
    font-size: 2.2vw;
    top: 3%
  }
  .cnt05-02-01_title .text_yellow, .cnt05-02-02_title .text_yellow {
    font-size: 2.8vw;
  }
  .cnt05-02-01_text {
    bottom: 25%;
  }
  .cnt05-02-02_text01 {
    width: 85%;
  }
  .cnt05-02-02_box {
    width: 80%;
    font-size: 2.0vw;
  }
  .cnt05-03_title {
    margin-top: 15px;
  }
  .cnt05-03_box ul {
    width: 96%;
    margin: 0 auto;
  }
  .cnt05-03_box ul li {
    width: 24%;
  }
  .cnt05-03_box ul li p {
    font-size: 1.4vw;
  }
  .cnt05-03_box ul li p .text_red {
    font-size: 1.8vw;
  }
  .cnt05-04_text02 {
    font-size: 2.4vw;
  }
  .cnt05-04_box_inner ul li .cnt05-04_box_inner_btn a {
    font-size: 2.2vw;
  }
  .sm_text {
    font-size: 1.4vw;
  }
  .fl_footer_inner {
    width: 95%;
    margin-left: auto;
  }
  .fl_footer_l_box {
    top: -430%;
  }
  .fl_footer_r_box {
    top: -495%
  }
  .cnt05-04_box_inner ul li .cnt05-04_box_inner_btn a span.mn_text {
    font-size: 1.2vw;
  }
  .cnt05-04_box_inner ul li .cnt05-04_box_inner_btn a p.btn01 {
    top: 14%;
  }
  .cnt05-04_box_inner ul li .cnt05-04_box_inner_btn a p.btn02 {
    top: 32%;
  }
  .fl_footer_l_box_inner ul li .fl_footer_l_box_inner_btn a {
    font-size: 1.8vw;
  }
  .fl_footer_r_box_inner ul li .fl_footer_r_box_inner_btn a {
    font-size: 1.8vw;
  }

  .closing_cta_l_box_text, .closing_cta_r_box_text {
    font-size: 2.439vw;
  }
  .closing_cta {
    width: 96%;
  }
  .closing_cta_r_box_text .md_text {
    font-size: 1.951vw;
  }
  .closing_cta_l_box_inner ul li {
    width: 19.56vw;
  }
  .closing_cta_l_box_inner ul li a {
    height: 8.36vw;
  }
  .closing_cta_l_box_inner ul li a {
    font-size: 1.8vw;
  }
  .closing_cta_l_box_inner ul li a p.btn02 .md_text {
    font-size: 1.45vw;
  }
  .closing_cta_l_box_inner ul li a p.btn02 {
    top: 22%;
  }
  .closing_cta_r_box_inner ul li {
    width: 19.56vw;
  }
  .closing_cta_r_box_inner ul li a {
    height: 8.36vw;
  }
  .closing_cta_r_box_inner ul li a {
    font-size: 1.8vw;
  }
  .closing_cta_r_box_inner ul li a p.btn02 .md_text {
    font-size: 1.45vw;
  }
}













