@charset "UTF-8";
:root {
  --lp-sky: #d9e8f9;
  --lp-blue: #acccf2;
  --lp-gray: #f4f2ef;
  --lp-navy: #283D66;
  --lp-black: #333333;
  --site-blue: #0046d2;
  --viewport: 1160;
  --duration: .3s;
}
@media screen and (max-width: 895px) {
  :root {
    --viewport: 376;
  }
}

@-webkit-keyframes bouncing {
  0% {
    -webkit-transform: translateY(0px);
            transform: translateY(0px);
  }
  100% {
    -webkit-transform: translateY(-10px);
            transform: translateY(-10px);
  }
}

@keyframes bouncing {
  0% {
    -webkit-transform: translateY(0px);
            transform: translateY(0px);
  }
  100% {
    -webkit-transform: translateY(-10px);
            transform: translateY(-10px);
  }
}
#lp-sales01 {
  line-height: 1.45;
}

#header {
  -webkit-transition: -webkit-transform var(--duration);
  transition: -webkit-transform var(--duration);
  transition: transform var(--duration);
  transition: transform var(--duration), -webkit-transform var(--duration);
  /* transform: translateY(0); */
}
.tabMode #header {
  -webkit-transform: translateY(calc(var(--height) * -1px));
          transform: translateY(calc(var(--height) * -1px));
}

.dummy-image {
  max-width: 1100px;
  display: block;
  margin: auto;
}

*:has(.tab-controls) {
  overflow: visible;
}

.marker {
  --color-stop: 50%;
  background-image: -webkit-gradient(linear, left top, left bottom, from(transparent), to(var(--marker-color)));
  background-image: -webkit-linear-gradient(transparent var(--color-stop), var(--marker-color) var(--color-stop));
  background-image: linear-gradient(transparent var(--color-stop), var(--marker-color) var(--color-stop));
}
.marker.-white {
  --marker-color: white;
}

.c-functionList {
  padding-bottom: 0;
}

.feeList.-simple {
  margin: 0;
  padding: 0;
}
.feeList.-simple .c-feeCard-head {
  height: 4em;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  line-height: 1;
}
.feeList.-simple .c-feeCard-body {
  padding-bottom: 15px;
}

.wrapTable .tableTop td.planTable-header:has(:is(.prime, .free)) {
  vertical-align: middle;
}

.planTable-header:has(.prime) {
  background-color: rgb(255, 213, 74);
}

.planTable-header:has(.free) {
  background-color: #deebfa;
}

#intro {
  padding-block: 32px 317px;
  background: var(--lp-sky) url(../images/about-img-01.svg) no-repeat center bottom;
}
@media screen and (max-width: 895px) {
  #intro {
    padding-block: 32px 200px;
    background-size: auto 200px;
  }
}
#intro h2 {
  --fontSize: 40;
  font-size: min(var(--fontSize) / var(--viewport) * 100vw, var(--fontSize) / 10 * 1rem);
  font-weight: bold;
  color: var(--site-blue);
  text-align: center;
  letter-spacing: 0;
  -webkit-margin-after: 14px;
          margin-block-end: 14px;
}
@media screen and (max-width: 895px) {
  #intro h2 {
    --fontSize: 32;
  }
}

