@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 {
  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 {
  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 {
  font-family: "Noto Sans JP", sans-serif;
  width: 100%;
  max-width: 750px;
  margin: 0 auto;
  overflow: hidden;
}
.lp_main .p_box {
  position: relative;
}
/* ---------------------------------------------
  cv
--------------------------------------------- */
.lp_main .cv_btn {
  position: absolute;
  left: 0;
  right: 0;
  margin-inline: auto;
}
/* ---------------------------------------------
  アコーディオン
--------------------------------------------- */
.lp_main .aco {
  width: calc(710 / 750 * 100%);
  font-feature-settings: "palt";
  border-radius: min(15 / 750 * 100vw, 15px);
  overflow: hidden;
}
.lp_main .aco_btn {
  position: relative;
  cursor: pointer;
  background-color: #ff7200;
  text-align: center;
  color: #fff;
  height: min(105 / 750 * 100vw, 105px);
}
.lp_main .aco_head {
  line-height: 1.2;
  letter-spacing: 0.1em;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
}
.lp_main .aco_contents {
  display: none;
  background-color: #fffade;
  border-radius: 0 0 min(15 / 750 * 100vw, 15px) min(15 / 750 * 100vw, 15px);
  border: min(3 / 750 * 100vw, 3px) solid #ff7200;
}
.lp_main .icn_area {
  display: flex;
  position: absolute;
  top: 50%;
  width: min(27 / 750 * 100vw, 27px);
  height: min(2 / 750 * 100vw, 2px);
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  align-items: center;
  justify-content: center;
}
.lp_main .icn_area::before,
.lp_main .icn_area::after {
  content: " ";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  background: #fff;
}
.lp_main .icn_area::before {
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg);
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}
.lp_main .icn_area.is_active::before {
  -webkit-transform: rotate(0deg);
  transform: rotate(0deg);
}
/* ---------------------------------------------
  merit
--------------------------------------------- */
.lp_main .merit_aco {
  margin: calc(40 / 750 * 100%) auto calc(50 / 750 * 100%);
}
.lp_main .merit_aco_head {
  font-size: min(40 / 750 * 100vw, 40px);
  font-weight: 500;
}
.lp_main .merit_aco .icn_area {
  right: min(55 / 750 * 100vw, 55px);
}
.lp_main .merit_aco .aco_contents {
  padding: min(23 / 750 * 100vw, 23px) min(20 / 750 * 100vw, 20px);
}
.lp_main .merit_aco li {
  font-size: min(16 / 750 * 100vw, 16px);
  line-height: 1.5;
  font-weight: 500;
  letter-spacing: 0.05em;
  padding-left: min(23 / 750 * 100vw, 23px);
}
.lp_main .merit_aco li::before {
  content: "※";
  position: absolute;
  left: 0;
}
.lp_main .merit .cv_btn_01 {
  width: calc(654 / 750 * 100%);
  top: 54%;
}
.lp_main .merit .cv_btn_02 {
  width: calc(723 / 750 * 100%);
  top: 61%;
}
/* ---------------------------------------------
  point
--------------------------------------------- */
.lp_main .point {
  background-color: #f5f5f5;
}
.lp_main .point_contents {
  display: flex;
  flex-direction: column;
  gap: min(23 / 750 * 100vw, 23px);
  padding-bottom: min(46 / 750 * 100vw, 46px);
}
.lp_main .point_aco {
  margin: 0 auto;
}
.lp_main .point_aco_head {
  font-size: min(28 / 750 * 100vw, 28px);
  font-weight: 500;
}
.lp_main .point_aco .icn_area {
  right: min(28 / 750 * 100vw, 28px);
}
.lp_main .point_aco .aco_contents {
  font-size: min(24 / 750 * 100vw, 24px);
  line-height: 1.4;
  font-weight: 500;
  letter-spacing: 0.05em;
  padding: min(33 / 750 * 100vw, 33px);
}
.lp_main .point_aco_link {
  color: #1c27ff;
  text-decoration: underline;
}
.lp_main .point .cv_btn_02 {
  position: static;
  width: calc(723 / 750 * 100%);
}
/* ---------------------------------------------
  footer
--------------------------------------------- */
.footer {
  padding: min(45 / 750 * 100vw, 45px) 0 min(35 / 750 * 100vw, 35px);
  max-width: 750px;
  margin: 0 auto;
  background-color: #f5f5f5;
}
.footer_list {
  display: flex;
  justify-content: center;
  margin: 0;
  list-style: none;
  padding: 0;
}
.footer_list_item {
  font-size: min(22 / 750 * 100vw, 22px);
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #000;
}
.footer_list_item::after {
  content: "";
  border-right: min(3 / 750 * 100vw, 3px) solid #000;
}
.footer_list_item:last-of-type:after {
  content: "";
  border-right: none;
}
.footer_list_link {
  color: inherit;
  text-decoration: none;
  padding: 0 min(12 / 750 * 100vw, 12px);
}
.footer_copyright {
  font-size: min(22 / 750 * 100vw, 22px);
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #000;
  display: block;
  text-align: center;
}

/* ---------------------------------------------
 追従ボタン
--------------------------------------------- */
.lp_main .bl_floatArea {
  position: fixed;
  left: 0;
  bottom: 0;
  width: 100%;
  z-index: 999;
  visibility: hidden;
  opacity: 0;
  transition: visibility .4s , opacity .4s;
  box-sizing: border-box;
}
.lp_main .bl_floatArea.is_show {
  visibility: visible;
  opacity: 1;
}
.lp_main .bl_floatArea_inner {
  max-width: 750px;
  margin: auto;
  box-sizing: border-box;
}

/* ボタン */
.lp_main .bl_floatArea_btn {
  display: block;
}
.lp_main .bl_floatArea_btn img {
  width: 100%;
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}
