@charset "UTF-8";
body {
  color: #323232;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-weight: 500;
  font-feature-settings: "palt";
}
body.is-menuOpen {
  overflow: hidden;
}

a {
  vertical-align: baseline;
}

img {
  width: 100%;
  height: auto;
  display: block;
}

.wrapper {
  position: relative;
  width: 100%;
  margin: 0 auto;
  color: #323232;
}
@media screen and (min-width: 750px) {
  .wrapper {
    min-width: 1250px;
  }
}

.is-sp_ca {
  display: block;
}

.is-pc_ca {
  display: none;
}

.is-pc_inline {
  display: none;
}

@media screen and (min-width: 750px) {
  .is-sp_ca {
    display: none;
  }
  .is-pc_ca {
    display: block;
  }
  .is-pc_inline {
    display: inline;
  }
}
/** Header **/
.header {
  position: relative;
  width: 100%;
  background: #fff;
  z-index: 99999999;
  filter: drop-shadow(0px 1px 2px #b1b1b1);
}
.header_inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: min(32px, 4.2666666667vw) 0;
}
.header_left {
  display: flex;
  align-items: center;
  margin: 0 0 0 min(32px, 4.2666666667vw);
}
.header_logo {
  width: min(252px, 33.6vw);
}
@media screen and (min-width: 750px) {
  .header_inner {
    margin: 0 auto;
    padding: 19px 0;
    width: 1200px;
  }
  .header_left {
    margin: 0;
  }
  .header_logo {
    width: 224px;
  }
}

/** FV **/
.fv {
  background: #ebf3ff;
}
.fv_inner {
  padding: min(40px, 5.3333333333vw) 0;
  position: relative;
}
.fv_ttl {
  text-align: center;
}
.fv_ttl_top {
  font-size: min(32px, 4.2666666667vw);
  line-height: 1;
  font-weight: 500;
  letter-spacing: 0.06em;
}
.fv_ttl_second {
  margin-top: min(27px, 3.6vw);
  font-size: min(44px, 5.8666666667vw);
  line-height: 1;
  font-weight: 900;
  letter-spacing: 0.04em;
}
.fv_ttl_main {
  margin-top: min(27px, 3.6vw);
  font-size: min(100px, 13.3333333333vw);
  line-height: 1;
  font-weight: 900;
  letter-spacing: 0.04em;
}
.fv_ttl_sub {
  margin-top: min(35px, 4.6666666667vw);
  color: #103793;
  font-size: min(32px, 4.2666666667vw);
  line-height: 1.3125;
  font-weight: 500;
  letter-spacing: 0.06em;
}
.fv_img01 {
  margin: min(18px, 2.4vw) auto 0 min(27px, 3.6vw);
  width: min(705px, 94vw);
}
.fv_btn_box {
  margin: min(19px, 2.5333333333vw) auto min(27px, 3.6vw);
}
.fv_btn_dl {
  display: block;
  width: min(654px, 87.2vw);
  margin: 0 auto;
  padding: min(27px, 3.6vw) 0 min(30px, 4vw);
  background-color: #2864f0;
  color: #fff;
  text-align: center;
  border: 2px solid #2864f0;
  border-radius: min(13px, 1.7333333333vw);
  font-size: min(28px, 3.7333333333vw);
  line-height: 1;
  font-weight: 500;
  letter-spacing: 0.04em;
  cursor: pointer;
}
.fv_btn_inquiry {
  display: block;
  width: min(654px, 87.2vw);
  margin: 0 auto;
  padding: min(27px, 3.6vw) 0 min(30px, 4vw);
  background-color: #fff;
  color: #2864f0;
  text-align: center;
  border: 2px solid #2864f0;
  border-radius: min(13px, 1.7333333333vw);
  font-size: min(28px, 3.7333333333vw);
  line-height: 1;
  font-weight: 500;
  letter-spacing: 0.04em;
}
.fv_img02 {
  margin: min(42px, 5.6vw) auto 0;
  width: min(623px, 83.0666666667vw);
}
.fv_note {
  position: absolute;
  bottom: min(108px, 14.4vw);
  width: 100%;
}
.fv_note_img {
  position: relative;
  top: 0;
  left: min(608px, 81.0666666667vw);
  width: min(60px, 8vw);
  height: min(60px, 8vw);
}
.fv_note_text {
  z-index: 10;
  position: absolute;
  top: min(92px, 12.2666666667vw);
  left: 50%;
  transform: translateX(-50%);
  width: min(670px, 89.3333333333vw);
  padding: min(2px, 0.2666666667vw) min(10px, 1.3333333333vw);
  background: rgba(115, 165, 255, 0.85);
  border-radius: 2px;
  transition: 0.4s ease all;
  visibility: hidden;
  opacity: 0;
}
.fv_note_text.is-shown {
  visibility: visible;
  opacity: 1;
}
.fv_note_text::after {
  content: "";
  position: absolute;
  right: min(64px, 8.5333333333vw);
  top: max(-16px, -2.1333333333vw);
  width: 0;
  height: 0;
  border-style: solid;
  border-right: min(10px, 1.3333333333vw) solid transparent;
  border-left: min(10px, 1.3333333333vw) solid transparent;
  border-bottom: min(17px, 2.2666666667vw) solid rgba(115, 165, 255, 0.85);
  border-top: 0;
}
.fv_note_text-text {
  color: #fff;
  font-size: min(20px, 2.6666666667vw);
  line-height: 1.4;
  font-weight: 400;
  letter-spacing: 0.02em;
}
@media screen and (min-width: 750px) {
  .fv_inner {
    width: 1200px;
    margin: 0 auto;
    padding: 23px 0 28px;
  }
  .fv_box01 {
    display: flex;
    justify-content: space-between;
  }
  .fv_box02 {
    display: flex;
    justify-content: space-between;
    padding: 4px 0 0;
  }
  .fv_ttl {
    text-align: left;
  }
  .fv_ttl_top {
    margin-top: 17px;
    font-size: min(20px, 2.6666666667vw);
    line-height: 1;
    font-weight: 500;
    letter-spacing: 0.06em;
  }
  .fv_ttl_second {
    margin-top: 10px;
    font-size: min(60px, 8vw);
    line-height: 1.2666666667;
    font-weight: 900;
    letter-spacing: 0.04em;
  }
  .fv_ttl_main {
    margin-top: 8px;
    font-size: min(100px, 13.3333333333vw);
    line-height: 1;
    font-weight: 900;
    letter-spacing: 0.04em;
  }
  .fv_ttl_sub {
    margin-top: 18px;
    color: #103793;
    font-size: min(24px, 3.2vw);
    line-height: 1.5;
    font-weight: 500;
    letter-spacing: 0.06em;
  }
  .fv_img01 {
    margin: 0;
    width: 690px;
    transform: translateX(20px);
  }
  .fv_btn_box {
    margin: 0;
  }
  .fv_btn_dl {
    width: 434px;
    margin: 0;
    padding: 18px 0;
    border-radius: 8px;
    font-size: min(22px, 2.9333333333vw);
    line-height: 1;
    font-weight: 500;
    letter-spacing: 0.04em;
  }
  .fv_btn_dl:hover, .fv_btn_dl:active {
    background-color: #245ad6;
    border-color: #245ad6;
  }
  .fv_btn_inquiry {
    width: 434px;
    margin: 16px auto 0;
    padding: 18px 0;
    border-radius: 8px;
    font-size: min(22px, 2.9333333333vw);
    line-height: 1;
    font-weight: 500;
    letter-spacing: 0.04em;
  }
  .fv_img02 {
    margin: 8px 0 0;
    width: 690px;
  }
  .fv_note {
    position: absolute;
    bottom: 44px;
    left: 452px;
    width: 30px;
    height: 30px;
  }
  .fv_note_img {
    left: 0;
    width: 100%;
    height: 100%;
  }
  .fv_note_text {
    z-index: 10;
    position: absolute;
    top: calc(100% + 14px);
    left: 0;
    transform: translateX(0);
    width: 711px;
    padding: 16px 18px;
    border-radius: 0;
  }
  .fv_note_text.is-shown {
    visibility: visible;
    opacity: 1;
  }
  .fv_note_text::after {
    right: auto;
    left: 8px;
    top: -10px;
    width: 15px;
    height: 12px;
    -webkit-clip-path: polygon(50% 0, 100% 100%, 0 100%);
            clip-path: polygon(50% 0, 100% 100%, 0 100%);
    background: rgba(115, 165, 255, 0.85);
    border-right: none;
    border-left: none;
    border-bottom: none;
  }
  .fv_note_text-text {
    color: #fff;
    font-size: min(12px, 1.6vw);
    line-height: 1.25;
    font-weight: 300;
    letter-spacing: 0.02em;
    padding-left: 1em;
    text-indent: -1em;
  }
}