#about {
  background: var(--lp-sky);
}
#about #concerns {
  background: var(--lp-gray);
  --color-stop: 81.67deg;
  background-image: conic-gradient(from var(--color-stop) at 50% 100%, var(--lp-sky) calc(360deg - var(--color-stop) * 2), transparent calc(360deg - var(--color-stop) * 2));
}
@media screen and (max-width: 895px) {
  #about #concerns {
    --color-stop: 73deg;
  }
}
#about #concerns .inner {
  width: min(80.5270863836%, 1100px);
  margin: 0 auto;
  padding-block: 81px 139px;
}
@media screen and (max-width: 895px) {
  #about #concerns .inner {
    width: auto;
    padding-block: 17.2vw 26.3888888889vw;
  }
}
#about #concerns h3 {
  font-weight: bold;
  text-align: center;
  -webkit-margin-after: 35px;
          margin-block-end: 35px;
  --fontSize: 28;
  font-size: min(var(--fontSize) / var(--viewport) * 100vw, var(--fontSize) / 10 * 1rem);
}
@media screen and (max-width: 895px) {
  #about #concerns h3 {
    --fontSize: 20;
  }
}
#about #concerns .concerns-column {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
  -webkit-margin-after: 34px;
          margin-block-end: 34px;
}
@media screen and (max-width: 895px) {
  #about #concerns .concerns-column {
    grid-template-columns: 1fr;
    gap: 6vw;
  }
}
#about #concerns .concerns-column .item {
  text-align: center;
}
#about #concerns .concerns-column .item img {
  -webkit-margin-after: 13px;
          margin-block-end: 13px;
}
@media screen and (max-width: 895px) {
  #about #concerns .concerns-column .item img {
    width: 50vw;
  }
}
#about #concerns .concerns-column .item p {
  font-weight: bold;
  --fontSize: 18;
  font-size: min(var(--fontSize) / var(--viewport) * 100vw, var(--fontSize) / 10 * 1rem);
}
@media screen and (max-width: 895px) {
  #about #concerns .concerns-column .item p {
    --fontSize: 16;
    line-height: 1.75;
  }
}
#about #concerns .white-round-block {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding-block: 17px;
  padding-inline: 24px;
  background-color: white;
  border-radius: 16px;
  text-align: center;
  font-weight: bold;
  color: var(--lp-navy);
  --fontSize: 24;
  font-size: min(var(--fontSize) / var(--viewport) * 100vw, var(--fontSize) / 10 * 1rem);
}
@media screen and (max-width: 895px) {
  #about #concerns .white-round-block {
    --fontSize: 18;
  }
}
#about #site {
  background: var(--lp-sky);
  padding-block: 80px;
}
@media screen and (max-width: 895px) {
  #about #site {
    padding-block: 40px 60px;
  }
}
#about #site h3 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 20px;
  text-align: center;
  font-weight: bold;
  color: var(--site-blue);
  -webkit-margin-after: 40px;
          margin-block-end: 40px;
}
@media screen and (max-width: 895px) {
  #about #site h3 {
    gap: 14px;
    -webkit-margin-after: 33px;
            margin-block-end: 33px;
  }
}
#about #site h3 span {
  font-size: min(var(--fontSize) / var(--viewport) * 100vw, var(--fontSize) / 10 * 1rem);
}
#about #site h3 .span1 {
  --fontSize: 20;
}
@media screen and (max-width: 895px) {
  #about #site h3 .span1 {
    --fontSize: 16;
  }
}
#about #site h3 .span2 {
  --fontSize: 24;
}
@media screen and (max-width: 895px) {
  #about #site h3 .span2 {
    --fontSize: 18;
  }
}
#about #site h3 .span3 {
  --fontSize: 36;
}
@media screen and (max-width: 895px) {
  #about #site h3 .span3 {
    --fontSize: 24;
  }
}
#about #site h3 .logo {
  width: 373px;
  height: 72px;
}
@media screen and (max-width: 895px) {
  #about #site h3 .logo {
    width: 221px;
    height: 43px;
  }
}
#about #site .site-column {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
}
@media screen and (max-width: 895px) {
  #about #site .site-column {
    grid-template-columns: 1fr;
    padding-inline: 20px;
  }
}
#about #site .site-column .item.text {
  -webkit-padding-start: 4px;
          padding-inline-start: 4px;
  font-weight: bold;
  place-self: center left;
  font-size: min(var(--fontSize) / var(--viewport) * 100vw, var(--fontSize) / 10 * 1rem);
  --fontSize: 24;
  line-height: 1.9;
}
@media screen and (max-width: 895px) {
  #about #site .site-column .item.text {
    text-align: center;
    line-height: 1.4444444444;
    --fontSize: 18;
  }
}
#about #site .site-column .item.text .c-price-b {
  font-size: 1em;
}
@media screen and (max-width: 895px) {
  #about #site .site-column .item.text .c-price-b {
    font-size: 1.4em;
    line-height: 68px;
  }
}
#about #site .site-column .item.text .c-price-b > strong {
  font-size: 2em;
  line-height: 1;
}

