@charset "UTF-8";
@media (min-width: 768px) {
  .ncBp.-ls_small {
    display: none; } }

.ncColumns {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0; }
  @media (min-width: 768px) {
    .ncColumns {
      gap: calc(8px * 5); } }
  .ncColumns_panel {
    display: block; }
    @media (max-width: 767px) {
      .ncColumns_panel {
        width: 100%; } }
  @media (min-width: 768px) {
    .ncColumns.-half .ncColumns_panel {
      width: calc((100% - calc(8px * 5)) / 2); } }
  @media (min-width: 768px) {
    .ncColumns.-three .ncColumns_panel {
      width: calc((100% - calc(8px * 5) * 2) / 3); } }
  .ncColumns.-voice {
    align-items: flex-start; }
    .ncColumns.-voice .-image {
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: center;
      aspect-ratio: 1/1;
      border-radius: 50%;
      overflow: hidden; }
    .ncColumns.-voice .-text {
      order: 1; }
    @media (min-width: 768px) {
      .ncColumns.-voice {
        column-gap: 5%; }
        .ncColumns.-voice .-image {
          width: 25%; }
          .ncColumns.-voice .-image img {
            width: 100%;
            height: auto; }
        .ncColumns.-voice .-text {
          flex-grow: 1;
          width: calc(70% - 15px); } }
    @media (max-width: 767px) {
      .ncColumns.-voice {
        flex-direction: column;
        align-items: center;
        justify-content: flex-start; }
        .ncColumns.-voice .-image {
          width: 40%;
          max-width: 150px; }
        .ncColumns.-voice .-image img {
          width: 100%;
          height: auto;
          object-fit: cover; } }

.ncIcon {
  vertical-align: middle;
  display: inline-grid;
  grid-auto-flow: column;
  grid-template-columns: 1.5em 1fr;
  align-items: start;
  column-gap: 0.5em; }
  .ncIcon::before {
    display: block;
    width: 1.5em;
    height: 1.5em;
    background-color: #0283A5;
    content: ""; }
  .ncIcon.-add:before {
    mask-image: url("/lp/img/icon/add.svg");
    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: contain; }
  .ncIcon.-circle:before {
    mask-image: url("/lp/img/icon/circle.svg");
    mask-repeat: no-repeat;
    mask-position: center;
    mask-size: contain; }

.ncRows {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  justify-content: flex-start;
  width: 100%; }
  .ncRows_title {
    margin-bottom: calc(8px * 2);
    font-size: 110%;
    font-weight: bold;
    text-align: center; }
  .ncRows_image {
    margin-left: auto;
    margin-right: auto; }
    @media (min-width: 960px) {
      .ncRows_image {
        width: 100%; } }
    @media (min-width: 768px) and (max-width: 959px) {
      .ncRows_image {
        width: 70%; } }
    .ncRows_image picture {
      display: flex;
      justify-content: center;
      align-items: center;
      width: 100%;
      aspect-ratio: 13 / 8;
      overflow: hidden; }

.ncFrame.-faq .ncFrame_title, .ncFrame.-faq .ncFrame_content {
  position: relative;
  padding: 0.8em 0.8em 0.8em 3em;
  line-height: 1.6; }
  .ncFrame.-faq .ncFrame_title::before, .ncFrame.-faq .ncFrame_content::before {
    position: absolute;
    top: 0;
    left: 0;
    transform: translate(0.6em, 0.6em);
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 2em;
    height: 2em;
    border-radius: 50%;
    color: #0075A0;
    font-weight: 700;
    font-family: "Roboto", sans-serif; }
.ncFrame.-faq .ncFrame_title {
  background-color: rgba(2, 180, 188, 0.3); }
  @media (min-width: 768px) {
    .ncFrame.-faq .ncFrame_title {
      border-radius: 1cqw 1cqw 0 0; } }
  @media (max-width: 767px) {
    .ncFrame.-faq .ncFrame_title {
      border-radius: 2cqw 2cqw 0 0; } }
  .ncFrame.-faq .ncFrame_title::before {
    background-color: rgba(255, 255, 255, 0.8);
    content: "Q"; }
.ncFrame.-faq .ncFrame_content {
  margin-bottom: 2em;
  background-color: #fff;
  border-radius: 0 0 2cqw 2cqw; }
  @media (min-width: 768px) {
    .ncFrame.-faq .ncFrame_content {
      border-radius: 1cqw 1cqw 0 0; } }
  @media (max-width: 767px) {
    .ncFrame.-faq .ncFrame_content {
      border-radius: 2cqw 2cqw 0 0; } }
  .ncFrame.-faq .ncFrame_content::before {
    background-color: #B2E8EB;
    content: "A"; }
  .ncFrame.-faq .ncFrame_content p {
    margin-bottom: 0; }

.ncAccordion_switch {
  display: block;
  cursor: pointer; }
.ncAccordion_content {
  display: none; }

