@charset "UTF-8";

/* リセット */
a {
  text-decoration: none;
  color: inherit;
}

.ms_lp .titleStyle02 {
  font-size: 2rem;
  padding: 10px;
  text-align: center;
  color: #fff;
  margin: 0 auto 40px;
}

/* 共通 */
.ms_lp {
  font-size: 1.6rem;
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", Meiryo, "メイリオ", sans-serif;
  line-height: 1.7;
  letter-spacing: 0.05em;
}

.inner {
  width: 87.6%;
  margin: 0 auto;
  max-width: 87.6%;
  padding: 0;
}

@media screen and (min-width: 768px) {
  .inner {
    max-width: 1280px;
    width: auto;
    margin: 0 auto;
    padding: 0 40px;
  }
}

.inner_mini {
  margin: 0 auto;
}

@media screen and (min-width: 768px) {
  .inner_mini {
    max-width: 900px;
  }
}

.ms_lp section {
  padding: 80px 0;
}

@media screen and (min-width: 768px) {
  .ms_lp section {
    padding: 100px 0;
  }
}

.font_big {
  font-size: 1.4em;
}

.font_yellow {
  color: #fcb929;
}

.font_orange {
  color: #ff6200;
}

.font_blue {
  color: #3aacbd;
}

.line_orange {
  background: linear-gradient(transparent 60%, rgba(242, 159, 137, 0.6) 60%);
  margin: 0 0.08em;
}

.yellow {
  background-color: #fcb929;
}

.is-small {
  font-size: 0.7em;
}

@media screen and (max-width: 767px) {
  .sp-none {
    display: none;
  }
}

@media screen and (min-width: 768px) {
  .pc-none {
    display: none;
  }
}

.inner_sub {
  padding-left: 10px;
  padding-right: 10px;
}

@media screen and (min-width: 768px) {
  .inner_sub {
    padding-left: 40px;
    padding-right: 40px;
  }
}

@media screen and (min-width: 768px) {
  .recommend_lists.inner_sub {
    padding-left: 20px;
    padding-right: 20px;
  }
}

.attention {
  font-size: 1.2rem;
}

.int1 {
  text-indent: -1em;
  padding-left: 1em;
}

.int2 {
  text-indent: -2em;
  padding-left: 2em;
}

.price {
  text-align: center;
}
.point_wrap {
  background-color: #fff;
  padding-top: 8px;
  padding-bottom: 8px;
  border: 2px solid #222;
  display: inline-block;
  max-width: 100%;
}

@media screen and (min-width: 768px) {
  .point_wrap {
    margin: 0 auto;
    padding-top: 8px;
    padding-bottom: 8px;
  }
}

.point_wrap p {
  font-weight: bold;
}

@media screen and (min-width: 768px) {
  .text_box {
    margin: 0 auto;
    text-align: center;
  }
}

.etc {
  text-align: right;
  font-size: 1.4rem;
}

.sec_txt {
  text-align: center;
  margin-top: 24px;
}

/* ボタンエリア */
.btn_area {
  margin: 60px 0;
}

@media screen and (min-width: 768px) {
  .btn_area {
    display: flex;
    justify-content: center;
    gap: 16px;
  }
}

.btn_area a,
.popup-open.btn_white {
  width: 80%;
  display: block;
  margin: auto;
  border-radius: 10px;
  text-align: center;
  color: #fff;
  padding: 20px 0;
  font-size: 1.8rem;
  font-weight: bold;
  width: 100%;
}

@media screen and (min-width: 768px) {
  .btn_area a,
  .popup-open.btn_white {
    width: 360px;
    padding: 20px 0;
  }
}

.btn_area a:first-of-type {
  margin-bottom: 24px;
}

@media screen and (min-width: 768px) {
  .btn_area a:first-of-type {
    margin-bottom: 0;
  }
}

.btn_area span::before {
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  font-size: 1.4em;
  margin-right: 10px;
}

.btn_area .btn_est {
  box-shadow: 1px 2px 3px #2d7e87;
  background: linear-gradient(90deg, rgba(12, 142, 164, 1) 0%, rgba(120, 226, 192, 1) 50%, rgba(12, 142, 164, 1) 100%);
}

.btn_area .btn_est span::before {
  content: "\f1ec";
}

