@charset "utf-8";

/* base */
* {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  color: #4f4f4f;
}
html {
  font-size: 10px;
}
body {
  position: relative;
  font-size: 1.6rem;
  line-height: 1.5;
  letter-spacing: 0.02em;
  background-color: #ebd586;
  overflow-x: clip;
}

main {
  position: relative;
  width: 100%;
  z-index: 1;
}
section {
  position: relative;
  width: 100%;
  z-index: 1;
}

#wrapper {
  position: relative;
  width: 58.0rem;
  margin: 0 auto;
  padding: 0;
  background-color: #ffffff;
}
#wrapper.wrapper_document {
  width: 100%;
}

.with_bg_image {
  position: relative;
  width: 100%;
  margin: 0 auto;
  padding: 0;
}
.with_bg_image > .bg_image {
  width: 100%;
}
.with_bg_image > .with_bg_image_inner {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
}

.h2_container {
  position: relative;
  width: 100%;
}
.h2_container .h2 {
  position: relative;
  width: 100%;
  line-height: 1;
  margin: 0 auto;
  text-align: center;
  font-size: 4.3rem;
  font-weight: 900;
  padding: 0 0 2.0rem 0;
  overflow: visible;
}
.h2_container .h2:after {
  content: "";
  display: block;
  position: absolute;
  width: 14%;
  height: 2px;
  background-color: #f59918;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}
.h2_container .h2.h2_image_container:after {
  display: none;
}
.h2_container .h2.h2_image_container .h2_image {
  width: 100%;
}

.h2_container .h2_subtitle {
  line-height: 1;
  margin: 2.2rem auto 0 auto;
  text-align: center;
  font-size: 1.4rem;
}

.body_container {
  position: relative;
  width: 100%;
}

.common_button {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 6.2rem;
  border-radius: 1.4rem;
  color: #ffffff;
  background-color: #000000;
  font-size: 2.4rem;
  font-weight: 700;
  z-index: 1;
  overflow: visible;
  transition: all 0.3s;
  opacity: 1;
}
.common_button .common_button_text {
  position: relative;
  color: #ffffff;
  font-size: 2.2rem;
  font-weight: 800;
  text-indent: -1.0em;
  top: -0.2rem;
}
.common_button:hover {
  opacity: 0.7;
}
.common_button:after {
  content: "";
  display: block;
  position: absolute;
  width: 1.4rem;
  height: 1.4rem;
  background-color: #ffffff;
  clip-path: polygon(0 0, 100% 50%, 0 100%);
  right: 8%;
  top: 50%;
  transform: translateY(-50%);
}
.common_button.common_button_white {
  background-color: #ffffff;
  color: #4f4f4f;
}
.common_button.common_button_white .common_button_text {
  color: #4f4f4f;
}
.common_button.common_button_white:after {
  background-color: #4f4f4f;
}
.common_button.common_button_red {
  background: linear-gradient(90deg, #ff6b56 0%, #f48c65 50%, #f3a860 100%);
}
.common_button.common_button_orange {
  background: linear-gradient(90deg, #ff9900 0%, #f7b733 50%, #f3c94c 100%);
}



/* Loading */
#loader_bg {
  height: 100%;
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  background-color: #ffffff;
  z-index: 100000;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
#loader_bg .loader_img {
  width: 26.0rem;
}

#loader_bg .loader_inner {
  position: relative;
  padding: 1.0rem 0 0 0;
}
#loader_bg .loader_inner_ball_pulse > div {
  background-color: #f59918;
  width: 1.0rem;
  height: 1.0rem;
  border-radius: 100%;
  margin: 0.2rem;
  animation-fill-mode: both;
  display: inline-block;
}
#loader_bg .loader_inner_ball_pulse > div:nth-child(1) {
  animation: loading_ball_pulse_animation 0.75s -0.24s infinite cubic-bezier(0.2, 0.68, 0.18, 1.08);
}
#loader_bg .loader_inner_ball_pulse > div:nth-child(2) {
  animation: loading_ball_pulse_animation 0.75s -0.12s infinite cubic-bezier(0.2, 0.68, 0.18, 1.08);
}
#loader_bg .loader_inner_ball_pulse > div:nth-child(3) {
  animation: loading_ball_pulse_animation 0.75s 0s infinite cubic-bezier(0.2, 0.68, 0.18, 1.08);
}



/* Header */
header {
  position: relative;
  width: 100%;
}
header .menu_area {
  position: relative;
  width: 100%;
  left: 0;
  top: 0;
  margin: 0;
  padding: 1.0rem 2.0rem;
  background-color: #ffffff;
  z-index: 94;
}

header .menu_area .h1_container {
  position: relative;
  display: flex;
  justify-content: start;
  align-items: center;
  margin: 0;
  left: 0;
  top: 0;
}
header .menu_area .h1_container .h1_logo {
  width: 20.5rem;
}

header .fv {
  position: relative;
  width: 100%;
  text-align: center;
  margin: 0;
  padding: 0;
  top: 0;
  left: 0;
  z-index: 1;
  overflow-x: clip;
}
header .fv img.fv_bg_image {
  width: 100%;
}
header .fv .fv_button_container {
  position: relative;
  width: 100%;
  margin: 3.0rem auto 0 auto;
  padding: 0 0 2.0rem 0;
}
header .fv .fv_button_container .fv_button.common_button {
  width: 86%;
  margin: 1.8rem auto;
}



/* Footer */
footer {
  position: relative;
  width: 100%;
  background-color: #ffffff;
}
footer .footer_logo_container {
  position: relative;
  width: 12.6rem;
  margin: 0 auto;
  text-align: center;
}
footer .footer_logo_container img.footer_logo {
  width: 100%;
}
footer .footer_menu_container {
  position: relative;
  width: 100%;
  background-color: #000000;
  text-align: center;
}
footer .footer_menu_container ul.footer_menu {
  position: relative;
  width: fit-content;
  margin: 0 auto;
  padding: 0.3rem 0 0.8rem 0;
  background-color: #000000;
}
footer .footer_menu_container ul.footer_menu li {
  position: relative;
  display: inline-block;
  padding: 0 0.8rem;
  background-color: #000000;
  line-height: 1;
}
footer .footer_menu_container ul.footer_menu li a {
  color: #ffffff;
  font-size: 1.1rem;
  transition: all 0.3s;
  opacity: 1;
}
footer .footer_menu_container ul.footer_menu li a:hover {
  opacity: 0.7;
}