#functions {
  background: var(--lp-sky);
}
#functions #functionsTitle {
  background: var(--lp-sky);
  padding-block: 80px 18px;
}
@media screen and (max-width: 895px) {
  #functions #functionsTitle {
    padding-block: 50px 18px;
  }
  #functions #functionsTitle h3 {
    margin-block: 0 7px;
  }
}
#functions #functionsContent {
  background: var(--lp-blue);
}
@media screen and (max-width: 895px) {
  #functions #functionsContent {
    width: auto;
    padding-inline: 0;
  }
}

#plans {
  background: var(--lp-gray);
}

#flow {
  background: var(--lp-gray);
}

#faq {
  background: var(--lp-gray);
}

/* 便利な機能 */
.tab-controls,
.tab-panels {
  padding-inline: max(9.7364568082%, (100% - 1100px) / 2);
}
@media screen and (max-width: 895px) {
  .tab-controls,
  .tab-panels {
    padding-inline: 20px;
  }
}

.tab-controls {
  --height: 137px;
  --border-height: 6px;
  height: var(--height);
  padding-block: 0 var(--border-height);
  background: transparent no-repeat center top;
  background-image: -webkit-gradient(linear, left top, left bottom, from(var(--lp-sky)), to(var(--site-blue)));
  background-image: -webkit-linear-gradient(var(--lp-sky) calc(var(--height) - var(--border-height)), var(--site-blue) calc(var(--height) - var(--border-height)));
  background-image: linear-gradient(var(--lp-sky) calc(var(--height) - var(--border-height)), var(--site-blue) calc(var(--height) - var(--border-height)));
  background-position-x: 0px;
  background-position-y: 0px;
  -webkit-transition: var(--duration);
  transition: var(--duration);
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(0px, 1fr));
}
@media screen and (max-width: 895px) {
  .tab-controls {
    --height: 71px;
    --border-height: 4px;
  }
}
.tabMode .tab-controls {
  padding-block: var(--border-height) 0px;
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  background-position-y: calc((var(--height) - var(--border-height)) * -1);
  z-index: 1;
}