/** anchor **/
.anchor_inner {
  padding: min(60px, 8vw) 0 min(64px, 8.5333333333vw);
}
.anchor_list {
  width: min(670px, 89.3333333333vw);
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  gap: min(11px, 1.4666666667vw);
}
.anchor_item {
  border: 2px solid #2864f0;
  flex: 1;
  text-align: center;
}
.anchor_item_topText {
  padding: min(13px, 1.7333333333vw) 0 min(16px, 2.1333333333vw);
  background: #2864f0;
  color: #fff;
  font-size: min(28px, 3.7333333333vw);
  line-height: 1.0714285714;
  font-weight: 500;
  letter-spacing: 0.06em;
}
.anchor_item_img01 {
  width: min(63px, 8.4vw);
  margin: min(14px, 1.8666666667vw) auto 0;
}
.anchor_item_img02 {
  width: min(49px, 6.5333333333vw);
  margin: min(11px, 1.4666666667vw) auto 0;
}
.anchor_item_img03 {
  width: min(42px, 5.6vw);
  margin: min(9px, 1.2vw) auto 0;
}
.anchor_item_btmText {
  margin: min(16px, 2.1333333333vw) auto min(12px, 1.6vw);
  color: #2864f0;
  font-size: min(28px, 3.7333333333vw);
  line-height: 1.0714285714;
  font-weight: 500;
  letter-spacing: 0em;
}
.anchor_item_dl {
  cursor: pointer;
}
@media screen and (min-width: 750px) {
  .anchor_inner {
    padding: 102px 0 126px;
    margin: 0 auto;
    width: 1200px;
  }
  .anchor_list {
    width: 100%;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    gap: 57px;
  }
  .anchor_item {
    border: 2px solid #2864f0;
    flex-grow: 1;
    text-align: center;
  }
  .anchor_item_topText {
    padding: min(15px, 2vw) 0 min(16px, 2.1333333333vw);
    background: #2864f0;
    color: #fff;
    font-size: min(24px, 3.2vw);
    line-height: 1;
    font-weight: 500;
    letter-spacing: 0.06em;
  }
  .anchor_item_bottom {
    display: flex;
    align-items: center;
    gap: 20px;
    text-align: left;
  }
  .anchor_item_img01 {
    width: 63px;
    margin: 0 0 0 44px;
    padding: 30px 0 30px;
  }
  .anchor_item_img02 {
    width: 49px;
    margin: 0 0 0 46px;
    padding: 24px 0 30px;
  }
  .anchor_item_img03 {
    margin: 0 0 0 64px;
    padding: 24px 0 28px;
  }
  .anchor_item_btmText {
    margin: 0;
    color: #2864f0;
    font-size: min(24px, 3.2vw);
    line-height: 1.3333333333;
    font-weight: 500;
    letter-spacing: 0.04em;
  }
}

/** plan **/
.plan {
  background-color: #f6faff;
}
.plan_inner {
  padding: min(80px, 10.6666666667vw) 0 min(60px, 8vw);
}
.plan_ttl {
  margin: 0 auto min(40px, 5.3333333333vw);
  text-align: center;
  font-size: min(36px, 4.8vw);
  line-height: 1;
  font-weight: 500;
  letter-spacing: 0.06em;
}
.plan_table_wrap {
  overflow-x: scroll;
  overflow-y: hidden;
  width: min(710px, 94.6666666667vw);
  margin: 0 0 0 min(40px, 5.3333333333vw);
  position: relative;
  z-index: 999999;
}
.plan_table_wrap_init {
  position: absolute;
  top: min(62px, 8.2666666667vw);
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 999999;
}
.plan_table_wrap_init-img {
  width: min(329px, 43.8666666667vw);
  height: min(329px, 43.8666666667vw);
  position: absolute;
  top: min(469px, 62.5333333333vw);
  left: min(200px, 26.6666666667vw);
}
.plan_btn_box {
  margin: min(60px, 8vw) auto 0;
}
.plan_btn_dl {
  display: block;
  width: min(654px, 87.2vw);
  margin: 0 auto;
  padding: min(27px, 3.6vw) 0 min(30px, 4vw);
  background-color: #2864f0;
  color: #fff;
  text-align: center;
  border: 2px solid #2864f0;
  border-radius: min(13px, 1.7333333333vw);
  font-size: min(28px, 3.7333333333vw);
  line-height: 1;
  font-weight: 500;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 750px) {
  .plan_inner {
    width: 1200px;
    margin: 0 auto;
    padding: 100px 0;
  }
  .plan_ttl {
    margin: 0 auto 25px;
    font-size: 38px;
    line-height: 1;
    font-weight: 500;
    letter-spacing: 0.06em;
  }
  .plan_table_wrap {
    overflow-x: visible;
    overflow-y: visible;
    width: 100%;
    margin: 0 0 0 0;
  }
  .plan_table_wrap_init {
    display: none;
  }
  .plan_btn {
    margin: 80px auto 0;
    display: flex;
    justify-content: center;
    gap: 35px;
  }
  .plan_btn_box {
    margin: 0;
  }
  .plan_btn_dl {
    width: 351px;
    padding: 14px 0;
    border-radius: 8px;
    font-size: min(16px, 2.1333333333vw);
    line-height: 1;
    font-weight: 500;
    letter-spacing: 0.09em;
  }
  .plan_btn_dl:hover, .plan_btn_dl:active {
    background-color: #245ad6;
    border-color: #245ad6;
  }
}

