@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: 'Roboto', "Noto Sans JP", "sans-serif";
  width: 100%;
  max-width: 750px;
  margin: 0 auto;
  overflow: hidden;
}

.lp_main .p_box {
  position: relative;
}

/* ---------------------------------------------
  btn
--------------------------------------------- */
/*================
  btn_entry
================*/
/* 共通 */
.lp_main .btn_entry a {
  width: calc(615 / 750 * 100%);
  margin-inline: auto;
  display: block;
}
.lp_main .btn_card a {
  width: calc(615 / 750 * 100%);
  margin-inline: auto;
  display: block;
}
.lp_main .btn_close a {
  width: calc(448 / 750 * 100%);
  margin-inline: auto;
  display: block;
}
/* fv */
.lp_main .fv .btn_entry {
  padding-top: calc(64 / 750 * 100%);
}
.lp_main .card .btn_card {
  background-color: #3d3b3c;
  padding-top: calc(32 / 750 * 100%);
}
/* recommended */
.lp_main .btn_close {
  margin: calc(60 / 750 * 100%) 0 calc(60 / 750 * 100%);
}

/*================
  btn_more-large
================*/
.lp_main .btn_more-large a {
  position: absolute;
  width: min(451 / 750 * 100vw ,451px);
  top: 82.5%;
  left: 0;
  right: 0;
  margin-inline: auto;
  display: block;
}
/*================
  btn_more-small
================*/
.lp_main .btn_more-small a {
  position: absolute;
  width: min(219 / 750 * 100vw ,219px);
  top: 65%;
  left: 12%;
}

/* ---------------------------------------------
  fv
--------------------------------------------- */
.lp_main .header_logo {
  margin-right: auto;
  padding-left: calc(16 / 750 * 100%);
  padding-top: calc(16 / 750 * 100%);
  width: calc(180 / 750* 100%);
}


/* ---------------------------------------------
  box
--------------------------------------------- */
/* 共通設定 */
.card_bk{
  background-color: #3D3B3C;
}
.header_wrap {
  background-color: #3D3B3C !important;
}
.lp_main .card_b{
	padding: calc(32 / 750 * 100%) 0
}

.lp_main p .highlight,
.lp_main .highlight_card {
  color: #FF65E2 !important;
}
.lp_main .highlight_card {
  font-size: min(24 / 750 * 100vw, 24px) !important;
  padding-top: calc(24 / 750 * 100%) !important;
  padding-bottom: 0 !important;
  text-align: center;
  font-weight: bold;
}
.lp_main .text_top {
  padding-top: calc(40 / 750 * 100%) !important;
}
.lp_main .text_bt {
  padding-bottom: calc(40 / 750 * 100%) !important;
}
.lp_main .bold {
  font-size: min(26 / 750 * 100vw, 26px) !important;
  font-weight: bold !important;
  padding-bottom: 0 !important;
}

/* コンテナの基本スタイル */
.lp_main .box_wrap {
  padding: 0 calc(16 / 750 * 100%) calc(40 / 750 * 100%);
}
.lp_main .box {
  font-size: 1em;
  background: #fff;
  color: #000;
  text-align: left;
  font-weight: 500;
  border: 1px solid #000;
  margin: 0 1rem;
}
.lp_main .box_text {
  text-align: left;
}

/* テキスト関連のスタイル */
.lp_main .box_wrap .box p {
  padding: calc(8 / 750 * 100%) calc(32 / 750 * 100%);
  margin: 0;
  line-height: 1.5;
}
.lp_main .box_wrap .box h3 {
  padding: 1rem 1.2rem;
  margin: 0;
  line-height: 1.5; /* 統一表現 */
}
.lp_main .box_text > h3 {
  text-align: center;
  font-size: min(30 / 750 * 100vw, 30px);
  line-height: 1;
  margin-bottom: calc(24 / 750 * 100%);
}
.lp_main .box_text > p {
  font-size: min(22 / 750 * 100vw, 22px);
  line-height: 1.8;
}

/* ボックス内リンク */
.lp_main .box_text .box_link_wrap {
  margin-bottom: calc(10 / 750 * 100%);
  padding: calc(16 / 750 * 100%) calc(32 / 750 * 100%);
}
.lp_main .box_text .box_link {
  font-size: min(22 / 750 * 100vw, 22px);
  line-height: 1.8;
  color: #0099FF;
}

/* 特別な見出し */
.lp_main .title {
  font-size: 2em;
  background: #000;
  color: #fff;
  text-align: center;
  padding: 0 2rem;
}


/* ---------------------------------------------
  footer
--------------------------------------------- */
.lp_main .footer {
  padding-bottom: calc(117 / 750 * 100%);
}
.lp_main .footer_logo {
  width: calc(330 / 750* 100%);
  margin: calc(70/ 750 * 100%) auto calc(50 / 750 * 100%);
}
.lp_main .footer_text {
  text-align: center;
}
.lp_main .footer_text > p {
  font-size: min(30 / 750 * 100vw ,30px);
  line-height: 1;
  margin-bottom: calc(28 / 750 * 100%);
}
.lp_main .footer_text .footer_tel_wrap {
  margin-bottom: calc(28 / 750 * 100%);
}
.lp_main .footer_text .footer_tel {
  font-size: min(40 / 750 * 100vw ,40px);
  line-height: 1;
  color: #0099FF;
}
.lp_main .footer_text .footer_link_list {
  display: flex;
  justify-content: center;
  margin-bottom: calc(28 / 750 * 100%);
}
.lp_main .footer_text .footer_link_list_text {
  font-size: min(30 / 750 * 100vw ,30px);
  line-height: 1;
  color: #0099FF;
}
.lp_main .footer_text .footer_link_list_item:first-of-type {
  border-right: 2px solid #000;
  padding-right: calc(40 / 750 * 100%);
}
.lp_main .footer_text .footer_link_list_item:last-of-type {
  padding-left: calc(40 / 750 * 100%);
}
.lp_main .footer_text .footer_copyright {
  font-size: min(25 / 750 * 100vw ,25px);
  line-height: 1;
  letter-spacing: 0.05em;
}

.lp_main .footer_text .footer_pop_copyright {
  margin-top: calc(28 / 750 * 100%);
  font-size: min(25 / 750 * 100vw ,25px);
  line-height: 1;
  letter-spacing: 0.05em;
  color: #fff;
}
