@charset "UTF-8";
/* ----------------------------------------------------------------
 Base
----------------------------------------------------------------- */
/* chromeで画像ぼける対策 */
img {
  image-rendering: -webkit-optimize-contrast;
}

/* rollover */
.roll_opacity {
  transition: all 0.05s ease;
}
.roll_opacity:hover {
  opacity: 0.8;
}

/* mixin */
/* .str-contents
----------------------------------------------- */
.str-contents {
  width: auto;
  margin-bottom: 0;
}

/* .area_contents
----------------------------------------------- */
.area_contents {
  font-size: 14px;
}

/* .area_section
----------------------------------------------- */
.area_section {
  padding: 50px 0;
  margin-bottom: 50px;
}

.sp .area_section {
  padding: 20px 0;
  margin-bottom: 20px;
}

.pc .area_section_inner {
  width: 1000px;
  margin: 0 auto;
}

.sp .area_section_inner {
  padding: 0 8px;
}

/* .area_mv
----------------------------------------------- */
.pc .area_mv {
  margin-bottom: 30px;
}
.pc .area_mv .img_mv {
  display: flex;
  justify-content: center;
  overflow: hidden; /* 適宜抜く */
}
.pc .area_mv .img_mv img {
  width: 100%; /* 適宜抜く */
  min-width: 1280px; /* 適宜抜く */
}

.sp .area_mv .img_mv img {
  width: 100%;
}

/* .area_leadtext
----------------------------------------------- */
.area_leadtext {
  text-align: center;
  font-size: 22px;
  margin-bottom: 16px;
}
.area_leadtext .leadtext_ex {
  margin-top: 10px;
  font-size: 26px;
  font-weight: bold;
}

.sp .area_leadtext {
  text-align: left;
  font-size: 14px;
  padding: 8px;
  margin-bottom: 10px;
}
.sp .area_leadtext .leadtext_ex {
  margin-top: 4px;
  font-size: 14px;
}

/* .area_navi_list
----------------------------------------------- */
.area_navi_list {
  margin-bottom: 30px;
}
.area_navi_list a {
  color: #333;
}
.area_navi_list dl {
  width: 650px;
  margin: 0 auto;
  border: 2px solid #fef301;
}
.area_navi_list dl dt {
  background: #fef301;
  font-size: 26px;
  font-weight: 700;
  text-align: center;
  padding: 10px;
}
.area_navi_list dl dd ul {
  padding-left: 200px;
  margin: 10px;
  box-sizing: border-box;
}
.area_navi_list dl dd ul li {
  position: relative;
  font-size: 22px;
  line-height: 1.6;
}
.area_navi_list dl dd ul li:before {
  display: inline-block;
  content: "";
  width: 8px;
  height: 8px;
  border: 2px solid;
  border-color: transparent transparent #333 #333;
  transform: rotate(-45deg);
  position: absolute;
  left: -36px;
  top: 7px;
}

.sp .area_navi_list {
  padding: 0 8px;
}
.sp .area_navi_list dl {
  width: auto;
}
.sp .area_navi_list dl dt {
  font-size: 18px;
  padding: 4px;
}
.sp .area_navi_list dl dd ul {
  width: 170px;
  margin: 8px auto;
  padding-left: 0;
}
.sp .area_navi_list dl dd ul li {
  font-size: 16px;
}
.sp .area_navi_list dl dd ul li:before {
  left: -28px;
  top: 2px;
}

