@charset "UTF-8";
html {
  font-size: 62.5%;
}

body {
  font-size: 1.6em;
  line-height: 1.6;
  /* 共通 */
  /* 画面サイズ(1025px以上) */
  /* 画面サイズ(768~1024px) */
  /* 画面サイズ(768px以上) */
  /* 画面サイズ（767px以下）（ハンバーガーメニュー） */
}
body h1 {
  font-size: 4.8rem;
}
@media screen and (max-width: 768px) {
  body h1 {
    font-size: 3.8rem;
  }
}
body h2 {
  font-size: 3.2rem;
  font-weight: bold;
  text-align: center;
}
body .sub_t {
  font-size: 1.4rem;
  margin: 0 auto;
  text-align: center;
  padding-bottom: 4rem;
}
body h3 {
  font-size: 2.4rem;
  color: #2C90D6;
  font-weight: bold;
}
body h4 {
  font-size: 1.8rem;
  font-weight: bold;
}
body .pc_none {
  display: none;
}
body img {
  width: 100%;
}
body .bc_a {
  background-color: #F1F8FD;
  padding: 4rem 0 8rem;
}
body .container {
  max-width: 1240px;
  padding: 0 20px;
  margin: 0 auto;
  box-sizing: border-box;
}
body .container-m {
  max-width: 1040px;
  padding: 0 20px;
  margin: 0 auto;
  box-sizing: border-box;
}
body .container-s {
  max-width: 840px;
  padding: 0 20px;
  margin: 0 auto;
  box-sizing: border-box;
}
body .button {
  padding: 10px 20px;
  font-size: 2.4rem;
  color: #fff;
  border: none;
  border-radius: 5px;
  width: 300px;
  cursor: pointer;
  font-weight: bold;
  transition: background-color 0.3s;
}
body .button_m {
  background-color: #EC6331;
  border: 2px solid #EC6331;
}
body .button_m:hover {
  background-color: #ffffff;
  color: #EC6331;
}
body .button_i {
  background-color: #fff;
  border: 2px solid #2C90D6;
  color: #2C90D6;
}
body .button_i:hover {
  background-color: #2C90D6;
  color: #fff;
}
body .button_i:hover img {
  color: #fff;
}
body .c_ore {
  color: #EC6331;
  font-weight: bold;
}
body .fb {
  font-weight: bold;
}
body .features_text {
  display: flex; /* フレックスボックスを使用 */
  align-items: center; /* 縦方向中央揃え */
  justify-content: center; /* 横方向中央揃え */
}
body .features_text p {
  text-align: left; /* テキストを左揃え */
  width: 100%; /* 必要に応じて幅を調整 */
}
@media screen and (max-width: 768px) {
  body .features_text_sp {
    display: flex; /* フレックスボックスを使用 */
    align-items: center; /* 縦方向中央揃え */
    justify-content: center; /* 横方向中央揃え */
  }
  body .features_text_sp p {
    text-align: left; /* テキストを左揃え */
    width: 100%; /* 必要に応じて幅を調整 */
  }
}
body .pc_none {
  display: none;
}
@media screen and (max-width: 768px) {
  body .pc_none {
    display: block;
  }
}
@media screen and (max-width: 768px) {
  body .sp_none {
    display: none;
  }
}
body .head {
  height: 50px;
}
body header {
  display: none;
}
@media screen and (max-width: 1200px) {
  body header {
    display: block;
    position: fixed;
    z-index: 20;
    top: 0;
    right: 0;
  }
}
@media (min-width: 1200px) {
  body header {
    width: 100%;
  }
  body .drawer-hamburger {
    display: none;
  }
  body .drawer-nav {
    position: relative;
    top: 0;
    width: 100%;
    height: auto;
  }
  body .drawer--left .drawer-nav {
    left: 0;
  }
  body .drawer-nav .drawer-menu li {
    display: inline-block;
  }
  body .fixed {
    position: fixed;
    top: 0;
  }
}
body .drawer-overlay {
  background-color: rgba(0, 0, 0, 0.2);
}
body #features_link, body #example_link, body #merit_link, body #release_link, body #plan_link, body #inquiry_link {
  scroll-margin-top: 100px;
}
body .drawer-nav {
  background: #ffffff;
}
body #header {
  width: 100%;
  padding-top: 6px;
}
body #headerContent {
  margin: 0 auto;
}
body #headerMenu {
  width: 100%;
}
@media screen and (min-width: 1025px) {
  body #headerContent {
    width: 980px;
    height: 110px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1024px) {
  body #headerContent {
    width: 100%;
    height: 110px;
  }
  body .left {
    margin-left: 10px;
  }
  body .right {
    margin-right: 10px;
  }
}
@media screen and (min-width: 768px) {
  body {
    /* ナビバー左側 */
    /* ナビバー右側 */
    /* ナビバー */
  }
  body #headerMenuBtn {
    display: none;
  }
  body #headerMenu {
    display: flex;
    justify-content: space-between;
  }
  body #headerMenu h2 {
    display: none;
  }
  body .left {
    margin-top: 17px;
  }
  body .right {
    margin-top: 47px;
  }
  body .utility {
    display: flex;
    list-style: none;
  }
  body .utility li {
    font-size: 16px;
    line-height: 1;
  }
  body .utility li a {
    color: #fff;
  }
}
@media screen and (max-width: 767px) {
  body {
    /* ハンバーガーメニューを閉じるボタン */
  }
  body #headerContent {
    width: 100%;
  }
  body #sp_headerContent {
    position: relative;
    width: 100%;
    height: 75px;
  }
  body #sp_headerContent img {
    width: 100%;
    max-width: 150px;
    padding: 10px 20px 0;
  }
  body #headerMenuBtn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 40px;
    width: 30px;
  }
  body #headerMenuBtn img {
    width: 100%;
  }
  body #headerMenu {
    position: fixed;
    top: 0;
    right: -100%;
    width: 100%;
    height: 100%;
    transition: 0.3s;
  }
  body #headerMenu h2 {
    position: relative;
    background-color: #000000;
    font: inherit;
    font-size: 18px;
    padding: 10px;
    color: #fff;
  }
  body .open #headerMenu {
    right: 0;
  }
  body #headerMenu h2 .close {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 10px;
    width: 22px;
  }
  body .utility {
    list-style: none;
    display: block;
    margin-top: 0;
    background-color: rgb(0, 0, 0);
  }
  body .utility li:hover {
    text-decoration: none;
  }
  body .utility li a {
    display: block;
    color: #070303;
    padding: 10px 0px 10px 10px;
    font-size: 15px;
    border-bottom: 1px solid #ffffff;
  }
}
body #sp_headerContent h1 img {
  display: none;
}
@media screen and (max-width: 768px) {
  body #sp_headerContent h1 img {
    display: block;
  }
}
body .nab_sp_button {
  text-align: center;
}
body .nab_sp_button li .button {
  width: 90%;
  font-size: 1.4rem;
  padding: 10px;
  margin-top: 20px;
}
body .header_pc {
  position: fixed;
  width: 100%;
  z-index: 2;
}
body .header_pc .header_p_content {
  background-color: #ffffff;
  padding: 10px;
  display: flex;
  color: #070303;
  justify-content: space-between;
  align-items: center;
}
@media screen and (max-width: 768px) {
  body .header_pc .header_p_content {
    padding: 10px 10px;
  }
}
body .header_pc .header_p_content .header_p_logo a {
  color: #3777B0;
  text-decoration: none;
  font-size: 3rem;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  body .header_pc .header_p_content .header_p_logo a {
    font-size: 2rem;
  }
}
body .header_pc .header_p_content .nav_pc {
  display: flex;
  font-size: 16px;
  align-items: center;
}
@media screen and (max-width: 1200px) {
  body .header_pc .header_p_content .nav_pc {
    display: none;
  }
}
body .header_pc .header_p_content .nav_pc .nab_pc_link a {
  text-decoration: none;
  color: #070303;
  font-weight: bold;
  padding: 0 10px;
}
body .header_pc .header_p_content .nav_pc .nab_pc_link a:hover {
  color: #aaa;
  transition: 0.5s;
}
body .header_pc .header_p_content .nav_pc .nab_pc_button {
  display: flex;
}
body .header_pc .header_p_content .nav_pc .nab_pc_button .button {
  width: 160px;
  font-size: 1.6rem;
  padding: 10px;
  margin-left: 20px;
  display: block;
  text-align: center;
  text-decoration: none;
}
body .fv {
  position: relative;
  text-align: left;
  padding: 9rem 40px 4rem;
  background-color: #F1F8FD;
  background: url("./img/back.png") no-repeat center/cover;
}
@media screen and (min-width: 1201px) {
  body .fv {
    padding: 16rem 40px;
  }
}
@media screen and (max-width: 768px) {
  body .fv {
    background: url("./img/back.png") no-repeat right/cover;
  }
}
body .fv h1 {
  margin-bottom: 10px;
  display: flex;
  align-items: center;
  color: #007ACC;
  text-align: center;
  font-weight: bold;
  padding-top: 10rem;
  justify-content: center;
}
body .fv h1 img {
  max-width: 60px;
}
body .fv .features_text p {
  font-size: 1.8rem;
  margin-bottom: 20px;
  width: 500px;
}
body .cta {
  display: flex;
  gap: 10px;
  padding: 9rem 0 6rem;
  margin: 0 auto;
  text-align: center;
  justify-content: center;
}
body .cta .cta_box .cta_button {
  position: relative;
  display: inline-block;
}
body .cta .cta_box .cta_button:nth-of-type(2) {
  margin-left: 3rem;
}
@media screen and (max-width: 768px) {
  body .cta .cta_box .cta_button:nth-of-type(2) {
    margin-left: 0;
    margin-top: 6rem;
  }
}
body .cta .cta_box .cta_button .button {
  position: relative;
  z-index: 1;
  padding: 10px 20px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
}
body .cta .cta_box .cta_button .button img {
  width: 100%;
  max-width: 20px;
  margin-left: 120px;
}
body .cta .cta_box .cta_button img {
  width: 100%;
  max-width: 300px;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
}
body .cta .cta_box .img_cta1 {
  top: -30px;
  max-width: 250px !important;
}
body .cta .cta_box .img_cta2 {
  top: -22px;
}
body .features {
  margin-top: 4rem;
}
body .features p {
  max-width: 1000px;
}
body .features .col3 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between; /* 子要素間の余白を均等に配置 */
  margin-bottom: 8rem;
}
@media screen and (max-width: 768px) {
  body .features .col3 {
    justify-content: center;
  }
}
body .features .col3 .col3_content {
  width: 30%;
  margin: 0 10px;
}
@media screen and (max-width: 768px) {
  body .features .col3 .col3_content {
    min-width: calc(100% - 20px);
    max-width: calc(100% - 20px);
  }
}
body .features .col3 .col3_content h3 {
  font-size: 1.6rem;
  text-align: center;
}
body .features .col3:nth-child(2) .col3_content {
  margin: 0 3rem;
}
body .flow_box {
  margin: 0 auto;
}
body .flow_box .flow_img {
  padding: 0 20px 8rem;
}
body .example .col2 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
body .example .col2 .col2_content {
  flex: 0 1 45%;
}
body .example .col2 .col2_content:nth-of-type(-n+6) {
  margin-bottom: 6rem;
}
@media screen and (max-width: 768px) {
  body .example .col2 .col2_content {
    flex: 0 1 100%; /* 幅を100%にして1列にする */
    margin-bottom: 4rem;
  }
}
body .example .col2 .col2_content h3 {
  padding-top: 3rem;
}
@media screen and (max-width: 768px) {
  body .example .col2 .col2_content h3 {
    padding-top: 1.5rem;
  }
}
body .col4 {
  display: flex;
  justify-content: space-around;
  flex-wrap: wrap;
}
@media screen and (max-width: 768px) {
  body .col4 {
    flex-wrap: wrap; /* 折り返しを有効化 */
  }
}
body .col4 .column {
  flex: 1;
  margin-left: 15px;
  margin-right: 15px;
  background-color: #ffffff;
  box-sizing: border-box;
  border-radius: 5px;
}
@media screen and (max-width: 992px) {
  body .col4 .column {
    min-width: calc(50% - 30px); /* 50%で改行を制御、隙間を考慮 */
    max-width: calc(50% - 30px); /* 同じく隙間を考慮 */
    margin-right: 0;
    margin-left: 0;
  }
  body .col4 .column:nth-child(-n+2) {
    margin-bottom: 4rem;
  }
}
@media screen and (max-width: 768px) {
  body .col4 .column {
    min-width: calc(100% - 20px); /* 1列表示 */
    max-width: calc(100% - 20px);
    margin-bottom: 4rem;
  }
}
body .col4 .column h3 {
  border-radius: 5px 5px 0 0;
  color: #ffffff;
  text-align: center;
  padding: 15px 0;
}
body .col4 .column .me_c_g {
  background-color: #B7B7B7;
}
body .col4 .column .me_c_a {
  background-color: #50A2DC;
}
body .col4 .column .me_c_a img {
  width: 100%;
  max-width: 30px;
  padding-left: 5px;
}
body .col4 .column .me_c_ba {
  background-color: #003366;
}
body .col4 .column .column_text {
  padding: 2rem 2.4rem;
}
body .col4 .column .column_text h4 {
  margin-top: 3rem;
}
body .col4 .column .column_text h4:first-of-type {
  margin-top: 0;
}
body .col4 .column .column_text ul li {
  list-style: disc;
  margin-left: 2rem;
}
body .col4 .column:first-child {
  margin-left: 0; /* 最初の要素の左余白をなくす */
}
body .col4 .column:last-child {
  margin-right: 0; /* 最後の要素の右余白をなくす */
}
@media screen and (max-width: 768px) {
  body .col4 .column:last-child {
    margin-bottom: 0; /* 最後の要素の余白をなくす */
  }
}
body .merit {
  padding: 8rem 20px 4rem;
}
@media screen and (max-width: 768px) {
  body .merit {
    padding: 4rem 20px 4rem;
  }
}
body .merit .me_column_box {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media screen and (max-width: 992px) {
  body .merit .me_column_box {
    justify-content: center;
  }
}
body .merit .me_column_box .me_column {
  display: flex;
  width: 48%;
  margin: 0 10px 3rem;
}
@media screen and (max-width: 992px) {
  body .merit .me_column_box .me_column {
    margin-bottom: 3rem;
    width: 90%;
  }
}
@media screen and (max-width: 576px) {
  body .merit .me_column_box .me_column {
    display: block;
    width: 100%;
  }
}
@media screen and (max-width: 576px) {
  body .merit .me_column_box .me_column .me_column_text {
    width: 100%;
  }
}
body .merit .me_column_box .me_column .me_img {
  width: 100%;
  max-width: 105px;
  padding-right: 3rem;
}
@media screen and (max-width: 576px) {
  body .merit .me_column_box .me_column .me_img {
    width: 30%;
    padding-right: 3rem;
    margin: 0 auto;
  }
}
body .release_schedule {
  margin-bottom: 10rem;
}
@media (min-width: 768px) {
  body a[href^="tel:"] {
    pointer-events: none;
  }
}
body .inq_box {
  margin-top: 2rem;
}
@media screen and (max-width: 768px) {
  body .inq_box {
    display: block;
  }
}
body .inq_box .inq_cont {
  flex: 0 1 42%;
  text-align: center;
  padding: 2rem;
  background-color: #fff;
  border-radius: 5px;
}
body .inq_box .inq_cont:nth-of-type(1) a {
  text-decoration: none;
  cursor: pointer;
}
@media screen and (max-width: 768px) {
  body .inq_box .inq_cont:nth-of-type(1) {
    margin-bottom: 3rem;
  }
}
body .inq_box .inq_cont p {
  font-weight: bold;
}
body .inq_box .inq_cont a {
  font-size: 3.6rem;
  color: #2C90D6;
  font-weight: bold;
  cursor: pointer;
}
@media screen and (max-width: 768px) {
  body .inq_box .inq_cont a {
    font-size: 3rem;
  }
}
body footer {
  color: #ffffff;
  background-color: #93BCD9;
}
body footer .fo_content {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 10px 8rem;
}
@media screen and (max-width: 768px) {
  body footer .fo_content {
    display: block;
    padding: 10px 2rem;
  }
}
body footer .fo_content .fo_company {
  font-size: 2rem;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  body footer .fo_content .fo_company {
    padding-bottom: 2rem;
  }
}
body footer .fo_content .fo_company .f_link {
  font-size: 1.6rem;
  font-weight: normal;
}
body footer .fo_content .fo_company .f_link a {
  color: #ffffff;
  text-decoration: none;
}
body footer .fo_content .fo_company .f_link a:hover {
  text-decoration: underline;
}
body .pricing-section {
  max-width: 1000px;
  margin: 0 auto;
  padding: 4rem 20px 4rem;
  font-family: sans-serif;
}
@media screen and (max-width: 768px) {
  body .pricing-section {
    padding: 2rem 0 4rem;
  }
}
body .pricing-description {
  margin-bottom: 2rem;
  padding: 0 2rem;
}
body .pricing-table {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 2rem;
}
body .pricing-table th,
body .pricing-table td {
  padding: 1rem;
  text-align: left;
  border-top: 1px solid #ddd;
}
body .pricing-table thead {
  background-color: #f5f5f5;
}
body .pricing-link {
  display: inline-block;
  padding: 0.75rem 1.5rem;
  background-color: #2C90D6;
  color: white;
  text-decoration: none;
  border-radius: 5px;
  margin: 2rem 2rem 0;
}
body .pricing-link:hover {
  opacity: 0.8;
}
body .pricing-table-wrapper {
  overflow-x: auto;
}
body .pricing-table {
  min-width: 600px; /* 必要に応じて調整 */
}
body .plan {
  padding: 4rem 20px 4rem;
}
body .contents_company {
  padding: 0 20px 100px;
}
@media screen and (max-width: 576px) {
  body .contents_company {
    padding: 0 0 100px;
  }
}
body .contents_section {
  padding-top: 120px;
}
body .company-table {
  width: 100%;
  border-collapse: collapse;
  background: transparent;
  font-size: 16px;
}
body .company-table tr {
  border-bottom: 2px solid #fff;
}
@media screen and (max-width: 768px) {
  body .company-table tr {
    display: block;
  }
}
body .company-table th,
body .company-table td {
  padding: 12px 14px;
  vertical-align: middle;
}
@media screen and (max-width: 768px) {
  body .company-table th,
  body .company-table td {
    display: block;
    width: 100%;
    box-sizing: border-box;
    border-bottom: none;
  }
}
body .company-table th {
  width: 240px;
  background: #92BCD9;
  color: #ffffff;
  font-weight: 600;
  text-align: center;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 768px) {
  body .company-table th {
    text-align: center;
    width: 100%;
  }
}
body .company-table td {
  background: #F1F8FD;
  line-height: 1.8;
  color: #747D8C;
  font-weight: bold;
}
body .company-table tr:last-child {
  border-bottom: none;
}
body .b_section {
  background: #F1F8FD;
  padding: 60px 0;
  line-height: 1.8;
  color: #747D8C;
  font-weight: 400;
}
body .b_section h4 {
  padding-bottom: 10px;
}
body .privacy_text {
  margin-bottom: 100px;
}
body .privacy_text h3 {
  border-bottom: 1px solid #707070;
  padding-top: 50px;
}
body .privacy_text p {
  line-height: 1.8;
  padding: 10px 0;
}/*# sourceMappingURL=style.css.map */