@charset "UTF-8";
.lower_link_area { margin-top: 0; }

.about_txt .link { display: inline; margin-left: 1em; border-bottom: 1px solid #000; position: relative; }
.about_txt .link::before { content: '＞'; position: absolute; left: -1em; }

#about_lead .lead_txt { width: fit-content; margin: 0 5% 0 auto; position: relative; }
#about_lead .lead_txt::before { content: ''; width: 4em; height: auto; aspect-ratio: 139 / 185; background: url(../img/lead_img.png) no-repeat center/contain; position: absolute; top: 0; right: 0; transform: translateY(-1.8em); }
#about_lead .txt_area { left: auto; right: 0; }

.faq_link_area { padding: 8rem 0; background-color: #eff4f0; }

.faq_link_ttl { margin-bottom: 1em; font-size: 2.8rem; font-weight: 600; text-align: center; }
.faq_link_ttl span { display: inline-block; font-size: 140%; }
.faq_link_ttl span:nth-child(1) { color: #07a33e; }
.faq_link_ttl span:nth-child(2) { color: #fb505d; }

.faq_link { display: flex; justify-content: space-between; flex-wrap: wrap; }
.faq_link li { width: 33%; margin-bottom: 2%; }
.faq_link a { width: 100%; height: 6em; font-size: 1.8rem; font-weight: 600; padding: 0 2em; background: #fff url(/common/img/icon_arrow_cgr01.png) no-repeat center right 1em/1.8em; border: 2px solid #07a33e; border-radius: 28px; display: flex; align-items: center; }
.faq_link a:hover { color: #fff; background-color: #07a33e; }

.faq_wrap { padding-top: 14rem; }

.faq_wrap_last { padding-bottom: 12rem; }

.faq_area { padding: 0 3rem; }

.faq_ttl_area { margin: -8rem 0 6rem; display: flex; justify-content: space-between; align-items: flex-end; position: relative; }
.faq_ttl_area .faq_ttl { color: #fff; width: 85%; font-size: 2.4rem; font-weight: 500; padding: 1.5em 3em; background-color: #07a33e; border-radius: 15px; position: relative; }
.faq_ttl_area .faq_ttl::before { content: ''; width: 0; height: 0; border-style: solid; border-width: 10px 0 10px 12px; border-color: transparent transparent transparent #07a33e; position: absolute; top: 50%; right: 0; transform: translate(100%, -50%); }
.faq_ttl_area .faq_ttl strong { color: #f5fe0c; font-size: 110%; }
.faq_ttl_area .img { width: 15%; }
.faq_ttl_area.under { margin: 0 0 4rem; }
.faq_ttl_area.under .faq_ttl::before { border-width: 10px 12px 10px 0; border-color: transparent #07a33e transparent transparent; right: auto; left: 0; transform: translate(-100%, -50%); }
.faq_ttl_area.under .img { width: 10%; }
.faq_ttl_area.line2 { margin-top: -4rem; }

#faq01_01 .about_wrap .about_txt { width: 37%; }
#faq01_01 .about_wrap .img { width: 60%; }
#faq01_01 .about_wrap .notes { display: inline-block; text-indent: -1em; margin: 1.5em 0 0 1em; }

#faq01_02 .about_wrap { flex-direction: row-reverse; }
#faq01_02 .about_wrap .about_txt { width: 50%; background: url(../img/faq_img01_bg.png) no-repeat center bottom/80%; }
#faq01_02 .about_wrap .img { width: 45%; }

#faq02_01 .about_wrap { margin-top: 5rem; background: url(../img/faq_img02_bg.png) no-repeat right bottom/25%; }
#faq02_01 .about_wrap .box { width: 48%; }
#faq02_01 .about_wrap .box01 { width: 74%; }
#faq02_01 .about_wrap .box02 { display: none; }
#faq02_01 .about_wrap .box_ttl { margin-bottom: 2em; padding: 0.5em; font-size: 1.8rem; font-weight: 600; text-align: center; border: 1px solid #000; border-radius: 40px; }
#faq02_01 .about_wrap .about_txt { font-weight: 500; text-align: center; margin-bottom: 1em; }
#faq02_01 .about_wrap .notes { display: inline-block; font-size: 1.4rem; text-indent: -1em; margin: 1.5em 0 0 1em; }

#faq03_02 .list { margin-top: 7rem; padding: 0 2%; display: flex; justify-content: space-between; }
#faq03_02 .list li { width: 48%; position: relative; }
#faq03_02 .list .ttl { font-size: 1.8rem; font-weight: 500; color: #fff; padding: 0.8em 1em; position: absolute; top: -2em; left: -1em; }
#faq03_02 .list .new .ttl { background-color: #e4763b; }
#faq03_02 .list .generic .ttl { background-color: #07a33e; }
#faq03_02 .list .txt { margin-top: 1em; font-size: 1.8rem; font-weight: 600; text-align: center; }
#faq03_02 .about_txt { margin-top: 1em; }
#faq03_02 .list_txt li { font-size: 1.8rem; line-height: 1.8; }
#faq03_02 .list_txt li strong { display: inline-block; color: #07a33e; margin-right: 0.2em; padding-right: 1em; position: relative; }
#faq03_02 .list_txt li strong::after { content: ''; width: 0.8em; height: 1px; background-color: #000; position: absolute; right: 0; top: 50%; }

#faq03_04 .about_wrap .about_txt { width: 60%; }
#faq03_04 .about_wrap .img { width: 40%; }
#faq03_04 .about_wrap .img img { transform-origin: top right; transform: scale(1.1); }

#faq04_01 .example_area { margin-top: 8rem; padding: 0 6rem 4rem; background-color: #f0f4f2; }
#faq04_01 .example_area .example_ttl { width: 354px; margin: 0 auto; transform: translateY(-50%); }
#faq04_01 .example_area .example_txt { margin: 0 auto; width: fit-content; font-size: 2rem; font-weight: 600; position: relative; }
#faq04_01 .example_area .example_txt::before { content: ''; width: 100%; height: auto; aspect-ratio: 377 / 160; background: url(../img/faq_img04_01.png) no-repeat center/contain; position: absolute; top: 100%; right: 0; transform: translate(120%, -100%); }
#faq04_01 .example_area .example_list { margin-top: 4rem; display: flex; flex-wrap: wrap; }
#faq04_01 .example_area .example_list li { width: calc((100% - 3rem) / 3); font-size: 1.8rem; font-weight: 500; padding: 1em 0 1em 3.4em; background: #fff url(../img/faq_icon.png) no-repeat center left 1em/1.8em; margin-bottom: 1.5rem; }
#faq04_01 .example_area .example_list li:not(:nth-child(3n)) { margin-right: 1.5rem; }

#faq04_02 .about_wrap .box { width: calc(50% - 3.5rem); }
#faq04_02 .about_wrap .box .sec_dec_ttl { font-size: 2.5rem; }
#faq04_02 .about_wrap .box .notes { font-size: 1.4rem; text-indent: -1em; margin-left: 1em; }
#faq04_02 .about_wrap .box .notes:not(:last-child) { margin-top: 1.5em; }
#faq04_02 .about_wrap .box01 { background: url(../img/faq_img04_bg.png) no-repeat center bottom/80%; position: relative; }
#faq04_02 .about_wrap .box01::before { content: ''; width: 1px; height: 100%; background-color: #c3c7c5; position: absolute; top: 0; right: -3.5rem; }
#faq04_02 .about_wrap .btn_area { width: 62%; margin: 4rem auto 3rem; }
#faq04_02 .about_wrap .btn_area a { display: block; font-size: 1.8rem; font-weight: 600; text-align: center; padding: 1.5em 1.5em 1.5em 3em; background-image: url(/generic/img/icon_search.png), url(/common/img/icon_arrow_gr03.png); background-size: 2em auto, 1em auto; background-position: center left 1em, center right 1em; background-repeat: no-repeat; border: 2px solid #07a33e; border-radius: 15px; box-shadow: 2px 2px 2px 0 rgba(0, 0, 0, 0.2); position: relative; }
#faq04_02 .about_wrap .btn_area a::before { content: ''; width: 30%; height: auto; aspect-ratio: 152 / 178; background: url(../img/faq_img_chara03.png) no-repeat center/contain; position: absolute; bottom: 0; left: 0; transform: translate(-95%, 5%); }
#faq04_02 .about_wrap .btn_area a:hover { color: #fff; background-color: #07a33e; background-image: url(/generic/img/icon_search_w.png), url(/common/img/icon_arrow_wr03.png); }

#faq05_01 .faq_ttl_area.line2 { margin-bottom: 0; }
#faq05_01 .txt_wrap { padding: 10vw 0 10vw 50%; background: url(../img/faq_img05_bg.png) no-repeat left top -4rem/45%; }

#faq05_02 .faq_ttl_area.under { margin-bottom: 0; align-items: center; }
#faq05_02 .faq_ttl_area.under .img { width: 15%; }
#faq05_02 .txt_area { width: 85%; margin: 0 0 0 auto; }
#faq05_02 .txt_area .img { margin-top: 2rem; padding-right: 2rem; }
#faq05_02 .about_txt strong { color: #fb505d; }

#faq05_03 .about_wrap { align-items: center; }
#faq05_03 .about_wrap .img { width: 32%; }
#faq05_03 .about_wrap .about_txt { width: 63%; }

@media screen and (min-width: 768px) and (max-width: 1240px) { .faq_link_ttl { font-size: 2.2vw; }
  .faq_link a { font-size: 1.4vw; }
  .faq_ttl_area { margin-top: -6rem; }
  .faq_ttl_area .faq_ttl { font-size: 1.9vw; }
  #faq02_01 .about_wrap .box_ttl { font-size: 1.4vw; }
  #faq04_01 .example_area .example_txt { font-size: 1.6vw; }
  #faq04_01 .example_area .example_list li { font-size: 1.4vw; }
  #faq04_02 .about_wrap .btn_area a { font-size: 1.4vw; } }
@media screen and (max-width: 767px) { .faq_link_area { padding: 3rem 0; }
  .faq_link_ttl { font-size: 4.5vw; }
  .faq_link { display: block; }
  .faq_link li { width: 100%; margin-bottom: 1rem; }
  .faq_link a { height: 5em; font-size: 4vw; border-radius: 14px; }
  .faq_link.lower { display: flex; }
  .faq_link.lower li { width: 49%; }
  .faq_link.lower a { height: 6em; padding: 0 0.5em; font-size: 3.4vw; line-height: 1.4; background-position: center right 0.5em; }
  .faq_wrap { padding-top: 7rem; }
  .faq_wrap_last { padding-bottom: 4rem; }
  .faq_wrap_first { background-color: #fff; }
  .faq_area { padding: 0; }
  .faq_ttl_area { margin: 0 0 2rem; }
  .faq_ttl_area .faq_ttl { color: #fff; width: 68%; font-size: 4.2vw; padding: 1.2em; border-radius: 8px; }
  .faq_ttl_area .img { width: 30%; }
  .faq_ttl_area.under { margin: 0 0 2rem; }
  .faq_ttl_area.under .faq_ttl { width: 78%; }
  .faq_ttl_area.under .faq_ttl::before { top: auto; bottom: 0; }
  .faq_ttl_area.under .img { width: 20%; }
  .faq_ttl_area.line2 { margin-top: 0; }
  #faq01_01 .about_wrap .about_txt { width: 100%; }
  #faq01_01 .about_wrap .img { width: 100%; margin-top: 1.5rem; }
  #faq01_02 .about_wrap .about_txt { width: 100%; background: none; }
  #faq01_02 .about_wrap .img { width: 100%; margin-top: 1.5rem; padding-bottom: 62vw; background: url(../img/faq_img01_bg.png) no-repeat center bottom/70%; }
  #faq02_01 .about_wrap { margin-top: 0; padding-bottom: 32vw; background-size: 50% auto; }
  #faq02_01 .about_wrap .box { width: 100%; margin-top: 4rem; }
  #faq02_01 .about_wrap .box_ttl { margin-bottom: 1.5em; font-size: 3.4vw; }
  #faq02_01 .about_wrap .about_txt { margin-bottom: 1.5em; }
  #faq02_01 .about_wrap .notes { font-size: 2.9vw; }
  #faq03_02 .list { margin-top: 0; display: block; }
  #faq03_02 .list li { width: 100%; margin: 5rem 0 0; }
  #faq03_02 .list .ttl { font-size: 3.3vw; left: -0.7rem; }
  #faq03_02 .list .txt { font-size: 3.2vw; }
  #faq03_02 .list_txt li { font-size: 3.7vw; line-height: 1.6; margin-top: 0.5em; }
  #faq03_02 .list_txt li strong { display: block; color: #07a33e; margin-right: 0; padding-right: 0; }
  #faq03_02 .list_txt li strong::after { content: none; }
  #faq03_04 .about_wrap .about_txt { width: 100%; }
  #faq03_04 .about_wrap .img { width: 100%; margin: 1rem 0 3rem; }
  #faq03_04 .about_wrap .img img { transform: scale(1); }
  #faq04_01 .set_inner { padding: 0; }
  #faq04_01 .example_area { margin-top: 6rem; padding: 0 1.5rem 3rem; }
  #faq04_01 .example_area .example_ttl { width: 231.5px; }
  #faq04_01 .example_area .example_txt { font-size: 4vw; padding-top: 26vw; }
  #faq04_01 .example_area .example_txt::before { width: 80%; top: 0; right: 50%; transform: translate(50%, 0); }
  #faq04_01 .example_area .example_list { margin-top: 2rem; justify-content: space-between; }
  #faq04_01 .example_area .example_list li { width: 49%; font-size: 3.7vw; font-weight: 600; padding: 0.5em 0 0.5em 2.5em; background-size: 1.2em auto; background-position: center left 0.8em; margin-bottom: 2%; display: flex; align-items: center; }
  #faq04_01 .example_area .example_list li:not(:nth-child(3n)) { margin-right: 0; }
  #faq04_02 .about_wrap .box { width: 100%; }
  #faq04_02 .about_wrap .box .sec_dec_ttl { font-size: 5vw; }
  #faq04_02 .about_wrap .box .notes { font-size: 2.9vw; }
  #faq04_02 .about_wrap .box01 { background: url(../img/faq_img04_bg.png) no-repeat center bottom/80%; padding-bottom: 48vw; }
  #faq04_02 .about_wrap .box01::before { content: none; }
  #faq04_02 .about_wrap .box02 { margin-top: 3rem; }
  #faq04_02 .about_wrap .btn_area { width: 80%; margin: 4rem 0 2rem auto; }
  #faq04_02 .about_wrap .btn_area a { font-size: 3.4vw; border-width: 1px; border-radius: 8px; }
  #faq05_01 .faq_ttl_area.line2 { margin-bottom: 2rem; }
  #faq05_01 .txt_wrap { padding: 45vw 0 0; background-position: top center; background-size: 60% auto; }
  #faq05_02 .faq_ttl_area.under { margin: 2rem 0; align-items: flex-end; }
  #faq05_02 .faq_ttl_area.under .img { width: 20%; }
  #faq05_02 .txt_area { width: 100%; margin: 0; }
  #faq05_02 .txt_area .img { margin-top: 1rem; padding-right: 0; }
  #faq05_03 .about_wrap .img { width: 60%; margin: 0 auto; }
  #faq05_03 .about_wrap .about_txt { width: 100%; margin: 1.5rem 0 0; } }

/*# sourceMappingURL=faq.css.map */