/** table **/
.plan__table {
  background: #fff;
  border: 1px solid #e1dcdc;
  border-left: none;
  border-collapse: unset;
  width: min(1200px, 160vw);
  font-size: min(26px, 3.4666666667vw);
  line-height: 1.0769230769;
  font-weight: 500;
  letter-spacing: 0em;
}
.plan__table-header {
  position: relative;
  width: 19.25%;
  border-right: 1px solid #e1dcdc;
  border-bottom: 1px solid #e1dcdc;
  text-align: center;
  table-layout: fixed;
  display: table-cell;
  vertical-align: middle;
}
.plan__table-header-first {
  width: 24.1666666667%;
}
.plan__table-header-top {
  border-bottom: none;
}
.plan__table-header-ttl {
  display: block;
  margin-top: min(22px, 2.9333333333vw);
  color: #2864f0;
  font-size: min(26px, 3.4666666667vw);
  line-height: 1;
  font-weight: 500;
  letter-spacing: 0em;
}
.plan__table-header-txt {
  margin: min(12px, 1.6vw) auto min(12px, 1.6vw);
  display: block;
  font-size: min(22px, 2.9333333333vw);
  line-height: 1.0909090909;
  font-weight: 400;
  letter-spacing: -0.025em;
}
.plan__table-detail {
  border-right: 1px solid #e1dcdc;
  border-bottom: 1px solid #e1dcdc;
  vertical-align: middle;
  padding: 0.8vw;
  position: relative;
}
.plan__table-detail-heading {
  width: 5%;
  text-align: center;
}
.plan__table-detail-heading span {
  writing-mode: vertical-lr;
  text-align: center;
  white-space: pre;
}
.plan__table-detail-textCenter {
  text-align: center;
}
.plan__table-detail-borderTop {
  border-top: 1px solid #e1dcdc;
}
.plan__table_bg-gray {
  background-color: #e6e6e6;
}
.plan__table_bg-grayLite {
  background-color: #f1f1f1;
}
.plan__table_bg-blueLite {
  background-color: #e7effe;
}
.plan__table_bg-blue {
  background-color: #caddff;
}
.plan__table_bg-greenLite {
  background-color: #f4fbe8;
}
.plan__table_bg-green {
  background-color: #e4f5c9;
}
.plan__table_bg-orangeLite {
  background-color: #ffe9db;
}
.plan__table_bg-orange {
  background-color: #fbdcc8;
}
.plan__table_bg-yellowLite {
  background-color: #fff5df;
}
.plan__table_bg-yellow {
  background-color: #ffedc4;
}
.plan__table_bg-yellowLite {
  background-color: #fff5df;
}
.plan__table_bg-yellow {
  background-color: #ffedc4;
}
.plan__table_bg-featureYellow {
  background-color: #fffce6;
  border-right: 2px solid #fa6414;
  border-left: 2px solid #fa6414;
}
.plan__table_bg-featureYellow-first {
  background-color: #fffce6;
  border-right: 2px solid #fa6414;
  border-left: 2px solid #fa6414;
  border-top: 2px solid #fa6414;
}
.plan__table_bg-featureYellow-last {
  background-color: #fffce6;
  border-right: 2px solid #fa6414;
  border-left: 2px solid #fa6414;
  border-bottom: 2px solid #fa6414;
}
.plan__table_bg-pointYellow {
  background-color: #fff7c5;
  border-right: 2px solid #fa6414;
  border-left: 2px solid #fa6414;
}
.plan__table-large {
  font-size: min(32px, 4.2666666667vw);
  line-height: 1;
  font-weight: 900;
  letter-spacing: 0.025em;
}
.plan__table-small {
  font-size: min(24px, 3.2vw);
  line-height: 1;
  font-weight: 400;
  letter-spacing: 0em;
}
.plan__table-xsmall {
  font-size: min(22px, 2.9333333333vw);
  line-height: 1.1818181818;
  font-weight: 500;
  letter-spacing: 0.025em;
}
.plan__table-xxsmall {
  font-size: min(20px, 2.6666666667vw);
  line-height: 1.1;
  font-weight: 400;
  letter-spacing: -0.01em;
}
.plan__table-icon01 {
  display: block;
  width: 4.6666666667vw;
  height: 4.6666666667vw;
  margin: 1.3333333333vw auto 1.2vw;
}
.plan__table-icon05 {
  display: block;
  width: 4.6666666667vw;
  height: 4.6666666667vw;
  margin: 1.3333333333vw auto 1.2vw;
}
.plan__table-icon06 {
  display: block;
  width: 5.3333333333vw;
  height: 4.6666666667vw;
  margin: 1.8666666667vw auto;
}
.plan__table-deco01 {
  position: absolute;
  top: 0;
  left: 0;
  width: 15.6vw;
}
.plan__table-sticky {
  position: sticky;
  top: 0;
  left: 0;
  z-index: 999;
  border-left: 1px solid #e1dcdc;
}
.plan__table-sticky-ml {
  position: sticky;
  top: 0;
  left: calc(8vw + 2px);
  z-index: 999;
  border-right: 1px solid #e1dcdc;
  border-left: 1px solid #e1dcdc;
}
.plan__table-sticky-z4 {
  z-index: 9999;
}
.plan__table-sticky-z5 {
  z-index: 99999;
}
.plan__table_reco {
  position: relative;
  width: 30.4vw;
  padding: 0.9333333333vw 2vw 0.9333333333vw 2.6666666667vw;
  margin: 0 0 2.6666666667vw 99.6vw;
  background-color: #fa6414;
  border-radius: 50px;
  color: #fff;
  font-size: min(28px, 3.7333333333vw);
  line-height: 1;
  font-weight: 500;
  letter-spacing: 0.06em;
}
.plan__table_reco::after {
  content: "";
  -webkit-clip-path: polygon(0 0, 100% 0, 50% 100%);
          clip-path: polygon(0 0, 100% 0, 50% 100%);
  position: absolute;
  left: 50%;
  top: 100%;
  transform: translateX(-50%);
  background: #fa6414;
  width: 1.3333333333vw;
  height: 1.3333333333vw;
}
.plan__table_note {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  padding: 0 0 0 min(14px, 1.8666666667vw);
  z-index: 9999;
}
.plan__table_note_img {
  width: min(50px, 6.6666666667vw);
  height: min(50px, 6.6666666667vw);
}
.plan__table_note_text {
  z-index: 9999;
  position: absolute;
  transform: translateZ(0);
  top: calc(100% + min(18px, 2.4vw));
  left: calc(50% + min(6px, 0.8vw));
  transform: translateX(-50%);
  width: min(212px, 28.2666666667vw);
  padding: min(11px, 1.4666666667vw) min(12px, 1.6vw) min(10px, 1.3333333333vw) min(11px, 1.4666666667vw);
  background: rgba(115, 165, 255, 0.85);
  border-radius: 2px;
  transition: 0.4s ease all;
  visibility: hidden;
  opacity: 0;
}
.plan__table_note_text.is-shown {
  visibility: visible;
  opacity: 1;
}
.plan__table_note_text::after {
  content: "";
  position: absolute;
  left: 50%;
  top: max(-12px, -1.6vw);
  transform: translate(-50%, 0);
  width: min(10px, 1.3333333333vw);
  height: min(12px, 1.6vw);
  -webkit-clip-path: polygon(50% 0, 100% 100%, 0 100%);
          clip-path: polygon(50% 0, 100% 100%, 0 100%);
  background: #73a5ff;
}
.plan__table_note_text-text {
  color: #fff;
  font-size: min(22px, 2.9333333333vw);
  line-height: 1.2727272727;
  font-weight: 400;
  letter-spacing: 0.025em;
  padding-left: 1em;
  text-indent: -1em;
}
.plan__table_noteVertical {
  position: relative;
  display: inline-block;
  z-index: 9999;
  padding: min(10px, 1.3333333333vw) 0 0 0;
}
.plan__table_noteVertical_img {
  width: min(50px, 6.6666666667vw);
  height: min(50px, 6.6666666667vw);
}
.plan__table_noteVertical_text {
  writing-mode: horizontal-tb;
  text-align: left;
  z-index: 9999;
  position: absolute;
  transform: translateZ(0);
  top: calc(100% + min(18px, 2.4vw));
  left: min(12px, 1.6vw);
  width: min(290px, 38.6666666667vw);
  padding: min(11px, 1.4666666667vw) min(8px, 1.0666666667vw) min(10px, 1.3333333333vw) min(10px, 1.3333333333vw);
  background: rgba(115, 165, 255, 0.85);
  border-radius: 2px;
  transition: 0.4s ease all;
  visibility: hidden;
  opacity: 0;
}
.plan__table_noteVertical_text.is-shown {
  visibility: visible;
  opacity: 1;
}
.plan__table_noteVertical_text::after {
  content: "";
  position: absolute;
  left: min(8px, 1.0666666667vw);
  top: max(-12px, -1.6vw);
  width: min(10px, 1.3333333333vw);
  height: min(12px, 1.6vw);
  -webkit-clip-path: polygon(50% 0, 100% 100%, 0 100%);
          clip-path: polygon(50% 0, 100% 100%, 0 100%);
  background: #73a5ff;
}
.plan__table_noteVertical_text-text {
  color: #fff;
  font-size: min(22px, 2.9333333333vw);
  line-height: 1.2727272727;
  font-weight: 400;
  letter-spacing: 0.025em;
}
@media screen and (min-width: 750px) {
  .plan__table {
    border-collapse: collapse;
    width: 1200px;
    font-size: 18px;
    line-height: 1.3333333333;
    font-weight: 500;
    letter-spacing: 0em;
  }
  .plan__table-header {
    width: 240px;
  }
  .plan__table-header-first {
    width: 221px;
  }
  .plan__table-header-top {
    border-bottom: none;
  }
  .plan__table-header-ttl {
    display: block;
    margin-top: 28px;
    color: #2864f0;
    font-size: 24px;
    line-height: 1;
    font-weight: 500;
    letter-spacing: 0em;
  }
  .plan__table-header-txt {
    margin: 22px auto;
    font-size: 16px;
    line-height: 1.5;
    font-weight: 500;
    letter-spacing: 0em;
  }
  .plan__table-detail {
    padding: 4px;
  }
  .plan__table-detail-heading {
    padding: 9px 4px;
    width: 39px;
    writing-mode: vertical-lr;
    text-align: center;
  }
  .plan__table-large {
    font-size: 22px;
    line-height: 1.3636363636;
    font-weight: 900;
    letter-spacing: 0.025em;
  }
  .plan__table-small {
    font-size: 16px;
    line-height: 1;
    font-weight: 400;
    letter-spacing: 0em;
  }
  .plan__table-xsmall {
    font-size: 18px;
    line-height: 1;
    font-weight: 500;
    letter-spacing: 0.025em;
  }
  .plan__table-xxsmall {
    display: inline-block;
    font-size: 14px;
    line-height: 1;
    font-weight: 400;
    letter-spacing: 0em;
  }
  .plan__table-xxsmall-pc {
    font-size: 14px;
    line-height: 1;
    font-weight: 500;
    letter-spacing: 0em;
  }
  .plan__table-xsmall-pcGray {
    font-size: 16px;
    line-height: 1;
    font-weight: 500;
    letter-spacing: 0em;
  }
  .plan__table-xxsmall-pcGray {
    font-size: 16px;
    line-height: 1;
    font-weight: 400;
    letter-spacing: 0em;
  }
  .plan__table-icon01 {
    display: block;
    width: 30px;
    height: 30px;
    margin: 6px auto;
  }
  .plan__table-icon05 {
    display: block;
    width: 28px;
    height: 27px;
    margin: 10px auto 8px;
  }
  .plan__table-icon06 {
    display: block;
    width: 40px;
    height: 35px;
    margin: 0 auto 2px;
  }
  .plan__table-deco01 {
    width: 105px;
  }
  .plan__table-sticky {
    position: relative;
    left: 0;
  }
  .plan__table-sticky-ml {
    position: relative;
    left: 0;
    width: 188px;
  }
  .plan__table_reco {
    text-align: center;
    width: 190px;
    padding: 10px 0;
    margin: 0 0 22px 737px;
    font-size: min(22px, 2.9333333333vw);
    line-height: 1;
    font-weight: 500;
    letter-spacing: 0.06em;
  }
  .plan__table_reco::after {
    width: 10px;
    height: 10px;
  }
  .plan__table_note {
    padding: 0 0 0 8px;
  }
  .plan__table_note_img {
    width: 30px;
    height: 30px;
  }
  .plan__table_note_text {
    top: calc(100% + 15px);
    left: 50%;
    transform: translateX(-50%);
    width: 187px;
    padding: 4px 6px 4px 6px;
  }
  .plan__table_note_text.is-shown {
    visibility: visible;
    opacity: 1;
  }
  .plan__table_note_text::after {
    left: 98px;
    top: -10px;
    width: 10px;
    height: 12px;
  }
  .plan__table_note_text-text {
    color: #fff;
    font-size: min(12px, 1.6vw);
    line-height: 2;
    font-weight: 400;
    letter-spacing: 0.025em;
  }
  .plan__table_noteVertical {
    padding: 10px 0 0 0;
  }
  .plan__table_noteVertical_img {
    width: 30px;
    height: 30px;
  }
  .plan__table_noteVertical_text {
    top: calc(100% + 12px);
    left: 50%;
    transform: translate(-50%, 0);
    width: 187px;
    padding: 8px 22px;
  }
  .plan__table_noteVertical_text.is-shown {
    visibility: visible;
    opacity: 1;
  }
  .plan__table_noteVertical_text::after {
    left: 88px;
    top: -10px;
    width: 10px;
    height: 12px;
  }
  .plan__table_noteVertical_text-text {
    color: #fff;
    font-size: min(12px, 1.6vw);
    line-height: 1.1666666667;
    font-weight: 400;
    letter-spacing: 0.025em;
  }
}