.btn_area .btn_contract {
  box-shadow: 1px 2px 3px #ce6522;
  background: linear-gradient(90deg, rgba(255, 112, 30, 1) 0%, rgba(255, 191, 48, 1) 50%, rgba(255, 77, 48, 1) 100%);
}

.btn_area .btn_contract span::before {
  content: "\f044";
}

.btn_area .btn_est,
.btn_area .btn_contract {
  background-size: 200% 100%;
  border: none;
  transition: 0.3s cubic-bezier(0.45, 0, 0.55, 1);
}

.btn_area .btn_est:hover,
.btn_area .btn_contract:hover {
  opacity: 1;
  background-position: 100% 0;
}

.popup-open.btn_white {
  max-width: 100%;
  margin: 16px auto 8px;
}

.btn_area a.btn_white,
.popup-open.btn_white {
  color: #3aacbd;
  background-color: #fff;
  border: 1px solid #3aacbd;
  box-shadow: 2px 2px 6px #3aacbd;
  position: relative;
  z-index: 1;
  transition: 0.3s;
}

@media screen and (max-width: 767px) {
  .btn_area a.btn_white,
  .popup-open.btn_white {
    padding: 16px 0;
    font-size: 1.6rem;
  }
}

.btn_area a.btn_white:hover,
.popup-open.btn_white:hover {
  color: #fff;
  background: #3aacbd;
}

.btn_area a.btn_white:hover::before,
.popup-open.btn_white:hover::before {
  transform-origin: 0% 50%;
  transform: scaleX(1);
}

.btn_area a.btn_white::after,
.popup-open.btn_white::after {
  position: absolute;
  content: "";
  top: 50%;
  translate: 0 -50%;
  right: 20px;
  background: url(../img/lp_travel_insurance/icon_arrow-right_b.svg) center / contain no-repeat;
  width: 0.5em;
  height: 0.7em;
}

.btn_area a.btn_white:hover::after,
.popup-open.btn_white:hover::after {
  background: url(../img/lp_travel_insurance/icon_arrow-right_w.svg) center / contain no-repeat;
}

