@charset "UTF-8";
/* ---------------------------------------------
  reset
--------------------------------------------- */
body {
  margin: 0;
  padding: 0;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
}

/* 解析タグの隙間対策 */
body > img {
  display: none;
}

.lp_main div, .lp_main span, .lp_main iframe, .lp_main h1, .lp_main h2, .lp_main h3, .lp_main h4, .lp_main h5, .lp_main h6, .lp_main p, .lp_main address, .lp_main img, .lp_main small, .lp_main strong, .lp_main sub, .lp_main sup, .lp_main dl,
.lp_main dt, .lp_main dd, .lp_main ol, .lp_main ul, .lp_main form, .lp_main label, .lp_main table, .lp_main caption, .lp_main tbody, .lp_main tfoot, .lp_main thead, .lp_main tr, .lp_main th, .lp_main td, .lp_main article,
.lp_main aside, .lp_main footer, .lp_main header, .lp_main menu, .lp_main nav, .lp_main section, .lp_main video, .bl_floatArea p {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 0;
  line-height: 0;
  vertical-align: baseline;
  background: transparent;
}
.lp_main article, .lp_main aside, .lp_main details, .lp_main figcaption, .lp_main figure,
.lp_main footer, .lp_main header, .lp_main menu, .lp_main nav, .lp_main section {
  display: block;
}
.lp_main ol, .lp_main ul {
  list-style: none;
}
.lp_main :focus {
  outline: 0;
}
.lp_main table {
  border-collapse: collapse;
  border-spacing: 0;
}
.lp_main *,
.lp_main *::before,
.lp_main *::after {
  box-sizing: border-box;
}
.lp_main img,
.bl_floatArea img {
  display: block;
  height: auto;
  vertical-align: bottom;
  width: 100%;
  max-width: 100%;
}
.lp_main svg,
.lp_main video {
  width: 100%;
  height: auto;
}


/* ---------------------------------------------
  common
--------------------------------------------- */
/* スムーススクロール */
html {
  scroll-behavior: smooth;
}

.lp_main, .footerArea {
  width: 100%;
  max-width: 750px;
  margin: 0 auto;
}

/* positionで配置したい要素の外側に使用 */
.lp_main .p_box {
  position: relative;
}

/* ---------------------------------------------
  sec_cv
--------------------------------------------- */
.lp_main .sec_cv .cv_btn {
  position: absolute;
  top: 76.6%;
  left: 8.5%;
  width: min(calc(620 / 750 *100%) ,620px);
}

/* ---------------------------------------------
  sec_faq
--------------------------------------------- */
.lp_main .sec_faq .faq_area {
  padding-bottom: min(calc(67 / 750 *100%) ,67px);
  background-color: #afd5fd;
}

.lp_main .sec_faq .accordion {
  margin-bottom: min(calc(30 / 750 *100%) ,30px);
}

.lp_main .sec_faq .question {
  cursor: pointer;
  position: relative;
  width: min(calc(689 / 750 *100%) ,689px);
  margin: 0 auto;
}

.lp_main .sec_faq .answer {
  display: none;
  width: min(calc(689 / 750 *100%) ,689px);
  margin: 0 auto;
}

.lp_main .sec_faq .question .icn__hook::before,
.lp_main .sec_faq .question .icn__hook::after {
  content: "";
  position: absolute;
  top: 50%;
  width: min(23 / 750 * 100vw, 23px);
  height: min(2 / 750 * 100vw, 2px);
  background: #fff;
}

.lp_main .sec_faq .question .icn__hook::before {
  right: 7.3%;
  transform: rotate(45deg);
}

.lp_main .sec_faq .question .icn__hook::after {
  right: 5%;
  transform: rotate(-45deg); 
}

.lp_main .sec_faq .accordion.is-open .icn__hook::before {
  transform: rotate(-45deg);
}

.lp_main .sec_faq .accordion.is-open .icn__hook::after {
  transform: rotate(45deg);
}

/* ---------------------------------------------
  追従ボタン
--------------------------------------------- */
.bl_floatArea {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  z-index: 50;
  visibility: hidden;
  opacity: 0;
  transition:
  visibility 0.4s,
  opacity 0.4s;
}

.bl_floatArea.is_show {
  visibility: visible;
  opacity: 1;
}

.bl_floatArea_btn {
  display: block;
  width: min(calc(620 / 750 *100%) ,620px);
  margin: 0 auto;
}