/* .area_compensation_details
----------------------------------------------- */
.area_compensation_details {
  padding: 30px 0;
  background: #b8e3f7;
}
.area_compensation_details .area_section_inner {
  position: relative;
}
.area_compensation_details .area_section_inner .badge_ribbon {
  height: 120px;
  position: absolute;
  top: -30px;
  right: 0;
  background: #21A0DD;
  padding: 38px 20px 40px;
  font-size: 18px;
  font-weight: bold;
  color: #fff;
  box-sizing: border-box;
  clip-path: polygon(0 0, 100% 0%, 100% 70%, 50% 100%, 0 70%);
}
.area_compensation_details .area_section_inner h2.hdg_02 {
  font-size: 36px;
  border-bottom: 2px dashed #fff;
  margin-bottom: 20px;
}
.area_compensation_details .area_section_inner .box_case {
  margin-bottom: 30px;
}
.area_compensation_details .area_section_inner .box_case .list_case {
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 10px;
}
.area_compensation_details .area_section_inner .box_case dl {
  display: flex;
  margin-bottom: 8px;
}
.area_compensation_details .area_section_inner .box_case dl dt {
  background: #fff;
  padding: 20px;
  border-radius: 8px;
  font-size: 20px;
  color: #21A0DD;
  font-weight: bold;
  display: inline-block;
}
.area_compensation_details .area_section_inner .box_case dl dt p {
  border-top: 2px solid #21A0DD;
  border-bottom: 2px solid #21A0DD;
  padding: 10px 0;
  width: 100px;
  box-sizing: border-box;
  display: inline-block;
}
.area_compensation_details .area_section_inner .box_case dl dt img {
  width: 82px;
  margin-left: 10px;
  filter: invert(49%) sepia(99%) saturate(394%) hue-rotate(154deg) brightness(92%) contrast(95%);
}
.area_compensation_details .area_section_inner .box_case dl dd {
  padding-top: 10px;
  margin-left: 20px;
  font-size: 18px;
}
.area_compensation_details .area_section_inner .box_case dl dd .case_anser {
  font-size: 20px;
  font-weight: bold;
  margin-top: 10px;
}
.area_compensation_details .area_section_inner .box_case ul.list_notice {
  margin-top: 16px;
  line-height: 1.6;
}
.area_compensation_details .area_section_inner .box_case .wrap_flow {
  display: flex;
  align-items: center;
  font-size: 20px;
  font-weight: bold;
}
.area_compensation_details .area_section_inner .box_case .wrap_flow .box_flow {
  background: #fff;
  border-radius: 8px;
  padding: 12px;
  text-align: center;
  position: relative;
}
.area_compensation_details .area_section_inner .box_case .wrap_flow .box_flow .box_flow_inner .flow_txt_s {
  font-size: 16px;
  font-weight: normal;
}
.area_compensation_details .area_section_inner .box_case .wrap_flow .box_flow .box_flow_inner .txt_02 {
  font-size: 26px;
}
.area_compensation_details .area_section_inner .box_case .wrap_flow .box_flow .box_flow_inner .ribbon {
  background: #21a0dd;
  font-size: 16px;
  color: #fff;
  font-weight: bold;
  text-align: center;
  padding: 0 10px;
  clip-path: polygon(100% 0, 98% 50%, 100% 100%, 0 100%, 2% 50%, 0 0);
}
.area_compensation_details .area_section_inner .box_case .wrap_flow .box_flow_01 {
  margin-right: 50px;
}
.area_compensation_details .area_section_inner .box_case .wrap_flow .box_flow_01:after {
  content: "";
  position: absolute;
  top: 50%;
  right: -44px;
  display: inline-block;
  width: 40px;
  height: 40px;
  transform: translate(0, -50%);
  background-color: #000;
  clip-path: polygon(0 45%, 70% 45%, 70% 30%, 100% 50%, 70% 70%, 70% 55%, 0 55%);
}
.area_compensation_details .area_section_inner .box_case .wrap_flow .wrap_box_flow.wrap_box_flow_01 {
  margin-right: 30px;
}
.area_compensation_details .area_section_inner .box_case .wrap_flow .wrap_box_flow.wrap_box_flow_01 .box_flow_02 {
  position: relative;
}
.area_compensation_details .area_section_inner .box_case .wrap_flow .wrap_box_flow.wrap_box_flow_01 .box_flow_02:after {
  content: "＋";
  position: absolute;
  right: -30px;
  top: 50%;
  transform: translate(0, -50%);
  font-size: 30px;
  font-weight: bold;
}
.area_compensation_details .area_section_inner .box_case .wrap_flow .wrap_box_flow.wrap_box_flow_02 {
  margin-right: 10px;
}
.area_compensation_details .area_section_inner .box_case .wrap_flow .wrap_box_flow .box_flow_02 {
  height: 120px;
  box-sizing: border-box;
}
.area_compensation_details .area_section_inner .box_case .wrap_flow .wrap_box_flow .box_flow_02:first-of-type {
  margin-bottom: 20px;
}
.area_compensation_details .area_section_inner .box_case .wrap_flow .box_flow_03 {
  width: 160px;
  height: 260px;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
}
.sp .area_compensation_details {
  padding: 16px 0;
}
.sp .area_compensation_details .area_section_inner .badge_ribbon {
  height: 76px;
  top: -16px;
  padding: 24px 20px 40px;
  font-size: 12px;
}
.sp .area_compensation_details .area_section_inner h2.hdg_02 {
  font-size: 28px;
  border-bottom: 1px dashed #fff;
  margin-bottom: 20px;
}
.sp .area_compensation_details .area_section_inner .box_case {
  margin-bottom: 0;
}
.sp .area_compensation_details .area_section_inner .box_case:not(:last-of-type) {
  margin-bottom: 20px;
}
.sp .area_compensation_details .area_section_inner .box_case .list_case {
  font-size: 15px;
  margin-bottom: 10px;
  letter-spacing: -0.5px;
}
.sp .area_compensation_details .area_section_inner .box_case dl {
  display: block;
  margin-bottom: 16px;
}
.sp .area_compensation_details .area_section_inner .box_case dl dt {
  padding: 10px 20px;
  border-radius: 4px;
  font-size: 20px;
  width: 100%;
  box-sizing: border-box;
}
.sp .area_compensation_details .area_section_inner .box_case dl dt p {
  padding: 8px 0;
  width: 80%;
  text-align: center;
}
.sp .area_compensation_details .area_section_inner .box_case dl dt img {
  width: 50px;
  margin-left: 12px;
}
.sp .area_compensation_details .area_section_inner .box_case dl dd {
  padding-top: 10px;
  margin-left: 8px;
  font-size: 14px;
}
.sp .area_compensation_details .area_section_inner .box_case dl dd .case_anser {
  font-size: 14px;
  margin-top: 8px;
}
.sp .area_compensation_details .area_section_inner .box_case ul.list_notice {
  margin-top: 12px;
  line-height: 1.6;
  font-size: 12px;
}
.sp .area_compensation_details .area_section_inner .box_case .wrap_flow {
  display: block;
  font-size: 16px;
}
.sp .area_compensation_details .area_section_inner .box_case .wrap_flow .box_flow {
  border-radius: 4px;
  padding: 8px 0;
}
.sp .area_compensation_details .area_section_inner .box_case .wrap_flow .box_flow .box_flow_inner .flow_txt_s {
  font-size: 12px;
}
.sp .area_compensation_details .area_section_inner .box_case .wrap_flow .box_flow .box_flow_inner .txt_01 {
  letter-spacing: -0.5px;
}
.sp .area_compensation_details .area_section_inner .box_case .wrap_flow .box_flow .box_flow_inner .txt_02 {
  font-size: 20px;
}
.sp .area_compensation_details .area_section_inner .box_case .wrap_flow .box_flow .box_flow_inner .ribbon {
  font-size: 16px;
  padding: 0 10px;
}
.sp .area_compensation_details .area_section_inner .box_case .wrap_flow .box_flow_01 {
  margin-right: 0;
  width: 100%;
  box-sizing: border-box;
}
.sp .area_compensation_details .area_section_inner .box_case .wrap_flow .box_flow_01:after {
  top: auto;
  bottom: -26px;
  left: 50%;
  width: 20px;
  height: 20px;
  transform: translate(-50%, 0);
  clip-path: polygon(30% 0%, 70% 0%, 70% 50%, 100% 50%, 50% 100%, 0% 50%, 30% 50%);
}
.sp .area_compensation_details .area_section_inner .box_case .wrap_flow .wrap_box_flow.wrap_box_flow_01 {
  margin-right: 0;
  display: flex;
  justify-content: space-between;
  margin-top: 30px;
  margin-bottom: 24px;
}
.sp .area_compensation_details .area_section_inner .box_case .wrap_flow .wrap_box_flow.wrap_box_flow_01 .box_flow_02 {
  width: 49%;
}
.sp .area_compensation_details .area_section_inner .box_case .wrap_flow .wrap_box_flow.wrap_box_flow_01 .box_flow_02:after {
  left: 50%;
  top: auto;
  bottom: -30px;
  transform: translate(-50%, 0);
  font-size: 24px;
}
.sp .area_compensation_details .area_section_inner .box_case .wrap_flow .wrap_box_flow.wrap_box_flow_02 {
  margin-right: 0;
  display: flex;
  justify-content: space-between;
  margin-bottom: 10px;
}
.sp .area_compensation_details .area_section_inner .box_case .wrap_flow .wrap_box_flow .box_flow_02 {
  width: 49%;
  height: 96px;
}
.sp .area_compensation_details .area_section_inner .box_case .wrap_flow .wrap_box_flow .box_flow_02:first-of-type {
  margin-bottom: 0;
}
.sp .area_compensation_details .area_section_inner .box_case .wrap_flow .box_flow_03 {
  width: 100%;
  height: 96px;
}
/* .area_insurance_details
----------------------------------------------- */
.area_insurance_details {
  padding: 30px 0;
}
.area_insurance_details .wrap_insurance_box {
  margin-bottom: 40px;
}
.area_insurance_details .wrap_insurance_box h3.hdg_03 {
  font-size: 24px;
  padding-left: 12px;
  border-left: 5px solid #6FB83E;
  margin-bottom: 20px;
}
.area_insurance_details .wrap_insurance_box {
  /* テーブル全体の基本設定 */
}
.area_insurance_details .wrap_insurance_box .price_table {
  width: 100%;
  font-family: sans-serif;
  box-sizing: border-box;
  margin-bottom: 20px;
  border-collapse: collapse;
  border: 2px solid #ffffff;
  background-color: #ffffff;
  outline: 1px solid #7cb342;
}
.area_insurance_details .wrap_insurance_box .price_table:last-of-type {
  margin-bottom: 0;
}
.area_insurance_details .wrap_insurance_box .price_table th, .area_insurance_details .wrap_insurance_box .price_table td {
  border: 2px solid #ffffff;
  text-align: center;
  vertical-align: middle;
}
.area_insurance_details .wrap_insurance_box .price_table__condition {
  background-color: #6FB83E;
  color: #ffffff;
  width: 32%;
  padding: 16px;
}
.area_insurance_details .wrap_insurance_box .price_table__condition_wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
  text-align: left;
}
.area_insurance_details .wrap_insurance_box .price_table__condition_text {
  font-size: 16px;
  line-height: 1.4;
  text-align: center;
}
.area_insurance_details .wrap_insurance_box .price_table__condition_text strong {
  font-size: 20px;
  font-weight: bold;
}
.area_insurance_details .wrap_insurance_box .price_table__condition_text span {
  display: block;
  font-size: 12px;
  margin-top: 4px;
  opacity: 0.9;
}
.area_insurance_details .wrap_insurance_box .price_table__condition_icon img {
  width: 80px;
  filter: invert(100%) sepia(0%) saturate(20%) hue-rotate(326deg) brightness(104%) contrast(108%);
}
.area_insurance_details .wrap_insurance_box .price_table__label {
  background-color: #BAEF97;
  color: #333333;
  font-size: 16px;
  font-weight: bold;
  padding: 8px 0;
  width: 30%;
}
.area_insurance_details .wrap_insurance_box .price_table__value {
  background-color: #ffffff;
  font-size: 28px;
  font-weight: bold;
  padding: 16px 0;
}
.area_insurance_details .wrap_insurance_box .price_table__value:first-of-type {
  border-right: 2px solid #BAEF97;
}
.area_insurance_details .wrap_insurance_box .price_table__value_total {
  color: #333333;
}
.area_insurance_details .wrap_insurance_box .price_table__value_amount {
  color: #f90f2d;
}
.area_insurance_details .wrap_insurance_box.period_conditions ul.list_period_conditions {
  font-size: 18px;
  font-weight: bold;
}
.area_insurance_details .wrap_insurance_box.period_conditions .timeline_container {
  margin-top: 30px;
}
.area_insurance_details .wrap_insurance_box.period_conditions .timeline_container .timeline_section {
  border: 2px solid #6fb83e;
}
.area_insurance_details .wrap_insurance_box.period_conditions .timeline_container .timeline_section h4.timeline_title {
  background: #6fb83e;
  font-size: 16px;
  font-weight: bold;
  color: #FFF;
  padding: 10px 0 10px 15px;
}
.area_insurance_details .wrap_insurance_box.period_conditions .timeline_container .timeline_section .timeline_content {
  padding: 40px 30px;
}
.area_insurance_details .wrap_insurance_box.period_conditions .timeline_container .timeline_section .timeline_content .timeline_labels {
  display: flex;
}
.area_insurance_details .wrap_insurance_box.period_conditions .timeline_container .timeline_section .timeline_content .timeline_labels .label_box .label_text {
  border-left: 1px dashed #666;
  font-weight: bold;
  font-size: 15px;
  height: 40px;
}
.area_insurance_details .wrap_insurance_box.period_conditions .timeline_container .timeline_section .timeline_content .timeline_labels .label_box .label_text_inner {
  position: relative;
  top: -16px;
  left: -8px;
}
.area_insurance_details .wrap_insurance_box.period_conditions .timeline_container .timeline_section .timeline_content .timeline_labels .label_box .line_marker {
  color: #fff;
  font-weight: bold;
  font-size: 16px;
  padding: 12px;
}
.area_insurance_details .wrap_insurance_box.period_conditions .timeline_container .timeline_section .timeline_content .timeline_labels .label_box .line_marker.start_point {
  background: #f90f2d;
}
.area_insurance_details .wrap_insurance_box.period_conditions .timeline_container .timeline_section .timeline_content .timeline_labels .label_box .line_marker.middle_point {
  background: #21a0dd;
}
.area_insurance_details .wrap_insurance_box.period_conditions .timeline_container .timeline_section .timeline_content .timeline_labels .label_box_start {
  width: 30%;
}
.area_insurance_details .wrap_insurance_box.period_conditions .timeline_container .timeline_section .timeline_content .timeline_labels .label_box_middle {
  width: 60%;
}
.area_insurance_details .wrap_insurance_box.period_conditions .timeline_container .timeline_section .timeline_content .timeline_labels .label_box_end {
  position: relative;
}
.area_insurance_details .wrap_insurance_box.period_conditions .timeline_container .timeline_section .timeline_content .timeline_labels .label_box_end .label_text_end {
  font-weight: bold;
}
.area_insurance_details .wrap_insurance_box.period_conditions .timeline_container .timeline_section .timeline_content .timeline_labels .label_box_end .line_marker.end_point span.icon_airplane {
  position: absolute;
  top: -30px;
  right: 44px;
}
.area_insurance_details .wrap_insurance_box.period_conditions .timeline_container .timeline_section .timeline_content .timeline_labels .label_box_end .line_marker.end_point span.icon_airplane img {
  filter: invert(80%) sepia(11%) saturate(3742%) hue-rotate(43deg) brightness(91%) contrast(61%);
  transform: rotate(45deg);
  width: 46px;
}
.area_insurance_details .wrap_insurance_box.period_conditions .timeline_container .timeline_section .timeline_content.has_description .timeline_labels .label_box .line_marker.start_point {
  background-image: linear-gradient(to right, #f00 70%, transparent 70%), repeating-linear-gradient(135deg, #092d40, #092d40 5px, #0b415b 5px, #0b415b 10px);
}
.area_insurance_details .wrap_insurance_box.period_conditions .timeline_container .timeline_section .timeline_content.has_description .timeline_labels .label_box .line_marker.middle_point {
  text-indent: -60px;
}
.area_insurance_details .wrap_insurance_box.period_conditions .timeline_container .timeline_section .timeline_content.has_description .timeline_labels .label_box_middle {
  width: 30%;
}
.area_insurance_details .wrap_insurance_box.period_conditions .timeline_container .timeline_section .timeline_content.has_description .timeline_description {
  margin-top: 20px;
}
.area_insurance_details .wrap_insurance_box .apply_container .apply_section {
  border: 2px solid #6fb83e;
}
.area_insurance_details .wrap_insurance_box .apply_container .apply_section.no-border {
  border: none;
}
.area_insurance_details .wrap_insurance_box .apply_container .apply_section.no-border .apply_content {
  padding: 20px;
}
.area_insurance_details .wrap_insurance_box .apply_container .apply_section h4.apply_title {
  background: #6fb83e;
  font-size: 16px;
  font-weight: bold;
  color: #FFF;
  padding: 10px 0 10px 15px;
}
.area_insurance_details .wrap_insurance_box .apply_container .apply_section h4.apply_title.faq_title {
  background: #b8e3f7;
  color: #333;
}
.area_insurance_details .wrap_insurance_box .apply_container .apply_section .apply_content {
  padding: 30px;
}
.area_insurance_details .wrap_insurance_box .apply_container .apply_section .apply_content dl.apply_description_list:not(:last-of-type) {
  margin-bottom: 25px;
}
.area_insurance_details .wrap_insurance_box .apply_container .apply_section .apply_content dl.apply_description_list dt {
  font-size: 18px;
  font-weight: bold;
}
.area_insurance_details .wrap_insurance_box .apply_container .apply_section .apply_content dl.apply_description_list dt span {
  margin-right: 10px;
}
.area_insurance_details .wrap_insurance_box .apply_container .apply_section .apply_content dl.apply_description_list dt .icon_smartphone img {
  width: 30px;
}
.area_insurance_details .wrap_insurance_box .apply_container .apply_section .apply_content dl.apply_description_list dd {
  margin-top: 6px;
  padding-left: 40px;
}
.area_insurance_details .wrap_insurance_box .apply_container .apply_section .apply_content .img_sample {
  padding: 25px 80px 0;
}
.area_insurance_details .wrap_insurance_box .apply_container .apply_section .apply_content .apply_notice {
  text-align: center;
  margin-top: 8px;
}
.area_insurance_details .wrap_insurance_box .apply_container .apply_section .apply_content .apply_text {
  font-size: 18px;
  margin-bottom: 10px;
}
.area_insurance_details .wrap_insurance_box .apply_container .apply_section .apply_content ul.apply_notice_list {
  margin-bottom: 4px;
}
.area_insurance_details .wrap_insurance_box .apply_container .apply_section .apply_content ul.apply_insurance_list {
  margin-top: 12px;
}
.area_insurance_details .wrap_insurance_box .apply_container .apply_section .apply_content ul.apply_insurance_list li {
  margin-bottom: 8px;
}
.area_insurance_details .wrap_insurance_box .apply_container .apply_section .apply_content ul.apply_insurance_list li dl dt {
  font-size: 16px;
  font-weight: bold;
}
.area_insurance_details .wrap_insurance_box .apply_container .apply_section .faq_content ul.faq_list li {
  border-bottom: 1px dashed #666;
  padding: 15px 0 15px 25px;
  position: relative;
}
.area_insurance_details .wrap_insurance_box .apply_container .apply_section .faq_content ul.faq_list li:before {
  display: inline-block;
  content: "";
  width: 8px;
  height: 8px;
  border: 3px solid;
  border-color: #21A0DD #21A0DD transparent transparent;
  transform: rotate(45deg);
  position: absolute;
  left: -10px;
  top: 50%;
  transform: rotate(45deg) translate(0, -50%);
}
.area_insurance_details .wrap_insurance_box .apply_container .apply_section .faq_content ul.faq_list li a {
  color: #333;
  display: block;
}
.area_insurance_details .wrap_insurance_box .apply_container .apply_section .faq_content .faq_more {
  text-align: right;
}
.area_insurance_details .wrap_insurance_box .apply_container .apply_section .faq_content .faq_more a {
  color: #333;
  display: inline-block;
  padding: 15px 0 15px 25px;
  position: relative;
}
.area_insurance_details .wrap_insurance_box .apply_container .apply_section .faq_content .faq_more a:before {
  display: inline-block;
  content: "";
  width: 8px;
  height: 8px;
  border: 3px solid;
  border-color: #21A0DD #21A0DD transparent transparent;
  transform: rotate(45deg);
  position: absolute;
  left: -10px;
  top: 50%;
  transform: rotate(45deg) translate(0, -50%);
}
.area_insurance_details .insurance_box_notice {
  margin-top: 16px;
  text-indent: -1em;
  padding-left: 1em;
}

.sp .area_insurance_details {
  padding: 20px 0;
}
.sp .area_insurance_details .wrap_insurance_box {
  margin-bottom: 30px;
}
.sp .area_insurance_details .wrap_insurance_box h3.hdg_03 {
  font-size: 20px;
  margin-bottom: 10px;
}
.sp .area_insurance_details .wrap_insurance_box {
  /* テーブル全体の基本設定 */
}
.sp .area_insurance_details .wrap_insurance_box .price_table {
  margin-bottom: 12px;
}
.sp .area_insurance_details .wrap_insurance_box .price_table__condition {
  padding: 8px;
}
.sp .area_insurance_details .wrap_insurance_box .price_table__condition_wrapper {
  display: block;
  text-align: center;
}
.sp .area_insurance_details .wrap_insurance_box .price_table__condition_text {
  font-size: 12px;
}
.sp .area_insurance_details .wrap_insurance_box .price_table__condition_text strong {
  font-size: 14px;
}
.sp .area_insurance_details .wrap_insurance_box .price_table__condition_text span {
  display: block;
  font-size: 12px;
  margin-top: 4px;
  opacity: 0.9;
}
.sp .area_insurance_details .wrap_insurance_box .price_table__condition_icon img {
  width: 40px;
}
.sp .area_insurance_details .wrap_insurance_box .price_table__label {
  font-size: 14px;
}
.sp .area_insurance_details .wrap_insurance_box .price_table__value {
  font-size: 20px;
  padding: 8px 0;
}
.sp .area_insurance_details .wrap_insurance_box.period_conditions ul.list_period_conditions {
  font-size: 14px;
}
.sp .area_insurance_details .wrap_insurance_box.period_conditions .timeline_container {
  margin-top: 16px;
}
.sp .area_insurance_details .wrap_insurance_box.period_conditions .timeline_container .timeline_section h4.timeline_title {
  font-size: 14px;
  padding: 6px 0 6px 8px;
}
.sp .area_insurance_details .wrap_insurance_box.period_conditions .timeline_container .timeline_section .timeline_content {
  padding: 30px 0 20px 12px;
}
.sp .area_insurance_details .wrap_insurance_box.period_conditions .timeline_container .timeline_section .timeline_content .timeline_labels .label_box .label_text {
  font-size: 10px;
  height: 24px;
}
.sp .area_insurance_details .wrap_insurance_box.period_conditions .timeline_container .timeline_section .timeline_content .timeline_labels .label_box .label_text_inner {
  position: relative;
  top: -16px;
  left: -5px;
}
.sp .area_insurance_details .wrap_insurance_box.period_conditions .timeline_container .timeline_section .timeline_content .timeline_labels .label_box .line_marker {
  font-size: 10px;
  padding: 6px;
}
.sp .area_insurance_details .wrap_insurance_box.period_conditions .timeline_container .timeline_section .timeline_content .timeline_labels .label_box_start {
  width: 36%;
}
.sp .area_insurance_details .wrap_insurance_box.period_conditions .timeline_container .timeline_section .timeline_content .timeline_labels .label_box_middle {
  width: 52%;
}
.sp .area_insurance_details .wrap_insurance_box.period_conditions .timeline_container .timeline_section .timeline_content .timeline_labels .label_box_end {
  width: 11%;
}
.sp .area_insurance_details .wrap_insurance_box.period_conditions .timeline_container .timeline_section .timeline_content .timeline_labels .label_box_end .line_marker.end_point span.icon_airplane {
  top: -3px;
  right: 5px;
}
.sp .area_insurance_details .wrap_insurance_box.period_conditions .timeline_container .timeline_section .timeline_content .timeline_labels .label_box_end .line_marker.end_point span.icon_airplane img {
  width: 30px;
}
.sp .area_insurance_details .wrap_insurance_box.period_conditions .timeline_container .timeline_section .timeline_content.has_description .timeline_labels .label_box .line_marker.middle_point {
  text-indent: -38px;
  letter-spacing: -0.5px;
}
.sp .area_insurance_details .wrap_insurance_box.period_conditions .timeline_container .timeline_section .timeline_content.has_description .timeline_labels .label_box_middle {
  width: 37%;
}
.sp .area_insurance_details .wrap_insurance_box.period_conditions .timeline_container .timeline_section .timeline_content.has_description .timeline_description {
  margin-top: 20px;
  font-size: 12px;
}
.sp .area_insurance_details .wrap_insurance_box .apply_container .apply_section.no-border .apply_content {
  padding: 8px;
}
.sp .area_insurance_details .wrap_insurance_box .apply_container .apply_section.no-border.search_section .apply_content {
  padding: 0;
}
.sp .area_insurance_details .wrap_insurance_box .apply_container .apply_section h4.apply_title {
  font-size: 14px;
  padding: 6px 0 6px 8px;
}
.sp .area_insurance_details .wrap_insurance_box .apply_container .apply_section .apply_content {
  padding: 16px;
}
.sp .area_insurance_details .wrap_insurance_box .apply_container .apply_section .apply_content dl.apply_description_list:not(:last-of-type) {
  margin-bottom: 12px;
}
.sp .area_insurance_details .wrap_insurance_box .apply_container .apply_section .apply_content dl.apply_description_list dt {
  font-size: 16px;
}
.sp .area_insurance_details .wrap_insurance_box .apply_container .apply_section .apply_content dl.apply_description_list dt span {
  margin-right: 8px;
}
.sp .area_insurance_details .wrap_insurance_box .apply_container .apply_section .apply_content dl.apply_description_list dt .icon_desktop img {
  width: 24px;
}
.sp .area_insurance_details .wrap_insurance_box .apply_container .apply_section .apply_content dl.apply_description_list dt .icon_smartphone img {
  width: 24px;
}
.sp .area_insurance_details .wrap_insurance_box .apply_container .apply_section .apply_content dl.apply_description_list dd {
  margin-top: 4px;
  padding-left: 32px;
}
.sp .area_insurance_details .wrap_insurance_box .apply_container .apply_section .apply_content .img_sample {
  padding: 20px 20px 0;
}
.sp .area_insurance_details .wrap_insurance_box .apply_container .apply_section .apply_content .apply_notice {
  text-align: left;
  margin-top: 8px;
  font-size: 12px;
}
.sp .area_insurance_details .wrap_insurance_box .apply_container .apply_section .apply_content .apply_text {
  font-size: 16px;
  margin-bottom: 6px;
}
.sp .area_insurance_details .wrap_insurance_box .apply_container .apply_section .apply_content ul.apply_notice_list {
  margin-bottom: 4px;
}
.sp .area_insurance_details .wrap_insurance_box .apply_container .apply_section .apply_content ul.apply_insurance_list {
  margin-top: 12px;
}
.sp .area_insurance_details .wrap_insurance_box .apply_container .apply_section .apply_content ul.apply_insurance_list li {
  margin-bottom: 8px;
}
.sp .area_insurance_details .wrap_insurance_box .apply_container .apply_section .apply_content ul.apply_insurance_list li dl dt {
  font-size: 16px;
}
.sp .area_insurance_details .wrap_insurance_box .apply_container .apply_section .faq_content ul.faq_list li {
  padding: 8px 25px 8px 0;
  position: relative;
}
.sp .area_insurance_details .wrap_insurance_box .apply_container .apply_section .faq_content ul.faq_list li:before {
  display: inline-block;
  content: "";
  width: 6px;
  height: 6px;
  border: 2px solid;
  border-color: #21A0DD #21A0DD transparent transparent;
  transform: rotate(45deg);
  position: absolute;
  left: auto;
  right: 6px;
  top: 50%;
  transform: rotate(45deg) translate(0, -50%);
}
.sp .area_insurance_details .wrap_insurance_box .apply_container .apply_section .faq_content .faq_more a {
  padding: 8px 25px 8px 0;
}
.sp .area_insurance_details .wrap_insurance_box .apply_container .apply_section .faq_content .faq_more a:before {
  display: inline-block;
  content: "";
  width: 6px;
  height: 6px;
  border: 2px solid;
  border-color: #21A0DD #21A0DD transparent transparent;
  transform: rotate(45deg);
  position: absolute;
  left: auto;
  right: 6px;
  top: 50%;
  transform: rotate(45deg) translate(0, -50%);
}
.sp .area_insurance_details .insurance_box_notice {
  margin-top: 14px;
  font-size: 12px;
}

/* .area_search
----------------------------------------------- */
.sp .area_search {
  margin-bottom: 0;
}
.sp .area_search .dp-search {
  margin-top: 0;
  margin-bottom: 0;
}
.sp .area_search .dp-search .search-main-content-01 {
  margin-top: 0;
  margin-bottom: 0;
}
.sp .area_search a {
  text-decoration: none;
}

/* .area_approval_number
----------------------------------------------- */
.area_approval_number {
  margin-bottom: 20px;
}
.area_approval_number .area_section_inner .box_approval_number {
  text-align: right;
  font-size: 12px;
}

/* ----------------------------------------------------------------
 parts
----------------------------------------------------------------- */
.txt_01 {
  color: #21a0dd;
}

.txt_02 {
  color: #f90f2d;
}

.txt_03 {
  color: #6FB83E;
}

.ico_arrow {
  width: 30px;
  height: 20px;
  display: inline-block;
  background: #21A0DD;
  vertical-align: middle;
  margin-right: 10px;
  clip-path: polygon(0% 20%, 50% 20%, 50% 0%, 100% 50%, 50% 100%, 50% 80%, 0% 80%);
}

.sp .ico_arrow {
  width: 20px;
  height: 14px;
  margin-right: 6px;
}

.btn_box {
  margin-top: 20px;
  text-align: center;
}

.btn_content {
  font-size: 28px;
  font-weight: bold;
  background: #FEF301;
  color: #333 !important;
  width: 580px;
  display: inline-block;
  padding: 6px;
  box-sizing: border-box;
  position: relative;
}
.btn_content:hover {
  text-decoration: none;
  background: #FFFA99;
}

.sp .btn_content {
  font-size: 16px;
  width: auto;
  padding: 6px 60px;
}

.btn_01:before {
  display: inline-block;
  content: "";
  width: 10px;
  height: 10px;
  border: 3px solid;
  border-color: #333 #333 transparent transparent;
  transform: rotate(45deg);
  position: absolute;
  left: 18px;
  top: 10px;
  transform: rotate(135deg) translate(0, -50%);
}

.sp .btn_01:before {
  width: 7px;
  height: 7px;
  border: 2px solid;
  border-color: #333 #333 transparent transparent;
  left: 18px;
  top: 5px;
}

.btn_02:before {
  display: inline-block;
  content: "";
  width: 10px;
  height: 10px;
  border: 3px solid;
  border-color: #333 #333 transparent transparent;
  transform: rotate(45deg);
  position: absolute;
  left: 18px;
  top: 50%;
  transform: rotate(45deg) translate(0, -50%);
}

.sp .btn_02:before {
  width: 7px;
  height: 7px;
  border: 2px solid;
  border-color: #333 #333 transparent transparent;
}