/* 背景 */
.bg_ltblue {
  background-color: #e5f8fa;
  background-color: #e5f8fa;
  opacity: 1;
  background-image: linear-gradient(#c3e6eb 1.4000000000000001px, transparent 1.4000000000000001px),
    linear-gradient(to right, #c3e6eb 1.4000000000000001px, #e5f8fa 1.4000000000000001px);
  background-size: 28px 28px;
}

.bg_ltblue h2 {
  text-shadow: #fff 4px 4px 2px;
}

.bg_blue {
  background-color: #3aacbd;
  position: relative;
}

.ms_lp section.bg_blue {
  padding-top: 40px;
}

@media screen and (min-width: 768px) {
  .ms_lp section.bg_blue {
    padding-top: 60px;
  }
}

.bg_blue::before {
  background-color: #3aacbd;
  height: 50px;
  top: -50px;
  bottom: -1px;
  border-radius: 0 50px 0 0 !important;
  z-index: 10;
  left: 0;
  width: 50%;
  content: "";
  position: absolute;
}
.bg_blue::after {
  background-color: #3aacbd;
  height: 50px;
  top: -50px;
  bottom: -1px;
  border-radius: 50px 0 0 0 !important;
  z-index: 10;
  left: 50%;
  width: 50%;
  content: "";
  position: absolute;
}

/* 見出し */
.ms_lp h2 {
  text-align: center;
  font-size: 3rem;
  color: #3aacbd;
  font-weight: bold;
  letter-spacing: 0.08em;
  line-height: 1.4;
}

@media screen and (min-width: 768px) {
  .ms_lp h2 {
    font-size: 3.6rem;
  }
}

/* 枠 */
.box_white {
  background-color: #fff;
  border-radius: 20px;
  box-shadow:
    2px 4px 4px 0px #9bd0d9,
    inset -2px -2px 9px 0px #9bd0d9;
}

/* ツールチップ */
.ms_lp .cap::after {
  background-color: #3aacbd;
}

/*--------------------------------
  MV
--------------------------------*/
.main_visual {
  position: relative;
  width: 100%;
  height: 360px;
  background: url("../img/lp_travel_insurance/mv.jpg") center / cover no-repeat;
}
@media screen and (min-width: 768px) {
  .main_visual {
    height: 460px;
  }
}

.main_visual::before {
  position: absolute;
  content: "";
  left: 0;
  top: 0;
  width: 100%;
  height: 360px;
  background-color: rgba(12, 149, 169, 0.5);
}

@media screen and (min-width: 768px) {
  .main_visual::before {
    height: 460px;
  }
}

.curved {
  position: relative;
  height: 362px;
}

@media screen and (min-width: 768px) {
  .curved {
    height: 460px;
  }
}

.curved::after {
  content: "";
  border-top-left-radius: 50% 100%;
  border-top-right-radius: 50% 100%;
  position: absolute;
  bottom: 0;
  width: 100%;
  background: #fff;
  height: 24%;
}

.main_visual h1 {
  width: 400px;
  max-width: 92%;
  position: absolute;
  top: 10%;
  left: 50%;
  translate: -50% 0;
}
@media screen and (min-width: 768px) {
  .main_visual h1 {
    width: 700px;
    top: 6%;
    left: 46%;
  }
}

.mv_logo {
  position: absolute;
  bottom: 5%;
  left: 50%;
  translate: -50% 0;
  width: 160px;
  z-index: 1;
}

@media screen and (min-width: 768px) {
  .mv_logo {
    width: 180px;
  }
}

.mv_btn .btn_area {
  margin: 20px 0 60px;
}

@media screen and (min-width: 768px) {
  .mv_btn .btn_area {
    margin: 30px 0 40px;
  }
}

/*--------------------------------
  おすすめポイント
--------------------------------*/
.point {
  position: relative;
}
.point .point_lists {
  margin-top: 40px;
}

@media screen and (min-width: 768px) {
  .point .point_lists {
    margin-top: 60px;
  }
}

.point .point_lists li {
  width: 100%;
  padding: 60px 20px 20px;
}

.point .point_lists li:not(:first-of-type) {
  margin-top: 40px;
}

@media screen and (min-width: 768px) {
  .point .point_lists li {
    padding: 90px 80px;
  }
}

.point .point_tit {
  display: flex;
  position: relative;
  align-items: center;
}

.point .point_tit .point_num {
  position: absolute;
  content: "";
  top: -70%;
  left: -2%;
  color: #fcb929;
  rotate: -12deg;
  font-family: "brushland", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 2.2rem;
  letter-spacing: 0.08em;
}

@media screen and (min-width: 768px) {
  .point .point_tit .point_num {
    font-size: 3rem;
    top: -130%;
    left: -4%;
  }
}

.point .point_tit h3 {
  font-size: 2.2rem;
  color: #3aacbd;
  font-weight: bold;
  letter-spacing: 0.06em;
}

@media screen and (min-width: 768px) {
  .point .point_tit h3 {
    font-size: 3.2rem;
    letter-spacing: 0.08em;
  }
}

.point .point_tit_img {
  width: 44px;
  margin-left: 8px;
}

@media screen and (min-width: 768px) {
  .point .point_tit_img {
    width: 40px;
  }
}

.point .point_txt {
  margin-top: 24px;
}

.point .point_voice {
  background-color: #e3f6fa;
  border-radius: 16px;
  padding: 16px;
  margin-top: 24px;
}

.point .point_voice {
  display: flex;
  align-items: center;
}

@media screen and (min-width: 768px) {
  .point .point_voice {
    padding: 24px;
  }
}

@media screen and (max-width: 767px) {
  .point .point_voice {
    align-items: flex-start;
  }
}

.point .point_voice .point_voice_img {
  width: 60px;
}

@media screen and (min-width: 768px) {
  .point .point_voice .point_voice_img {
    width: 80px;
  }
}

.point .point_voice .point_voice_txt {
  margin-left: 8px;
  width: calc(100% - 60px - 8px);
  font-size: 1.3rem;
}

@media screen and (min-width: 768px) {
  .point .point_voice .point_voice_txt {
    margin-left: 24px;
    width: calc(100% - 80px - 24px);
  }
}

.point .point_voice .point_voice_txt p {
  font-size: 1.4rem;
}

.point .point_voice .point_voice_star {
  width: 140px;
  margin-top: 8px;
}

/*--------------------------------
  ご契約の流れ
--------------------------------*/
.flow h2 {
  color: #fff;
}

.flow .flow_txt {
  text-align: center;
  font-weight: bold;
  color: #fff;
  margin-top: 24px;
}

#travel .ms_lp .step__box .step__list {
  border-radius: 10px;
  background-color: #fff;
  border: none;
  box-shadow:
    2px 4px 4px 0px #47909c,
    inset -2px -2px 9px 0px #9bd0d9;
}

#travel .ms_lp .step__box .step__number {
  border-radius: 10px 0 100% 0;
  background-color: #e5f8fa;
}