/** function **/
.function_inner {
  width: min(670px, 89.3333333333vw);
  padding: min(80px, 10.6666666667vw) 0;
  margin: 0 auto;
  text-align: center;
}
.function_ttl {
  margin: 0 auto min(60px, 8vw);
  font-size: min(36px, 4.8vw);
  line-height: 1;
  font-weight: 500;
  letter-spacing: 0.06em;
}
.function_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: min(40px, 5.3333333333vw) 0;
}
.function_item {
  width: calc(50% - min(20px, 2.6666666667vw));
}
.function_item_ttl {
  margin: min(29px, 3.8666666667vw) auto 0;
  font-size: min(32px, 4.2666666667vw);
  line-height: 1;
  font-weight: 700;
  letter-spacing: 0.06em;
}
.function_item_txt {
  margin: min(19px, 2.5333333333vw) auto 0;
  font-size: min(24px, 3.2vw);
  line-height: 1.3333333333;
  font-weight: 400;
  letter-spacing: 0.02em;
}
.function_btn {
  margin: min(58px, 7.7333333333vw) auto 0;
}
.function_btn_box {
  margin: min(26px, 3.4666666667vw) auto 0;
}
.function_btn_dl {
  display: block;
  width: min(654px, 87.2vw);
  margin: 0 auto;
  padding: min(27px, 3.6vw) 0 min(30px, 4vw);
  background-color: #2864f0;
  color: #fff;
  text-align: center;
  border: 2px solid #2864f0;
  border-radius: min(13px, 1.7333333333vw);
  font-size: min(28px, 3.7333333333vw);
  line-height: 1;
  font-weight: 500;
  letter-spacing: 0.04em;
}
.function_btn_inquiry {
  display: block;
  width: min(654px, 87.2vw);
  margin: 0 auto;
  padding: min(27px, 3.6vw) min(138px, 18.4vw) min(30px, 4vw) min(141px, 18.8vw);
  background-color: #fff;
  color: #2864f0;
  text-align: center;
  border: 2px solid #2864f0;
  border-radius: min(13px, 1.7333333333vw);
  font-size: min(28px, 3.7333333333vw);
  line-height: 1;
  font-weight: 500;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 750px) {
  .function_inner {
    width: 1200px;
    padding: 100px 0 108px;
    margin: 0 auto;
    text-align: center;
  }
  .function_ttl {
    margin: 0 auto 60px;
    font-size: 38px;
    line-height: 1;
    font-weight: 500;
    letter-spacing: 0.06em;
  }
  .function_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 39px 37px;
  }
  .function_item {
    width: 210.4px;
  }
  .function_item_ttl {
    margin: 29px auto 0;
    font-size: 18px;
    line-height: 1;
    font-weight: 700;
    letter-spacing: 0.06em;
  }
  .function_item_txt {
    margin: 12px auto 0;
    font-size: 14px;
    line-height: 1.5714285714;
    font-weight: 400;
    letter-spacing: 0.02em;
  }
  .function_btn {
    margin: 42px auto 0;
    display: flex;
    justify-content: center;
    gap: 35px;
  }
  .function_btn_box {
    margin: 0;
  }
  .function_btn_dl {
    width: 351px;
    padding: 14px 0;
    border-radius: 8px;
    font-size: min(16px, 2.1333333333vw);
    line-height: 1;
    font-weight: 500;
    letter-spacing: 0.09em;
  }
  .function_btn_dl:hover, .function_btn_dl:active {
    background-color: #245ad6;
    border-color: #245ad6;
  }
  .function_btn_inquiry {
    width: 351px;
    padding: 14px 0;
    border-radius: 8px;
    font-size: min(16px, 2.1333333333vw);
    line-height: 1;
    font-weight: 500;
    letter-spacing: 0.09em;
  }
}

/** reason **/
.reason {
  background: #ebf3ff;
}
.reason_inner {
  width: min(670px, 89.3333333333vw);
  padding: min(80px, 10.6666666667vw) 0;
  margin: 0 auto;
  text-align: center;
}
.reason_ttl {
  margin: 0 auto min(60px, 8vw);
  color: #2864f0;
  font-size: min(40px, 5.3333333333vw);
  line-height: 1;
  font-weight: 500;
  letter-spacing: 0.02em;
}
.reason_item {
  background-color: #fff;
  margin: min(60px, 8vw) auto 0;
  padding: min(40px, 5.3333333333vw) min(48px, 6.4vw);
}
.reason_item_num {
  color: #2864f0;
  font-size: min(32px, 4.2666666667vw);
  line-height: 1;
  font-weight: 500;
  letter-spacing: 0.06em;
}
.reason_item_ttl {
  margin: min(35px, 4.6666666667vw) auto 0;
  font-size: min(32px, 4.2666666667vw);
  line-height: 1.3125;
  font-weight: 500;
  letter-spacing: 0.06em;
}
.reason_item_subttl {
  margin: min(35px, 4.6666666667vw) auto 0;
  font-size: min(28px, 3.7333333333vw);
  line-height: 1.3571428571;
  font-weight: 500;
  letter-spacing: 0.06em;
}
.reason_item_slick {
  position: relative;
  margin: min(35px, 4.6666666667vw) auto 0;
}
.reason_item_slick .slider {
  width: min(226px, 30.1333333333vw);
  margin: 0 auto;
}
.reason_item_circle {
  position: absolute;
  top: calc(50% - min(10px, 1.3333333333vw));
  left: 50%;
  transform: translate(-50%, -50%);
  width: min(375px, 50vw);
}
.reason_item_txtBottom {
  margin: min(25px, 3.3333333333vw) auto 0;
  color: #2545a2;
  font-size: min(32px, 4.2666666667vw);
  line-height: 1;
  font-weight: 500;
  letter-spacing: 0.06em;
}
.reason_item02 {
  padding: min(40px, 5.3333333333vw) min(44px, 5.8666666667vw) min(51px, 6.8vw);
}
.reason_item02_img {
  width: min(541px, 72.1333333333vw);
  margin: min(40px, 5.3333333333vw) auto 0;
}
.reason_item03 {
  padding: min(40px, 5.3333333333vw) min(24px, 3.2vw) min(40px, 5.3333333333vw);
}
.reason_item03_subttl {
  width: min(580px, 77.3333333333vw);
}
.reason_item03_img {
  width: 100%;
  margin: min(40px, 5.3333333333vw) auto 0;
}
@media screen and (min-width: 750px) {
  .reason_inner {
    width: 1200px;
    padding: 100px 0 40px;
    margin: 0 auto;
    text-align: left;
  }
  .reason_ttl {
    margin: 0 62px 80px;
    color: #2864f0;
    text-align: center;
    font-size: 38px;
    line-height: 1;
    font-weight: 500;
    letter-spacing: 0.06em;
  }
  .reason_item {
    background-color: #fff;
    width: 100%;
    border-radius: 10px;
    margin: 0 0 60px;
    padding: 0;
    display: flex;
  }
  .reason_item_wrap {
    width: 552px;
    margin: 160px 0 0 100px;
  }
  .reason_item_num {
    color: #2864f0;
    font-size: 24px;
    line-height: 1;
    font-weight: 500;
    letter-spacing: 0.06em;
    display: inline-block;
  }
  .reason_item_ttl {
    margin: 0 auto;
    font-size: 24px;
    line-height: 1;
    font-weight: 500;
    letter-spacing: 0.06em;
    display: inline-block;
  }
  .reason_item_subttl {
    margin: 25px auto 0;
    font-size: 16px;
    line-height: 1.5625;
    font-weight: 500;
    letter-spacing: 0.06em;
  }
  .reason_item_slick {
    position: relative;
    margin: -27px auto 0;
  }
  .reason_item_slick .slider {
    width: 183px;
    margin: 0 auto;
  }
  .reason_item_circle {
    position: absolute;
    top: 60px;
    left: 50%;
    transform: translate(-50%, 0);
    width: 328px;
  }
  .reason_item_txtBottom {
    margin: 17px auto 0;
    padding: 0 0 43px;
    text-align: center;
    color: #2545a2;
    font-size: 18px;
    line-height: 1;
    font-weight: 500;
    letter-spacing: 0.06em;
  }
  .reason_item02 {
    flex-direction: row-reverse;
    align-items: center;
    padding: 0;
  }
  .reason_item02 .reason_item_wrap {
    margin: 0;
    padding: 108px 83px 104px 61px;
    width: 555px;
    box-sizing: content-box;
  }
  .reason_item02_img {
    width: 405px;
    margin: 0;
    box-sizing: content-box;
  }
  .reason_item03 {
    padding: 66px 100px;
    display: block;
  }
  .reason_item03_subttl {
    width: auto;
  }
  .reason_item03_img {
    width: 772px;
    margin: 20px auto 0;
  }
}

