@charset "utf-8";
/* style.cssより移植 */
*,
*:before,
*:after {
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
html {
  scroll-behavior: smooth;
}
html,
body,
div,
span,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
a,
img,
small,
strong,
dl,
dt,
dd,
ol,
ul,
li,
label,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
figure,
footer,
header,
menu,
nav,
section,
summary,
time,
audio,
video {
  margin: 0;
  padding: 0;
  font-size: 100%;
  font-weight: normal;
  vertical-align: baseline;
  border: 0;
  outline: 0;
  background: transparent;
}
html {
  -webkit-overflow-scrolling: touch;
  overflow-scrolling: touch;
}
body {
  /* font-family: "Noto Sans JP", sans-serif; */
  /* 標準のフォントをシステムフォントに定義 */
  color: #000;
  /*標準の文字色を黒に定義*/
  font-size: 1rem;
  /*標準の文字サイズを16pxに定義*/
  font-weight: normal;
  /*標準の文字の太さをnormalに定義*/
  line-height: 1;
  /*行の高さをフォントと統一*/
  letter-spacing: 0em;
  /*文字間を0emに定義*/
  background-color: #fff;
  /*ブラウザ以前による背景色を防ぐため、白を定義*/
  -ms-text-size-adjust: 100%;
  /*SPで縦持/横持で文字が拡大されないように定義*/
  -webkit-text-size-adjust: 100%;
  /*SPで縦持/横持で文字が拡大されないように定義*/
}
.hd2,
.hd3,
.menu_trigger,
.menu_contact,
.headerWrap,
.header_navPC-wrapper,
.header_navPC-right,
.headerBox,
.header_navPC-list,
.mvBox,
.aboutBox,
.serviceBox,
.candoBox,
.infoWrap,
.voiceWrap,
.footerBox {
  margin: 0;
  line-height: 1;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}
body,
h1,
h2,
h3,
h4,
h5,
h6,
table,
input,
textarea,
select,
option {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
h1,
h2,
h3,
h4,
h5,
h6,
p {
  -webkit-margin-before: 0;
  margin-block-start: 0;
  -webkit-margin-after: 0;
  margin-block-end: 0;
  -webkit-margin-start: 0;
  margin-inline-start: 0;
  -webkit-margin-end: 0;
  margin-inline-end: 0;
}
br {
  letter-spacing: 0;
}
nav,
ol,
ul {
  list-style: none;
}
img {
  display: block;
  width: 100%;
  height: auto;
  font-size: 0;
  line-height: 0;
  vertical-align: bottom;
  border-style: none;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
a {
  display: block;
  color: inherit;
  font: inherit;
}
a,
a:link,
a:hover,
a:visited,
a:focus {
  text-decoration: none;
  cursor: pointer;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
/* .font-weight-500 {
  font-weight: 500;
} */
/* =================================================================
Reset Hardly Styles
================================================================= */
applet,
object,
blockquote,
pre,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
ins,
kbd,
q,
s,
samp,
strike,
sub,
sup,
tt,
var,
b,
u,
i,
center,
fieldset,
legend,
dialog,
details,
embed,
figcaption,
hgroup,
output,
ruby,
mark {
  margin: 0;
  padding: 0;
  font-size: 100%;
  font-weight: normal;
  vertical-align: baseline;
  border: 0;
  outline: 0;
  background: transparent;
}
:root {
  line-sizing: normal;
}
:root {
  -ms-text-spacing: trim-start allow-end trim-adjacent ideograph-alpha ideograph-numeric;
  text-spacing: trim-start allow-end trim-adjacent ideograph-alpha ideograph-numeric;
}
[hidden] {
  display: none !important;
}
[disabled] {
  cursor: not-allowed;
}
:focus:not(:focus-visible) {
  outline: none;
}
:root {
  --blue: #007bff;
  --indigo: #6610f2;
  --purple: #6f42c1;
  --pink: #e83e8c;
  --red: #dc3545;
  --orange: #fd7e14;
  --yellow: #ffc107;
  --green: #28a745;
  --teal: #20c997;
  --cyan: #17a2b8;
  --white: #fff;
  --gray: #6c757d;
  --gray-dark: #343a40;
  --primary: #2274a5;
  --secondary: #6c757d;
  --success: #28a745;
  --info: #17a2b8;
  --warning: #ffc107;
  --danger: #dc3545;
  --light: #f8f9fa;
  --dark: #343a40;
  --breakpoint-xs: 0;
  --breakpoint-sm: 576px;
  --breakpoint-md: 768px;
  --breakpoint-lg: 992px;
  --breakpoint-xl: 1200px;
  /* --font-family-sans-serif: -apple-system, BlinkMacSystemFont, "Segoe UI",
    Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif,
    "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas,
    "Liberation Mono", "Courier New", monospace; */
}
*,
*::before,
*::after {
  box-sizing: border-box;
}
html {
  font-family: sans-serif;
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
article,
aside,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section {
  display: block;
}
body {
  margin: 0;
  /* font-family: YuGothic, "Yu Gothic", "Helvetica Neue", "Hiragino Sans",
    "Hiragino Kaku Gothic Pro", Meiryo, Osaka, MS PGothic, -apple-system,
    BlinkMacSystemFont, sans-serif; */
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #343a40;
  text-align: left;
  background-color: #f8f9fa;
}
[tabindex="-1"]:focus {
  outline: 0 !important;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  margin-top: 0;
  margin-bottom: 0.5rem;
}
p {
  margin-top: 0;
  margin-bottom: 1rem;
}
ol ol,
ul ul,
ol ul,
ul ol {
  margin-bottom: 0;
}
dt {
  font-weight: 400;
}
dd {
  margin-bottom: 0.5rem;
  margin-left: 0;
}
small {
  font-size: 80%;
}
a {
  color: #2274a5;
  text-decoration: none;
  background-color: transparent;
}
a:hover {
  color: #154766;
  text-decoration: none;
}
a:not([href]):not([tabindex]) {
  color: inherit;
  text-decoration: none;
}
a:not([href]):not([tabindex]):hover,
a:not([href]):not([tabindex]):focus {
  color: inherit;
  text-decoration: none;
}
a:not([href]):not([tabindex]):focus {
  outline: 0;
}
figure {
  margin: 0 0 1rem;
}
/* img {
  vertical-align: middle;
  border-style: none;
} */
table {
  border-collapse: collapse;
}
th {
  text-align: inherit;
}
label {
  display: inline-block;
  margin-bottom: 0.5rem;
}
button {
  border-radius: 0;
}
button:focus {
  outline: 1px dotted;
  outline: 5px auto -webkit-focus-ring-color;
}
input,
button,
select,
optgroup,
textarea {
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}
button,
input {
  overflow: visible;
}
button,
select {
  text-transform: none;
}
select {
  word-wrap: normal;
}
button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}
button:not(:disabled),
[type="button"]:not(:disabled),
[type="reset"]:not(:disabled),
[type="submit"]:not(:disabled) {
  cursor: pointer;
}
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  padding: 0;
  border-style: none;
}
input[type="radio"],
input[type="checkbox"] {
  box-sizing: border-box;
  padding: 0;
}
input[type="date"],
input[type="time"],
input[type="datetime-local"],
input[type="month"] {
  -webkit-appearance: listbox;
}
textarea {
  overflow: auto;
  resize: vertical;
}
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}
[type="search"] {
  outline-offset: -2px;
  -webkit-appearance: none;
}
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}
::-webkit-file-upload-button {
  font: inherit;
  -webkit-appearance: button;
}
h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
  margin-bottom: 0.5rem;
  font-weight: 500;
  line-height: 1.2;
}
h1,
.h1 {
  font-size: 2.5rem;
}
h2,
.h2 {
  font-size: 2rem;
}
/* h3, .h3 {
  font-size: 1.75rem;
} */
h4,
.h4 {
  font-size: 1.5rem;
}
h5,
.h5 {
  font-size: 1.25rem;
}
h6,
.h6 {
  font-size: 1rem;
}
.lead {
  font-size: 1.25rem;
  font-weight: 300;
}
/* ここから */
:root .fa-rotate-90,
:root .fa-rotate-180,
:root .fa-rotate-270,
:root .fa-flip-horizontal,
:root .fa-flip-vertical {
  -webkit-filter: none;
  filter: none;
}
/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
   readers do not read off random characters that represent icons */
/* =================================================================
Base Styles
================================================================= */
html {
  position: relative;
  min-height: 100%;
}
a,
a:link,
a:hover,
a:focus,
a:visited {
  transition: all 0.3s ease-in-out;
}
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  -webkit-clip-path: inset(50%);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
}
/* Main
-------------------- */
.l-main {
  margin-top: 60px;
  width: 100%;
  overflow: hidden;
}
@media all and (min-width: 576px) {
  .l-main {
    margin-top: 66px;
  }
}
/* Footer
-------------------- */
.l-footer {
  width: 100%;
  background: #2274a5;
  padding-bottom: 10px;
}
/* =================================================================
Module Styles
================================================================= */
/* common
-------------------- */
.mainWrap {
  background-color: #f8f6f6;
}
/* Footer - FooterBox */
.footerBox_copy {
  font-size: 11px;
  color: #d1d1d1;
  text-align: center;
}
/* PC時の表示 */
@media screen and (min-width: 768px) {
  .footerBox_copy {
    font-size: 12px;
  }
}
/* 資料ダウンロード */
.contact-download-row {
  margin-bottom: 37px;
}
.contact-download-box {
  position: relative;
}
.contact-dowload-list {
  position: relative;
  background-color: #fff;
  padding: 37px 15px 15px 30px;
  flex: 1;
  border-radius: 20px;
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.16);
}
.contact-download-fukidashi {
  position: absolute;
  top: 40px;
}
.contact-dowload-list-title {
  font-size: 20px;
  text-align: center;
  color: #2274a5;
  font-weight: 700;
  margin-bottom: 20px;
}
.contact-dowload-list li {
  padding-left: 26px;
  margin-bottom: 7px;
  position: relative;
  font-weight: bold;
}
.contact-dowload-list li::before {
  position: absolute;
  content: "";
  width: 19px;
  height: 19px;
  background-image: url(./img/lp_02/check-square-blue.svg);
  background-repeat: no-repeat;
  background-size: contain;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}