.tab-controls-item {
  -webkit-padding-before: 6px;
          padding-block-start: 6px;
  place-content: center;
  text-align: center;
  height: calc(var(--height) - var(--border-height));
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (max-width: 895px) {
  .tab-controls-item {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.tabMode .tab-controls-item {
  --height: 75px;
}
@media screen and (max-width: 895px) {
  .tabMode .tab-controls-item {
    --height: 71px;
  }
}
.tabMode .tab-controls-item:hover {
  --height: 137px;
  border-radius: 0 0 16px 16px;
}
@media screen and (max-width: 895px) {
  .tabMode .tab-controls-item:hover {
    --height: 71px;
    border-radius: unset;
  }
}
.tab-controls-item + a {
  border-left: 1px solid #d9d9d9;
}
.tab-controls-item[aria-selected=true], .tab-controls-item[aria-selected=false]:hover, .tab-controls-item[aria-selected=false]:focus {
  background-color: var(--site-blue);
  color: #fff;
}
.tab-controls-item[aria-selected=true] h4, .tab-controls-item[aria-selected=false]:hover h4, .tab-controls-item[aria-selected=false]:focus h4 {
  color: #fff;
}
.tab-controls-item[aria-selected=false] {
  background-color: white;
  color: var(--lp-black);
}
.tab-controls-item[aria-selected=false] h4 {
  color: var(--site-blue);
}
.tab-controls-item:first-child {
  border-radius: 16px 0px 0px 0px;
}
.tabMode .tab-controls-item:first-child {
  border-radius: 0px 0px 0px 16px;
}
.tabMode .tab-controls-item:first-child:hover {
  border-radius: 0 0 16px 16px;
}
@media screen and (max-width: 895px) {
  .tabMode .tab-controls-item:first-child:hover {
    border-radius: 0px 0px 0px 16px;
  }
}
.tab-controls-item:last-child {
  border-radius: 0px 16px 0px 0px;
}
.tabMode .tab-controls-item:last-child {
  border-radius: 0px 0px 16px 0px;
}
.tabMode .tab-controls-item:last-child:hover {
  border-radius: 0 0 16px 16px;
}
@media screen and (max-width: 895px) {
  .tabMode .tab-controls-item:last-child:hover {
    border-radius: 0px 0px 16px 0px;
  }
}
.tab-controls-item h4 {
  margin-block: 4px;
  position: relative;
  text-align: center;
  font-weight: bold;
  --fontSize: 20;
  font-size: min(var(--fontSize) / var(--viewport) * 100vw, var(--fontSize) / 10 * 1rem);
}
@media screen and (max-width: 895px) {
  .tab-controls-item h4 {
    --fontSize: 12;
  }
}
.tab-controls-item h4::after {
  display: block;
  width: 32px;
  height: 14px;
  content: "";
  background: transparent url(../images/bg-accent.svg) no-repeat 50% 50%;
  position: absolute;
  top: -18px;
  left: calc(50% - 16px);
}
.tab-controls-item:hover h4::after {
  -webkit-animation: 0.15s ease-out 2 alternate bouncing;
          animation: 0.15s ease-out 2 alternate bouncing;
}
.tabMode .tab-controls-item:hover p {
  display: block;
}
@media screen and (max-width: 895px) {
  .tabMode .tab-controls-item:hover p {
    display: none;
  }
}
.tab-controls-item p {
  --fontSize: 14;
  font-size: min(var(--fontSize) / var(--viewport) * 100vw, var(--fontSize) / 10 * 1rem);
}
@media screen and (max-width: 895px) {
  .tab-controls-item p {
    display: none;
  }
}
.tabMode .tab-controls-item p {
  display: none;
}

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.tab-panels-item {
  padding-block: 60px 0px;
}
.tab-panels-item[aria-hidden=false] {
  display: block;
  -webkit-animation: fadeIn 0.7s forwards;
          animation: fadeIn 0.7s forwards;
}
.tab-panels-item[aria-hidden=true] {
  display: none;
}
@media screen and (max-width: 895px) {
  .tab-panels-item {
    padding-block: 37px 0px;
  }
}
.tab-panels-item section {
  padding-block: 0px 120px;
}
@media screen and (max-width: 895px) {
  .tab-panels-item section {
    padding-block: 0px 84px;
  }
}
.tab-panels-item h2 {
  text-align: center;
  -webkit-margin-after: 31px;
          margin-block-end: 31px;
  font-weight: bold;
  --fontSize: 36;
  font-size: min(var(--fontSize) / var(--viewport) * 100vw, var(--fontSize) / 10 * 1rem);
}
@media screen and (max-width: 895px) {
  .tab-panels-item h2 {
    --fontSize: 28;
    -webkit-margin-after: 16px;
            margin-block-end: 16px;
  }
}
.tab-panels-item h3 {
  -webkit-margin-after: 37px;
          margin-block-end: 37px;
}
.tab-panels-item h4 {
  -webkit-margin-after: 11px;
          margin-block-end: 11px;
  font-weight: bold;
  --fontSize: 28;
  font-size: min(var(--fontSize) / var(--viewport) * 100vw, var(--fontSize) / 10 * 1rem);
}
@media screen and (max-width: 895px) {
  .tab-panels-item h4 {
    --fontSize: 20;
  }
}
.tab-panels-item p {
  --fontSize: 16;
  font-size: min(var(--fontSize) / var(--viewport) * 100vw, var(--fontSize) / 10 * 1rem);
  line-height: 1.75;
}
.tab-panels-item .tabVisual {
  display: block;
  text-align: center;
}
.tab-panels-item .tabVisual img {
  width: 728px;
  height: auto;
}
@media screen and (max-width: 895px) {
  .tab-panels-item .tabVisual img {
    width: 89%;
  }
}

.function-column {
  display: grid;
  grid-template-columns: 1fr 1fr;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-margin-after: 41px;
          margin-block-end: 41px;
}
@media screen and (max-width: 895px) {
  .function-column {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}
.function-column .image + .text {
  -webkit-padding-start: 6px;
          padding-inline-start: 6px;
}

.function-appeals {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(auto-fit, max(0%, (100% - 32px) / 3));
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-block: 23px;
}
@media screen and (max-width: 895px) {
  .function-appeals {
    grid-template-columns: 1fr;
    gap: 8px;
    padding-inline: 17px;
  }
}
.debug-mode .function-appeals {
  opacity: 0;
}
.function-appeals .item {
  text-align: center;
  background-color: #fff;
  border-radius: 16px;
  padding: 32px 16px 56px;
}
@media screen and (max-width: 895px) {
  .function-appeals .item {
    padding: 16px;
    text-align: left;
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
}
.function-appeals .function-label {
  display: inline-block;
  background-color: var(--lp-sky);
  color: var(--site-blue);
  font-size: 12px;
  font-weight: bold;
  line-height: 1.4;
  border-radius: 8px;
  padding: 6px 7px 4px;
  place-self: start;
}
@media screen and (max-width: 895px) {
  .function-appeals .function-label {
    grid-area: 2/1/3/2;
  }
}
.function-appeals h4 {
  color: var(--site-blue);
  margin-block: 16px 15px;
  -webkit-padding-before: 20px;
          padding-block-start: 20px;
  background: transparent url(../images/bg-accent.svg) no-repeat center top;
  --fontSize: 24;
  font-size: min(var(--fontSize) / var(--viewport) * 100vw, var(--fontSize) / 10 * 1rem);
}
@media screen and (max-width: 895px) {
  .function-appeals h4 {
    --fontSize: 20;
    grid-area: 1/1/2/2;
    margin-block: 0;
    background-size: 25px 12px;
    background-position: 0% 0%;
  }
}
@media screen and (max-width: 895px) {
  .function-appeals p {
    grid-area: 1/2/3/3;
    font-size: 12px;
    -webkit-padding-start: 8px;
            padding-inline-start: 8px;
    -webkit-padding-before: 8px;
            padding-block-start: 8px;
  }
}

.baloon-tail {
  position: relative;
  background-color: #f4f4f4;
  color: #333;
  display: inline-grid;
  place-content: center;
  font-size: 16px;
  font-weight: 700;
  line-height: 0;
  padding: 26px 67px;
  border-radius: 26px;
  -webkit-margin-after: 26px;
          margin-block-end: 26px;
}
@media screen and (max-width: 895px) {
  .baloon-tail {
    font-size: 12px;
    padding: 21px 51px;
    -webkit-margin-start: 11px;
            margin-inline-start: 11px;
  }
}
.baloon-tail::after {
  display: block;
  content: "";
  width: 24px;
  height: 13px;
  border-color: #f4f4f4;
  border-style: solid;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-radius: 0 0 0 100%;
  border-width: 0 0 0 12px;
  position: absolute;
  bottom: -13px;
  left: calc(50% - 12px);
}

/* 各種調整 */
.c-btn--border {
  color: var(--site-blue);
  font-weight: bold;
  background-color: #fff;
  border: solid 2px;
  position: relative;
}
.c-btn--border::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 16px;
  display: block;
  width: 10px;
  height: 10px;
  border-top: 2px solid #0046d2;
  border-right: 2px solid #0046d2;
  -webkit-transform: rotate(45deg) translateY(-50%);
  transform: rotate(45deg) translateY(-50%);
}

@media screen and (max-width: 895px) {
  .c-conversionWrap {
    margin-bottom: 0;
  }
}

@media screen and (max-width: 895px) {
  #globalNav {
    -webkit-padding-after: 0;
            padding-block-end: 0;
  }
}

#hoge {
  display: none;
  border: none;
}/*# sourceMappingURL=lp-sales01.css.map */

.c-editor-dot {
  width: 16px;
  height: 16px;
  background-color: #ffffff;
}

.l-kvn-visual iframe {
  width: min(90%, 520px);
  overflow: auto;
  border: none;
  height: 380px;
  background-color: #ffffff;
  border-radius: 12px;
  box-shadow: 0 0 16px rgba(0, 14, 42, 0.1);
}

.l-kvn-feature {
    margin: 0px;
}
@media (max-width: 895px) {
 .l-kvn-feature {
    margin-bottom: 32px !important;
  }
  .l-kvn-visual iframe {
    width: 100% !important;
  }
}
  .globalNav-item.-current {
    border-bottom-color: transparent;
}