/* slick slider(js) */
@font-face {
  font-family: "slick";
  font-weight: normal;
  font-style: normal;
  src: url("fonts/slick.eot");
  src: url("fonts/slick.eot?#iefix") format("embedded-opentype"), url("fonts/slick.woff") format("woff"), url("fonts/slick.ttf") format("truetype"), url("fonts/slick.svg#slick") format("svg");
}
.slider-heading {
  background-color: #ff0066;
  color: #fff;
  font-size: min(24px, 24 / 750px * 100vw);
  text-align: center;
  margin-bottom: 0;
}
.slider-heading p {
  padding: min(10px, 10 / 750px * 100vw) 0;
  margin: 0;
}

/* slick button */
.slick-prev,
.slick-next {
  font-size: 0;
  line-height: 0;
  position: absolute;
  top: 50%;
  display: block;
  width: min(107px, 14.2666666667vw);
  height: min(107px, 14.2666666667vw);
  padding: 0;
  transform: translate(0, -50%);
  cursor: pointer;
  color: transparent;
  border: none;
  outline: none;
  text-align: center;
  opacity: 0.8;
  z-index: 10;
}
@media screen and (min-width: 750px) {
  .slick-prev,
  .slick-next {
    top: calc(50% + 34px);
    width: 107px;
    height: 107px;
  }
}

.slick-prev:before,
.slick-next:before {
  font-family: "slick", "Hiragino Kaku Gothic ProN", "メイリオ", sans-serif;
  display: block;
  font-size: min(48px, 48 / 750px * 100vw);
  line-height: 1.3;
  color: #696969;
  margin-top: 0;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.slick-prev {
  left: max(-130px, -17.3333333333vw);
}
@media screen and (min-width: 750px) {
  .slick-prev {
    left: -130px;
  }
}

.slick-next {
  right: max(-130px, -17.3333333333vw);
}
@media screen and (min-width: 750px) {
  .slick-next {
    right: -130px;
  }
}

.slick-prev:before {
  content: "";
  /* font slickでない場合は変える */
}

.slick-next:before {
  content: "";
  /* font slickでない場合は変える */
}

.slider-single-item4 .slick-prev,
.slider-single-item4 .slick-next {
  top: 40%;
  width: min(40px, 40 / 750px * 100vw);
  height: min(40px, 40 / 750px * 100vw);
}
.slider-single-item4 .slick-prev:before,
.slider-single-item4 .slick-next:before {
  font-size: min(36px, 36 / 750px * 100vw);
}

.multiple-items img {
  padding: 10px;
}

.single-item .slick-dots {
  margin-bottom: 20px;
}

/** intro **/
.intro_inner {
  width: min(670px, 89.3333333333vw);
  padding: min(80px, 10.6666666667vw) 0;
  margin: 0 auto;
  text-align: center;
}
.intro_top {
  position: relative;
}
.intro_top_bg {
  -webkit-clip-path: polygon(0 0, 100% 0, 50% 100%);
          clip-path: polygon(0 0, 100% 0, 50% 100%);
  width: min(670px, 89.3333333333vw);
  height: min(143px, 19.0666666667vw);
  background-color: #2864f0;
}
.intro_top_ttl {
  position: absolute;
  top: min(16px, 2.1333333333vw);
  left: 50%;
  transform: translateX(-50%);
  color: #fff;
  font-size: min(32px, 4.2666666667vw);
  line-height: 1.25;
  font-weight: 500;
  letter-spacing: 0.06em;
}
.intro_img01 {
  margin: min(40px, 5.3333333333vw) auto 0;
}
.intro_text01 {
  position: relative;
  display: inline-block;
  margin: min(68px, 9.0666666667vw) auto 0;
  color: #2864f0;
  font-size: min(34px, 4.5333333333vw);
  line-height: 1;
  font-weight: 500;
  letter-spacing: 0.02em;
}
.intro_text01::before {
  content: "";
  background: url(../images/line_left.png) no-repeat;
  background-size: contain;
  width: min(18px, 2.4vw);
  height: min(29px, 3.8666666667vw);
  position: absolute;
  top: 50%;
  left: max(-40px, -5.3333333333vw);
  transform: translateY(-50%);
}
.intro_text01::after {
  content: "";
  background: url(../images/line_right.png) no-repeat;
  background-size: contain;
  width: min(18px, 2.4vw);
  height: min(29px, 3.8666666667vw);
  position: absolute;
  top: 50%;
  right: max(-30px, -4vw);
  transform: translateY(-50%);
}
.intro_img02 {
  margin: min(30px, 4vw) max(-18px, -2.4vw) 0;
}
@media screen and (min-width: 750px) {
  .intro_inner {
    width: 944px;
    padding: 128px 0 80px;
    margin: 0 auto;
    text-align: center;
  }
  .intro_top_bg {
    -webkit-clip-path: polygon(0 0, 100% 0, 50% 100%);
            clip-path: polygon(0 0, 100% 0, 50% 100%);
    width: 100%;
    height: 101px;
  }
  .intro_top_ttl {
    position: absolute;
    top: 24px;
    font-size: 24px;
    line-height: 1.0833333333;
    font-weight: 500;
    letter-spacing: 0.06em;
  }
  .intro_img01 {
    margin: 44px auto 0;
    width: 669px;
  }
  .intro_text01 {
    position: relative;
    display: inline-block;
    margin: 60px auto 0;
    color: #2864f0;
    font-size: 32px;
    line-height: 1.0625;
    font-weight: 500;
    letter-spacing: 0.02em;
  }
  .intro_text01::before {
    content: "";
    background: url(../images/line_left.png) no-repeat;
    background-size: contain;
    width: 18px;
    height: 29px;
    position: absolute;
    top: 50%;
    left: -27px;
    transform: translateY(-50%);
  }
  .intro_text01::after {
    content: "";
    background: url(../images/line_right.png) no-repeat;
    background-size: contain;
    width: 18px;
    height: 29px;
    position: absolute;
    top: 50%;
    right: -27px;
    transform: translateY(-50%);
  }
  .intro_img02 {
    margin: 32px auto 0;
    width: 670px;
    cursor: pointer;
  }
}

.feature__storylane {
  display: none;
  position: fixed;
  z-index: 200;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  width: 100%;
  height: 100%;
}

.feature__storylane-contents {
  z-index: 202;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 80%;
}

.feature__storylane-bg {
  position: absolute;
  z-index: 201;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.7);
  cursor: pointer;
}

.feature__storylane-btn {
  position: absolute;
  top: -23px;
  right: -23px;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: #323232;
  cursor: pointer;
}

.feature__storylane-btn::before,
.feature__storylane-btn::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 2px;
  height: 23px;
  background: #fff;
}

.feature__storylane-btn::before {
  transform: translate(-50%, -50%) rotate(45deg);
}

.feature__storylane-btn::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}