footer .footer_copyright {
  position: relative;
  width: 100%;
  text-align: center;
  font-size: 1.0rem;
  padding: 0.4rem 0;
}



/* Worries */
.sec_worries {
  padding: 6.4rem 0 5.2rem 0;
}
.sec_worries .h2_container .h2 {
  width: 76%;
}

.sec_worries ul.worries_detail {
  position: relative;
  width: 86%;
  margin: 1.8rem auto 0 auto;
}
.sec_worries ul.worries_detail > li {
  position: relative;
  text-align: center;
  width: 100%;
  height: 5.2rem;
  line-height: 5.2rem;
  font-size: 1.7rem;
  margin: 2.0rem auto;
  border-radius: 2.6rem;
  background-color: #f0f0f0;
}

.sec_worries .worries_answer {
  position: relative;
  width: 86%;
  margin: 0 auto;
  text-align: center;
}
.sec_worries .worries_answer img.worries_answer_image {
  width: 100%;
}



/* Service */
.sec_service {
  padding: 0 0 4.6rem 0;
}

.sec_service .h2_container .h2 {
  color: #ffffff;
}
.sec_service .h2_container .h2:after {
  background-color: #ffffff;
}
.sec_service .h2_container .h2_subtitle {
  color: #ffffff;
}

.sec_service .service_inner .service_detail {
  display: flex;
  justify-content: center;
  align-items: center;
}
.sec_service .service_inner .service_detail .service_detail_inner {
  position: relative;
  width: 100%;
}

.sec_service .service_inner .service_detail .service_detail_inner ul.service_point {
  position: relative;
  width: 86%;
  margin: 2.0rem auto 0 auto;
}
.sec_service .service_inner .service_detail .service_detail_inner ul.service_point > li {
  position: relative;
  width: 100%;
  margin: 2.2rem auto;
  padding: 2.0rem 2.6rem;
  border: 2px solid #ffffff;
  display: flex;
  justify-content: start;
  align-items: center;
}
.sec_service .service_inner .service_detail .service_detail_inner ul.service_point > li .service_point_left {
  position: relative;
  width: 24%;
  text-align: center;
}
.sec_service .service_inner .service_detail .service_detail_inner ul.service_point > li .service_point_left .service_point_icon_image {
  width: 100%;
}
.sec_service .service_inner .service_detail .service_detail_inner ul.service_point > li .service_point_right {
  position: relative;
  width: 76%;
  padding: 0 0 0 2.2rem;
}
.sec_service .service_inner .service_detail .service_detail_inner ul.service_point > li .service_point_right .service_point_title {
  position: relative;
  margin: 1.0rem auto 1.0rem 0;
  font-size: 3.2rem;
  font-weight: 700;
  color: #ffffff;
  line-height: 1.25;
}
.sec_service .service_inner .service_detail .service_detail_inner ul.service_point > li .service_point_right .service_point_description {
  position: relative;
  margin: 1.0rem auto 1.0rem 0;
  font-size: 1.1rem;
  color: #ffffff;
}
.sec_service .service_inner .service_detail .service_detail_inner ul.service_point > li .service_point_right .service_point_note {
  position: relative;
  width: fit-content;
  margin: 1.0rem auto 1.0rem 0;
  padding: 0.1rem 0.1rem 0.1rem 0.6rem;
  font-size: 2.0rem;
  font-weight: 700;
  color: #ec654e;
  background-color: #ffffff;
}
.sec_service .service_button_container .service_button.common_button {
  width: 86%;
  margin: 3.6rem auto 0 auto;
}



/* Flow */
.sec_flow {
  padding: 4.8rem 0 7.8rem 0;
}