@media screen and (max-width: 767px) {
  #travel .ms_lp .step__box .step__number {
    width: 40px;
    height: 40px;
    font-size: 1.4rem;
  }
}

@media screen and (max-width: 767px) {
  #travel .step__box .step__list:not(:last-of-type)::before {
    border-color: #e5f8fa transparent transparent transparent;
  }
}

#travel .ms_lp .step__box .step__number {
  border-radius: 10px 0 100% 0;
  background-color: #e5f8fa;
}
@media screen and (max-width: 767px) {
  #travel .ms_lp .step__box .step__list-pic {
    margin: 16px 0;
  }
}

/*--------------------------------
  保険料例
--------------------------------*/
.premium .premium_small {
  letter-spacing: 0.01em;
  line-height: 1;
  margin-top: 24px;
}

.premium .premium_small p {
  font-size: 1.4rem;
  text-align: center;
  font-weight: bold;
  color: #3aacbd;
}

@media screen and (max-width: 767px) {
  .premium .premium_small p {
    text-align: left;
  }
}

.premium .box_white {
  margin-top: 40px;
  padding: 30px 0;
}

.premium .premium_lists {
  display: flex;
}

@media screen and (max-width: 767px) {
  .premium .premium_lists {
    flex-wrap: wrap;
    justify-content: center;
    width: 86%;
    margin: 0 auto;
  }
}

.premium .premium_lists li {
  width: 20%;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .premium .premium_lists li {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 10px;
  }
}

@media screen and (min-width: 768px) {
  .premium .premium_lists li:not(:last-of-type) {
    border-right: 1px solid #9bd0d9;
  }
}

.premium .premium_txt_day {
  color: #3aacbd;
  font-weight: bold;
  border: 1px solid #3aacbd;
  border-radius: 100px;
  text-align: center;
  display: inline-block;
  padding: 2px 14px;
  font-size: 1.4rem;
}

@media screen and (max-width: 767px) {
  .premium .premium_txt_day {
    height: 2em;
    width: 150px;
  }
}

.premium .premium_txt_price {
  font-size: 4rem;
  color: #fcb929;
  font-weight: bold;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .premium .premium_txt_price {
    font-size: 3.2rem;
  }
}

.premium .premium_txt_price .is-small {
  font-size: 2rem;
  margin-left: 3px;
}
@media screen and (max-width: 767px) {
  .premium .premium_txt_price .is-small {
    font-size: 1.8rem;
  }
}

.premium_voice {
  margin-top: 36px;
  background-color: #e3f6fa;
  border-radius: 16px;
  padding: 16px;
}
@media screen and (min-width: 768px) {
  .premium_voice {
    padding: 24px;
  }
}

.premium_voice_tit {
  color: #3aacbd;
  padding: 8px 0;
  text-align: center;
  font-weight: bold;
}

.premium_voice_wrap {
  display: flex;
  margin-top: 8px;
  justify-content: center;
  align-items: center;
}

@media screen and (max-width: 767px) {
  .premium_voice_wrap {
    align-items: flex-start;
  }
}

.premium_voice_img {
  width: 80px;
  margin-right: 24px;
}

@media screen and (max-width: 767px) {
  .premium_voice_img {
    margin-right: 8px;
    width: 60px;
  }
}

@media screen and (max-width: 767px) {
  .premium_voice_txt {
    width: calc(100% - (88px + 8px));
  }
}

/*--------------------------------
  3つの契約タイプ
--------------------------------*/
.type_lists {
  margin-top: 40px;
}

@media screen and (min-width: 768px) {
  .type_lists {
    display: flex;
    justify-content: space-between;
    margin-top: 60px;
  }
}

.type_lists li {
  width: 80%;
  margin: 0 auto 24px;
}