.ncAccordion.-fade {
  container-type: inline-size;
  display: flex;
  flex-direction: column;
  --ncacc-collapsed: 22cqw;
  --ncacc-fade_h: 12cqw;
  --ncacc-btn_bottom: 2cqw;
  --ncacc-btn_inset: 2cqw;
  --ncacc-btn_py: 1.7cqw;
  --ncacc-btn_px: 2.4cqw;
  --ncacc-btn_py_open: 1.0cqw;
  --ncacc-btn_px_open: 1.0cqw;
  --ncacc-gap: 1.2cqw;
  --ncacc-border: 0.22cqw;
  --ncacc-icon: 4.6cqw;
  --ncacc-arrow: 1.2cqw;
  --ncacc-arrow_w: 0.34cqw;
  position: relative; }
  .ncAccordion.-fade .ncAccordion_content {
    display: block;
    position: relative;
    overflow: hidden;
    max-height: var(--ncacc-collapsed);
    transition: max-height 380ms cubic-bezier(0.22, 1, 0.36, 1); }
    .ncAccordion.-fade .ncAccordion_content::after {
      content: "";
      position: absolute;
      inset: auto 0 0 0;
      height: var(--ncacc-fade_h);
      pointer-events: none;
      background: linear-gradient(to bottom, rgba(255, 255, 255, 0), white);
      opacity: 1;
      transition: opacity 220ms ease; }
  .ncAccordion.-fade .ncAccordion_switch {
    position: absolute;
    left: 0;
    right: 0;
    bottom: var(--ncacc-btn_bottom);
    margin: 0 auto;
    width: fit-content;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    column-gap: var(--ncacc-gap);
    padding: var(--ncacc-btn_py) var(--ncacc-btn_px);
    border-radius: 9999px;
    border: var(--ncacc-border) solid #0b67b3;
    background: #fff;
    color: #0b67b3;
    font-weight: 700;
    line-height: 1;
    cursor: pointer;
    transition: padding 380ms cubic-bezier(0.22, 1, 0.36, 1), column-gap 380ms cubic-bezier(0.22, 1, 0.36, 1), box-shadow 160ms ease, opacity 160ms ease; }
    .ncAccordion.-fade .ncAccordion_switch:hover {
      box-shadow: 0 1.2cqw 3.2cqw rgba(0, 0, 0, 0.12); }
    .ncAccordion.-fade .ncAccordion_switch:active {
      opacity: .92; }
    .ncAccordion.-fade .ncAccordion_switch_text {
      white-space: nowrap;
      overflow: hidden;
      max-width: 40cqw;
      transform-origin: left center;
      transition: opacity 240ms ease, max-width 380ms cubic-bezier(0.22, 1, 0.36, 1), transform 380ms cubic-bezier(0.22, 1, 0.36, 1); }
    .ncAccordion.-fade .ncAccordion_switch_icon {
      width: var(--ncacc-icon);
      height: var(--ncacc-icon);
      border-radius: 9999px;
      background: #0b67b3;
      position: relative;
      flex: 0 0 auto; }
      .ncAccordion.-fade .ncAccordion_switch_icon::before {
        content: "";
        position: absolute;
        left: 50%;
        top: 50%;
        width: var(--ncacc-arrow);
        height: var(--ncacc-arrow);
        border-right: var(--ncacc-arrow_w) solid #fff;
        border-bottom: var(--ncacc-arrow_w) solid #fff;
        transform: translate(-50%, -62%) rotate(45deg);
        transition: transform 240ms ease; }
  .ncAccordion.-fade.-open .ncAccordion_content {
    overflow: visible; }
    .ncAccordion.-fade.-open .ncAccordion_content::after {
      opacity: 0; }
  .ncAccordion.-fade.-open .ncAccordion_switch {
    top: var(--ncacc-btn_inset);
    right: var(--ncacc-btn_inset);
    left: auto;
    bottom: auto;
    margin: 0;
    padding: var(--ncacc-btn_py_open) var(--ncacc-btn_px_open);
    column-gap: 0;
    z-index: 3; }
    .ncAccordion.-fade.-open .ncAccordion_switch_text {
      opacity: 0;
      max-width: 0;
      transform: scaleX(0);
      pointer-events: none; }
    .ncAccordion.-fade.-open .ncAccordion_switch_icon::before {
      transform: translate(-50%, -38%) rotate(-135deg); }
  .ncAccordion.-fade.-teleport .ncAccordion_switch {
    opacity: 0;
    pointer-events: none; }
  .ncAccordion.-fade.-no_switch .ncAccordion_content {
    max-height: none;
    overflow: visible; }
    .ncAccordion.-fade.-no_switch .ncAccordion_content::after {
      display: none; }
  .ncAccordion.-fade.-no_switch .ncAccordion_switch {
    display: none; }
  @media (max-width: 767px) {
    .ncAccordion.-fade {
      --ncacc-collapsed: 66cqw; } }

@media (prefers-reduced-motion: reduce) {
  .ncAccordion.-fade * {
    transition: none !important;
    animation: none !important; } }
.ncScrlHint {
  width: 100%;
  overflow-x: scroll; }
  .ncScrlHint_inner {
    min-height: 116px; }

@font-face {
  　　font-family: FerretFont;
  　　src: url("/fonts/ferretfont.woff2") format("woff2"), url("/fonts/ferretfont.eot") format("eot");
  　　font-display: swap; }
body {
  color: #253539;
  font-size: 16px; }

img[src$=".svg"] {
  min-height: 1rem; }

picture,
picture img {
  display: block; }

picture {
  text-align: center; }
  picture img {
    width: 100%; }

dt {
  font-weight: bold; }

p {
  margin-bottom: 1em; }

/*@include ls-small{
	section,
	#intro{
		& > *:last-child{
			margin-bottom: 0!important;
			.ncColumns__panel:last-child{
				margin-bottom: 0!important;
			}
		}
	}
}
li{
	& > dl{
		dd:last-of-type{
			margin-bottom: $size3;
		}
	}
}
//ボタン
button,c-btn, input[type="button"], input[type="submit"]{
	background-color: $btn-color;
}*/