@media screen and (min-width: 750px) {
  .feature__storylane {
    display: none;
    position: fixed;
    z-index: 200;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    width: 100%;
    min-width: 1228px;
    height: 100%;
  }
  .feature__storylane-contents {
    z-index: 202;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 1142px;
  }
  .feature__storylane-bg {
    position: absolute;
    z-index: 201;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    min-width: 1228px;
    height: 100%;
    background: rgba(0, 0, 0, 0.7);
    cursor: pointer;
  }
  .feature__storylane-btn {
    position: absolute;
    top: -23px;
    right: -23px;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: #323232;
    cursor: pointer;
  }
  .feature__storylane-btn::before,
  .feature__storylane-btn::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 2px;
    height: 23px;
    background: #fff;
  }
  .feature__storylane-btn::before {
    transform: translate(-50%, -50%) rotate(45deg);
  }
  .feature__storylane-btn::after {
    transform: translate(-50%, -50%) rotate(-45deg);
  }
}
/** voice **/
.voice {
  background: #ebf3ff;
}
.voice_inner {
  width: min(670px, 89.3333333333vw);
  padding: min(128px, 17.0666666667vw) 0;
  margin: 0 auto;
  text-align: left;
}
.voice_ttl {
  margin: 0 auto;
  text-align: center;
  font-size: min(40px, 5.3333333333vw);
  line-height: 1;
  font-weight: 500;
  letter-spacing: 0.04em;
}
.voice_item {
  margin: min(116px, 15.4666666667vw) auto 0;
  text-align: center;
}
.voice_item_company {
  margin: min(48px, 6.4vw) auto 0;
  font-size: min(40px, 5.3333333333vw);
  line-height: 1.5;
  font-weight: 500;
  letter-spacing: 0.04em;
}
.voice_item_tag {
  display: flex;
  justify-content: center;
  gap: min(8px, 1.0666666667vw);
  padding: min(32px, 4.2666666667vw) 0 0;
}
.voice_item_tag-item {
  background: #fff;
  border: 1px solid #1e46aa;
  border-radius: 99em;
  color: #1e46aa;
  padding: min(4px, 0.5333333333vw) min(18px, 2.4vw);
  font-size: min(28px, 3.7333333333vw);
  line-height: 1.5;
  font-weight: 400;
  letter-spacing: 0.04em;
}
.voice_item_text-ttl {
  margin: min(48px, 6.4vw) auto 0;
  font-size: min(32px, 4.2666666667vw);
  line-height: 2;
  font-weight: 500;
  letter-spacing: 0.04em;
}
.voice_item_text-txt {
  margin: min(16px, 2.1333333333vw) auto 0;
  text-align: left;
  font-size: min(28px, 3.7333333333vw);
  line-height: 1.5;
  font-weight: 400;
  letter-spacing: 0.04em;
}
.voice_item_text-txt-blue {
  font-style: normal;
  color: #2864f0;
  font-weight: 500;
}
.voice_btn {
  margin: min(80px, 10.6666666667vw) auto 0;
}
.voice_btn_dl {
  display: block;
  width: min(654px, 87.2vw);
  margin: 0 auto;
  padding: min(27px, 3.6vw) 0 min(30px, 4vw);
  background-color: #2864f0;
  color: #fff;
  text-align: center;
  border: 2px solid #2864f0;
  border-radius: min(13px, 1.7333333333vw);
  font-size: min(28px, 3.7333333333vw);
  line-height: 1;
  font-weight: 500;
  letter-spacing: 0.04em;
  cursor: pointer;
}
@media screen and (min-width: 750px) {
  .voice {
    background: #ebf3ff;
  }
  .voice_inner {
    width: 1200px;
    padding: 64px 16px;
    margin: 0 auto;
    text-align: left;
    font-feature-settings: normal;
  }
  .voice_ttl {
    margin: 0 auto;
    text-align: center;
    font-size: 34px;
    font-weight: 500;
    letter-spacing: 0.04em;
    line-height: 1.5;
  }
  .voice_list {
    display: flex;
    justify-content: space-between;
    gap: 32px;
    padding: 48px 0 32px;
  }
  .voice_item {
    margin: 0;
    text-align: center;
    padding: 0;
    flex: 1;
  }
  .voice_item:nth-of-type(n + 2) {
    padding-top: 8px;
  }
  .voice_item_company {
    font-size: 20px;
    line-height: 1.5;
    margin-top: 24px;
    font-weight: 500;
  }
  .voice_item_tag {
    display: flex;
    justify-content: center;
    gap: 8px;
    padding: 32px 0 0;
  }
  .voice_item_tag-item {
    background: #fff;
    border: 1px solid #1e46aa;
    border-radius: 99em;
    color: #1e46aa;
    margin-right: 4px;
    padding: 2px 18px;
    font-size: 14px;
    line-height: 1.5;
    font-weight: 400;
    letter-spacing: 0.04em;
  }
  .voice_item_text-ttl {
    margin: 24px auto 0;
    font-size: 16px;
    line-height: 1.5;
    font-weight: 500;
    letter-spacing: 0.04em;
  }
  .voice_item_text-txt {
    margin: 8px auto 0;
    text-align: left;
    font-size: 14px;
    line-height: 1.5;
    font-weight: 400;
    letter-spacing: 0.04em;
  }
  .voice_btn {
    margin: 0 auto 0;
  }
  .voice_btn_dl {
    width: 351px;
    padding: 14px 0;
    border-radius: 8px;
    font-size: 16px;
    line-height: 1;
    font-weight: 500;
    letter-spacing: 0.09em;
  }
  .voice_btn_dl:hover, .voice_btn_dl:active {
    background-color: #245ad6;
    border-color: #245ad6;
  }
}

/** support **/
.support_inner {
  width: min(670px, 89.3333333333vw);
  padding: min(160px, 21.3333333333vw) 0;
  margin: 0 auto;
  text-align: left;
}
.support_ttl {
  margin: 0 auto;
  text-align: center;
  font-size: min(40px, 5.3333333333vw);
  line-height: 1.5;
  font-weight: 500;
  letter-spacing: 0.04em;
}
.support_subttl {
  margin: min(48px, 6.4vw) auto;
  text-align: center;
  font-size: min(32px, 4.2666666667vw);
  line-height: 1.25;
  font-weight: 400;
  letter-spacing: 0.04em;
}
.support_item {
  margin: min(128px, 17.0666666667vw) auto 0;
  text-align: center;
}
.support_item_img01 img {
  width: min(580px, 77.3333333333vw);
  margin: 0 auto;
}
.support_item_img02 img {
  width: min(580px, 77.3333333333vw);
  margin: 0 auto;
}
.support_item_img03 img {
  width: min(388px, 51.7333333333vw);
  margin: 0 auto;
}
.support_item_text-ttl {
  margin: min(48px, 6.4vw) auto 0;
  font-size: min(40px, 5.3333333333vw);
  line-height: 1.5;
  font-weight: 500;
  letter-spacing: 0.04em;
}
.support_item_text-txt {
  margin: min(32px, 4.2666666667vw) auto 0;
  text-align: left;
  font-size: min(32px, 4.2666666667vw);
  line-height: 1.5;
  font-weight: 400;
  letter-spacing: 0.04em;
}
.support_item_tag {
  display: flex;
  flex-direction: column;
  margin: min(32px, 4.2666666667vw) auto 0;
}
.support_item_tag-item {
  display: inline-block;
  border: 1px solid #595959;
  color: #595959;
  border-radius: min(8px, 1.0666666667vw);
  margin: min(16px, 2.1333333333vw) auto 0;
  padding: min(8px, 1.0666666667vw) min(24px, 3.2vw);
  font-size: min(28px, 3.7333333333vw);
  line-height: 1.4285714286;
  font-weight: 400;
  letter-spacing: 0.04em;
}
.support_item_tag-note {
  display: inline-block;
  color: #323232;
  display: block;
  font-size: min(24px, 3.2vw);
  line-height: 1.5;
  font-weight: 400;
  letter-spacing: 0.04em;
  margin: min(32px, 4.2666666667vw) 0 0 -1em;
}
@media screen and (min-width: 750px) {
  .support_inner {
    width: 100%;
    min-width: 1200px;
    max-width: 1352px;
    padding: 120px 0;
    margin: 0 auto;
    text-align: left;
    font-feature-settings: normal;
  }
  .support_ttl {
    font-size: 34px;
    font-weight: 500;
    letter-spacing: 0.04em;
    line-height: 1.5;
  }
  .support_subttl {
    margin: 24px auto 0;
    text-align: center;
    font-size: 16px;
    line-height: 1.5;
    font-weight: 400;
  }
  .support_list {
    display: flex;
    justify-content: space-between;
    gap: 32px;
    margin: 24px auto 0;
  }
  .support_item {
    margin: 0 auto 0;
    text-align: center;
    flex: 1;
  }
  .support_item_img {
    height: 200px;
    width: auto;
  }
  .support_item_img img {
    height: 100%;
    width: auto;
    margin: 0 auto;
  }
  .support_item_text-ttl {
    margin: 24px auto 0;
    font-size: 20px;
    line-height: 1.5;
    font-weight: 500;
    letter-spacing: 0.04em;
  }
  .support_item_text-txt {
    margin: 16px auto 0;
    text-align: left;
    font-size: 16px;
    line-height: 1.5;
    font-weight: 400;
    letter-spacing: 0.04em;
  }
  .support_item_tag {
    margin: 0 auto 0;
  }
  .support_item_tag-item {
    border-radius: 4px;
    margin: 8px auto 0;
    padding: 4px 12px;
    font-size: 14px;
    line-height: 1.5;
    font-weight: 400;
    letter-spacing: 0.04em;
  }
  .support_item_tag-note {
    font-size: 12px;
    line-height: 1.5;
    margin: 16px 0 0 -1em;
  }
}