@media screen and (min-width: 768px) {
  .type_lists li {
    width: calc(33% - (40px * 2 / 3));
  }
}

.type_copy {
  font-weight: bold;
  font-size: 2rem;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .type_copy {
    font-size: 2rem;
  }
}

.type_box {
  border-radius: 20px;
  padding: 24px 0;
}

.type_tit {
  color: #fff;
  font-weight: bold;
  font-size: 2rem;
  text-align: center;
}

.type_tit .appeal {
  background-color: #fff;
  border-radius: 100px;
  padding: 2px 16px;
  margin-right: 4px;
}

.type_txt {
  color: #fff;
  font-weight: bold;
  text-align: center;
  font-size: 2.4rem;
  line-height: 1.5;
}

.type_txt span {
  font-size: 6.4rem;
  margin-right: 5px;
}

.is-p1 .type_copy,
.is-p1 .type_tit .appeal {
  color: #54bdc1;
}
.is-p1 .type_box {
  background-color: #54bdc1;
  box-shadow:
    3px 4px 5px 0px rgba(29, 129, 146, 0.3),
    inset -3px -4px 5px 0px rgba(29, 129, 146, 0.3);
}

.is-p2 .type_copy,
.is-p2 .type_tit .appeal {
  color: #549dc1;
}
.is-p2 .type_box {
  background-color: #549dc1;
  box-shadow:
    3px 4px 5px 0px rgba(37, 102, 134, 0.3),
    inset -3px -4px 5px 0px rgba(37, 102, 134, 0.3);
}

.is-p3 .type_copy,
.is-p3 .type_tit .appeal {
  color: #547ec1;
}
.is-p3 .type_box {
  background-color: #547ec1;
  box-shadow:
    3px 4px 5px 0px rgba(23, 74, 155, 0.3),
    inset -3px -4px 5px 0px rgba(23, 74, 155, 0.3);
}

#travel .ms_lp .travel__aco .accordion__head a {
  color: #fff;
  border-radius: 20px 20px 0 0;
  background-image: linear-gradient(135deg, rgba(152, 235, 208, 1), rgba(55, 170, 189, 1));
  border: none;
  box-shadow: 3px 3px 7px #379dac;
}

#travel .ms_lp .accordion__head.aco__com a::after {
  background: url(../../images/common/icon_minus_w.svg) center / contain no-repeat;
}

#travel .ms_lp .accordion__head.aco__com.is-active a::after {
  background: url(../../images/common/icon_plus_w.svg) center / contain no-repeat;
}

#travel .ms_lp .accordion__head.aco__com.is-active a {
  border-radius: 20px;
}

#travel .ms_lp .type .travel__aco {
  margin-top: 40px;
}

#travel .ms_lp .travel__aco .accordion__body {
  border-radius: 0 0 20px 20px;
  position: relative;
  padding: 16px 16px 32px;
}
@media screen and (max-width: 767px) {
  #travel .ms_lp .t-table .t-table__subtit {
    padding: 10px;
  }
}

@media screen and (max-width: 767px) {
  #travel .ms_lp .t-table .t-table__tit {
    padding: 10px;
  }
}

/* 支払事例 */
.ex_box_wrap {
  margin-top: 80px;
  padding: 40px 20px;
}

@media screen and (min-width: 768px) {
  .ex_box_wrap {
    padding: 56px 40px;
  }
}

.ex_credit h3 {
  font-weight: bold;
  text-align: center;
  letter-spacing: 0.08em;
  line-height: 1.7;
  font-size: 2rem;
}

@media screen and (min-width: 768px) {
  .ex_credit h3 {
    font-size: 2.8rem;
  }
}

.ex_credit h3 .is-small {
  font-size: 0.9em;
}

.ex_box {
  margin-top: 24px;
  border-radius: 20px;
  background-color: #e3f6fa;
  padding: 24px;
}

.ex_box h4 {
  background-color: #3aacbd;
  color: #fff;
  text-align: center;
  font-weight: bold;
  font-size: 1.8rem;
  padding: 8px;
  border-radius: 100px;
  letter-spacing: 0.08em;
}

.ex_wrap {
  margin-top: 16px;
}

@media screen and (max-width: 767px) {
  .ex_wrap {
    text-align: center;
  }
}
@media screen and (min-width: 768px) {
  .ex_wrap {
    display: flex;
    align-items: center;
    justify-content: center;
  }
}