.contact-dowload-img {
  margin-bottom: 41px;
  background-color: #FFF;
  border-radius: 50%;
  aspect-ratio: 1/1;
  display: grid;
  place-items: center;
}
.contact-dowload-img img {
  max-width: 337px;
  margin: 20px auto;
}
@media all and (min-width: 768px) and (max-width: 991px) {
  .contact-download-row {
    display: flex;
    gap: 15px;
  }
}
@media all and (min-width: 1200px) {
  .contact-dowload-list li::before {
    width: 19px;
    height: 19px;
  }
  .contact-dowload-list li {
    padding-left: 36px;
  }
}
/* 資料ダウンロード */
/* 20240306 資料ダウンロードページ変更 */
.contact-dowload-list .txt-color {
  color: #D65E18;
  font-weight: bold;
}
.contact-download-txt1 {
  margin-bottom: 30px;
}
.contact-desc {
  margin-bottom: 0.2rem;
}
.contact-btnbox {
  margin-top: 30px;
}
@media all and (min-width: 576px) {
  .section-dl .BoxContact {
    padding: 35px 38px 10px;
  }
}
@media all and (min-width: 768px) {
  .contact-download-title {
    font-size: 2rem;
    margin-bottom: 42px;
  }
  .contact-download-txt1 {
    font-size: 1.25rem;
    margin-bottom: 60px;
  }
  .contact-dowload-img {
    margin-bottom: 0;
  }
  .contact-download-box {
    margin-top: 72px;
  }
  .contact-dowload-list {
    height: 190px;
  }
  .section-dl {
    margin: 0 auto;
  }
}
@media all and (min-width: 992px) {
  #page-contact-download .wrapper {
    padding-bottom: 210px;
  }
  .contact-dowload-img {
    margin-right: 31px;
    margin-bottom: 41px;
  }
  .contact-dowload-img img {
    max-width: none;
    width: 110%;
    margin: 0 auto 20px;
    margin-left: -20px;
    margin-top: -25px;
  }
  .contact-right {
    padding-left: 35px;
  }
  .contact-dowload-list li {
    font-size: 1.125rem;
  }
  .contact-dowload-list {
    padding: 25px 15px 38px 35px;
    margin-bottom: 0;
    height: auto;
  }
  .contact-download-row {
    margin-bottom: 0;
  }
}
/* //20240306 資料ダウンロードページ変更 */
/* 色について */
.txt-orange {
  color: #D65E18;
}
/* //style.cssより移植 */
/* top.cssより */
body {
  color: #000;
  /* font-family: "Noto Sans JP", sans-serif; */
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  /* font-family: YuGothic, "Yu Gothic", "Helvetica Neue", "Hiragino Sans",
    "Hiragino Kaku Gothic Pro", Meiryo, Osaka, MS PGothic, -apple-system,
    BlinkMacSystemFont, sans-serif; */
}
.lp-body {
  /* font-family: "Noto Sans JP", sans-serif; */
  /* font-family: YuGothic, "Yu Gothic", "Helvetica Neue", "Hiragino Sans",
    "Hiragino Kaku Gothic Pro", Meiryo, Osaka, MS PGothic, -apple-system,
    BlinkMacSystemFont, sans-serif; */
  background-color: #FFF;
}
/*style.cssから*/
a {
  color: #2274a5;
  text-decoration: none;
  background-color: transparent;
}
a:hover {
  color: #154766;
  text-decoration: none;
}
/**/
#top-mainWrap {
  background-color: #f3f9ff;
}
/* スライダー */
.top-fv {
  position: relative;
}
.cmn-btn:hover {
  color: #fff;
  /* opacity: 0.8; */
  text-decoration: none;
  /* background: linear-gradient(#FBA574 0%, #E78B55 68.47%, #DE7E47 100%); */
}
.top-function p {
  text-align: center;
  font-size: 25px;
  font-weight: 700;
  /*margin-top: 30px;*/
}
.example {
  background-color: #fff;
  padding: 50px 0;
  position: relative;
}
.example-row {
  margin-top: 50px;
}
.example-col {
  margin-bottom: 50px;
}
.example-col .example-col-card {
  box-shadow: 0px 0px 10px #00000014;
  border-radius: 18px;
  background-color: #fff;
  justify-content: flex-end;
  position: relative;
  margin-left: 15px;
}
.example-col img {
  border-radius: 18px 18px 0 0;
}
.top-example-h2 {
  position: relative;
  font-size: 1.4rem;
  text-align: center;
  line-height: 1.5;
  padding-bottom: 15px;
  letter-spacing: 0.09em;
  font-weight: bold;
}
.top-example-h2 span {
  color: #2274a5;
  font-size: 1.6rem;
  font-weight: 600;
}
.top-example-h2::after {
  position: absolute;
  content: "";
  background-color: #2274a5;
  width: 134px;
  height: 3px;
  left: 50%;
  transform: translateX(-50%);
  bottom: 0;
}
.example-h3 {
  font-size: 16px;
  font-weight: 700;
  color: #2274a5;
}
.example-title {
  font-size: 16px;
  color: #000;
}
.voice_logo_wrap {
  max-height: 40px;
  width: 80%;
  margin: 0 auto 30px;
}
@media all and (min-width: 768px) {
  .example-col {
    margin-bottom: 80px;
  }
}
@media all and (min-width: 768px) and (max-width: 991px) {
  .voice_logo_wrap {
    width: 100%;
    max-height: none;
    max-width: 364px;
  }
}
.example-p {
  font-size: 16px;
}
.example-col li {
  list-style: none;
  font-size: 12px;
  display: inline-block;
  margin: 0 5px 5px 0;
  padding: 5px 8px;
  background-color: #deeaf2;
  border-radius: 10px;
  color: #000;
}
.example_TxtArea {
  padding: 30px 20px;
}
.top-plan {
  background-color: #fff;
  padding: 50px 20px;
}
.top-plan-box {
  text-align: center;
  /* margin-top: 90px; */
  padding-top: 45px;
  padding-bottom: 55px;
  box-shadow: 0px 1px 10px #00000014;
  border-radius: 10px;
}
/* 20240130　//プラン内容追記 */
.top-faq-contents {
  background-color: #fff;
  margin-bottom: 30px;
  box-shadow: 0px 0px 10px #00000014;
  position: relative;
}
.top-faq-contents label {
  cursor: pointer;
}
.acd-check {
  display: none;
}
.acd-label {
  display: flex;
  align-items: center;
  margin-bottom: 0px;
  padding: 20px 0;
  position: relative;
  background-color: #fff;
  color: #353535;
  font-weight: 700;
  width: 96%;
  margin: auto;
  border-bottom: 1px solid #ddd;
}
.acd-label:last-of-type {
  border-bottom: none;
}
.acd-label-q1 {
  font-size: 30px;
  font-weight: 700;
  color: #2274a5;
}
.acd-label-q2 {
  font-size: 20px;
  padding-left: 20px;
  font-weight: 700;
}
.acd-label:after {
  box-sizing: border-box;
  content: "＋";
  display: block;
  font-family: "Font Awesome 5 Free";
  padding: 10px 20px;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  font-size: 20px;
  font-weight: 700;
  color: #ddd;
}
.acd-content {
  display: flex;
  align-items: baseline;
  height: 0;
  opacity: 0;
  padding: 0 10px;
  /* transition: .3s */
  visibility: hidden;
  background-color: #fff;
}
.acd-content-a {
  font-size: 30px;
  font-weight: 700;
  color: #d65e18;
}
.acd-content p {
  margin-bottom: 0;
  padding-left: 30px;
}
.acd-check:checked + .acd-label:after {
  content: "－";
  color: #ddd;
}
.acd-check:checked + .acd-label + .acd-content {
  height: auto;
  opacity: 1;
  padding: 20px 0;
  visibility: visible;
  width: 96%;
  margin: auto;
}
.top-footer {
  background-color: #2274A5;
  padding: 10px;
}
.footerBox_copy {
  color: #fff;
}
/* //20240202追記　solvingセクション */
/* topの料金表を変更 */
.top-price {
  margin-top: 40px;
}
.top-EachCost {
  margin-top: 70px;
  margin-bottom: 50px;
}
@media all and (min-width: 768px) {
  .top-price {
    margin-top: 70px;
    position: relative;
  }
  .top-EachCost {
    margin-bottom: 100px;
  }
}
/* //topの料金表を変更 */
/* top.cssより */
/* nav.cssより */
/* ヘッダー */
#lp-header.scroll {
  position: fixed;
  background: #FFF;
  -webkit-animation-name: anime;
  animation-name: anime;
  -webkit-animation-duration: 0.3s;
  animation-duration: 0.3s;
}
@-webkit-keyframes anime {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes anime {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.l-header {
  width: 100%;
  z-index: 999;
  top: 0;
  height: 66px;
  display: flex;
  justify-content: space-between;
  background-color: #FFF;
  position: fixed;
}
.headerWrap_logo {
  margin: 0 0 0 20px;
  padding-top: 7px;
  /* position: absolute; */
  height: auto;
  z-index: 9999;
  width: 120px;
}
.headerWrap {
  margin: 0 auto;
  align-items: center;
  justify-content: space-between;
  position: relative;
  height: 50px;
  background-color: #fff;
  box-shadow: 0 2px 2px rgba(0, 0, 0, 0.2);
}
.header_navPC-list .menu-item .sub-menu li a {
  font-size: 12px;
}
.l-header .cmn-btn {
  width: 330px;
  height: -webkit-max-content;
  height: -moz-max-content;
  height: max-content;
  font-size: 16px;
  position: relative;
  margin-right: 15px;
  font-weight: 700;
  margin-top: 10px;
  padding: 11px 0;
}
.header_navPC-wrapper {
  position: absolute;
  top: 8px;
  left: 150px;
}
.header_navPC-wrapper {
  left: 165px;
}
.display_header {
  display: none;
}
.menu_trigger,
.header_navPC-list {
  margin: 0;
  line-height: 1;
}
.nav-nonelink {
  cursor: default;
}
.header_navPC-list .menu-item a,
.nav-nonelink {
  color: #000;
  font-size: 14px;
  font-weight: 500;
}
.menu_trigger {
  display: inline-block;
  width: 30px;
  height: 26px;
  position: fixed;
  top: 12px;
  right: 20px;
  z-index: 100;
}
.menu_trigger span {
  display: inline-block;
  width: 100%;
  height: 2px;
  position: absolute;
  left: 0;
  background-color: #2274a5;
  transition: all 0.3s;
}
.menu_trigger span:nth-of-type(1) {
  top: 0;
}
.menu_trigger.active span:nth-of-type(1) {
  transform: translateY(12px) rotate(-45deg);
}
.menu_trigger span:nth-of-type(2) {
  top: 12px;
}
.menu_trigger.active span:nth-of-type(2) {
  opacity: 0;
}
.menu_trigger span:nth-of-type(3) {
  bottom: 0;
}
.menu_trigger.active span:nth-of-type(3) {
  transform: translateY(-12px) rotate(45deg);
}
.menu_triggerList {
  padding-top: 50px;
  background-color: #fff;
  width: 250px;
  height: 100%;
  overflow-y: scroll;
  position: fixed;
  top: 0;
  right: 0;
  z-index: 10;
  transform: translate(250px);
  transition: all 0.3s;
}
.menu_triggerList.open {
  transform: translateZ(0);
  width: 100%;
}
.menu_triggerList li {
  text-align: left;
  border-top: solid 1px #d1d1d1;
}
.menu_triggerList > ul > li:last-of-type {
  border-bottom: solid 1px #d1d1d1;
}
.menu_triggerList li {
  display: inline-block;
  padding: 20px 0 20px 20px;
  position: relative;
  width: 100%;
  color: #515151;
  font-size: 15px;
  font-weight: bold;
}
.menu_triggerList li a:not([href]):not([tabindex]) {
  color: #515151;
}
.menu_triggerList li a:hover {
  color: #2274a5;
}
/* .menu_triggerList li a::before {
  content: "";
  position: absolute;
  top: 20px;
  right: 18px;
  transition: all 0.2s ease-in-out;
  background: url(img/menu_icon_arrow-right-blu@2x.png) 0 50%/9px no-repeat;
  width: 12px;
  height: 18px;
} */
@media (min-width: 768px) {
  .headerWrap {
    height: 66px;
  }
  .headerWrap_logo {
    margin: 0 0 0 50px;
    padding-top: 15px;
  }
  .header_navPC-list {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .header_navPC-list .menu-item {
    display: block;
    padding: 0 7px;
    text-align: center;
    position: relative;
  }
  .header_navPC-list .menu-item a {
    display: inline-block;
    padding-bottom: 5px;
    position: relative;
    color: #515151;
    font-size: 13px;
    /*font-size: 15px;*/
    line-height: 46px;
    letter-spacing: 0.02em;
  }
  .header_navPC-list .menu-item a:before {
    content: "";
    display: block;
    width: 0;
    height: 4px;
    position: absolute;
    bottom: 3px;
    left: 0;
    background-color: #2274a5;
    transition: 0.4s ease 0s;
  }
  .header_navPC-list .menu-item .sub-menu {
    float: left;
    position: absolute;
    top: 100%;
    left: -999em;
    z-index: 99999;
    background: rgba(255, 255, 255, 0.8);
    padding-left: 0;
    display: block;
    box-shadow: 0 2px 2px rgba(0, 0, 0, 0.2);
  }
  .header_navPC-list .menu-item .sub-menu li {
    display: block;
    float: none;
    padding: 0;
  }
  .header_navPC-list .menu-item .sub-menu li a {
    line-height: 18px;
  }
  .header_navPC-list .menu-item .sub-menu li a:before {
    background-color: #ffc857;
  }
  .display_pc-sp {
    display: block;
  }
  .menu_trigger {
    top: 20px;
  }
  .menu_triggerList {
    padding-top: 66px;
  }
}
@media all and (min-width: 1140px) {
  .display_header {
    display: block;
  }
  .display_pc-sp {
    display: none;
  }
  .header_navPC-wrapper {
    left: 140px;
  }
}
@media all and (max-width: 768px) {
  .l-header .cmn-btn {
    width: 220px;
    font-size: 13px;
    padding: 11px 0 11px 20px;
  }
}
@media all and (max-width: 1140px) {
  .menu_contactItem {
    display: flex;
    justify-content: center;
    padding: 40px 0 40px;
  }
  .menu_contactItem .cmn-btn::after {
    top: 18px;
    right: 25px;
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
    width: 10px;
    height: 10px;
    transform: rotate(45deg);
  }
}
@media all and (max-width: 767px) {
  .menu_contactItem .cmn-btn {
    font-size: 15px;
  }
  .menu_contactItem .cmn-btn::after {
    right: 15px;
  }
  .headerWrap_logo {
    padding-top: 14px;
  }
}
@media all and (max-width: 575px) {
  .menu_contactItem {
    display: block;
  }
  .menu_contactItem .cmn-btn {
    width: 80%;
    margin: auto;
  }
  .menu_contactItem .cmn-btn2 {
    width: 80%;
    margin: 20px auto 0;
  }
}
/* //ヘッダー */
/* common.cssより */
/* ボタンUI */
.cmn-btn {
  display: block;
  background: linear-gradient(#ff9457 0%, #ea7734 68.47%, #d65e19 100%);
  border: 2px solid #fff;
  -webkit-filter: drop-shadow(0px 0px 15px rgba(0, 0, 0, 0.16));
  filter: drop-shadow(0px 0px 15px rgba(0, 0, 0, 0.16));
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  position: relative;
  /* width: 400px; */
  padding-top: 15px;
  padding-bottom: 15px;
  text-align: center;
  border-radius: 100vh;
  max-width: 100%;
  z-index: 2;
}
.cmn-btn span {
  position: relative;
  z-index: 3;
  font-weight: 700;
  width: 100%;
  display: block;
}
.cmn-btn::after {
  background: linear-gradient(#FBA574 0%, #E78B55 68.47%, #DE7E47 100%);
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  border-radius: 100vh;
  /* border: 2px solid #fff; */
  z-index: 1;
  transition: opacity 0.3s ease-in;
  opacity: 0;
}
.cmn-btn:hover::after {
  opacity: 1;
}
.cmn-btn span::after {
  position: absolute;
  content: "";
  top: 22px;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  width: 10px;
  height: 10px;
}
.l-header .cmn-btn span::after {
  position: absolute;
  content: "";
  top: 43%;
  right: 15px;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  width: 7px;
  height: 7px;
  transform: rotate(45deg) translateY(-50%);
}
.cmn-btn1 {
  position: relative;
}
.cmn-btn2 {
  position: relative;
}
.l-header .cmn-btn2::before {
  position: absolute;
  content: "";
  background-image: url(./img/top/mail.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  width: 15px;
  height: 20px;
  left: 22px;
  top: 50%;
  transform: translateY(-50%);
}
@supports (background-image: url('./img/top/mail.webp')) {
  .l-header .cmn-btn2::before {
    background-image: url(./img/top/mail.webp);
  }
}
@media all and (max-width: 1400px) {
  .l-header .cmn-btn::after {
    right: 15px;
  }
}
@media all and (max-width: 575px) {
  .cmn-btn {
    font-size: 16px;
  }
}
@media all and (max-width: 768px) {
  .l-header .cmn-btn1::before {
    width: 12px;
    height: 17px;
    left: 15px;
    top: 14px;
  }
}
/* //ボタンUI */
/* 問い合わせセクション */
.top-faq {
  background-color: #FFF;
  padding: 100px 0 110px;
}
/* //問い合わせセクション */
/* topとpriceページの料金表 */
.price-col-row {
  justify-content: center;
}
.price-col-item {
  border: 3px solid #2274A5;
  border-radius: 18px;
  padding-bottom: 15px;
  background: #FFF;
  position: relative;
}
.price-col-h3 {
  color: white;
  background-color: #2274A5;
  border-radius: 11px 11px 0 0;
  text-align: center;
  padding: 15px 0;
  font-size: 18px;
}
.price-col {
  width: 100%;
  max-width: 550px;
  margin-inline: auto;
}
.price-txt1,
.price-txt1 span {
  font-weight: bold;
}
.price-text3 {
  margin: 12px 0 12px 0;
  font-size: 30px;
  color: var(--main-blue);
  font-weight: bold;
}
.price-text3 span {
  font-weight: bold;
  font-size: 20px;
}
.price-col-li {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 40px;
  padding: 0 15px 0 15px;
  border-bottom: 1px solid #DEEAF2;
}
.price-col-li:nth-child(odd) {
  background-color: #F0F8FF;
}
.price-col-li-item1,
.price-col-li-item2 {
  font-weight: 500;
  font-size: 14px;
}
.price-col-li-item1 {
  font-weight: bold;
}
.price-col-li-item2 span {
  font-size: 10px;
  font-weight: 500;
}
.plus-icon {
  background-color: #2274A5;
  width: 30px;
  height: 30px;
  -webkit-clip-path: polygon(0 40%, 40% 40%, 40% 0, 60% 0, 60% 40%, 100% 40%, 100% 60%, 60% 60%, 60% 100%, 40% 100%, 40% 60%, 0 60%);
  clip-path: polygon(0 40%, 40% 40%, 40% 0, 60% 0, 60% 40%, 100% 40%, 100% 60%, 60% 60%, 60% 100%, 40% 100%, 40% 60%, 0 60%);
  margin: 25px 0;
  margin-inline: auto;
}
.price-col-link {
  text-align: end;
  font-size: 14px;
  padding-right: 23px;
  position: relative;
}
.price-col-link::after,
.price-col-link::before {
  content: "";
  width: 6px;
  height: 1px;
  display: inline-block;
  background: #2274A5;
  position: absolute;
  right: 10px;
}
.price-col-link::before {
  top: calc(50% - 2px);
  /* 数値は微調整してください */
  transform: rotate(45deg);
  /* 45度回転させる */
}
.price-col-link::after {
  bottom: calc(50% - 3px);
  /* 数値は微調整してください */
  transform: rotate(-45deg);
  /* -45度回転させる */
}
@media all and (min-width: 576px) {
  .price-text3 {
    margin: 22px 0 26px 0;
  }
  .price-col-h3 {
    font-size: 24px;
  }
  .price-col-li {
    height: 48px;
  }
}
@media all and (min-width: 768px) {
  .EachCost {
    margin-top: 78px;
    margin-bottom: 111px;
  }
  #page-price .text-pattern1,
  #page-price .text-pattern1 span {
    font-size: 20px;
  }
  .price-text3 {
    font-size: 50px;
  }
  .price-text3 span {
    font-size: 26px;
  }
  .price-col-li-item1,
  .price-col-li-item2 {
    font-size: 16px;
  }
  .price-col-li-item1 {
    font-weight: bold;
  }
  .price-col-li-item2 span {
    font-size: 12px;
  }
  .price-col-li {
    padding: 0 33px 0 30px;
  }
  .price-col-link {
    font-size: 16px;
  }
}
@media all and (min-width: 992px) {
  .price-col-row {
    display: flex;
  }
  .price-col {
    width: 44%;
    max-width: 490px;
  }
  .price-col-item {
    height: 100%;
    padding-bottom: 25px;
  }
  .plus-icon {
    margin: 160px 10px;
    width: 50px;
    height: 50px;
  }
  .price-txt1 {
    font-size: 20px;
  }
  .EachCost-card {
    margin-bottom: 0;
  }
}
@media all and (min-width: 1200px) {
  .plus-icon {
    margin: 160px 35px;
  }
  .EachCost-txt1,
  .EachCost-txt2 {
    font-size: 16px;
  }
}
/* //topとpriceページの料金表 */
/* //common.cssより */

/* 20250731 料金表 吹き出し */
.price-col-item .fukidashi {
  position: absolute;
  top: -20px;
  left: -30px;
  width: 100px;
  height: 100px;
  line-height: 1.2;
}
@media all and (min-width: 576px) {
  .price-col-item .fukidashi {
    top: -10px;
    left: calc(50% - 14em);
    width: 120px;
    height: 120px;
  }
}
@media all and (min-width: 768px) {
  .price-col-item .fukidashi {
    top: 0;
    left: calc(50% - 17em);
  }
}
@media all and (min-width: 992px) {
  .price-col-item .fukidashi {
    left: calc(50% - 16em);
  }
}
@media all and (min-width: 1200px) {
  .price-col-item .fukidashi {
    left: -30px;
  }
}
.price-col-item .fukidashi-txt {
  padding: 0;
  margin: 0;
  text-align: center;
}
.price-col-item .fukidashi-txt::before {
  display: none;
}
/* //20250731 料金表 吹き出し */
/* 20250731 料金表下 比較表 */
.compare-table__ttl {
  font-size: 1.25rem;
  color: var(--main-blue);
  font-weight: bold;
  text-align: center;
  margin-top: 70px;
}
@media (min-width: 576px) {
  .compare-table__ttl {
    font-size: 1.5rem;
    margin-top: 100px;
  }
}
.table-compare {
  width: 100%;
  min-width: -webkit-max-content;
  min-width: -moz-max-content;
  min-width: max-content;
}
.table-compare th {
  line-height: 1.7;
  padding: 5px 15px;
  vertical-align: middle;
}
.table-compare td {
  border: 1px solid #e9e9e9;
  line-height: 1.7;
  padding: 5px 15px;
  vertical-align: middle;
  color: #000;
  text-align: center;
}
.compare-th {
  border: 1px solid #e9e9e9;
  background: var(--main-blue);
  color: #fff;
  text-align: center;
}
.compare-th--sub {
  border: 1px solid #e9e9e9;
  background-color: #F0F8FF;
  color: #000;
}
.compare-th__point {
  background-color: #ea7734;
  font-size: 1.2rem;
  font-weight: 600;
}
td.compare-td__point {
  font-size: 1.1rem;
  font-weight: 600;
  border-left-width: 3px;
  border-right-width: 3px;
}
.scroll-hint-icon {
  top: 100px;
}
/* //20250731 料金表下 比較表 */

/* =================================================================
section dl
================================================================= */
.lp-download {
  margin-inline: auto;
  background-color: #FFF;
  padding: 80px 15px 80px;
}
.section-dl textarea, .section-dl input[type="date"], .section-dl input[type="datetime"], .section-dl input[type="datetime-local"], .section-dl input[type="email"], .section-dl input[type="month"], .section-dl input[type="number"], .section-dl input[type="password"], .section-dl input[type="search"], .section-dl input[type="tel"], .section-dl input[type="text"], .section-dl input[type="time"], .section-dl input[type="url"], .section-dl input[type="week"], .section-dl select {
  padding: 13px 13px;
  width: 100%;
  border: 0;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 22px;
  border-radius: 3px;
  transition: all 0.2s linear;
  -moz-transition: all 0.2s linear;
  -webkit-transition: all 0.2s linear;
  -o-transition: all 0.2s linear;
  border: 1px solid #ccc;
  box-sizing: border-box;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.08) inset;
  color: #222;
}
#page-contact-download-confirm .lp-download {
  max-width: 690px;
}
.lp-download .BoxContact > h2 {
  display: none;
}
.lp-download .BoxContact {
  border: solid 2px #2274a5;
  border-radius: 18px;
  padding: 35px 20px 10px;
  background-color: rgba(255, 255, 255, 0.8);
  height: 100%;
  max-width: 673px;
  margin-inline: auto;
}
.lp-download .BoxContact h2 {
  background-color: #2274a5;
  text-align: center;
  color: #fff;
  margin: 1.5rem 0 3rem;
  font-size: 1.25rem;
  font-weight: 700;
  padding: 1rem;
}
.lp-download p {
  text-align: center;
}
.lp-download .mw_wp_form_preview p.contact-desc {
  display: none;
}
.lp-download .mwform-checkbox-field-text {
  font-size: 1rem;
  color: #343a40;
}
.lp-download .mwform-tel-field input[type="text"],
.lp-download .mwform-zip-field input[type="text"] {
  display: inline-block;
  width: auto;
}
.lp-download textarea {
  resize: vertical;
}
.lp-download label {
  color: #185173;
  font-weight: 700;
  font-size: 0.875rem;
  margin: 0 0 0.15rem;
}
.lp-download .label {
  width: 34%;
  margin-bottom: .5rem;
}
.lp-download option {
  color: #222;
  font-size: 1rem;
}
.lp-download input[type="submit"],
.lp-download input[type="button"] {
  font-weight: 400;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  border: 1px solid transparent;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out,
    border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  display: inline-block;
  padding: 0.5rem 2rem;
  font-size: 1.25rem;
  line-height: 1.5;
  border-radius: 0.3rem;
  background-color: #D65E19;
  color: #fff;
  box-shadow: 2px 5px 5px rgba(0, 0, 0, 0.3);
}
.lp-download input[type="submit"]:hover,
.lp-download input[type="button"]:hover {
  box-shadow: none;
  transform: translate(5px, 5px);
  transition: all 0.3s ease;
  opacity: 0.7;
  /* background-color: #185173; */
}
/* 230712追加分 */
.contact-wrap {
  display: flex;
  /* margin-left: -35px;
  margin-right: -35px; */
}
.contact-left {
  width: 40%;
}
@media screen and (max-width: 991px) {
  .contact-wrap {
    display: block;
    /* margin-left: 0;
    margin-right: 0; */
  }
}
/* 230718追加分 */
.lp-download dl {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin-bottom: 0;
}
.lp-download dd {
  width: 66%;
}
@media screen and (max-width: 767px) {
  .lp-download {
    padding: 150px auto 150px;
    margin-inline: auto;
  }
  .lp-download .label {
    width: 100%;
    margin-bottom: .15rem;
  }
  .lp-download dd {
    width: 100%;
    margin-bottom: 1rem;
  }
}
#lp-header.scroll .headerWrap_btn {
  display: block;
  padding: 10px 15px 0 0;
}
@media all and (max-width: 992px) {
  /* .l-header .cmn-btn span::after {
    top: 15px;
  } */
  .l-header .cmn-btn {
    width: 185px;
    font-size: 10px;
  }
  .l-header .cmn-btn1 {
    padding: 11px 0 11px 0;
  }
}
@media all and (max-width: 576px) {
  .headerWrap_logo {
    margin: 0 0 0 10px;
  }
  .l-header .cmn-btn {
    margin-right: 0;
    width: 150px;
    margin-top: 10px;
    margin-right: 15px;
    font-size: 13px;
  }
  .l-header .cmn-btn1::before {
    left: 13px;
    top: 12px;
  }
  #lp-header.scroll .headerWrap_btn {
    padding: 5px 10px 0 0;
  }
  .l-header {
    height: 60px;
  }
}
/* ★ここからlp_02用★ */
:root {
  --main-blue: #2274A5;
}
body {
  --scroll-gap: 30px;
}
.container-relative {
  position: relative;
}
.lp01-ttl-pattern1 {
  font-size: 24px;
  margin-bottom: 30px;
  font-weight: bold;
  position: relative;
  z-index: 1;
}
@media all and (min-width: 768px) {
  .lp01-ttl-pattern1 {
    font-size: 40px;
    margin-bottom: 72px;
  }
}
.lp-underline {
  -webkit-text-decoration-color: #D5E3EA;
  text-decoration-color: #D5E3EA;
  -webkit-text-decoration-line: underline;
  text-decoration-line: underline;
  text-decoration-thickness: 10px;
  text-underline-offset: -4px;
  -webkit-text-decoration-skip-ink: none;
  text-decoration-skip-ink: none;
}
.fw-700 {
  font-weight: 700;
}
.montserrat {
  font-family: "Montserrat", sans-serif;
}
.cmn-btn1::before,
.cmn-btn2::before,
.cmn-btn4::before, .cmn-btn5::before {
  z-index: 3;
}
.headerWrap_btn .cmn-btn1::before {
  position: absolute;
  content: "";
  background-image: url(./img/top/pdf.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  width: 11px;
  height: 16px;
  aspect-ratio: 20/24;
  left: 11px;
  top: 46%;
  transform: translateY(-50%);
  z-index: 3;
}
@media all and (min-width: 992px) {
  .headerWrap_btn .cmn-btn1::before {
    width: 20px;
    height: 24px;
    left: 35px;
    top: 50%;
  }
}
/* フロートCTA */
.float-cta {
  background-image: url(./img/lp_02/float-cta-bg.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  position: fixed;
  bottom: 151px;
  width: 97%;
  left: 50%;
  transform: translateX(-50%);
  height: auto;
  z-index: 100;
  border-radius: 10px;
  padding: 15px 15px;
}
@supports (background-image: url('./img/lp_02/float-cta-bg.webp')) {
  .float-cta {
    background-image: url(./img/lp_02/float-cta-bg.webp);
  }
}
.float-cta-closebtn {
  position: absolute;
  right: -5px;
  top: -15px;
  background-image: url(./img/lp_02/float-close.svg);
  background-repeat: no-repeat;
  background-size: contain;
  width: 27px;
  aspect-ratio: 1;
  -webkit-filter: drop-shadow(0px 0px 4px rgba(0, 0, 0, 0.16));
  filter: drop-shadow(0px 0px 4px rgba(0, 0, 0, 0.16));
}
.float-cta-btnbox {
  display: flex;
  justify-content: center;
  gap: 0 10px;
  max-width: 500px;
  margin-inline: auto;
}
.float-cta-copy {
  font-size: 14px;
  color: #fff;
  text-align: center;
  font-weight: bold;
}
.float-cta .cmn-btn {
  font-size: 12px;
  padding-top: 10px;
  padding-bottom: 10px;
}
.float-cta .cmn-btn1 {
  width: 55%;
}
.float-cta .cmn-btn2 {
  width: 45%;
}
.float-cta .cmn-btn span::after {
  right: 15px;
}
@media all and (min-width: 576px) {
  .float-cta {
    padding: 20px 25px;
    bottom: 148px;
  }
  .float-cta-copy {
    font-size: 16px;
  }
  .float-cta .cmn-btn1::before {
    position: absolute;
    content: "";
    background-image: url(./img/top/pdf.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    width: 11px;
    height: 16px;
    aspect-ratio: 20 / 24;
    left: 36px;
    top: 50%;
    transform: translateY(-50%);
  }
  .float-cta .cmn-btn2::before {
    position: absolute;
    content: "";
    background-image: url(./img/top/mail.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    width: 15px;
    height: 20px;
    left: 22px;
    top: 50%;
    transform: translateY(-50%);
  }
}
@media all and (min-width: 768px) {
  .float-cta {
    width: 309px;
    height: 138px;
    left: auto;
    transform: translateX(0%);
    right: 20px;
    bottom: 148px;
  }
  .float-cta .cmn-btn {
    width: 100%;
    font-size: 14px;
    padding-top: 15px;
    padding-bottom: 15px;
  }
  .float-cta-btnbox {
    flex-direction: column;
    gap: 14px 0;
  }
  .float-cta .cmn-btn1::before {
    left: 29px;
    width: 13px;
    height: 16px;
  }
  .float-cta .cmn-btn2::before {
    width: 17px;
    height: 22px;
    left: 27px;
  }
}
@media all and (min-width: 992px) {
  .float-cta {
    bottom: 106px;
  }
}
@media all and (min-width: 1200px) {
  .float-cta {
    bottom: 93px;
  }
}
@media all and (max-width: 991px) {
  /* 992pxまで非表示 */
  .float-cta {
    display: none;
  }
}
/* //フロートCTA */
.fv-btn {
  position: absolute;
  width: 82vw;
  top: 94vw;
  left: 55%;
  transform: translateX(-50%);
}
.fv-btn::after {
  content: "";
  background-image: url(./img/lp_02/dl-img.png);
  background-repeat: no-repeat;
  background-size: contain;
  width: 30vw;
  height: 25vw;
  position: absolute;
  top: -3vw;
  left: -11vw;
  z-index: 3;
}
@supports (background-image: url('./img/lp_02/dl-img.webp')) {
  .fv-btn::after {
    background-image: url(./img/lp_02/dl-img.webp);
  }
}
.fv-btn-fukidashi {
  position: absolute;
  background-image: url(./img/lp_02/top-fukidashi.png);
  background-repeat: no-repeat;
  background-size: cover;
  text-align: center;
  width: 52vw;
  height: 8.8vw;
  top: -5.4vw;
  font-size: 2.35vw;
  z-index: 1;
  left: 50%;
  transform: translateX(-50%);
  display: grid;
  place-items: center;
  padding-bottom: 1vw;
  font-weight: 500;
  z-index: 3;
}
@supports (background-image: url('./img/lp_02/top-fukidashi.webp')) {
  .fv-btn-fukidashi {
    background-image: url(./img/lp_02/top-fukidashi.webp);
  }
}
.fv-btn .cmn-btn {
  font-size: 3.733vw;
  margin-top: 0.5vw;
  padding: 4.5vw 0 4.5vw 8vw;
  width: auto;
}
.fv-btn .cmn-btn span::after {
  /* top: 5.86667vw; */
  width: 2.6667vw;
  height: 2.66667vw;
  right: 6vw;
  top: 45%;
}
.logo-scroll {
  background-color: #FFF;
}
.scroll_wrap {
  width: 100%;
  overflow: hidden;
}
.scroll_inner {
  display: flex;
  flex-wrap: nowrap;
  gap: 0 var(--scroll-gap);
  padding: 15px 0;
}
.scroll_cont img {
  height: 36.48px;
}
@-webkit-keyframes infiniteScrollRTL {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(calc(-1 * (100% / var(--_infinite-scroll-clone-length)) - var(--_infinite-scroll-gap,
            var(--scroll-gap)) / var(--_infinite-scroll-clone-length)));
  }
}
@keyframes infiniteScrollRTL {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(calc(-1 * (100% / var(--_infinite-scroll-clone-length)) - var(--_infinite-scroll-gap,
            var(--scroll-gap)) / var(--_infinite-scroll-clone-length)));
  }
}
@-webkit-keyframes infiniteScrollLTR {
  0% {
    transform: translateX(calc(-1 * (100% / var(--_infinite-scroll-clone-length)) - var(--_infinite-scroll-gap,
            var(--scroll-gap)) / var(--_infinite-scroll-clone-length)));
  }
  100% {
    transform: translateX(0);
  }
}
@keyframes infiniteScrollLTR {
  0% {
    transform: translateX(calc(-1 * (100% / var(--_infinite-scroll-clone-length)) - var(--_infinite-scroll-gap,
            var(--scroll-gap)) / var(--_infinite-scroll-clone-length)));
  }
  100% {
    transform: translateX(0);
  }
}
.js-scrollTrack {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  &[data-scroll-initialized="true"][data-scroll-direction="left"] {
    -webkit-animation: infiniteScrollRTL var(--_infinite-scroll-duration) linear infinite;
    animation: infiniteScrollRTL var(--_infinite-scroll-duration) linear infinite;
  }
  &[data-scroll-initialized="true"][data-scroll-direction="right"] {
    -webkit-animation: infiniteScrollLTR var(--_infinite-scroll-duration) linear infinite;
    animation: infiniteScrollLTR var(--_infinite-scroll-duration) linear infinite;
  }
  &[data-scroll-pause-on-hover="true"]:hover {
    -webkit-animation-play-state: paused;
    animation-play-state: paused;
  }
}
.js-scrollList {
  display: flex;
  flex-wrap: nowrap;
  gap: 0 var(--_infinite-scroll-gap, var(--scroll-gap));
  /* 他の場所で定義した余白を指定したいときはオプションで指定せずにフォールバックを使用する */
}
.js-scrollCont {
  flex-shrink: 0;
}
/* ラップする要素にoverflow: hidden;を指定する */
.scroll_wrap {
  width: 100%;
  overflow: hidden;
}
.fukidashi {
  width: 218px;
  height: 50px;
  position: relative;
}
.fukidashi-txt {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-wrap: nowrap;
  padding-left: 40px;
  font-weight: bold;
  color: var(--main-blue);
}
.fukidashi-txt::before {
  content: "";
  background-image: url(./img/lp_02/denkyu-icon.svg);
  background-repeat: no-repeat;
  background-size: contain;
  width: 40px;
  height: 40px;
  display: block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
}
.case-box {
  gap: 20px;
  margin-bottom: 22px;
}
.top-fv {
  /* background-image: url(./img/lp_02/mv-sp.jpg);
  background-size: cover; */
  height: 173.4vw;
}
.top-fv img {
  width: 100%;
}
@media all and (min-width: 992px) {
  .top-fv {
    /* background-image: url(./img/lp_02/mv-pc.jpg); */
    height: 34.48vw;
  }
  .fv-btn {
    top: 25vw;
    width: 31.20vw;
    left: 29%;
  }
  .fv-btn .cmn-btn {
    font-size: 1.25vw;
    padding: 1.5625vw 0 1.5625vw 3vw;
  }
  .fv-btn .cmn-btn span::after {
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
    width: 0.6667vw;
    height: 0.66667vw;
  }
  .fv-btn::after {
    width: 12vw;
    height: 9vw;
    top: -1vw;
    left: -3.8vw;
  }
  .fv-btn .cmn-btn span::after {
    /* top: 2.6vw; */
    right: 4vw;
  }
  .fv-btn-fukidashi {
    font-size: 0.8vw;
    width: 18.24vw;
    height: 3.2vw;
    padding-bottom: 0.2vw;
    top: -1.6vw;
    left: 52%;
  }
  .l-header .cmn-btn {
    margin-top: 13px;
    margin-right: 0;
    padding-left: 20px;
  }
  .l-header .cmn-btn1 {
    margin-right: 30px;
  }
  .l-header .cmn-btn2 {
    margin-right: 15px;
  }
  .l-header .cmn-btn2::before {
    width: 20px;
    left: 85px;
  }
  .scroll_inner {
    padding: 20px 0;
  }
  .scroll_cont img {
    height: 45px;
  }
}
@media all and (min-width: 1200px) {
  .scroll_inner {
    padding: 30px 0;
  }
}
/* problem */
.case-txt1 {
  color: var(--main-blue);
  font-size: 18px;
  font-weight: 700;
  margin-top: 30px;
  margin-bottom: 10px;
  letter-spacing: 0.03em;
}
.case-txt2 {
  font-size: 20px;
  font-weight: 700;
  line-height: 1.4;
}
.person-imgbox {
  flex-shrink: 0;
  display: flex;
  align-items: center;
}
.solution-box {
  position: relative;
}
.solution-box::before {
  content: "";
  height: 1px;
  width: calc(100% - 235px);
  background-color: var(--main-blue);
  position: absolute;
  right: 0;
  top: 25px;
}
.solution-ttl {
  font-size: 20px;
  color: var(--main-blue);
  font-weight: bold;
  margin-top: 10px;
}
.solution-caution {
  font-size: 14px;
}
.solution-caution .contact-link {
  color: var(--main-blue);
  text-decoration: underline;
  display: inline;
}
.problem-box {
  margin-bottom: 30px;
  position: relative;
}
.top-onayami {
  position: relative;
  padding: 63px 0;
  background-color: #F7F7F7;
}
.lp01-ttl-pattern2 {
  font-size: 40px;
  font-weight: bold;
  color: #D5E3EA;
}
.lp01-ttl-pattern2.ttl-left {
  position: absolute;
  top: -38px;
  left: 5px;
}
.lp01-ttl-pattern2.ttl-right {
  position: absolute;
  top: -38px;
  right: 5px;
}
.top-onayami .lp01-ttl-pattern2.ttl-left {
  position: absolute;
  top: -35px;
  left: 5px;
  color: #D5E3EA;
}
.example .lp01-ttl-pattern2.ttl-right {
  color: #BBCFDB;
}
.flow .lp01-ttl-pattern2.ttl-left {
  color: #D5E3EA;
}
.top-plan .lp01-ttl-pattern2.ttl-right {
  color: #D5E3EA;
}
.top-faq .lp01-ttl-pattern2.ttl-left {
  color: #FFFFFF;
}
.lp-download .lp01-ttl-pattern2.ttl-right {
  color: #D5E3EA;
}
.problem-imgbox img {
  max-width: 439px;
  margin-inline: auto;
  border-radius: 20px;
}
@media all and (min-width: 768px) {
  .lp01-ttl-pattern2.ttl-right {
    transform: rotate(90deg);
    top: 0px;
    right: -15px;
  }
  .lp01-ttl-pattern2.ttl-left {
    transform: rotate(90deg);
    top: 0px;
    left: -3%;
  }
  .top-onayami .lp01-ttl-pattern2.ttl-left {
    top: 0px;
    left: 0%;
    transform: translateX(-50%) rotate(90deg);
  }
  .example .lp01-ttl-pattern2.ttl-right {
    width: 0;
    height: 0;
    top: -90px;
  }
  .flow .lp01-ttl-pattern2.ttl-left {
    width: 0;
    height: 0;
    top: -90px;
    left: 30px;
    transform: translateX(-50%) rotate(90deg);
  }
  .top-plan .lp01-ttl-pattern2.ttl-right {
    width: 0;
    height: 0;
    right: 0;
    top: -50px;
  }
  .top-faq .lp01-ttl-pattern2.ttl-left {
    width: 0;
    height: 0;
    top: -55px;
    left: 38px;
  }
  .lp-download .lp01-ttl-pattern2.ttl-right {
    width: 0;
    height: 0;
    transform: rotate(90deg);
    top: -20px;
    right: -11px;
  }
  .top-onayami {
    padding: 150px 0;
  }
  .case-txt1 {
    font-size: 20px;
  }
  .case-txt2 {
    font-size: 24px;
  }
  .solution-ttl {
    font-size: 24px;
  }
}
@media all and (min-width: 992px) {
  .lp01-ttl-pattern2.ttl-right,
  .lp01-ttl-pattern2.ttl-left {
    font-size: 80px;
  }
  .lp01-ttl-pattern2.ttl-right {
    top: -80px;
    right: -20px;
  }
  .top-onayami .lp01-ttl-pattern2.ttl-left {
    top: 50px;
  }
  .example .lp01-ttl-pattern2.ttl-right {
    top: -90px;
    right: -32px;
  }
  .flow .lp01-ttl-pattern2.ttl-left {
    left: 90px;
  }
  .top-plan .lp01-ttl-pattern2.ttl-right {
    right: -11px;
  }
  .top-faq .lp01-ttl-pattern2.ttl-left {
    top: -20px;
    left: 90px;
  }
  .lp-download .lp01-ttl-pattern2.ttl-right {
    top: -20px;
    right: -31px;
  }
  .problem-box {
    display: flex;
    gap: 49.5px;
  }
  .problem-txtbox {
    width: 59%;
  }
  .problem-imgbox {
    width: 100%;
    align-self: center;
    width: calc(100% - 59%);
  }
  .problem-box.reverse {
    flex-direction: row-reverse;
  }
}
@media all and (min-width: 1200px) {
  .lp01-ttl-pattern2.ttl-right,
  .lp01-ttl-pattern2.ttl-left {
    font-size: 110px;
  }
  .lp01-ttl-pattern2.ttl-right {
    top: 200px;
    right: -327px;
  }
  .lp01-ttl-pattern2.ttl-left {
    top: 0px;
    left: -30%;
  }
  .top-onayami .lp01-ttl-pattern2.ttl-left {
    top: 100px;
  }
  .flow .lp01-ttl-pattern2.ttl-left {
    top: -110px;
    left: 103px;
  }
  .top-plan .lp01-ttl-pattern2.ttl-right {
    right: -41px;
  }
  .example .lp01-ttl-pattern2.ttl-right {
    top: -107px;
    right: -20px;
  }
  .lp-download .lp01-ttl-pattern2.ttl-right {
    top: 0;
    right: -57px;
  }
}
@media all and (min-width: 1400px) {
  .lp01-ttl-pattern2.ttl-left {
    top: 100px;
    left: -80px;
  }
  .lp01-ttl-pattern2.ttl-right {
    top: -50px;
    right: -100px;
  }
  .top-onayami .lp01-ttl-pattern2.ttl-left {
    top: 100px;
    left: -80px;
  }
  .example .lp01-ttl-pattern2.ttl-right {
    right: -100px;
  }
  .flow .lp01-ttl-pattern2.ttl-left {
    left: 7px;
  }
  .top-plan .lp01-ttl-pattern2.ttl-right {
    right: -150px;
  }
  .top-faq .lp01-ttl-pattern2.ttl-left {
    top: -50px;
    left: 10px;
  }
  .lp-download .lp01-ttl-pattern2.ttl-right {
    top: -37px;
    right: -133px;
  }
}
@media all and (min-width: 1600px) {
  .lp01-ttl-pattern2.ttl-left {
    left: -100px;
  }
  .lp01-ttl-pattern2.ttl-right {
    right: -170px;
  }
  .top-onayami .lp01-ttl-pattern2.ttl-left {
    left: -153px;
  }
  .example .lp01-ttl-pattern2.ttl-right {
    right: -200px;
  }
  .flow .lp01-ttl-pattern2.ttl-left {
    left: -72px;
  }
  .top-plan .lp01-ttl-pattern2.ttl-right {
    right: -221px;
  }
  .top-faq .lp01-ttl-pattern2.ttl-left {
    left: -70px;
  }
  .lp-download .lp01-ttl-pattern2.ttl-right {
    right: -237px;
  }
}
@media all and (max-width: 350px) {
  .person-imgbox {
    width: 30%;
  }
}
.lp01-cta {
  background-size: cover;
  padding: 30px 0;
}
.lp01-cta.lazyloaded {
  background-image: url(./img/lp_02/cta-bg-sp.jpg);
}
.cta-ttl {
  color: #FFF;
  font-size: 22px;
  margin-bottom: 55px;
  line-height: 1.4;
  text-align: center;
  font-weight: 700;
}
.cta-ttl span {
  font-weight: 700;
}
.pamphlet-btn {
  position: relative;
}
.cmn-btn4::before {
  content: "";
  background-image: url(./img/lp_02/dl-img.png);
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  width: 110.43px;
  height: 73.48px;
  left: -14px;
  top: -9px;
}
.lp01-cta .pamphlet-btn > a {
  padding-left: 50px;
  margin-inline: auto;
  max-width: 400px;
}
.cmn-btn4 {
  font-size: 14px;
}
.lp01-cta-dl .cmn-btn span::after,
.lp01-cta-contact .cmn-btn span::after {
  /* top: 51%;
  transform: translateY(-50%) rotate(45deg); */
  right: 25px;
}
.lp-cta-dl-img {
  transform: translateY(20px);
}
.col-dl {
  margin-bottom: 50px;
}
.cta-btn-fukidashi {
  position: absolute;
  background-image: url(./img/lp_02/top-fukidashi.png);
  background-repeat: no-repeat;
  background-size: cover;
  text-align: center;
  z-index: 3;
  left: 50%;
  transform: translateX(-50%);
  display: grid;
  place-items: center;
  padding-bottom: 7.5px;
  font-weight: 500;
  color: #000;
  font-size: 10px;
  width: 220px;
  height: 40px;
  top: -28px;
  -webkit-filter: drop-shadow(0px 0px 10px rgba(0, 0, 0, 0.15));
  filter: drop-shadow(0px 0px 10px rgba(0, 0, 0, 0.15));
}
.lp01-cta .cmn-btn5::before {
  position: absolute;
  content: "";
  background-image: url(./img/top/mail.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  width: 18px;
  height: 20px;
  top: 51%;
  left: 21%;
  transform: translate(-50%, -50%);
}
.lp01-cta .cmn-btn {
  margin-inline: auto;
}
.cmn-btn5 {
  position: relative;
  max-width: 400px;
  margin-inline: auto;
  font-size: 14px;
}
.lp01-cta-contact-img {
  transform: translateY(20px);
}
@media all and (min-width: 576px) {
  .cta-ttl {
    color: #FFF;
    font-size: 26px;
  }
  .cmn-btn4::before {
    width: 124.43px;
    height: 81.48px;
    left: -21px;
    top: -5px;
  }
  .cmn-btn4,
  .cmn-btn5 {
    /* width: 350px; */
    /* max-width: none; */
    font-size: 18px;
    padding: 19px 0;
  }
  .cta-btn-fukidashi {
    font-size: 12px;
    width: 270px;
    height: 48px;
    top: -32px;
  }
  .lp01-cta .cmn-btn5::before {
    left: 15%;
  }
}
@media all and (min-width: 768px) {
  .lp01-cta {
    padding: 60px;
  }
  .cta-ttl {
    font-size: 32px;
    /* margin-bottom: 45px; */
  }
  .cmn-btn4::before {
    width: 132.43px;
    height: 131.48px;
    left: -29px;
    top: -9px;
  }
}
@media all and (min-width: 992px) {
  .lp01-cta.lazyloaded {
    background-image: url(./img/lp_02/cta-bg.jpg);
  }
  @supports (background-image: url('./img/lp_02/cta-bg.webp')) {
    .lp01-cta.lazyloaded {
      background-image: url(./img/lp_02/cta-bg.webp);
    }
  }
  .col-dl {
    margin-bottom: 0px;
  }
  .cmn-btn4::before {
    /* width: 191.43px;
    height: 131.48px;
    left: -52px;
    top: -11px; */
  }
  .cmn-btn4 {
    /* padding: 32.5px 0; */
    font-size: 20px;
  }
  .cmn-btn5 {
    width: 450px;
    max-width: none;
    /* padding-top: 30px;
    padding-bottom: 30px; */
    font-size: 20px;
  }
  .lp01-cta .pamphlet-btn > a {
    max-width: 540px;
    padding-left: 60px;
  }
  .cta-btn-fukidashi {
    font-size: 14px;
    width: 320px;
    height: 60px;
    top: -40px;
  }
  .lp01-cta .cmn-btn5::before {
    width: 31.77px;
    height: 24.94px;
  }
}
@media all and (min-width: 1200px) {
  .cta-ttl {
    font-size: 36px;
  }
  .cmn-btn4 {
    font-size: 24px;
    /* padding: 35px 0; */
  }
  .cmn-btn4::before {
    width: 168.43px;
    height: 104.48px;
    left: -33px;
    top: -9px;
  }
  .lp01-cta .pamphlet-btn > a {
    max-width: 599px;
    padding-left: 52px;
    letter-spacing: 0.03em;
  }
  .lp01-cta-dl .cmn-btn span::after,
  .lp01-cta-contact .cmn-btn span::after {
    right: 46px;
  }
  .cta-ttl {
    margin-bottom: 70px;
  }
  .cta-btn-fukidashi {
    font-size: 18px;
    width: 400px;
    height: 72px;
    top: -52px;
  }
  .cmn-btn5 {
    width: 534px;
    font-size: 24px;
    /* padding-top: 35px;
    padding-bottom: 35px; */
  }
  .lp01-cta .cmn-btn5::before {
    left: 19%;
  }
}
@media all and (max-width: 400px) {
  .lp01-cta .cmn-btn5::before {
    left: 14%;
  }
}
@media all and (max-width: 350px) {
  .cmn-btn4::before {
    display: none;
  }
  .lp01-cta .pamphlet-btn > a {
    padding-left: 0;
  }
}
/* customers */
.example .lp01-ttl-pattern1 {
  margin-bottom: 113px;
}
.case-icon {
  position: absolute;
  top: -30px;
  left: -20px;
  width: 90px;
  height: 90px;
}
.example-row {
  justify-content: space-between;
}
@media all and (min-width: 768px) {
  .case-icon {
    top: -45px;
    left: -35px;
    width: 120px;
    height: 120px;
  }
  .example-row .col-md-4 {
    flex: 32.33333%;
    max-width: 32.33333%;
  }
}
@media all and (min-width: 992px) {
  .example-container {
    padding: 0;
  }
  .example-row .col-md-4 {
    flex: 31.33333%;
    max-width: 31.33333%;
  }
  .example-col {
    margin-bottom: 36px;
  }
}
@media all and (min-width: 1400px) {
  .example-container {
    max-width: 1215px;
  }
}
.customers-logo-ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 40px 20px;
}
.customers-logo-ul li {
  width: 28%;
}
.example {
  background-position: center;
  background-size: cover;
  padding: 80px 0;
}
.example.lazyloaded {
  background-image: url(./img/lp_02/customers-bg-sp.jpg);
}
@supports (background-image: url('./img/lp_02/customers-bg-sp.webp')) {
  .example.lazyloaded {
    background-image: url(./img/lp_02/customers-bg-sp.webp);
  }
}
@media all and (min-width: 768px) {
  .example {
    padding: 150px 0;
  }
  .customers-logo-ul {
    gap: 50px 40px;
  }
  .customers-logo-ul li {
    width: 15%;
  }
}
@media all and (min-width: 992px) {
  .customers-logo-ul li {
    width: 16%;
  }
  .example.lazyloaded {
    background-image: url(./img/lp_02/customers-bg.jpg);
  }
  @supports (background-image: url('./img/lp_02/customers-bg.webp')) {
    .example.lazyloaded {
      background-image: url(./img/lp_02/customers-bg.webp);
    }
  }
}
@media all and (min-width: 1200px) {
  .customers-logo-ul li {
    width: 16.5%;
  }
}
@media all and (min-width: 1400px) {
  .customers-logo-ul li {
    width: 17%;
  }
}
.customers {
  margin-top: 60px;
  background-color: #fff;
  border-radius: 20px;
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.16);
  padding: 40px 20px;
}
.customers-ttl {
  font-size: 22px;
  margin-bottom: 40px;
}
@media all and (min-width: 768px) {
  .customers {
    margin-top: 22px;
    padding: 58px 20px;
  }
  .customers-ttl {
    font-size: 32px;
    margin-bottom: 40px;
  }
}
@media all and (min-width: 992px) {
  .customers {
    padding: 58px 73px;
  }
}
.flow {
  position: relative;
  padding: 80px 0;
  background-color: #fff;
}
.flow-txt {
  font-size: 1.125rem;
  margin-bottom: 50px;
  text-align: center;
}
.flow-txt span {
  font-size: 1.3125rem;
}
.step-circle {
  text-align: center;
  line-height: 1.1;
  font-size: 1rem;
  color: #FFF;
  font-weight: bold;
  width: 80px;
  height: 80px;
  background-color: var(--main-blue);
  border-radius: 50%;
  display: grid;
  place-items: center;
  position: absolute;
  top: -30px;
  left: -10px;
}
.step-circle p {
  font-weight: 700;
}
.step-circle span {
  font-size: 1.75rem;
  font-weight: 700;
}
.step-imgbox {
  position: relative;
  padding-left: 10px;
}
.step-imgbox img {
  border-radius: 20px;
}
.step-txtbox h3 {
  font-size: 1.25rem;
  color: var(--main-blue);
  font-weight: bold;
}
.step-txtbox p {
  font-size: 1rem;
  font-weight: 500;
}
.step-dot {
  display: flex;
  flex-direction: column;
  gap: 15px;
  margin: 10px 0;
}
.step-dot span {
  display: inline;
  width: 15px;
  height: 15px;
  background-color: rgba(34, 116, 165, 0.15);
  border-radius: 50%;
  margin-inline: auto;
}
.step-box {
  margin-top: 30px;
}
@media all and (min-width: 576px) {
  .step-circle {
    width: 100px;
    height: 100px;
    font-size: 1.25rem;
  }
  .step-circle span {
    font-size: 2rem;
  }
  .step-txtbox h3 {
    font-size: 1.5rem;
  }
}
@media all and (min-width: 768px) {
  .flow {
    padding: 150px 0;
  }
  .step-box {
    display: flex;
    gap: 50px;
  }
  .flow-txt {
    font-size: 1.25rem;
    margin-bottom: 90px;
  }
  .flow-txt span {
    font-size: 1.5rem;
  }
  .step-txtbox p {
    font-size: 1.125rem;
  }
  .step-circle {
    left: -30px;
  }
  .step-imgbox {
    width: 35%;
  }
  .step-txtbox {
    width: 63%;
  }
  .step-dot {
    width: 248px;
  }
}
@media all and (min-width: 992px) {
  .step-dot {
    width: 340px;
  }
}
@media all and (min-width: 1200px) {
  .step-dot {
    width: 400px;
  }
}
/* PRICE */
.top-plan {
  position: relative;
  padding: 80px 0;
}
.price-txt > a {
  color: var(--main-blue);
  text-decoration: underline;
  display: inline;
}
@media all and (min-width: 576px) {
  .price-txt {
    text-align: center;
  }
}
@media all and (min-width: 768px) {
  .top-plan {
    padding: 100px 0;
  }
  .price-txt {
    font-size: 1.25rem;
  }
}
.top-faq {
  background-position: center;
  background-size: cover;
  position: relative;
}
.top-faq.lazyloaded {
  background-image: url(./img/lp_02/faq-bg-sp.jpg);
}
@supports (background-image: url('./img/lp_02/faq-bg-sp.webp')) {
  .top-faq.lazyloaded {
    background-image: url(./img/lp_02/faq-bg-sp.webp);
  }
}
@media all and (min-width: 992px) {
  .top-faq.lazyloaded {
    background-image: url(./img/lp_02/faq-bg.jpg);
  }
  @supports (background-image: url('./img/lp_02/faq-bg.webp')) {
    .top-faq.lazyloaded {
      background-image: url(./img/lp_02/faq-bg.webp);
    }
  }
}
/* ダウンロード */
.lp-download {
  position: relative;
  background-color: #f7f7f7;
}
.fukidashi-ttl-ptn1 {
  position: relative;
  margin-top: -66px;
  margin-inline: auto;
  padding-bottom: 22px;
  z-index: 1;
}
.fukidashi-ttl-ptn1::after {
  content: "";
  position: absolute;
  background-image: url(./img/download-fukidashi.png);
  background-repeat: no-repeat;
  background-size: contain;
  width: 270px;
  height: 67px;
  margin-inline: auto;
  top: 0;
}
.fukidashi-icon-ptn1 {
  margin-top: 6px;
  margin-right: 3px;
  z-index: 2;
}
.fukidashi-text-ptn1 {
  font-weight: bold;
  font-size: 18px;
  color: #2274a5;
  margin-top: 14px;
  padding-right: 5px;
  display: grid;
  place-items: center;
  z-index: 2;
  white-space: nowrap;
}
.contact-dowload-list .txt-color {
  color: #D65E18;
  font-weight: bold;
}
.contact-download-txt1 {
  margin-bottom: 30px;
}
.contact-desc {
  margin-bottom: 0.2rem;
}
.contact-btnbox {
  margin-top: 30px;
}
@media all and (min-width: 576px) {
  .section-dl .BoxContact {
    padding: 35px 38px 10px;
  }
}
@media all and (min-width: 768px) {
  .contact-download-title {
    font-size: 2rem;
    margin-bottom: 42px;
  }
  .contact-download-txt1 {
    font-size: 1.25rem;
    margin-bottom: 60px;
  }
  .contact-dowload-img {
    margin-bottom: 0;
  }
  .contact-download-box {
    margin-top: 72px;
  }
  .contact-dowload-list {
    height: 220px;
  }
  .fukidashi-ttl-ptn1::after {
    width: 288px;
  }
  .fukidashi-text-ptn1 {
    padding-right: 37px;
  }
  .section-dl {
    margin: 0 auto;
    position: relative;
  }
}
@media all and (min-width: 992px) {
  #page-contact-download .wrapper {
    padding-bottom: 210px;
  }
  .contact-dowload-img {
    margin-right: 31px;
    margin-bottom: 41px;
  }
  .contact-dowload-img img {
    max-width: none;
    width: 110%;
    margin: 0 auto 20px;
    margin-left: -20px;
    margin-top: -25px;
  }
  .contact-right {
    padding-left: 35px;
  }
  .fukidashi-ttl-ptn1::after {
    width: 318px;
    height: 73px;
  }
  .contact-download-fukidashi {
    left: 11px;
  }
  .contact-dowload-list li {
    font-size: 1.125rem;
  }
  .contact-dowload-list {
    padding: 40px 15px 38px 35px;
    margin-bottom: 0;
    height: auto;
  }
  .fukidashi-text-ptn1 {
    padding-right: 33px;
    margin-top: 17px;
  }
  .fukidashi-icon-ptn1 {
    margin-top: 11px;
  }
  .contact-download-row {
    margin-bottom: 0;
  }
}
.contact-wrap {
  display: flex;
  /* margin-left: -35px;
  margin-right: -35px; */
  width: 100%;
  margin: 0 auto;
}
.contact-left,
.contact-right {}
.contact-left {
  width: 40%;
}
.contact-right {
  width: 60%;
}
@media screen and (max-width: 991px) {
  .contact-wrap {
    display: block;
    /* margin-left: 0;
    margin-right: 0; */
  }
  .contact-left,
  .contact-right {
    padding: 0;
  }
  .contact-left {
    width: 100%;
  }
  .contact-right {
    width: 100%;
  }
}
#cookie-law-info-again,
#cookie-law-info-bar {
  display: none;
}
.headerWrap_btn {
  display: flex;
}
/* 動画セクション追加 */
.top-movie {
  text-align: center;
  padding-top: 60px;
  /* background-color: #F7F7F7; */
}
.top-movie-h2 {
  font-size: 25px;
  font-weight: 700;
  margin-bottom: 35px;
}
.top-movie-a {
  max-width: 500px;
  margin: auto;
  position: relative;
}
.top-movie-a:hover {
  opacity: 0.8;
}
.top-movie-a::after {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  content: "";
  display: inline-block;
  width: 64px;
  height: 64px;
  background: url(./img/top/modal-icon.svg) no-repeat;
  background-size: contain;
}
ul.youtubeList {
  padding: 0;
  margin: 0;
  border: none;
  list-style: none;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 25px;
}
ul.youtubeList li {
  width: 47%;
}
ul.youtubeList li a {
  display: flex;
  flex-direction: column;
  height: 100%;
  border-radius: 2px;
  background: #fff;
  box-shadow: 0 0 3px 0 rgb(0 0 0 / 12%), 0 2px 3px 0 rgb(0 0 0 / 22%);
  cursor: pointer;
  transition: 0.2s ease-in-out;
  position: relative;
}
ul.youtubeList li a:before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  content: "";
  display: inline-block;
  width: 64px;
  height: 64px;
  background: url(./img/top/modal-icon.svg) no-repeat;
  background-size: contain;
}
ul.youtubeList li a img {
  border-radius: 2px 2px 0 0;
}
ul.youtubeList li a p {
  margin: 0;
  text-decoration: none;
  color: #313131;
  padding: 10px 20px;
  line-height: 1.6;
}
.ed-modal {
  position: fixed;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background: rgba(0, 0, 0, 0.9);
  display: flex;
  z-index: 9999;
}
div#modalOverlay {
  width: 100%;
  height: 100%;
  display: flex;
  cursor: pointer;
}
.ed-closeModal {
  position: absolute;
  top: -35px;
  right: 5px;
  cursor: pointer;
  width: 1.5rem;
  height: 1.5rem;
  opacity: 0.5;
}
.ed-closeModal::before,
.ed-closeModal::after {
  content: "";
  width: 35px;
  height: 2px;
  background: #fff;
  position: absolute;
  top: 0;
  transform: rotate(45deg);
  transform-origin: top left;
}
.ed-closeModal::before {
  left: 0;
}
.ed-closeModal::after {
  right: 0;
  transform: rotate(-45deg);
  transform-origin: top right;
}
.modalContent {
  width: 100%;
  max-width: 800px;
  margin: auto;
  position: relative;
}
.video {
  width: 100%;
  position: relative;
  height: 0;
  padding-bottom: 56.25%;
  overflow: hidden;
  -webkit-filter: drop-shadow(0px 2px 5px #313131);
  filter: drop-shadow(0px 2px 5px #313131);
  -webkit-animation: fadeIn 1.2s ease 0s 1 normal;
  animation: fadeIn 1.2s ease 0s 1 normal;
}
.video iframe {
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
}
@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
    transform: translateY(30px);
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeIn {
  0% {
    opacity: 0;
    transform: translateY(30px);
  }
  100% {
    opacity: 1;
  }
}
@media screen and (max-width: 767px) {
  ul.youtubeList li {
    width: 100%;
  }
}
/* クッキー同意のスタイル */
/*cookie concent plugin*/
@media screen and (max-width: 985px) {
  #cookie-law-info-bar[data-cli-style="cli-style-v2"],
  #cookie-law-info-bar[data-cli-style="cli-style-v2"][data-cli-type="widget"],
  #cookie-law-info-bar[data-cli-style="cli-style-v2"][data-cli-type="popup"] {
    padding: 10px;
  }
}
@media screen and (max-width: 767px) {
  #cookie-law-info-bar .cli-style-v2 .cli-bar-message {
    font-size: 11px;
  }
}