.footer_upper {
  background: #1a1a1a;
  padding: min(60px, 8vw) 0;
}
.footer_bottom {
  background: #000000;
  padding: min(30px, 4vw) 0 min(20px, 2.6666666667vw);
}
.footer_inner {
  width: min(670px, 89.3333333333vw);
  margin: 0 auto;
}
.footer_sns {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: auto;
  width: 100%;
  border: 2px solid #323232;
  color: #fff;
  font-size: min(24px, 3.2vw);
  line-height: 1;
  font-weight: 400;
  letter-spacing: 0.06em;
}
.footer_sns_item {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 2;
  padding: 0 0 min(20px, 2.6666666667vw);
  border-left: 2px solid #323232;
}
.footer_sns_item:nth-of-type(1) {
  border: none;
}
.footer_sns_item-img01 {
  width: min(39px, 5.2vw);
  margin: min(50px, 6.6666666667vw) auto min(36px, 4.8vw);
}
.footer_sns_item-img02 {
  width: min(54px, 7.2vw);
  margin: min(40px, 5.3333333333vw) auto min(30px, 4vw);
}
.footer_sns_item-img03 {
  width: min(59px, 7.8666666667vw);
  margin: min(50px, 6.6666666667vw) auto min(36px, 4.8vw);
}
.footer_sns_item-txt {
  text-align: center;
}
.footer_btn {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: min(32px, 4.2666666667vw) min(40px, 5.3333333333vw);
  margin: min(40px, 5.3333333333vw) min(40px, 5.3333333333vw) 0 min(60px, 8vw);
}
.footer_btn_item01 {
  width: min(260px, 34.6666666667vw);
}
.footer_btn_item02 {
  width: min(257px, 34.2666666667vw);
}
.footer_btn_item03 {
  width: min(275px, 36.6666666667vw);
}
.footer_logo {
  display: flex;
  justify-content: space-between;
  gap: min(40px, 5.3333333333vw);
  margin: min(60px, 8vw) 0 0;
}
.footer_logo_logo {
  width: min(256px, 34.1333333333vw);
}
.footer_logo_text {
  flex: 1;
  color: #fff;
  font-size: min(24px, 3.2vw);
  line-height: 1.75;
  font-weight: 400;
  letter-spacing: 0.06em;
}
.footer_logo_text-large {
  display: block;
  font-size: min(28px, 3.7333333333vw);
  line-height: 1.5;
  font-weight: 400;
  letter-spacing: 0.06em;
}
.footer_links {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: min(30px, 4vw) min(50px, 6.6666666667vw);
  color: #fff;
  font-size: min(24px, 3.2vw);
  line-height: 1;
  font-weight: 400;
  letter-spacing: 0.06em;
}
.footer_links_item {
  position: relative;
}
.footer_links_item-wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: min(30px, 4vw) min(50px, 6.6666666667vw);
}
.footer_links_item:nth-of-type(-n + 2)::after {
  content: "";
  background: url(../images/footer_line.png) no-repeat;
  background-size: contain;
  width: min(9px, 1.2vw);
  height: min(24px, 3.2vw);
  position: absolute;
  top: 50%;
  right: max(-28px, -3.7333333333vw);
  transform: translate(0, -50%);
}
.footer_copy {
  display: block;
  margin: min(30px, 4vw) 0 0;
  text-align: center;
  color: #828181;
  font-size: min(20px, 2.6666666667vw);
  line-height: 1;
  font-weight: 400;
  letter-spacing: 0.06em;
}
@media screen and (min-width: 750px) {
  .footer_upper {
    padding: 38px 0 58px;
  }
  .footer_bottom {
    padding: 30px 0;
  }
  .footer_inner {
    width: 954px;
    margin: 0 auto;
  }
  .footer_sns {
    font-size: 14px;
    line-height: 1;
    font-weight: 400;
    letter-spacing: 0.06em;
  }
  .footer_sns_item {
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 2;
    padding: 0 0 20px;
    border-left: 2px solid #323232;
  }
  .footer_sns_item:nth-of-type(1) {
    border: none;
  }
  .footer_sns_item-img01 {
    width: 22px;
    margin: 22px auto 18px;
  }
  .footer_sns_item-img02 {
    width: 31px;
    margin: 18px auto 15px;
  }
  .footer_sns_item-img03 {
    width: 33px;
    margin: 22px auto 18px;
  }
  .footer_sns_item-txt {
    text-align: center;
  }
  .footer_btn {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0 15px;
    margin: 36px auto 0;
  }
  .footer_btn_item01 {
    width: 161px;
  }
  .footer_btn_item02 {
    width: 159px;
  }
  .footer_btn_item03 {
    width: 149px;
  }
  .footer_logo {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 40px;
    margin: 60px auto 0 165px;
  }
  .footer_logo_logo {
    width: 182px;
  }
  .footer_logo_text {
    font-size: 14px;
    line-height: 1;
    font-weight: 400;
    letter-spacing: 0.06em;
  }
  .footer_logo_text-large {
    font-size: 18px;
    line-height: 1;
    font-weight: 400;
    letter-spacing: 0.06em;
    margin: 0 0 18px;
  }
  .footer_links {
    gap: 20px;
    font-size: 14px;
    line-height: 1;
    font-weight: 400;
    letter-spacing: 0.06em;
  }
  .footer_links_item-wrap {
    position: relative;
    gap: 20px;
  }
  .footer_links_item-wrap:nth-of-type(-n + 2)::after {
    content: "";
    background: url(../images/footer_line.png) no-repeat;
    background-size: contain;
    width: 7px;
    height: 14px;
    position: absolute;
    top: 50%;
    right: -14px;
    transform: translate(0, -50%);
  }
  .footer_links_item:nth-of-type(-n + 2)::after {
    width: 7px;
    height: 14px;
    position: absolute;
    top: 50%;
    right: -14px;
    transform: translate(0, -50%);
  }
  .footer_copy {
    display: block;
    margin: 30px 0 0;
    text-align: center;
    color: #828181;
    font-size: 14px;
    line-height: 1;
    font-weight: 400;
    letter-spacing: 0.06em;
  }
}

.fixedBtn {
  display: none;
  position: fixed;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 0);
  z-index: 999999999;
}
.fixedBtn_inner {
  display: flex;
  gap: min(9px, 1.2vw);
  width: 100%;
}
.fixedBtn_dl {
  display: block;
  width: min(370px, 49.3333333333vw);
  margin: 0 auto;
  padding: min(10px, 1.3333333333vw) 0;
  background-color: #2864f0;
  color: #fff;
  text-align: center;
  border: 2px solid #2864f0;
  border-bottom: none;
  border-radius: min(20px, 2.6666666667vw) min(20px, 2.6666666667vw) 0 0;
  font-size: min(28px, 3.7333333333vw);
  line-height: 1.3571428571;
  font-weight: 500;
  letter-spacing: 0.04em;
}
.fixedBtn_inquiry {
  display: block;
  width: min(370px, 49.3333333333vw);
  margin: 0 auto;
  padding: min(34px, 4.5333333333vw) 0 0;
  background-color: #fff;
  color: #2864f0;
  text-align: center;
  border: 2px solid #2864f0;
  border-bottom: none;
  border-radius: min(20px, 2.6666666667vw) min(20px, 2.6666666667vw) 0 0;
  font-size: min(28px, 3.7333333333vw);
  line-height: 1;
  font-weight: 500;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 750px) {
  .fixedBtn_inner {
    gap: 59px;
    width: 1000px;
  }
  .fixedBtn_dl {
    width: 470px;
    padding: 30px 0 20px;
    border-radius: 20px 20px 0 0;
    font-size: 24px;
    line-height: 1;
    font-weight: 500;
    letter-spacing: 0.04em;
  }
  .fixedBtn_dl:hover, .fixedBtn_dl:active {
    background-color: #245ad6;
    border-color: #245ad6;
  }
  .fixedBtn_inquiry {
    width: 470px;
    padding: 30px 0 20px;
    border-radius: 20px 20px 0 0;
    font-size: 24px;
    line-height: 1;
    font-weight: 500;
    letter-spacing: 0.04em;
  }
}