.ex_wrap .ex_place {
  border: 1px solid #222222;
  border-radius: 100px;
  font-weight: bold;
  padding: 5px 10px;
  display: inline-block;
}

@media screen and (min-width: 768px) {
  .ex_wrap .ex_place {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 16px;
  }
}

.ex_arrow {
  width: 120px;
  margin: 16px auto;
}

@media screen and (min-width: 768px) {
  .ex_price {
    display: flex;
    align-items: center;
    justify-content: center;
  }
}

.ex_price .ex_price_img {
  width: 140px;
}

@media screen and (min-width: 768px) {
  .ex_price .ex_price_img {
    margin-right: 24px;
  }
}

@media screen and (max-width: 767px) {
  .ex_price .ex_price_img {
    margin: 0 auto;
  }
}

@media screen and (max-width: 767px) {
  .ex_price .ex_price_txt {
    width: 80%;
    margin: 16px auto 0;
  }
}

.ex_price .ex_price_txt_wrap {
  color: #3aacbd;
  display: flex;
  justify-content: space-between;
}
.ex_price .ex_price_txt_wrap dt {
  text-align: right;
  font-weight: bold;
  margin-right: 24px;
  font-size: 1.8rem;
  letter-spacing: 0.08em;
}
@media screen and (min-width: 768px) {
  .ex_price .ex_price_txt_wrap dt {
    font-size: 2.4rem;
  }
}

.ex_price .ex_price_txt_wrap dd {
  text-align: right;
  font-weight: bold;
  font-size: 1.4rem;
}
@media screen and (min-width: 768px) {
  .ex_price .ex_price_txt_wrap dd {
    font-size: 2rem;
  }
}

.ex_price .ex_price_txt_wrap dd .is-big {
  font-size: 1.8rem;
}
@media screen and (min-width: 768px) {
  .ex_price .ex_price_txt_wrap dd .is-big {
    font-size: 2.4rem;
  }
}

.ex_delay h3 {
  color: #3aacbd;
  font-weight: bold;
  font-size: 2.4rem;
  text-align: center;
  line-height: 1.5;
}
.ex_delay h3 .is-small {
  font-size: 1.8rem;
}
.ex_delay h3 .attention {
  font-size: 1.4rem;
  font-weight: normal;
}

.ex_delay .btn_area {
  margin: 40px 0;
}

/*--------------------------------
  ご加入時のポイント
--------------------------------*/
.point_get h2 {
  color: #fff;
}

.point_get_lists {
  margin-top: 40px;
}

@media screen and (min-width: 768px) {
  .point_get_lists {
    margin-top: 60px;
  }
}

.point_get_lists .btn_area {
  margin: 24px 0;
}

@media screen and (min-width: 768px) {
  .point_get_lists {
    display: flex;
  }
}

.point_get_lists li {
  width: 100%;
  padding: 24px;
}

.point_get_lists li:first-of-type {
  margin-bottom: 40px;
}

@media screen and (min-width: 768px) {
  .point_get_lists li {
    width: calc(50% - 60px / 2);
    padding: 24px 40px 40px;
  }
}

@media screen and (min-width: 768px) {
  .point_get_lists li:first-of-type {
    margin-right: 60px;
    margin-bottom: 0;
  }
}

.point_get_box_tit {
  display: flex;
  margin-bottom: 24px;
  align-items: flex-end;
}

.point_get_box_tit h3 {
  font-weight: bold;
  font-size: 2.2rem;
  color: #ff6200;
  line-height: 1.5;
  margin-left: 8px;
}

.point_get_box_img {
  width: 60px;
}

.point_get_lists .box_white {
  box-shadow:
    4px 3px 6px 0px #0f6a78,
    inset 2px 0px 6px 0px rgba(15, 106, 120, 0.25),
    inset -3px -4px 5px 0px rgba(15, 106, 120, 0.4);
}

/* ポップアップ */
#popup {
  display: none;
}

.popup-open {
  cursor: pointer;
}

.popup-overlay {
  display: none;
}

#popup:checked ~ .popup-overlay {
  display: block;
  z-index: 99999;
  background-color: #00000070;
  position: fixed;
  width: 100%;
  height: 100vh;
  top: 0;
  left: 0;
}