.sec_flow ul.flow_detail {
  position: relative;
  width: 80%;
  margin: 3.0rem auto 0 auto;
}
.sec_flow ul.flow_detail > li {
  position: relative;
  width: 100%;
  margin: 0 auto;
  padding: 2.6rem 0 3.4rem 0;
}
.sec_flow ul.flow_detail > li:after {
  content: "";
  display: block;
  position: absolute;
  width: 1.8rem;
  height: 1.2rem;
  background-color: #4f4f4f;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}
.sec_flow ul.flow_detail > li:last-child:after {
  display: none;
}

.sec_flow ul.flow_detail > li .flow_detail_inner {
  position: relative;
  width: 100%;
  display: flex;
  justify-content: start;
  align-items: center;
}
.sec_flow ul.flow_detail > li .flow_detail_inner .flow_detail_left {
  position: relative;
  width: 24%;
  text-align: center;
}
.sec_flow ul.flow_detail > li .flow_detail_inner .flow_detail_left .service_point_icon_image {
  width: 100%;
}
.sec_flow ul.flow_detail > li .flow_detail_inner .flow_detail_right {
  position: relative;
  width: 76%;
  padding: 0 0 0 2.0rem;
}
.sec_flow ul.flow_detail > li .flow_detail_inner .flow_detail_right .flow_detail_no {
  position: relative;
  width: fit-content;
  margin: 1.0rem auto 1.0rem 0;
  padding: 0.1rem 0.7rem 0.2rem 0.8rem;
  font-size: 1.2rem;
  font-weight: 700;
  color: #ffffff;
  background-color: #f59918;
}
.sec_flow ul.flow_detail > li .flow_detail_inner .flow_detail_right .flow_detail_heading {
  position: relative;
  width: 100%;
  margin: 0.2rem auto 0.2rem 0;
  display: flex;
  justify-content: start;
  align-items: flex-end;
  flex-wrap: wrap;
}
.sec_flow ul.flow_detail > li .flow_detail_inner .flow_detail_right .flow_detail_heading .flow_detail_title {
  position: relative;
  width: fit-content;
  font-size: 3.6rem;
  font-weight: 800;
  color: #f59918;
  line-height: 1.1;
}
.sec_flow ul.flow_detail > li .flow_detail_inner .flow_detail_right .flow_detail_heading .flow_detail_subtitle {
  position: relative;
  width: fit-content;
  font-size: 1.8rem;
  font-weight: 700;
  color: #f59918;
  line-height: 1.2;
}
.sec_flow ul.flow_detail > li .flow_detail_inner .flow_detail_right .flow_detail_description {
  position: relative;
  margin: 1.0rem auto 1.0rem 0;
  font-size: 1.6rem;
}

.sec_flow .flow_note {
  position: relative;
  width: 100%;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
}
.sec_flow .flow_note .flow_note_inner {
  position: relative;
  width: fit-content;
  padding: 0 0.5em 0 0.5em;
  font-size: 1.0rem;
  font-weight: 600;
}



/* Contents */
.sec_contents {
  padding: 0;
}
.sec_contents .h2_container .h2 {
  width: 85%;
}

.sec_contents .contents_inner .contents_detail {
  display: flex;
  justify-content: center;
  align-items: center;
}
.sec_contents .contents_inner .contents_detail .contents_detail_inner {
  position: relative;
  width: 100%;
}

.sec_contents .contents_inner .contents_detail .contents_main {
  position: relative;
  width: 86%;
  margin: 1.8rem auto;
  display: flex;
  justify-content: space-between;
  align-items: stretch;
}
.sec_contents .contents_inner .contents_detail .contents_main .contents_main_left {
  position: relative;
  width: 48%;
  background-color: #ffffff;
}
.sec_contents .contents_inner .contents_detail .contents_main .contents_main_right {
  position: relative;
  width: 48%;
  background-color: #ffffff;
}
.sec_contents .contents_inner .contents_detail .contents_main .contents_main_detail .contents_main_heading {
  position: relative;
  width: 100%;
  height: 7.6rem;
  display: flex;
  justify-content: center;
  align-items: center;
}
.sec_contents .contents_inner .contents_detail .contents_main .contents_main_detail .contents_main_heading .contents_main_heading_inner {
  position: relative;
  width: 100%;
  line-height: 1.2;
}
.sec_contents .contents_inner .contents_detail .contents_main .contents_main_detail .contents_main_heading .contents_main_heading_inner .contents_main_title {
  position: relative;
  width: 100%;
  color: #dc654e;
  text-align: center;
  font-size: 2.6rem;
  font-weight: 900;
}
.sec_contents .contents_inner .contents_detail .contents_main .contents_main_detail .contents_main_heading .contents_main_heading_inner .contents_main_subtitle {
  position: relative;
  width: 100%;
  color: #dc654e;
  text-align: center;
  font-size: 1.5rem;
  font-weight: 900;
}
.sec_contents .contents_inner .contents_detail .contents_main .contents_main_detail ul.contents_main_items {
  position: relative;
  width: 78%;
  margin: 0 auto;
  padding: 0 0 1.5rem 0;
}
.sec_contents .contents_inner .contents_detail .contents_main .contents_main_detail ul.contents_main_items > li {
  position: relative;
  width: 100%;
  margin: 0 auto 1.0rem auto;
  padding: 1.5rem 0;
  color: #ffffff;
  background-color: #dc654e;
  text-align: center;
  font-size: 1.7rem;
  font-weight: 700;
  line-height: 1.2;
}

.sec_contents .contents_inner .contents_detail .contents_more {
  position: relative;
  width: 86%;
  margin: 1.8rem auto;
  background-color: #ffffff;
}
.sec_contents .contents_inner .contents_detail .contents_more .contents_more_heading {
  position: relative;
  width: 100%;
  margin: 0 auto;
  padding: 1.5rem 0 1.5rem 0;
}

.sec_contents .contents_inner .contents_detail .contents_more .contents_more_heading .contents_more_title {
  position: relative;
  width: 100%;
  color: #dc654e;
  text-align: center;
  font-size: 1.7rem;
  font-weight: 700;
  line-height: 1;
}

.sec_contents .contents_inner .contents_detail .contents_more .contents_more_items {
  position: relative;
  width: 90%;
  margin: 0 auto;
  padding: 0 0 1.2rem 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
}
.sec_contents .contents_inner .contents_detail .contents_more .contents_more_items > li {
  position: relative;
  width: 48%;
  height: 7.0rem;
  margin: 0 0 1.0rem 0;
  padding: 1.5rem 0;
  color: #ffffff;
  background-color: #dc654e;
  text-align: center;
  font-size: 1.7rem;
  font-weight: 700;
  line-height: 1.2;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
}
.sec_contents .contents_inner .contents_detail .contents_more .contents_more_items > li .contents_more_items_note {
  position: relative;
  width: 100%;
  color: #ffffff;
  font-size: 1.4rem;
  font-weight: 600;
}



/* Case */
.sec_case {
  padding: 5.8rem 0 3.0rem 0;
}

.sec_case .case_detail_container {
  position: relative;
  width: 86%;
  margin: 0 auto;
}
.sec_case .case_detail_container .case_detail {
  position: relative;
  width: 100%;
  margin: 7.5rem auto 0 auto;
}
.sec_case .case_detail_container .case_detail .case_detail_title {
  position: relative;
  width: 70%;
  height: 5.2rem;
  border-radius: 2.6rem 2.6rem 0 0;
  background-color: #f59918;
  display: flex;
  justify-content: space-evenly;
  align-items: center;
  line-height: 1.2;
}
.sec_case .case_detail_container .case_detail .case_detail_title .case_detail_title_company {
  position: relative;
  color: #ffffff;
  font-size: 2.4rem;
  font-weight: 800;
  top: -1px;
}
.sec_case .case_detail_container .case_detail .case_detail_title .case_detail_title_name {
  position: relative;
  color: #ffffff;
  font-size: 1.8rem;
  font-weight: 600;
}
.sec_case .case_detail_container .case_detail .case_detail_image_container {
  display: block;
  position: relative;
  width: 100%;
  border: 3px solid #f59918;
  text-align: center;
}
.sec_case .case_detail_container .case_detail .case_detail_image_container img.case_detail_image {
  width: 100%;
}



/* Voice */
.sec_voice {
  padding: 3.0rem 0 6.0rem 0;
}

.sec_voice .voice_detail_container {
  position: relative;
  width: 86%;
  margin: 0 auto;
}
.sec_voice .voice_detail_container .voice_detail {
  position: relative;
  width: 100%;
  margin: 4.2rem auto 0 auto;
}
.sec_voice .voice_detail_container .voice_detail .voice_detail_body {
  position: relative;
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
}
.sec_voice .voice_detail_container .voice_detail .voice_detail_body .voice_icon {
  position: relative;
  width: 30%;
  text-align: center;
}
.sec_voice .voice_detail_container .voice_detail .voice_detail_body .voice_description {
  position: relative;
  width: 68%;
  padding: 1.0rem 1.5rem;
  border: 2px solid #f59918;
  border-radius: 1.2rem;
  font-size: 1.6rem;
}
.sec_voice .voice_detail_container .voice_detail .voice_detail_body .voice_company {
  position: relative;
  width: 100%;
  margin: 1.2rem auto 0 auto;
}
.sec_voice .voice_detail_container .voice_detail .voice_detail_body .voice_company .voice_company_inner {
  position: relative;
  width: fit-content;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.25;
}


.sec_voice .voice_detail_container .voice_detail:nth-child(odd) .voice_detail_body .voice_icon {
  order: 1;
}
.sec_voice .voice_detail_container .voice_detail:nth-child(odd) .voice_detail_body .voice_description {
  order: 2;
}
.sec_voice .voice_detail_container .voice_detail:nth-child(odd) .voice_detail_body .voice_company {
  order: 3;
}
.sec_voice .voice_detail_container .voice_detail:nth-child(odd) .voice_detail_body .voice_company .voice_company_inner {
  margin: 0 auto 0 0;
}
.sec_voice .voice_detail_container .voice_detail:nth-child(even) .voice_detail_body .voice_icon {
  order: 2;
}
.sec_voice .voice_detail_container .voice_detail:nth-child(even) .voice_detail_body .voice_description {
  order: 1;
}
.sec_voice .voice_detail_container .voice_detail:nth-child(even) .voice_detail_body .voice_company {
  order: 3;
}
.sec_voice .voice_detail_container .voice_detail:nth-child(even) .voice_detail_body .voice_company .voice_company_inner {
  margin: 0 0 0 auto;
}



/* Price */
.sec_price {
  padding: 4.2rem 0 6.8rem 0;
  background-color: #fff7cc;
}
.sec_price .h2_container .h2 {
  width: 56%;
}

.sec_price .price_detail {
  position: relative;
  width: 86%;
  margin: 2.2rem auto 0 auto;
  padding: 4.5rem 4.0rem;
  background-color: #ffffff;
}

.sec_price .price_detail .price_detail_title {
  position: relative;
  width: 100%;
  margin: 0 auto;
  text-align: center;
  color: #f59918;
  font-size: 2.4rem;
  font-weight: 800;
}

.sec_price .price_detail .price_detail_summary {
  position: relative;
  width: 100%;
  margin: 2.5rem auto 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  line-height: 1.2;
}
.sec_price .price_detail .price_detail_summary .price_detail_summary_inner {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: flex-start;
}
.sec_price .price_detail .price_detail_summary .price_detail_summary_inner .price_detail_summary_name {
  position: relative;
  text-align: left;
  font-size: 1.6rem;
  font-weight: 700;
  top: 0.8rem;
  padding: 0 2.6rem 0 0;
}
.sec_price .price_detail .price_detail_summary .price_detail_summary_inner .price_detail_summary_amt {
  position: relative;
  text-align: right;
  font-size: 2.8rem;
  font-weight: 700;
}
.sec_price .price_detail .price_detail_summary .price_detail_summary_inner .price_detail_summary_amt .price_detail_summary_amt_unit {
  position: relative;
  font-size: 2.4rem;
  font-weight: 700;
  top: -0.2rem;
}
.sec_price .price_detail .price_detail_summary .price_detail_summary_inner .price_detail_summary_amt .price_detail_summary_amt_note {
  position: relative;
  font-size: 1.2rem;
  font-weight: 700;
}

.sec_price .price_detail ul.price_detail_target {
  position: relative;
  width: 100%;
  margin: 2.5rem auto 0 auto;
}
.sec_price .price_detail ul.price_detail_target li {
  position: relative;
  width: 100%;
  margin: 0 auto;
  padding: 1.0rem 0 1.0rem 4.0rem;
  color: #f59918;
  font-size: 2.2rem;
  font-weight: 700;
}
.sec_price .price_detail ul.price_detail_target li:before {
  content: "";
  position: absolute;
  display: block;
  width: 2.4rem;
  height: 2.4rem;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  background: url(../img/price_detail_target_check.png) no-repeat center center;
  background-size: contain;
}
.sec_price .price_detail ul.price_detail_target li .price_detail_target_note {
  position: relative;
  color: #f59918;
  font-size: 1.6rem;
  font-weight: 700;
}

.sec_price .price_detail .price_detail_note {
  position: relative;
  width: 100%;
  margin: 2.5rem auto 0 auto;
}
.sec_price .price_detail .price_detail_note .price_detail_note_inner {
  font-size: 1.2rem;
}

.sec_price .price_button_container .price_button.common_button {
  width: 86%;
  margin: 6.0rem auto 0 auto;
}



/* Q&A */
.sec_q_and_a {
  padding: 6.0rem 0 3.0rem 0;
}
.sec_q_and_a ul.q_and_a_detail {
  position: relative;
  width: 86%;
  margin: 4.0rem auto 0 auto;
}
.sec_q_and_a ul.q_and_a_detail > li {
  position: relative;
  width: 100%;
  padding: 1.0rem 0 1.0rem 0;
}
.sec_q_and_a ul.q_and_a_detail > li .q_and_a_detail_q {
  position: relative;
  width: 100%;
  border-radius: 1.2rem;
  background-color: #f59918;
  padding: 1.4rem 1.8rem;
}
.sec_q_and_a ul.q_and_a_detail > li .q_and_a_detail_q_text {
  font-size: 1.6rem;
  font-weight: 700;
  color: #ffffff;
}
.sec_q_and_a ul.q_and_a_detail > li .q_and_a_detail_a {
  position: relative;
  width: 100%;
  padding: 1.4rem 1.8rem;
}
.sec_q_and_a ul.q_and_a_detail > li .q_and_a_detail_a_text {
  font-size: 1.4rem;
}



/* Compare */
.sec_compare {
  padding: 3.0rem 0 0 0;
}
.sec_compare ul.compare_detail {
  position: relative;
  width: 86%;
  margin: 3.0rem auto 0 auto;
  padding: 0 0 8.0rem 0;
}
.sec_compare .compare_detail > li {
  position: relative;
  width: 100%;
  margin: 1.0rem auto 1.0rem auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.sec_compare .compare_detail > li .compare_detail_cell {
  position: relative;
}
.sec_compare .compare_detail > li.compare_detail_heading .compare_detail_cell {
  height: 5.4rem;
  line-height: 5.4rem;
}
.sec_compare .compare_detail > li.compare_detail_body .compare_detail_cell {
  height: 5.4rem;
  line-height: 5.4rem;
}
.sec_compare .compare_detail > li .compare_detail_name {
  width: 18%;
  text-align: left;
}
.sec_compare .compare_detail > li .compare_detail_other {
  width: 34%;
  text-align: center;
}
.sec_compare .compare_detail > li .compare_detail_self {
  width: 40%;
  text-align: center;
}
.sec_compare .compare_detail > li.compare_detail_heading .compare_detail_name {
}
.sec_compare .compare_detail > li.compare_detail_heading .compare_detail_other {
  font-size: 2.0rem;
  font-weight: 800;
}
.sec_compare .compare_detail > li.compare_detail_heading .compare_detail_self {
  color: #f59918;
  font-size: 2.5rem;
  font-weight: 900;
}
.sec_compare .compare_detail > li.compare_detail_body .compare_detail_name {
  font-size: 1.9rem;
  font-weight: 600;
}
.sec_compare .compare_detail > li.compare_detail_body .compare_detail_other {
  background-color: #ededed;
  font-size: 1.7rem;
  font-weight: 600;
}
.sec_compare .compare_detail > li.compare_detail_body .compare_detail_self {
  background-color: #f59918;
  color: #ffffff;
  font-size: 2.2rem;
  font-weight: 700;
}
.sec_compare .compare_detail > li.compare_detail_body .compare_detail_self .compare_detail_self_big {
  position: relative;
  display: inline-block;
  color: #ffffff;
  font-size: 3.2rem;
  font-weight: 700;
}
.sec_compare .compare_detail > li.compare_detail_body .compare_detail_self .compare_detail_self_small {
  position: relative;
  display: inline-block;
  padding: 0 0.2rem;
  top: -0.1rem;
  color: #ffffff;
  font-size: 1.4rem;
  font-weight: 700;
}

.sec_compare .compare_appeal {
  position: relative;
  width: 100%;
  margin: 0 auto;
  padding: 8.6rem 0 2.8rem 0;
  background-color: #fff7cc;
}

.sec_compare .compare_appeal .compare_appeal_title {
  position: absolute;
  width: 86%;
  height: 7.8rem;
  text-align: center;
  background-color: #4f4f4f;
  top: -2.0rem;
  left: 0;
  right: 0;
  margin: 0 auto;
  border-radius: 3.9rem;
}
.sec_compare .compare_appeal .compare_appeal_title:after {
  content: "";
  position: absolute;
  display: block;
  width: 3.4rem;
  height: 1.8rem;
  background-color: #4f4f4f;
  left: 0;
  right: 0;
  bottom: -1.7rem;
  margin: 0 auto;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
}

.sec_compare .compare_appeal .compare_appeal_title_inner {
  position: relative;
  width: 100%;
  height: 100%;
  top: -0.2rem;
  color: #ffffff;
  font-size: 1.8rem;
  font-weight: 600;
  line-height: 1.2;
  display: flex;
  justify-content: center;
  align-items: center;
}

.sec_compare .compare_appeal .compare_appeal_detail {
  position: relative;
  width: 86%;
  margin: 0 auto;
  text-align: center;
}
.sec_compare .compare_appeal .compare_appeal_detai img.compare_appeal_image {
  width: 100%;
}
.sec_compare .compare_appeal .compare_button_container {
  position: relative;
  width: 100%;
  margin: 3.0rem auto 0 auto;
  padding: 0 0 2.0rem 0;
}
.sec_compare .compare_appeal .compare_button_container .compare_button.common_button {
  width: 86%;
  margin: 1.8rem auto;
}
.sec_compare .compare_appeal .compare_button_container .compare_button.common_button.common_button_red {
  height: 8.2rem;
}
.sec_compare .compare_appeal .compare_button_container .compare_button.common_button.common_button_red .common_button_text {
  font-size: 3.0rem;
}



/* Document */
.sec_document {
  border-top: 2px solid #f59918;
  border-bottom: 2px solid #f59918;
  padding: 7.0rem 0 7.0rem 0;
}
.sec_document .document_inner {
  position: relative;
  width: 60%;
  min-width: 74.0rem;
  margin: 0 auto;
}
.sec_document .h2_container .h2 {
  font-size: 3.2rem;
  padding: 0 0 3.0rem 0;
}
.sec_document .h2_container .h2:after {
  width: 100%;
  background-color: #777777;
}

.sec_document .legal_notice_detail {
  position: relative;
  width: 100%;
  margin: 2.0rem auto 0 auto;
}
.sec_document .legal_notice_detail > li {
  position: relative;
  width: 100%;
  padding: 2.5rem 0;
  display: flex;
  justify-content: start;
  align-items: start;
  flex-wrap: wrap;
}
.sec_document .legal_notice_detail > li:not(:first-child) {
  border-top: 1px solid #ebebeb;
}
.sec_document .legal_notice_detail > li .legal_notice_detail_title {
  position: relative;
  width: 24%;
  padding: 0 1em 0 0;
}
.sec_document .legal_notice_detail > li .legal_notice_detail_body {
  position: relative;
  width: 76%;
  padding: 0;
}



/* responsive */
@media (min-width: 871px) {
  /* base */
  .visible_in_sp {
    display: none;
  }
}

@media (max-width: 870px) {
  /* base */
  .visible_in_pc {
    display: none;
  }
  
  #wrapper {
    width: 100%;
  }
  
  .h2_container .h2 {
    font-size: 7.4vw;
    padding: 0 0 3.4vw 0;
  }
  .h2_container .h2_subtitle {
    margin: 3.8vw auto 0 auto;
    font-size: 3.2vw;
  }
  
  .common_button {
    height:  min(13.9vw, 7.8rem);
    border-radius: min(3.2vw, 1.8rem);
    font-size: min(5.0vw, 2.8rem);
  }
  .common_button .common_button_text {
    font-size: min(5.0vw, 2.8rem);
  }
  .common_button:after {
    width: min(3.2vw, 1.8rem);
    height: min(3.2vw, 1.8rem);
    right: 6%;
  }
  
  
  
  /* Header */
  header .menu_area .h1_container .h1_logo {
    width: 20.0rem;
  }
  
  
  
  /* Footer */
  footer .footer_menu_container ul.footer_menu li {
    padding: 0 0.3rem;
  }
  footer .footer_menu_container ul.footer_menu li a {
    font-size: 1.0rem;
  }
  footer .footer_menu_container ul.footer_menu li a:hover {
    opacity: 1;
  }
  
  footer .footer_copyright {
    padding: 0.8rem 0;
  }
  
  
  
  /* Worries */
  .sec_worries {
    padding: 11.0vw 0 9.0vw 0;
  }
  .sec_worries ul.worries_detail {
    width: 92%;
    margin: 3.1vw auto 0 auto;
  }
  .sec_worries ul.worries_detail > li {
    height: 10.4vw;
    line-height: 10.4vw;
    font-size: 3.4vw;
    font-weight: 600;
    margin: 3.4vw auto;
    border-radius: 5.2vw;
  }
  
  
  
  /* Service */
  .sec_service {
    padding: 0 0 7.9vw 0;
  }
  
  .sec_service .service_inner .service_detail .service_detail_inner ul.service_point {
    width: 92%;
    margin: 5.4vw auto 0 auto;
  }
  .sec_service .service_inner .service_detail .service_detail_inner ul.service_point > li {
    margin: 2.6vw auto;
    padding: 2.2vw 2.0vw 2.2vw 4.0vw;
  }
  .sec_service .service_inner .service_detail .service_detail_inner ul.service_point > li .service_point_left {
    width: 22%;
  }
  .sec_service .service_inner .service_detail .service_detail_inner ul.service_point > li .service_point_right {
    width: 78%;
    padding: 0 0 0 3.8vw;
  }
  .sec_service .service_inner .service_detail .service_detail_inner ul.service_point > li .service_point_right .service_point_title {
    margin: 1.7vw auto 1.7vw 0;
    font-size: 6.2vw;
  }
  .sec_service .service_inner .service_detail .service_detail_inner ul.service_point > li .service_point_right .service_point_description {
    margin: 1.7vw auto 1.7vw 0;
    font-size: 2.4vw;
  }
  .sec_service .service_inner .service_detail .service_detail_inner ul.service_point > li .service_point_right .service_point_note {
    margin: 1.7vw auto 1.7vw 0;
    font-size: 3.5vw
  }
  .sec_service .service_button_container .service_button.common_button {
    margin: 6.2vw auto 0 auto;
  }
  
  
  
  /* Flow */
  .sec_flow {
    padding: 8.2vw 0 13.4vw 0;
  }
  
  .sec_flow ul.flow_detail {
    width: 82%;
    margin: 5.2vw auto 0 auto;
  }
  .sec_flow ul.flow_detail > li {
    padding: 4.5vw 0 5.8vw 0;
  }
  .sec_flow ul.flow_detail > li:after {
    width: 3.3vw;
    height: 2.2vw;
  }
  .sec_flow ul.flow_detail > li .flow_detail_inner .flow_detail_right {
    padding: 0 0 0 3.4vw;
  }
  .sec_flow ul.flow_detail > li .flow_detail_inner .flow_detail_right .flow_detail_no {
    margin: 1.8vw auto 1.8vw 0;
    font-size: 2.4vw;
  }
  .sec_flow ul.flow_detail > li .flow_detail_inner .flow_detail_right .flow_detail_heading .flow_detail_title {
    font-size: 6.4vw;
  }
  .sec_flow ul.flow_detail > li .flow_detail_inner .flow_detail_right .flow_detail_heading .flow_detail_subtitle {
    font-size: 3.4vw;
  }
  .sec_flow ul.flow_detail > li .flow_detail_inner .flow_detail_right .flow_detail_description {
    margin: 1.8vw auto 1.8vw 0;
    font-size: 3.0vw;
  }
  
  .sec_flow .flow_note .flow_note_inner {
    font-size: 2.4vw;
  }
  
  
  
  /* Contents */
  .sec_contents .contents_inner .contents_detail .contents_main {
    width: 92%;
  }
  .sec_contents .contents_inner .contents_detail .contents_main .contents_main_detail .contents_main_heading {
    height: 14.0vw;
  }
  .sec_contents .contents_inner .contents_detail .contents_main .contents_main_detail .contents_main_heading .contents_main_heading_inner .contents_main_title {
    font-size: 4.8vw;
  }
  .sec_contents .contents_inner .contents_detail .contents_main .contents_main_detail .contents_main_heading .contents_main_heading_inner .contents_main_subtitle {
    font-size: 3.0vw;
  }
  .sec_contents .contents_inner .contents_detail .contents_main .contents_main_detail ul.contents_main_items {
    width: 82%;
    padding: 0 0 2.6vw 0;
  }
  .sec_contents .contents_inner .contents_detail .contents_main .contents_main_detail ul.contents_main_items > li {
    margin: 0 auto 1.8vw auto;
    padding: 2.6vw 0;
    font-size: 3.2vw;
    font-weight: 800;
  }
  
  .sec_contents .contents_inner .contents_detail .contents_more {
    width: 92%;
    margin: 3.1vw auto;
  }
  .sec_contents .contents_inner .contents_detail .contents_more .contents_more_heading {
    padding: 3.6vw 0 2.8vw 0;
  }
  
  .sec_contents .contents_inner .contents_detail .contents_more .contents_more_heading .contents_more_title {
    font-size: 4.4vw;
    font-weight: 800;
  }
  
  .sec_contents .contents_inner .contents_detail .contents_more .contents_more_items {
    width: 92%;
    padding: 0 0 2.6vw 0;
  }
  .sec_contents .contents_inner .contents_detail .contents_more .contents_more_items > li {
    height: 12.0vw;
    margin: 0 0 1.8vw 0;
    padding: 2.6vw 0;
    font-size: 3.2vw;
    font-weight: 800;
  }
  .sec_contents .contents_inner .contents_detail .contents_more .contents_more_items > li .contents_more_items_note {
    font-size: 2.4vw;
    font-weight: 700;
  }
  
  
  
  /* Case */
  .sec_case {
    padding: 10.0vw 0 5.2vw 0;
  }
  
  .sec_case .case_detail_container {
    width: 92%;
  }
  .sec_case .case_detail_container .case_detail {
    margin: 10.2vw auto 0 auto;
  }
  .sec_case .case_detail_container .case_detail .case_detail_title {
    width: 74%;
    height: 9.8vw;
    border-radius: 5.1vw 5.1vw 0 0;
  }
  .sec_case .case_detail_container .case_detail .case_detail_title .case_detail_title_company {
    font-size: 4.6vw;
  }
  .sec_case .case_detail_container .case_detail .case_detail_title .case_detail_title_name {
    font-size: 3.6vw;
  }
  
  
  
  /* Voice */
  .sec_voice {
    padding: 5.1vw 0 10,2vw 0;
  }
  
  .sec_voice .voice_detail_container {
    width: 86%;
  }
  .sec_voice .voice_detail_container .voice_detail {
    margin: 9.6vw auto 0 auto;
  }
  .sec_voice .voice_detail_container .voice_detail .voice_detail_body .voice_icon {
    width: 34%;
  }
  .sec_voice .voice_detail_container .voice_detail .voice_detail_body .voice_description {
    width: 100%;
    margin: 2.6vw auto 0 auto;
    padding: 1.8vw 2.2vw;
    font-size: 3.4vw;
  }
  .sec_voice .voice_detail_container .voice_detail .voice_detail_body .voice_company {
    width: 64%;
    margin: 0 auto 0 auto;
  }
  .sec_voice .voice_detail_container .voice_detail .voice_detail_body .voice_company .voice_company_inner {
    font-size: 4.8vw;
  }
  
  .sec_voice .voice_detail_container .voice_detail:nth-child(odd) .voice_detail_body .voice_icon {
    order: 1;
  }
  .sec_voice .voice_detail_container .voice_detail:nth-child(odd) .voice_detail_body .voice_description {
    order: 3;
  }
  .sec_voice .voice_detail_container .voice_detail:nth-child(odd) .voice_detail_body .voice_company {
    order: 2;
  }
  .sec_voice .voice_detail_container .voice_detail:nth-child(odd) .voice_detail_body .voice_company .voice_company_inner {
    margin: 0 auto 0 1.2vw;
  }
  .sec_voice .voice_detail_container .voice_detail:nth-child(even) .voice_detail_body .voice_icon {
    order: 2;
  }
  .sec_voice .voice_detail_container .voice_detail:nth-child(even) .voice_detail_body .voice_description {
    order: 3;
  }
  .sec_voice .voice_detail_container .voice_detail:nth-child(even) .voice_detail_body .voice_company {
    order: 1;
  }
  .sec_voice .voice_detail_container .voice_detail:nth-child(even) .voice_detail_body .voice_company .voice_company_inner {
    margin: 0 1.2vw 0 auto;
  }
  
  
  
  /* Price */
  .sec_price {
    padding: 7.2vw 0 11.7vw 0;
  }
  
  .sec_price .price_detail {
    width: 92%;
    margin: 3.8vw auto 0 auto;
    padding: 6.8vw 6.0vw;
  }
  
  .sec_price .price_detail .price_detail_title {
    font-size: 4.8vw;
  }
  
  .sec_price .price_detail .price_detail_summary {
    margin: 4.3vw auto 0 auto;
  }
  .sec_price .price_detail .price_detail_summary .price_detail_summary_inner .price_detail_summary_name {
    font-size: 3.8vw;
    top: 1.9vw;
    padding: 0 3.6vw 0 0;
  }
  .sec_price .price_detail .price_detail_summary .price_detail_summary_inner .price_detail_summary_amt {
    font-size: 6.0vw;
    line-height: 1.35;
  }
  .sec_price .price_detail .price_detail_summary .price_detail_summary_inner .price_detail_summary_amt .price_detail_summary_amt_unit {
    font-size: 5.2vw;
  }
  .sec_price .price_detail .price_detail_summary .price_detail_summary_inner .price_detail_summary_amt .price_detail_summary_amt_note {
    font-size: 2.6vw;
  }
  
  .sec_price .price_detail ul.price_detail_target {
    margin: 4.3vw auto 0 auto;
  }
  .sec_price .price_detail ul.price_detail_target li {
    padding: 1.7vw 0 1.7vw 6.9vw;
    font-size: 4.3vw;
  }
  .sec_price .price_detail ul.price_detail_target li:before {
    width: 4.2vw;
    height: 4.2vw;
  }
  .sec_price .price_detail ul.price_detail_target li .price_detail_target_note {
    font-size: 3.0vw;
  }
  
  .sec_price .price_detail .price_detail_note {
    margin: 4.3vw auto 0 auto;
  }
  .sec_price .price_detail .price_detail_note .price_detail_note_inner {
    font-size: 2.4vw;
  }
  
  .sec_price .price_button_container .price_button.common_button {
    margin: 10.3vw auto 0 auto;
  }
  
  
  
  /* Q&A */
  .sec_q_and_a {
    padding: 10.4vw 0 5.2vw 0;
  }
  .sec_q_and_a ul.q_and_a_detail {
    width: 92%;
    margin: 6.9vw auto 0 auto;
  }
  .sec_q_and_a ul.q_and_a_detail > li {
    padding: 2.0vw 0 2.0vw 0;
  }
  .sec_q_and_a ul.q_and_a_detail > li .q_and_a_detail_q {
    border-radius: 2.4vw;
    padding: 2.6vw 3.5vw;
  }
  .sec_q_and_a ul.q_and_a_detail > li .q_and_a_detail_q_text {
    font-size: 3.8vw;
  }
  .sec_q_and_a ul.q_and_a_detail > li .q_and_a_detail_a {
    padding: 2.6vw 3.5vw;
  }
  .sec_q_and_a ul.q_and_a_detail > li .q_and_a_detail_a_text {
    font-size: 3.4vw;
  }
  
  
  
  /* Compare */
  .sec_compare {
    padding: 5.2vw 0 0 0;
  }
  .sec_compare ul.compare_detail {
    width: 92%;
    margin: 5.2vw auto 0 auto;
    padding: 0 0 13.8vw 0;
  }
  .sec_compare .compare_detail > li {
    margin: 1.8vw auto 1.8vw auto;
  }
  .sec_compare .compare_detail > li.compare_detail_heading .compare_detail_cell {
    height: 9.4vw;
    line-height: 9.4vw;
  }
  .sec_compare .compare_detail > li.compare_detail_body .compare_detail_cell {
    height: 9.4vw;
    line-height: 9.4vw;
  }
  .sec_compare .compare_detail > li.compare_detail_heading .compare_detail_other {
    font-size: 3.6vw;
  }
  .sec_compare .compare_detail > li.compare_detail_heading .compare_detail_self {
    font-size: 4.4vw;
  }
  .sec_compare .compare_detail > li.compare_detail_body .compare_detail_name {
    font-size: 3.6vw;
  }
  .sec_compare .compare_detail > li.compare_detail_body .compare_detail_other {
    font-size: 3.4vw;
  }
  .sec_compare .compare_detail > li.compare_detail_body .compare_detail_self {
    font-size: 4.2vw;
  }
  .sec_compare .compare_detail > li.compare_detail_body .compare_detail_self .compare_detail_self_big {
    font-size: 5.8vw;
  }
  .sec_compare .compare_detail > li.compare_detail_body .compare_detail_self .compare_detail_self_small {
    padding: 0 0.2rem;
    top: -0.1rem;
    font-size: 2.8vw;
  }
  
  .sec_compare .compare_appeal {
    padding: 14.8vw 0 4.8vw 0;
  }
  
  .sec_compare .compare_appeal .compare_appeal_title {
    width: 92%;
    height: 14.4vw;
    top: -5.4vw;
    border-radius: 7.2vw;
  }
  .sec_compare .compare_appeal .compare_appeal_title:after {
    width: 6.0vw;
    height: 3.2vw;
    bottom: -3.1vw;
  }
  
  .sec_compare .compare_appeal .compare_appeal_title_inner {
    top: -0.4vw;
    font-size: 3.6vw;
  }
  
  .sec_compare .compare_appeal .compare_appeal_detail {
    width: 92%;
  }
  .sec_compare .compare_appeal .compare_button_container {
    margin: 5.2vw auto 0 auto;
    padding: 0 0 3.4vw 0;
  }
  .sec_compare .compare_appeal .compare_button_container .compare_button.common_button {
    margin: 3.1vw auto;
  }
  .sec_compare .compare_appeal .compare_button_container .compare_button.common_button.common_button_red {
    height: 17.2vw;
  }
  .sec_compare .compare_appeal .compare_button_container .compare_button.common_button.common_button_red .common_button_text {
    font-size: 6.2vw;
  }
  
  
  
  /* Document */
  .sec_document {
    padding: 12.0vw 0 12.0vw 0;
  }
  .sec_document .document_inner {
    width: 90%;
    min-width: auto;
  }
  .sec_document .h2_container .h2 {
    font-size: 5.4vw;
    padding: 0 0 5.1vw 0;
  }
  
  .sec_document .legal_notice_detail {
    margin: 3.4vw auto 0 auto;
  }
  .sec_document .legal_notice_detail > li {
    padding: 4.4vw 0;
  }
  .sec_document .legal_notice_detail > li .legal_notice_detail_title {
    width: 35%;
  }
  .sec_document .legal_notice_detail > li .legal_notice_detail_body {
    width: 65%;
  }
}