.form-area {
height: 75vh;
overflow-y: scroll;
padding: 15px 0 30px;
}
.c-form {
background-color: #ffffff;
width: 90%;
margin: 0 auto;
box-sizing: border-box;
border-radius: 6px;
}


@media screen and (max-width: 767px) {
  .c-form {
    padding: 30px 10px;
    width: 100%;
  }
}
.c-form__lead {
  font-size: 14px;
  margin-bottom: 20px;
  font-weight: 400;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .c-form__lead {
    margin-bottom: 10px;
  }
}
.c-form form.mktoForm {
  width: auto !important;
}

.c-form form.mktoForm label {
  align-items: center;
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  font-size: 12px;
  width: 100% !important;
  color: #222;
}

@media screen and (min-width: 767px) {
  .c-form form.mktoForm label {
    line-height: 0;
    margin-bottom: 0 !important;
  }
}
@media screen and (max-width: 767px) {
  .c-form form.mktoForm label {
    margin-bottom: 10px !important;
    line-height: 1.2;
  }
}
@media screen and (max-width: 767px) {
  .c-form form.mktoForm label {
    font-size: 14px;
  }
}
.c-form form.mktoForm label .mktoAsterix {
  font-size: 0;
  visibility: hidden;
  padding-left: 5px !important;
  padding-right: 5px !important;
}

.c-form form.mktoForm label .mktoAsterix::after {
  background-color: #707070;
  border-radius: 4px;
  color: #fff;
  content: "必須";
  line-height: 1;
  visibility: visible;
  padding: 4px 0 6px;
  font-size: 10px;
  margin-right: 0px;
  width: 40px;
  text-align: center;
  display: block;
}

.c-form form.mktoForm label > span {
  font-size: inherit !important;
}

.c-form form.mktoForm input:not([type=checkbox]):not([type=radio]),
.c-form form.mktoForm select {
  border: 1px solid #cdcdcd;
  padding: 5px 10px;
  font-size: 14px;
  width: 90% !important;
  border-radius: 4px;
  min-height: 36px;
  box-sizing: border-box;
  margin-top: 10px;
}

.c-form form.mktoForm input:not([type=checkbox]):not([type=radio]) {
  background-color: #f5f6f7;
}

.c-form form.mktoForm select {
  background: #fff;
}

@media screen and (max-width: 767px) {
  .c-form form.mktoForm input:not([type=checkbox]):not([type=radio]),
  .c-form form.mktoForm select {
    padding: 10px;
  }
}
@media screen and (max-width: 480px) {
  .mktoForm {
    padding: 0 !important;
  }
}
@media screen and (max-width: 767px) {
  .c-form form.mktoForm input:not([type=checkbox]):not([type=radio]),
  .c-form form.mktoForm select {
    font-size: 16px;
  }
}
.c-form form.mktoForm input[type=radio] + label {
  margin-right: 1em;
  width: 80% !important;
}

.c-form form.mktoForm .mktoFormRow + .mktoFormRow {
  margin-top: 0px;
}

.c-form form.mktoForm .mktoSelectWrapper {
  border: none;
  position: relative;
  width: 100%;
  position: relative;
}

.c-form form.mktoForm .mktoSelectWrapper:before {
  border-right: solid 2px #2864f0;
  border-top: solid 2px #2864f0;
  content: "";
  display: block;
  height: 6px;
  position: absolute;
  top: 50%;
  vertical-align: middle;
  width: 6px;
}

.c-form form.mktoForm .mktoSelectWrapper:before {
  right: 20px;
}

.c-form form.mktoForm .mktoSelectWrapper:before {
  transform: translate(0, -50%) rotate(135deg);
}

.c-form form.mktoForm .mktoSelectWrapper::before {
  pointer-events: none;
}

.c-form form.mktoForm .mktoFieldWrap.mktoRequiredField {
  position: relative;
  width: 100%;
}

.c-form form.mktoForm .mktoFieldWrap.mktoRequiredField .mktoError {
  background-color: #2864f0;
  border-radius: 5px;
  color: #fff;
  left: 0;
  line-height: 1;
  position: absolute;
  right: auto !important;
  z-index: 1;
  padding: 10px;
}

.c-form form.mktoForm .mktoFieldWrap.mktoRequiredField .mktoError .mktoErrorArrowWrap {
  height: 8px;
  left: 5px;
  overflow: hidden;
  position: absolute;
  top: -8px;
  width: 16px;
  z-index: 100;
}

.c-form form.mktoForm .mktoFieldWrap.mktoRequiredField .mktoError .mktoErrorArrowWrap .mktoErrorArrow {
  background-color: #2864f0;
  border-bottom: none;
  border-right: none;
  display: inline-block;
  height: 16px;
  margin-top: 5px;
  transform: rotate(45deg);
  width: 16px;
  border: none;
}

.c-form form.mktoForm .mktoButtonWrap.mktoNative,
.c-form form.mktoForm .mktoButtonWrap.mktoInset,
.c-form form.mktoForm .mktoButtonWrap.mktoSimple,
.c-form form.mktoForm .mktoButtonWrap.mktoMinimal {
  align-items: center;
  display: flex;
  flex-direction: row;
  justify-content: center;
  margin-left: 0 !important;
  margin-top: 10px;
}

@media screen and (max-width: 767px) {
  .c-form form.mktoForm .mktoButtonWrap.mktoNative,
  .c-form form.mktoForm .mktoButtonWrap.mktoInset,
  .c-form form.mktoForm .mktoButtonWrap.mktoSimple,
  .c-form form.mktoForm .mktoButtonWrap.mktoMinimal {
    margin-top: 20px;
  }
}
.c-form form.mktoForm .mktoButtonWrap.mktoNative .mktoButton,
.c-form form.mktoForm .mktoButtonWrap.mktoInset .mktoButton,
.c-form form.mktoForm .mktoButtonWrap.mktoSimple .mktoButton,
.c-form form.mktoForm .mktoButtonWrap.mktoMinimal .mktoButton {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: #2864f0 !important;
  background-image: none;
  border: 0;
  border-radius: 100px;
  color: #fff;
  display: block;
  font-weight: 700;
  letter-spacing: 2px;
  line-height: 1;
  outline: 0;
  text-align: center;
  text-shadow: none;
  box-shadow: none !important;
  transition: all 0.2s ease;
  margin: 0 auto !important;
  padding: 20px;
  width: 270px !important;
  font-size: 16px;
}

@media screen and (max-width: 767px) {
  .c-form form.mktoForm .mktoButtonWrap.mktoNative .mktoButton,
  .c-form form.mktoForm .mktoButtonWrap.mktoInset .mktoButton,
  .c-form form.mktoForm .mktoButtonWrap.mktoSimple .mktoButton,
  .c-form form.mktoForm .mktoButtonWrap.mktoMinimal .mktoButton {
    font-size: 14px;
    width: 100% !important;
  }
}
.c-form form.mktoForm .mktoButtonWrap.mktoNative .mktoButton:hover,
.c-form form.mktoForm .mktoButtonWrap.mktoSimple .mktoButton:hover,
.c-form form.mktoForm .mktoButtonWrap.mktoMinimal .mktoButton:hover {
  opacity: 0.8;
}

.mktoForm .mktoFormCol {
  width: 100% !important;
}

.mktoForm .mktoRadioList {
  width: 100% !important;
}

.mktoForm .mktoRadioList > input,
.mktoForm .mktoCheckboxList > input {
  margin-top: 4px;
}

.mktoButtonRow {
  width: 100% !important;
}

.mktoForm .mktoError .mktoErrorMsg {
  background: none !important;
  box-shadow: none !important;
  border: none !important;
  text-shadow: none !important;
  color: #ffffff !important;
  margin-top: 0 !important;
  font-weight: bold;
}

.mktoForm a {
  text-decoration: underline;
  padding: 0 !important;
}

.mktoForm .mktoOffset {
  height: 10px !important;
}

.mktoForm .mktoLabel {
  padding-top: 0 !important;
}

.c-modal_inner {
  background-color: #fff;
  border: 1px solid #333;
  margin: auto;
  max-width: 1024px;
  padding: 48px 32px;
  position: relative;
}

.c-modal_close {
  font-size: 0;
  position: absolute;
  right: 30px;
  top: 12px;
}

.i-button {
  display: inline-block;
  height: 32px;
  vertical-align: middle;
  width: 32px;
}

.form {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
}
.form.modal_show {
  animation: modal-fade-in 0.4s cubic-bezier(0.39, 0.575, 0.565, 1) both;
  display: block;
  z-index: 99999999;
}
.form_inner {
  align-items: center;
  background: rgba(0, 0, 0, 0.8);
  display: flex;
  height: 100vh;
  justify-content: center;
}

@keyframes modal-fade-in {
  0% {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}