.popup-window {
  width: 90vw;
  max-width: 410px;
  height: 90%;
  padding: 20px;
  background-color: #ffffff;
  border-radius: 6px;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.popup-img {
  margin: 0;
  height: 100%;
}

.popup-img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.popup-img:not(:last-of-type) {
  margin-bottom: 1em;
}

.popup-close {
  cursor: pointer;
  position: absolute;
  top: -26px;
  right: 0;
}

/*--------------------------------
  保険料のお支払方法
--------------------------------*/
.pay .box_white {
  padding: 40px 16px 8px;
  margin-top: 16px;
}

@media screen and (min-width: 768px) {
  .pay .box_white {
    padding: 40px 60px 20px;
  }
}

.pay_lists {
  display: flex;
  justify-content: space-between;
}
.pay_lists li {
  width: 33%;
  text-align: center;
}

.pay_lists li .pay_txt {
  color: #3aacbd;
  font-weight: bold;
  background-color: #e3f6fa;
  padding: 3px 14px;
  border-radius: 100px;
  margin-top: 8px;
  font-size: 1.2rem;
  display: inline-block;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .pay_lists li .pay_txt {
    font-size: 1.4rem;
  }
}

.pay_lists li .pay_img img {
  width: 80%;
}

@media screen and (min-width: 768px) {
  .pay_lists li .pay_img img {
    width: 60%;
  }
}

.pay .btn_area a {
  font-size: 1.6rem;
}

.pay .btn_area {
  margin: 32px 0 40px 0;
}

@media screen and (min-width: 768px) {
  .pay .btn_area {
    margin: 40px 0;
  }
}

/*--------------------------------
  保険金請求もネットで完結
--------------------------------*/
section.demand {
  padding-top: 40px;
}
#travel .ms_lp .demand .step__box .step__list {
  background-color: #e5f8fa;
  box-shadow: none;
  border: 1px solid #fff;
}

#travel .ms_lp .demand .step__box .step__number {
  background-color: #3aacbd;
  color: #fff;
}

@media screen and (max-width: 767px) {
  #travel .ms_lp .demand .step__box .step__list:not(:last-of-type)::before {
    border-color: #3aacbd transparent transparent transparent;
  }
}

#travel .ms_lp .demand .step__box .step__list:last-of-type {
  margin-bottom: 8px;
}

#travel .ms_lp .demand .step__box .step__wrap {
  margin: 24px 20px 24px 36px;
  letter-spacing: 0.03em;
}

@media screen and (min-width: 768px) {
  #travel .ms_lp .demand .travel__aco {
    margin-top: 40px;
  }
}

.demand .btn_area a {
  font-size: 1.4rem;
}

@media screen and (min-width: 768px) {
  .demand .btn_area a {
    font-size: 1.6rem;
  }
}

.demand .btn_area {
  margin: 32px 0;
}

@media screen and (min-width: 768px) {
  .demand .btn_area {
    margin: 40px 0;
  }
}

/*--------------------------------
  よくある質問
--------------------------------*/
.faq .box_white {
  margin-top: 40px;
  padding: 40px 16px;
}

@media screen and (min-width: 768px) {
  .faq .box_white {
    padding: 60px 40px;
    margin-top: 60px;
  }
}

.faq .faqlist__question {
  font-weight: bold;
  font-size: 1.8rem;
  line-height: 1.4;
  color: #3aacbd;
}

@media screen and (min-width: 768px) {
  .faq .faqlist__question {
    font-size: 2rem;
  }
}

.faq .faqlist__question::before {
  color: #3aacbd;
  left: -36px;
}

@media screen and (min-width: 768px) {
  .faq .faqlist__answer {
    margin-top: 16px;
  }
}

.faq .faqlist__item {
  padding: 32px 16px 32px 48px;
}

.faq .btn_area {
  margin: 32px 0;
}

@media screen and (min-width: 768px) {
  .faq .btn_area {
    margin: 40px 0;
  }
}

#mainContent.ms_lp {
  padding-bottom: 0;
}

#footerTop {
  display: none;
}

#travel.subid_travel-lp .sec__bottom {
  background-color: #e5f8fa;
  padding-top: 24px;
}

#travel.subid_travel-lp .serial-number {
  background-color: #e5f8fa;
}
