@charset "UTF-8";
html {
  overflow-x: hidden;
  overflow-y: auto; }

body {
  color: #282828;
  font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  line-height: 1.6;
  -webkit-text-size-adjust: 100%;
  overflow-x: hidden;
  overflow-y: auto;
  font-weight: normal; }

img {
  max-width: 100%;
  vertical-align: bottom; }

html {
  font-size: 10px; }
  @media screen and (min-width: 1024px) {
    html {
      font-size: 16px; } }
/**
 * Responsive break line
  **/
@media only screen and (max-width: 1023px) {
  html .br-sp {
    display: block; }
  html .br-pc {
    display: none; }
  html .sp {
    display: block; }
  html .pc {
    display: none; } }

@media only screen and (min-width: 1024px) {
  html .br-sp {
    display: none; }
  html .br-pc {
    display: block; }
  html .sp {
    display: none; }
  html .pc {
    display: block; } }

.navbar {
  background: #fbf9f0;
  position: fixed;
  z-index: 5; }
  .navbar-inner {
    height: 10vh;
    width: 100vw;
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
    align-content: space-between;
    align-items: center; }
    @media screen and (min-width: 1180px) {
      .navbar-inner {
        height: 3.75em;
        flex-direction: row; } }
  .navbar .kurikit-logo {
    z-index: 10;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-content: center; }
    .navbar .kurikit-logo a {
      display: block;
      width: 121px; }
      @media screen and (min-width: 1180px) {
        .navbar .kurikit-logo a {
          width: 102px;
          margin-left: 6vw; } }
      .navbar .kurikit-logo a:hover {
        opacity: 0.65;
        transition: 0.2s; }
    .navbar .kurikit-logo img {
      width: 100%;
      height: 100%; }
  .navbar .navbar-shop {
    display: none;
    z-index: 10;
    margin-right: 2.5625em; }
    @media screen and (min-width: 1180px) {
      .navbar .navbar-shop {
        display: block; } }
    @media screen and (min-width: 1180px) {
      .navbar .navbar-shop .button-wrapper {
        width: 120px;
        height: 40px; } }
    .navbar .navbar-shop .shop-button {
      display: flex;
      justify-content: center;
      align-content: center;
      flex-direction: column;
      width: 100%;
      height: 100%;
      background: #221714;
      border-radius: 5px;
      box-sizing: border-box;
      clear: both;
      text-decoration: none; }
      .navbar .navbar-shop .shop-button span {
        font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
        font-weight: normal;
        font-size: 1.6rem;
        line-height: 1;
        color: #fff; }
        @media screen and (min-width: 1024px) {
          .navbar .navbar-shop .shop-button span {
            font-size: 1.125rem; } }
      .navbar .navbar-shop .shop-button:hover {
        opacity: 0.8;
        transition: 0.2s; }
        .navbar .navbar-shop .shop-button:hover span {
          color: #ffffff;
          transition: 0.2s; }
      @media screen and (min-width: 1024px) {
        .navbar .navbar-shop .shop-button {
          border: 3px solid #221714; } }
      @media screen and (min-width: 1180px) {
        .navbar .navbar-shop .shop-button span {
          font-size: calc(14em/16);
          line-height: 1; } }
      .navbar .navbar-shop .shop-button .shop-button-inner {
        width: 6.375em;
        height: 50%;
        margin: 0 auto;
        display: flex;
        flex-direction: row;
        justify-content: center;
        align-items: center; }
      .navbar .navbar-shop .shop-button .icon-wrapper {
        margin-left: 0.875em;
        max-width: 1em;
        height: auto;
        transform-box: fill-box;
        display: flex; }
        @media screen and (min-width: 1180px) {
          .navbar .navbar-shop .shop-button .icon-wrapper {
            margin-left: 0.575em;
            max-width: 0.875rem;
            height: auto; } }
        .navbar .navbar-shop .shop-button .icon-wrapper img {
          width: 100%;
          height: 100%; }
  .navbar .navbar-shop-sp {
    z-index: 10;
    margin-right: 6vw; }
    @media screen and (min-width: 1180px) {
      .navbar .navbar-shop-sp {
        display: none; } }
    .navbar .navbar-shop-sp .button-wrapper {
      width: 40px;
      height: 40px; }
    .navbar .navbar-shop-sp .shop-button {
      display: flex;
      justify-content: center;
      align-content: center;
      flex-direction: column;
      width: 100%;
      height: 100%;
      background: #221714;
      border-radius: 5px;
      box-sizing: border-box;
      clear: both;
      text-decoration: none; }
      .navbar .navbar-shop-sp .shop-button span {
        font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
        font-weight: normal;
        font-size: 1.6rem;
        line-height: 1;
        color: #fff; }
        @media screen and (min-width: 1024px) {
          .navbar .navbar-shop-sp .shop-button span {
            font-size: 1.125rem; } }
      .navbar .navbar-shop-sp .shop-button:hover {
        opacity: 0.8;
        transition: 0.2s; }
        .navbar .navbar-shop-sp .shop-button:hover span {
          color: #ffffff;
          transition: 0.2s; }
      @media screen and (min-width: 1024px) {
        .navbar .navbar-shop-sp .shop-button {
          border: 3px solid #221714; } }
      .navbar .navbar-shop-sp .shop-button .shop-button-inner {
        display: flex;
        justify-content: center;
        align-items: center; }
      .navbar .navbar-shop-sp .shop-button .icon-wrapper {
        max-width: 24px;
        height: auto;
        transform-box: fill-box; }
        .navbar .navbar-shop-sp .shop-button .icon-wrapper img {
          width: 100%;
          height: 100%; }
  .navbar .navbar-biz {
    display: none;
    z-index: 10;
    margin-right: 20px; }
    @media screen and (min-width: 1180px) {
      .navbar .navbar-biz {
        display: block; } }
    .navbar .navbar-biz:hover {
      opacity: 0.65;
      transition: 0.2s; }
    @media screen and (min-width: 1180px) {
      .navbar .navbar-biz .button-wrapper {
        width: 120px;
        height: 40px; } }
    .navbar .navbar-biz .biz-button {
      border: 3px solid #221714;
      display: flex;
      justify-content: center;
      flex-direction: column;
      width: 100%;
      height: 100%;
      background: #fff;
      border-radius: 5px;
      box-sizing: border-box;
      text-decoration: none;
      color: #282828; }
      @media screen and (min-width: 1180px) {
        .navbar .navbar-biz .biz-button span {
          font-size: calc(14em/16);
          line-height: 1; } }
      .navbar .navbar-biz .biz-button .biz-button-inner {
        width: 6.375em;
        height: 50%;
        margin: 0 auto;
        display: flex;
        flex-direction: row;
        justify-content: center;
        align-items: center; }
  .navbar .navbar-biz-sp {
    display: block;
    z-index: 10; }
    @media screen and (min-width: 1180px) {
      .navbar .navbar-biz-sp {
        display: none; } }
    @media screen and (min-width: 1180px) {
      .navbar .navbar-biz-sp .button-wrapper {
        width: 120px;
        height: 40px; } }
    .navbar .navbar-biz-sp .biz-button {
      border: 3px solid #221714;
      background: #fff;
      border-radius: 5px;
      box-sizing: border-box;
      text-decoration: none;
      color: #282828;
      line-height: 70px; }
      @media screen and (min-width: 1180px) {
        .navbar .navbar-biz-sp .biz-button span {
          font-size: calc(14em/16);
          line-height: 1; } }
      .navbar .navbar-biz-sp .biz-button .biz-button-inner {
        width: 6.375em;
        height: 50%;
        margin: 0 auto;
        display: flex;
        flex-direction: row;
        justify-content: center;
        align-items: center; }
  .navbar .navbar-end {
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    align-items: center;
    margin-left: 6vw; }
    @media screen and (min-width: 1180px) {
      .navbar .navbar-end {
        flex-direction: row-reverse;
        justify-content: flex-start;
        margin-right: 2vw;
        margin-left: 0; } }
    .navbar .navbar-end .navbar-burger {
      display: flex;
      justify-content: center; }
      .navbar .navbar-end .navbar-burger input {
        display: none; }
      .navbar .navbar-end .navbar-burger .menu-button {
        z-index: 10;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center; }
        @media screen and (min-width: 1180px) {
          .navbar .navbar-end .navbar-burger .menu-button {
            display: none; } }
        .navbar .navbar-end .navbar-burger .menu-button .menu-icon {
          display: flex;
          justify-content: center;
          align-items: center;
          height: 2em; }
          .navbar .navbar-end .navbar-burger .menu-button .menu-icon span, .navbar .navbar-end .navbar-burger .menu-button .menu-icon span:before, .navbar .navbar-end .navbar-burger .menu-button .menu-icon span:after {
            content: "";
            display: block;
            height: 3px;
            width: 26px;
            border-radius: 10px;
            background-color: #221714;
            position: absolute; }
          .navbar .navbar-end .navbar-burger .menu-button .menu-icon span::before {
            bottom: 8px;
            transition: all 0.2s ease; }
          .navbar .navbar-end .navbar-burger .menu-button .menu-icon span::after {
            top: 8px;
            transition: all 0.2s ease; }
        .navbar .navbar-end .navbar-burger .menu-button .menu-text {
          font-family: vdl-megamaru, sans-serif;
          font-style: normal;
          font-weight: 400;
          font-size: 1em;
          color: #221714; }
      .navbar .navbar-end .navbar-burger #burger-check:checked ~ .menu-button .menu-icon span {
        background-color: rgba(255, 255, 255, 0); }
      .navbar .navbar-end .navbar-burger #burger-check:checked ~ .menu-button .menu-icon span::before {
        bottom: 0;
        transform: rotate(45deg); }
      .navbar .navbar-end .navbar-burger #burger-check:checked ~ .menu-button .menu-icon span::after {
        top: 0;
        transform: rotate(-45deg); }
      .navbar .navbar-end .navbar-burger .burger-menu {
        /*
         * SP
         */
        position: fixed;
        background: #fbf9f0;
        height: 100vh;
        overflow-y: scroll;
        top: -100vh;
        left: 0;
        display: flex;
        transition: all 0.5s ease;
        padding-top: 10vh;
        /* 
         * PC
        **/ }
        .navbar .navbar-end .navbar-burger .burger-menu ul {
          width: 100vw;
          display: flex;
          flex-direction: column;
          padding-inline-start: 0;
          list-style: none; }
        .navbar .navbar-end .navbar-burger .burger-menu li {
          border-top: 1px solid #9F9F9F;
          padding: 0 30px;
          position: relative; }
          .navbar .navbar-end .navbar-burger .burger-menu li::before {
            content: '';
            display: block;
            position: absolute;
            width: 16px;
            height: 16px;
            background: url(/images/toppage/common/navbar/icon-arrow.svg) no-repeat center center;
            background-size: contain;
            top: 50%;
            right: 30px;
            transform: translate(0, -50%); }
          .navbar .navbar-end .navbar-burger .burger-menu li:last-child {
            padding-top: 40px; }
          .navbar .navbar-end .navbar-burger .burger-menu li:last-child::before {
            content: none; }
          @media screen and (min-width: 1180px) {
            .navbar .navbar-end .navbar-burger .burger-menu li {
              border: none;
              padding: 0; }
              .navbar .navbar-end .navbar-burger .burger-menu li:first-child {
                border-top: none; }
              .navbar .navbar-end .navbar-burger .burger-menu li::before {
                content: none; } }
        .navbar .navbar-end .navbar-burger .burger-menu a {
          font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
          font-weight: normal;
          font-size: calc(18em / 10);
          display: block;
          text-decoration: none;
          color: #282828; }
        .navbar .navbar-end .navbar-burger .burger-menu .menu-text {
          padding: 20px 0;
          display: flex;
          align-items: center; }
        @media screen and (min-width: 1180px) {
          .navbar .navbar-end .navbar-burger .burger-menu {
            position: initial;
            background: initial;
            width: initial;
            height: initial;
            overflow-y: initial;
            top: initial;
            left: initial;
            display: initial;
            transition: initial;
            padding-top: initial; }
            .navbar .navbar-end .navbar-burger .burger-menu ul {
              width: initial;
              flex-direction: row; }
            .navbar .navbar-end .navbar-burger .burger-menu a {
              font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
              font-weight: normal;
              font-size: calc(14em / 16);
              display: block;
              text-decoration: none;
              color: #282828; }
              .navbar .navbar-end .navbar-burger .burger-menu a:hover .menu-text p {
                border-bottom: solid 2px #282828;
                transition: 0.1s; }
            .navbar .navbar-end .navbar-burger .burger-menu .menu-text {
              width: auto;
              height: 4.75em;
              display: flex;
              justify-content: center;
              align-items: center;
              white-space: nowrap;
              padding: 0 20px; } }
      .navbar .navbar-end .navbar-burger #burger-check:checked ~ .burger-menu {
        top: 0; }

.navbar-space {
  display: block;
  height: 10vh; }
  @media screen and (min-width: 1180px) {
    .navbar-space {
      height: 3.75em; } }
html.makerboard-page-root,
body.makerboard-page-root,
html:has(.makerboard),
body:has(.makerboard) {
  overflow-x: clip;
  overflow-y: visible;
  background: #fbf9f0;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%; }

.navbar {
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  border: 0;
  box-shadow: none;
  -webkit-transform: translateZ(0);
  transform: translateZ(0); }

@supports (-webkit-touch-callout: none) {
  .navbar {
    top: -1px;
    padding-top: 1px; } }

.makerboard {
  position: relative;
  color: #2f3d42;
  background: #e8f5f7;
  font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: 700;
  letter-spacing: 0; }
  .makerboard *,
  .makerboard *::before,
  .makerboard *::after {
    box-sizing: border-box; }
  .makerboard img {
    max-width: 100%;
    height: auto;
    vertical-align: middle; }

.makerboard-section-title,
.makerboard-section__heading {
  margin: 0 0 34px;
  text-align: center; }

.makerboard-section-title__label,
.makerboard-section__label {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 83px;
  min-height: 30px;
  margin: 0 0 16px;
  padding: 0 10px;
  border-radius: 10px;
  background: #38839c;
  color: #fff;
  font-family: Omnes, vdl-megamaru, sans-serif;
  font-size: 20px;
  font-weight: 500;
  letter-spacing: 2px;
  line-height: 1.5;
  text-align: center; }

.makerboard-section-title__heading,
.makerboard-section__heading h2 {
  margin: 0;
  color: #2e3a59;
  font-family: vdl-megamaru, sans-serif;
  font-size: 56px;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.5; }

.makerboard-section-title__heading {
  white-space: nowrap; }

.makerboard-section-title__heading-small {
  font-size: 40px; }

.makerboard-section-title__heading-tracking {
  letter-spacing: 1.12px; }

.makerboard-section-title__heading-tracking-wide {
  letter-spacing: 2px; }

.makerboard-sp-only {
  display: none; }

.makerboard-pc-only {
  display: inline; }

.makerboard-hero {
  position: relative;
  min-height: 0;
  padding: 0;
  background: #f2fbff; }
  .makerboard-hero::after {
    display: none; }

.makerboard-hero__inner {
  position: relative;
  width: 100%;
  overflow: hidden; }

.makerboard-section__inner {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 1120px;
  margin: 0 auto; }

.makerboard-hero__image {
  position: relative;
  z-index: 0;
  display: block; }
  .makerboard-hero__image img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain; }

.makerboard-hero__content {
  position: absolute;
  z-index: 1;
  left: 160px;
  top: calc(50% + 26px);
  transform: translateY(-50%);
  width: 560px;
  text-align: left; }

.makerboard-hero__copy {
  margin: 0;
  color: #2f3d42;
  font-family: vdl-megamaru, sans-serif;
  font-size: 52px;
  line-height: 1.5; }

.makerboard-hero__title {
  margin: 0;
  color: #2f3d42;
  font-family: vdl-megamaru, sans-serif;
  font-size: 80px;
  font-weight: 400;
  line-height: 1.6;
  white-space: nowrap; }

.makerboard-hero__lead {
  margin: 0;
  color: #426a9a;
  font-family: vdl-megamaru, sans-serif;
  font-size: 30px;
  line-height: 1.5; }

.makerboard-hero__text {
  max-width: 500px;
  margin: 18px auto 0;
  font-size: 16px;
  line-height: 2; }

.makerboard-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px;
  margin-top: 26px; }

.makerboard-section {
  position: relative;
  padding: 96px 20px;
  background: #fff; }

.makerboard-section--movie {
  background: #fbf9f0; }

.makerboard-section--quick-buy {
  min-height: 620px;
  padding: 100px 20px;
  background: #e6f4f6; }
  .makerboard-section--quick-buy .makerboard-section__inner {
    max-width: 1000px; }

.makerboard-section--about {
  min-height: 730px;
  padding: 100px 20px;
  background: #fcfeff url("/images/makerboard/about-bg.png") center top/cover no-repeat; }
  .makerboard-section--about::before {
    display: none; }
  .makerboard-section--about::after {
    display: none; }
  .makerboard-section--about .makerboard-section__inner {
    max-width: 1000px;
    min-height: 530px; }
    .makerboard-section--about .makerboard-section__inner::before {
      display: none; }
  .makerboard-section--about .makerboard-section-title {
    margin-bottom: 40px; }

.makerboard-feature-try {
  --makerboard-feature-bg-size: 100vw auto;
  --makerboard-feature-bg-y: top;
  --makerboard-feature-bg-fill: 0px;
  position: relative;
  isolation: isolate;
  background-color: #fff;
  background-image: url("/images/makerboard/feature-try-bg.png");
  background-position-x: center;
  background-position-y: var(--makerboard-feature-bg-y);
  background-size: var(--makerboard-feature-bg-size);
  background-repeat: no-repeat;
  background-attachment: fixed; }
  .makerboard-feature-try::after {
    position: absolute;
    z-index: 0;
    right: 0;
    bottom: 0;
    left: 0;
    height: var(--makerboard-feature-bg-fill);
    background-image: url("/images/makerboard/feature-try-bg.png");
    background-position: center bottom;
    background-size: var(--makerboard-feature-bg-size);
    background-repeat: no-repeat;
    pointer-events: none;
    content: ""; }
  .makerboard-feature-try > .makerboard-section {
    position: relative;
    z-index: 1; }

.makerboard-feature-try--bg-release {
  background-attachment: scroll; }

.makerboard-section--feature {
  position: relative;
  isolation: isolate;
  padding: 0 20px;
  background: transparent;
  overflow: visible; }

.makerboard-section--try {
  padding: 100px 20px;
  background: transparent; }
  .makerboard-section--try .makerboard-section__inner {
    max-width: 1000px; }

.makerboard-section--kit {
  padding: 100px 20px;
  background: #ddedf2; }
  .makerboard-section--kit .makerboard-section__inner {
    max-width: 1000px; }
  .makerboard-section--kit .makerboard-section-title {
    margin-bottom: 40px; }

.makerboard-section--products {
  padding: 100px 20px;
  background: #fefefe url("/images/makerboard/product-bg.png") center center/cover no-repeat; }
  .makerboard-section--products .makerboard-section__inner {
    max-width: 1000px; }

.makerboard-section--programming {
  background: #fbf9f0; }

.makerboard-section--story,
.makerboard-section--store {
  background: #ddedf2; }

.makerboard-section--contact {
  background: #fbf9f0; }
  .makerboard-section--contact .makerboard-section__label {
    background: #ed6e47; }
  .makerboard-section--contact .makerboard-section__heading h2 {
    color: #ed6e47; }

.makerboard-section--store .makerboard-actions,
.makerboard-section--contact .makerboard-actions {
  flex-wrap: nowrap;
  justify-content: center;
  gap: 80px;
  margin-top: 46px; }

.makerboard-store__note {
  max-width: 680px;
  margin: 40px auto 0;
  color: #000;
  font-size: 20px;
  font-weight: 300;
  line-height: 1.6;
  text-align: center; }

.makerboard-section--faq {
  background: #fefefe url("/images/makerboard/faq-bg.png") center top/cover no-repeat; }

.makerboard-section--requirements,
.makerboard-section--column {
  background: #eefffa; }

.makerboard-section__heading > p:not(.makerboard-section__label) {
  max-width: 620px;
  margin: 20px auto 0;
  font-size: 16px;
  line-height: 2; }

.makerboard-about {
  display: grid;
  grid-template-columns: 560px 361px;
  gap: 79px;
  align-items: center; }

.makerboard-about__image {
  width: 560px;
  padding: 0;
  border-radius: 20px;
  background: transparent;
  box-shadow: none; }
  .makerboard-about__image img {
    width: 100%;
    border-radius: 20px;
    object-fit: cover; }

.makerboard-about__body p {
  margin: 0; }

.makerboard-about__lead {
  margin: 0;
  color: #222;
  font-size: 28px;
  font-weight: 300;
  line-height: 1.8; }

.makerboard-feature__sticky-bg {
  position: sticky;
  z-index: 3;
  top: 0;
  width: calc(100% + 40px);
  height: 100vh;
  margin: 0 -20px -100vh;
  pointer-events: none; }

.makerboard-section--feature-release .makerboard-feature__sticky-bg {
  position: absolute;
  top: var(--makerboard-feature-sticky-y, 0);
  right: 0;
  bottom: auto;
  left: 0;
  width: auto;
  margin: 0; }

.makerboard-feature__sticky-inner {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 1000px;
  height: 100%;
  margin: 0 auto;
  pointer-events: none; }

.makerboard-feature__title {
  position: absolute;
  z-index: 3;
  top: 286px;
  left: 0;
  width: 520px;
  pointer-events: auto; }

.makerboard-feature__catch {
  margin: 0;
  color: #2e3a59;
  font-family: vdl-megamaru, sans-serif;
  font-size: 56px;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.5; }
  .makerboard-feature__catch span {
    display: inline; }
  .makerboard-feature__catch strong {
    margin-right: 0;
    font-size: inherit;
    font-weight: 400; }
  .makerboard-feature__catch span:not(.makerboard-feature__catch-intro):not(.makerboard-feature__catch-small) {
    font-size: inherit; }

.makerboard-feature__catch-intro,
.makerboard-feature__catch-small {
  display: block;
  margin-bottom: 0;
  font-size: 40px; }

.makerboard-feature__catch-small {
  display: inline; }

.makerboard-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 3px solid #2e3a59;
  border-radius: 10px;
  background: #fff;
  color: #2e3a59;
  font-weight: 300;
  text-align: center;
  text-decoration: none;
  transition: background-color .16s ease, color .16s ease; }
  .makerboard-button:hover {
    background: #2e3a59;
    color: #fff; }

.makerboard-button--medium {
  width: 272px;
  min-height: 50px;
  font-size: 16px;
  line-height: 1.6; }

.makerboard-feature__tutorial {
  margin-top: 22px; }

.makerboard-feature__content {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
  padding: 100px 0; }

.makerboard-feature-list {
  display: flex;
  flex-direction: column;
  gap: 80px;
  width: 562px;
  margin: 0 0 0 auto;
  padding: 0;
  list-style: none; }

.makerboard-feature-list__item {
  display: flex;
  flex-direction: column;
  min-height: 0;
  padding: 0; }
  .makerboard-feature-list__item p {
    width: 100%;
    margin: 20px 0 0;
    color: #000;
    font-size: 20px;
    font-weight: 300;
    line-height: 1.6; }

.makerboard-feature-list--motion-ready .makerboard-feature-list__item {
  opacity: 0;
  filter: blur(12px);
  transform: translate3d(0, 72px, 0) scale(0.985);
  will-change: opacity, filter, transform;
  transition: opacity 0.88s ease, filter 0.88s ease, transform 0.88s cubic-bezier(0.22, 1, 0.36, 1); }

.makerboard-feature-list--motion-ready .makerboard-feature-list__item--visible {
  opacity: 1;
  filter: blur(0);
  transform: translate3d(0, 0, 0) scale(1); }

.makerboard-feature-list__image {
  overflow: hidden;
  width: 560px;
  height: 360px;
  border-radius: 20px; }
  .makerboard-feature-list__image img {
    width: 100%;
    height: 100%;
    object-fit: cover; }

.makerboard-feature-list__heading {
  display: flex;
  align-items: center;
  gap: 22px;
  margin-top: 30px; }
  .makerboard-feature-list__heading img {
    flex: 0 0 auto;
    width: 54px;
    height: 48px; }
  .makerboard-feature-list__heading h3 {
    margin: 0;
    color: #000;
    font-family: vdl-megamaru, sans-serif;
    font-size: 40px;
    font-weight: 400;
    line-height: 1.6; }

.makerboard-movie {
  overflow: hidden;
  max-width: 980px;
  margin: 0 auto;
  background: #fff; }
  .makerboard-movie__embed {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
    overflow: hidden;
    background: #c7c7cc; }
  .makerboard-movie iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0; }

.makerboard-quick-buy {
  position: relative;
  min-height: 420px;
  margin: 0 auto;
  border-radius: 999px;
  background: #fbf9f0; }

.makerboard-quick-buy__content {
  position: absolute;
  z-index: 2;
  top: 141px;
  left: 160px; }
  .makerboard-quick-buy__content h2 {
    margin: 0 0 24px;
    color: #ed6e47;
    font-family: vdl-megamaru, sans-serif;
    font-size: 40px;
    font-weight: 400;
    line-height: 1.6; }

.makerboard-quick-buy__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 272px;
  min-height: 50px;
  border: 3px solid #ed6e47;
  border-radius: 10px;
  background: #fff;
  color: #ed6e47;
  font-size: 16px;
  font-weight: 300;
  line-height: 1.6;
  text-align: center;
  text-decoration: none;
  transition: background-color .16s ease, color .16s ease; }
  .makerboard-quick-buy__button:hover {
    background: #ed6e47;
    color: #fff; }

.makerboard-quick-buy__visual {
  position: absolute;
  top: 60px;
  left: 505px;
  width: 326px;
  height: 300px; }
  .makerboard-quick-buy__visual img {
    width: 100%;
    height: 100%;
    object-fit: contain; }

.makerboard-try {
  display: grid;
  grid-template-columns: repeat(20, minmax(0, 1fr));
  row-gap: 100px;
  align-items: start; }

.makerboard-try__body {
  grid-column: 1 / span 9;
  grid-row: 1;
  width: 420px; }
  .makerboard-try__body h2 {
    margin: 34px 0 28px;
    color: #2e3a59;
    font-family: vdl-megamaru, sans-serif;
    font-size: 56px;
    font-weight: 400;
    line-height: 1.6;
    white-space: nowrap; }
  .makerboard-try__body p:not(.makerboard-section__label) {
    margin: 0 0 30px;
    color: #000;
    font-size: 20px;
    font-weight: 300;
    line-height: 1.6; }

.makerboard-try__button {
  width: 272px;
  min-height: 50px;
  font-size: 16px;
  line-height: 1.6; }

.makerboard-try__cards {
  display: contents;
  margin: 0;
  padding: 0;
  list-style: none; }

.makerboard-try__card {
  position: relative;
  margin: 0;
  max-width: 100%;
  overflow: visible; }
  .makerboard-try__card .makerboard-try__card-media {
    display: block;
    width: 100%;
    height: auto;
    max-width: 100%;
    border-radius: 20px; }
  .makerboard-try__card .makerboard-try__card-title {
    position: absolute;
    z-index: 2;
    top: -68px;
    left: 50%;
    display: block;
    width: auto;
    max-width: 100%;
    height: auto;
    transform: translateX(-50%);
    pointer-events: none; }
    .makerboard-try__card .makerboard-try__card-title img {
      display: block;
      width: 100%;
      height: auto; }
  .makerboard-try__card span {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    white-space: nowrap; }

.makerboard-try__card--stand {
  grid-column: 10 / -1;
  grid-row: 1;
  justify-self: end;
  width: 100%;
  max-width: 560px;
  margin-top: 85px; }
  .makerboard-try__card--stand .makerboard-try__card-title {
    top: -26px; }

.makerboard-try__cards .makerboard-try__card--stand > .makerboard-try__card-title {
  top: -76px; }

.makerboard-try__card--flap {
  grid-column: 1 / span 10;
  grid-row: 2;
  width: 100%;
  max-width: 486px;
  margin-top: 24px; }

.makerboard-try__card--extend {
  grid-column: 12 / -1;
  grid-row: 2;
  justify-self: end;
  width: 100%;
  max-width: 426px;
  margin-top: 70px; }
  .makerboard-try__card--extend .makerboard-try__card-media {
    clip-path: inset(0 0 0 0.8%); }

.makerboard-try__message {
  margin: 80px 0 0;
  color: #ed6e47;
  font-family: vdl-megamaru, sans-serif;
  font-size: 56px;
  font-weight: 400;
  line-height: 1.5;
  text-align: center; }

.makerboard-try__kit {
  overflow: hidden;
  width: 100%;
  max-width: 1000px;
  margin-top: 40px;
  border-radius: 20px; }
  .makerboard-try__kit img {
    display: block;
    width: 100%; }

.makerboard-kit-list {
  display: grid;
  gap: 40px; }

.makerboard-kit-card {
  display: grid;
  grid-template-columns: minmax(0, 552px) minmax(0, 1fr);
  gap: 76px;
  align-items: center;
  min-height: 350px;
  padding: 40px;
  border-radius: 20px;
  background: #fbf9f0; }

.makerboard-kit-card--communication {
  grid-template-columns: minmax(0, 534px) minmax(0, 1fr);
  gap: 32px;
  min-height: 450px; }

.makerboard-kit-card__body {
  position: relative;
  z-index: 1; }

.makerboard-kit-card h3 {
  margin: 0 0 16px;
  color: #000;
  font-size: 24px;
  font-weight: 700;
  line-height: 1.5; }

.makerboard-kit-card--communication h3 {
  margin-bottom: 16px;
  line-height: 1.4; }

.makerboard-kit-card__items {
  margin: 0 0 16px;
  color: #000;
  font-size: 20px;
  font-weight: 300;
  line-height: 1.6; }

.makerboard-kit-card__price {
  display: flex;
  align-items: baseline;
  gap: 2px;
  margin: 0 0 20px;
  color: #000;
  font-weight: 700;
  line-height: 1.6; }

.makerboard-kit-card__price-yen {
  font-size: 32px; }

.makerboard-kit-card__price-value {
  font-size: 40px; }

.makerboard-kit-card__price-tax {
  font-size: 16px; }

.makerboard-kit-card__items--cols {
  display: grid;
  grid-template-columns: max-content max-content;
  gap: 28px; }
  .makerboard-kit-card__items--cols p {
    margin: 0; }

.makerboard-kit-card__note {
  width: 100%;
  padding: 20px;
  border-radius: 20px;
  background: #fff;
  color: #000;
  font-size: 16px;
  font-weight: 300;
  line-height: 1.6; }
  .makerboard-kit-card__note strong {
    font-weight: 700; }
  .makerboard-kit-card__note p {
    margin: 0; }

.makerboard-kit-card__button {
  margin-top: 24px; }

.makerboard-kit-card__image {
  justify-self: end; }
  .makerboard-kit-card__image img {
    display: block;
    width: 100%;
    max-width: 100%; }

.makerboard-kit-card--board .makerboard-kit-card__image {
  width: 230px; }

.makerboard-kit-card--communication .makerboard-kit-card__image {
  width: 354px; }

.makerboard-products {
  display: grid;
  gap: 100px; }

.makerboard-product {
  display: grid;
  grid-template-columns: minmax(0, 408px) minmax(0, 1fr);
  gap: 96px;
  align-items: center; }

.makerboard-product__image img {
  display: block;
  width: 100%;
  max-width: 100%; }

.makerboard-product__body {
  color: #000; }
  .makerboard-product__body h3 {
    margin: 0 0 18px;
    color: #ed6e47;
    font-family: vdl-megamaru, sans-serif;
    font-size: 32px;
    font-weight: 400;
    line-height: 1.6; }
  .makerboard-product__body p {
    margin: 16px 0 0;
    font-size: 16px;
    font-weight: 300;
    line-height: 1.6; }

.makerboard-product__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 272px;
  min-height: 50px;
  border: 3px solid #ed6e47;
  border-radius: 10px;
  background: #fff;
  color: #ed6e47;
  font-size: 16px;
  font-weight: 300;
  line-height: 1.6;
  text-align: center;
  text-decoration: none;
  transition: background-color .16s ease, color .16s ease; }
  .makerboard-product__button:hover {
    background: #ed6e47;
    color: #fff; }

.makerboard-programming__heading-small {
  font-size: 40px; }

.makerboard-voice__heading-small {
  font-size: 40px; }

.makerboard-programming-list {
  display: grid;
  gap: 100px; }

.makerboard-programming-item {
  display: grid;
  grid-template-columns: 560px minmax(0, 400px);
  gap: 40px;
  align-items: center; }

.makerboard-programming-item__image {
  overflow: hidden;
  border-radius: 20px; }
  .makerboard-programming-item__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 20px; }

.makerboard-programming-item__body h3 {
  margin: 2px 0 14px;
  color: #2e3a59;
  font-family: inherit;
  font-size: 32px;
  font-weight: 600;
  line-height: 1.5; }

.makerboard-programming-item__body p:not(.makerboard-programming-item__level) {
  margin: 0;
  color: #2e3a59;
  font-size: 20px;
  font-weight: 300;
  line-height: 1.6; }

.makerboard-programming-item__level {
  width: 93px;
  margin: 0 0 6px; }
  .makerboard-programming-item__level img {
    display: block;
    width: 100%;
    height: auto; }

.makerboard-programming-item__actions {
  display: flex;
  gap: 24px;
  margin-top: 20px; }

.makerboard-programming-item__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 178px;
  min-height: 50px;
  border: 3px solid #2e3a59;
  border-radius: 10px;
  background: #fff;
  color: #2e3a59;
  font-size: 16px;
  font-weight: 300;
  line-height: 1.6;
  text-decoration: none;
  transition: background-color .16s ease, color .16s ease; }
  .makerboard-programming-item__button:hover {
    background: #2e3a59;
    color: #fff; }

.makerboard-programming-item__button--medium {
  width: 460px;
  min-height: 80px;
  font-size: 20px; }

.makerboard-programming-item__button--store {
  width: 460px;
  min-height: 80px;
  font-size: 20px; }

.makerboard-programming-item__button--contact {
  width: 460px;
  min-height: 80px;
  border-color: #ed6e47;
  color: #ed6e47;
  font-size: 20px; }

.makerboard-programming-item__button--contact:hover {
  background: #ed6e47;
  color: #fff; }

.makerboard-programming-item__actions--offline {
  justify-content: center;
  margin-top: 32px; }
  .makerboard-programming-item__actions--offline .makerboard-programming-item__button {
    width: 272px; }

.makerboard-offline {
  margin: 100px auto 0;
  padding: 40px 70px;
  border-radius: 20px;
  background: #fff;
  text-align: center; }
  .makerboard-offline h3 {
    margin: 0 0 20px;
    color: #2e3a59;
    font-family: vdl-megamaru, sans-serif;
    font-size: 48px;
    font-weight: 400;
    line-height: 1.5; }
  .makerboard-offline p {
    margin: 0;
    color: #000;
    font-size: 20px;
    font-weight: 300;
    line-height: 1.6; }

.makerboard-requirements,
.makerboard-faq-list {
  max-width: 920px;
  margin: 0 auto; }

.makerboard-requirements {
  display: grid;
  grid-template-columns: 560px minmax(0, 412px);
  gap: 28px;
  align-items: center;
  max-width: 1000px; }

.makerboard-requirements__visual {
  overflow: hidden;
  border-radius: 20px; }
  .makerboard-requirements__visual img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 20px; }

.makerboard-requirements__body {
  color: #2e3a59; }
  .makerboard-requirements__body section + section {
    margin-top: 16px; }
  .makerboard-requirements__body h3 {
    margin: 0;
    font-family: inherit;
    color: #000;
    font-size: 24px;
    font-weight: 600;
    line-height: 1.6; }
  .makerboard-requirements__body p {
    margin: 0;
    font-size: 16px;
    font-weight: 300;
    line-height: 1.6; }
  .makerboard-requirements__body dl {
    margin: 0; }
  .makerboard-requirements__body dl div + div {
    margin-top: 8px; }
  .makerboard-requirements__body dt {
    margin: 0;
    color: #000;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.6; }
  .makerboard-requirements__body dd {
    margin: 0;
    font-size: 16px;
    font-weight: 300;
    line-height: 1.6; }

.makerboard-voice-list {
  display: grid;
  gap: 40px;
  max-width: 1000px;
  margin: 0 auto;
  padding: 0;
  list-style: none; }

.makerboard-section--voice {
  background: #fefefe url("/images/makerboard/voice-bg.png") center top/cover no-repeat;
  overflow: hidden; }

.makerboard-voice-list__item {
  display: flex;
  align-items: center;
  gap: 24px;
  padding: 40px 80px;
  border-radius: 20px;
  background: #fbf9f0; }
  .makerboard-voice-list__item p {
    flex: 1 1 auto;
    margin: 0;
    color: #000;
    font-size: 20px;
    font-weight: 300;
    line-height: 1.6; }

.makerboard-voice-list__avatar {
  display: flex;
  flex: 0 0 104px;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  text-align: center; }
  .makerboard-voice-list__avatar img {
    display: block;
    width: auto;
    max-width: 76px;
    height: 80px; }
  .makerboard-voice-list__avatar span {
    color: #000;
    font-size: 14px;
    font-weight: 300;
    line-height: 1.2;
    white-space: nowrap; }

.makerboard-voice-gallery {
  --voice-gallery-step: calc((264px + 40px) * 5);
  display: flex;
  gap: 40px;
  width: max-content;
  min-width: 100%;
  margin: 80px 0 0;
  padding: 0;
  list-style: none;
  transform: translateX(calc(-1 * var(--voice-gallery-step)));
  animation: makerboard-voice-gallery-loop 36s linear infinite; }
  .makerboard-voice-gallery li {
    flex: 0 0 264px;
    overflow: hidden;
    border-radius: 20px; }
  .makerboard-voice-gallery img {
    display: block;
    width: 100%;
    height: auto; }

@keyframes makerboard-voice-gallery-loop {
  0% {
    transform: translateX(calc(-1 * var(--voice-gallery-step))); }
  100% {
    transform: translateX(calc(-2 * var(--voice-gallery-step))); } }

.makerboard-story {
  display: grid;
  gap: 40px;
  max-width: 1000px;
  margin: 0 auto; }

.makerboard-story-card {
  padding: 40px;
  border-radius: 20px;
  background: #fff; }
  .makerboard-story-card p {
    margin: 0;
    color: #000;
    font-size: 20px;
    font-weight: 300;
    line-height: 1.6; }
  .makerboard-story-card p + p {
    margin-top: 32px; }

.makerboard-story-card__header {
  display: grid;
  grid-template-columns: 80px minmax(0, 1fr);
  gap: 20px;
  align-items: center; }

.makerboard-story-card__avatar {
  width: 80px;
  height: 80px; }

.makerboard-story-card__profile > span {
  display: block;
  margin: 0;
  color: #000;
  font-size: 20px;
  font-weight: 300;
  line-height: 1.5; }

.makerboard-story-card__name {
  margin-top: 6px !important;
  font-size: 32px !important;
  font-weight: 600 !important; }

.makerboard-story-card__content {
  margin-top: 40px; }

.makerboard-column-list {
  display: grid;
  gap: 40px;
  max-width: 1000px;
  margin: 0 auto;
  padding: 0;
  list-style: none; }

.makerboard-column-item {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(0, 0.95fr);
  gap: 60px;
  align-items: center; }

.makerboard-column-item__image {
  overflow: hidden;
  border-radius: 20px; }
  .makerboard-column-item__image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 20px; }

.makerboard-column-item__heading {
  display: flex;
  align-items: center;
  gap: 16px; }
  .makerboard-column-item__heading img {
    width: 54px;
    height: 48px; }

.makerboard-column-item__body h3 {
  margin: 0;
  color: #000;
  font-family: inherit;
  font-size: 32px;
  font-weight: 600;
  line-height: 1.5; }

.makerboard-column-item__body p {
  margin: 14px 0 0;
  color: #000;
  font-size: 20px;
  font-weight: 300;
  line-height: 1.6; }

.makerboard-faq-list {
  display: grid;
  gap: 20px;
  max-width: 1000px;
  margin: 0 auto;
  padding: 0;
  list-style: none; }
  .makerboard-faq-list li {
    padding: 40px;
    border-radius: 20px;
    background: #fbf9f0; }

.makerboard-faq-list__q,
.makerboard-faq-list__a {
  position: relative;
  margin: 0;
  padding-left: 52px;
  color: #000; }
  .makerboard-faq-list__q span,
  .makerboard-faq-list__a span {
    position: absolute;
    top: 0;
    left: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #2e3a59;
    color: #fff;
    font-family: vdl-megamaru, sans-serif;
    font-size: 24px;
    line-height: 1.6; }

.makerboard-faq-list__q {
  font-size: 32px;
  font-weight: 600;
  line-height: 1.5; }

.makerboard-faq-list__a {
  margin-top: 20px;
  font-size: 20px;
  font-weight: 300;
  line-height: 1.6; }

.makerboard-faq-list__link {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  margin-top: 0;
  color: #2e3a59;
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: .12em; }

.makerboard-faq-list__link .external-icon {
  display: inline-block;
  width: auto;
  height: 14px;
  margin-left: 2px;
  margin-right: 8px; }
  .makerboard-faq-list__link .external-icon img {
    display: block;
    width: auto;
    height: 100%; }

.makerboard-faq__more {
  margin-top: 56px;
  text-align: center; }

@media screen and (min-width: 768px) and (max-width: 1100px) {
  .makerboard-hero__content {
    left: clamp(32px, 10vw, 80px);
    top: 50%;
    width: clamp(360px, 44vw, 520px);
    transform: translateY(-50%); }
  .makerboard-hero__copy {
    font-size: clamp(38px, 5vw, 46px); }
  .makerboard-hero__title {
    font-size: clamp(56px, 7vw, 68px); }
  .makerboard-about {
    grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr);
    gap: 40px; }
  .makerboard-about__image {
    width: 100%; }
  .makerboard-about__lead {
    font-size: 24px; }
  .makerboard-kit-card,
  .makerboard-kit-card--communication {
    grid-template-columns: minmax(0, 1fr) minmax(180px, 0.62fr);
    gap: 28px;
    padding: 32px; }
  .makerboard-kit-card--board .makerboard-kit-card__image,
  .makerboard-kit-card--communication .makerboard-kit-card__image {
    width: 100%;
    max-width: 260px; }
  .makerboard-kit-card__items--cols {
    grid-template-columns: repeat(2, minmax(0, max-content));
    gap: 16px; }
  .makerboard-kit-card__items {
    font-size: 17px; }
  .makerboard-kit-card__note {
    font-size: 14px; }
  .makerboard-products {
    gap: 72px; }
  .makerboard-product {
    grid-template-columns: minmax(260px, 0.82fr) minmax(0, 1fr);
    gap: 40px; }
  .makerboard-product__image {
    min-width: 0; }
  .makerboard-programming-list {
    gap: 56px; }
  .makerboard-programming-item {
    grid-template-columns: minmax(360px, 1.08fr) minmax(0, 0.92fr);
    gap: 28px; }
  .makerboard-programming-item__body h3 {
    font-size: 28px; }
  .makerboard-programming-item__body p:not(.makerboard-programming-item__level) {
    font-size: 17px; }
  .makerboard-programming-item__actions {
    gap: 16px;
    flex-wrap: wrap; }
  .makerboard-offline {
    margin-top: 72px;
    padding: 28px 24px; }
  .makerboard-programming-item__actions--offline {
    margin-top: 24px; }
  .makerboard-quick-buy {
    min-height: 360px; }
  .makerboard-quick-buy__content {
    top: 116px;
    left: clamp(64px, 12vw, 120px); }
  .makerboard-quick-buy__visual {
    left: auto;
    right: clamp(48px, 10vw, 130px);
    max-width: 100%; }
  .makerboard-section--try {
    padding: 72px 20px; }
  .makerboard-try__body {
    width: clamp(300px, 38vw, 420px); }
  .makerboard-try__body h2,
  .makerboard-try__message {
    font-size: 44px; }
  .makerboard-try__body p:not(.makerboard-section__label) {
    font-size: 17px; }
  .makerboard-try__kit {
    max-width: 1000px; }
  .makerboard-feature__title {
    left: 20px;
    width: clamp(292px, 38vw, 440px); }
  .makerboard-feature__catch {
    font-size: clamp(36px, 5vw, 48px); }
  .makerboard-feature__catch-intro,
  .makerboard-feature__catch-small {
    font-size: clamp(26px, 3.6vw, 34px); }
  .makerboard-feature-list {
    width: clamp(320px, 44vw, 500px);
    gap: 64px;
    margin-right: 0; }
  .makerboard-feature-list__image {
    width: 100%;
    height: auto; }
  .makerboard-feature-list__heading h3 {
    font-size: clamp(28px, 4vw, 40px); }
  .makerboard-feature-list__item p {
    font-size: 17px; }
  .makerboard-requirements {
    grid-template-columns: minmax(360px, 1.05fr) minmax(0, 0.95fr);
    gap: 24px; }
  .makerboard-requirements__visual,
  .makerboard-requirements__body {
    max-width: 100%;
    margin: 0 auto; }
  .makerboard-requirements__body h3 {
    font-size: 22px; }
  .makerboard-requirements__body p,
  .makerboard-requirements__body dt,
  .makerboard-requirements__body dd {
    font-size: 14px; }
  .makerboard-column-item {
    gap: 32px; }
  .makerboard-column-item__body h3 {
    font-size: 28px; }
  .makerboard-column-item__body p {
    font-size: 17px; } }

@media screen and (min-width: 1101px) and (max-width: 1299px) {
  .makerboard-hero__content {
    left: clamp(56px, 6.4vw, 92px);
    top: 50%;
    width: clamp(390px, 41vw, 500px);
    transform: translateY(-50%); }
  .makerboard-hero__copy {
    font-size: clamp(40px, 3.4vw, 46px); }
  .makerboard-hero__title {
    font-size: clamp(60px, 5vw, 70px); } }

@media screen and (min-width: 1980px) {
  .makerboard-hero__image img {
    width: 112%;
    max-width: none;
    margin-left: -6%; } }

@media screen and (max-width: 767px) {
  .makerboard-sp-only {
    display: inline; }
  .makerboard-pc-only {
    display: none; }
  .makerboard {
    overflow-x: hidden; }
  .makerboard-section__inner,
  .makerboard-about,
  .makerboard-feature__sticky-inner,
  .makerboard-feature__content,
  .makerboard-feature-list,
  .makerboard-feature-list__item,
  .makerboard-try,
  .makerboard-kit-card,
  .makerboard-product,
  .makerboard-programming-item,
  .makerboard-requirements,
  .makerboard-column-item {
    min-width: 0;
    max-width: 100%; }
  .makerboard-hero {
    padding: 0;
    min-height: 0;
    background: #f2fbff; }
  .makerboard-hero__inner {
    display: block;
    height: auto; }
  .makerboard-hero__content {
    position: absolute;
    top: 40px;
    left: 20px;
    width: calc(100% - 40px);
    padding: 0;
    transform: none; }
  .makerboard-hero__copy {
    font-size: 26px;
    line-height: 1.5;
    margin: 0 auto;
    text-align: center; }
  .makerboard-hero__title {
    width: 100%;
    font-size: 40px;
    line-height: 1.6;
    margin-top: 8px;
    padding-left: 0;
    text-align: center;
    white-space: nowrap; }
  .makerboard-actions {
    flex-direction: column;
    align-items: center; }
  .makerboard-section {
    padding: 58px 18px; }
  .makerboard-section__heading {
    margin-bottom: 26px; }
    .makerboard-section__heading h2 {
      font-size: 25px; }
  .makerboard-section-title {
    margin-bottom: 26px; }
  .makerboard-section-title__label,
  .makerboard-section__label {
    min-width: 72px;
    min-height: 28px;
    font-size: 16px; }
  .makerboard-section-title__heading,
  .makerboard-section__heading h2 {
    font-size: 25px; }
  .makerboard-section-title__heading {
    white-space: normal; }
  .makerboard-section-title__heading-small {
    font-size: 20px; }
  .makerboard-section-title__heading-tracking {
    letter-spacing: .56px; }
  .makerboard-section-title__heading-tracking-wide {
    letter-spacing: 1px; }
  .makerboard-about {
    gap: 24px; }
  .makerboard-section--about {
    min-height: auto;
    padding: 58px 18px;
    background-image: url("/images/makerboard/about-bg-sp.png");
    background-position: center top;
    background-size: 100% auto;
    background-repeat: no-repeat; }
    .makerboard-section--about::before {
      width: 220px;
      height: 170px; }
    .makerboard-section--about::after {
      top: 104px;
      right: -190px;
      width: 420px;
      height: 360px; }
    .makerboard-section--about .makerboard-section__inner::before {
      bottom: -86px;
      left: -210px;
      width: 360px;
      height: 220px; }
  .makerboard-about {
    grid-template-columns: 1fr; }
  .makerboard-about__image {
    width: 100%; }
  .makerboard-about__lead {
    font-size: 20px; }
  .makerboard-section--feature {
    min-height: auto;
    padding: 48px 20px; }
  .makerboard-section--try {
    padding: 58px 18px; }
  .makerboard-kit-card,
  .makerboard-kit-card--communication,
  .makerboard-product,
  .makerboard-programming-item,
  .makerboard-requirements,
  .makerboard-column-item {
    grid-template-columns: 1fr; }
  .makerboard-feature-try {
    background-image: url("/images/makerboard/feature-try-bg-sp.png");
    background-attachment: scroll;
    background-position: center top;
    background-size: cover;
    background-repeat: no-repeat; }
  .makerboard-feature__sticky-bg {
    position: relative;
    top: auto;
    width: 100%;
    margin: 0 0 40px;
    height: auto;
    background: none; }
  .makerboard-feature__sticky-inner {
    height: auto;
    max-width: 335px;
    pointer-events: auto; }
  .makerboard-feature__title {
    position: relative;
    top: auto;
    left: auto;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center; }
  .makerboard-feature__content {
    max-width: 640px;
    padding: 0; }
  .makerboard-section--kit,
  .makerboard-section--products {
    padding: 58px 18px; }
  .makerboard-section--products {
    background-image: url("/images/makerboard/makerboard-product-bg-sp.png");
    background-position: center top;
    background-size: cover;
    background-repeat: no-repeat; }
  .makerboard-feature__catch {
    font-size: 32px;
    margin: 0 auto; }
  .makerboard-feature__catch-intro,
  .makerboard-feature__catch-small {
    font-size: 20px; }
  .makerboard-feature-list {
    gap: 40px;
    width: 100%;
    margin: 0; }
  .makerboard-feature-list__image {
    width: 100%;
    height: auto;
    border-radius: 10px; }
  .makerboard-feature-list__heading {
    gap: 8px;
    margin-top: 20px;
    min-width: 0; }
    .makerboard-feature-list__heading img {
      width: 46px;
      height: 40px; }
    .makerboard-feature-list__heading h3 {
      flex: 1;
      min-width: 0;
      font-size: 28px;
      line-height: 1.6; }
  .makerboard-feature-list__item p {
    margin-top: 16px;
    font-size: 16px;
    line-height: 1.6; }
  .makerboard-feature-list--motion-ready .makerboard-feature-list__item,
  .makerboard-feature-list--motion-ready .makerboard-feature-list__item--visible {
    opacity: 1;
    filter: none;
    transform: none;
    transition: none; }
  .makerboard-kit-card,
  .makerboard-kit-card--communication {
    padding: 28px 20px;
    border-radius: 18px; }
  .makerboard-kit-card h3 {
    font-size: 20px; }
  .makerboard-kit-card__items {
    font-size: 15px; }
  .makerboard-kit-card__price {
    margin-bottom: 16px; }
  .makerboard-kit-card__price-yen {
    font-size: 24px; }
  .makerboard-kit-card__price-value {
    font-size: 34px; }
  .makerboard-kit-card__price-tax {
    font-size: 14px; }
  .makerboard-kit-card__items--cols {
    grid-template-columns: 1fr;
    gap: 0; }
  .makerboard-kit-card__note {
    padding: 16px;
    font-size: 13px; }
  .makerboard-kit-card__button {
    margin-top: 16px; }
  .makerboard-product__body {
    text-align: center; }
    .makerboard-product__body h3 {
      font-size: 24px;
      line-height: 1.5; }
    .makerboard-product__body p {
      font-size: 13px;
      text-align: left; }
  .makerboard-product__button {
    width: 100%;
    max-width: 272px; }
  .makerboard-story {
    gap: 20px; }
  .makerboard-story-card {
    padding: 24px 20px; }
    .makerboard-story-card p {
      font-size: 14px; }
  .makerboard-story-card__header {
    grid-template-columns: 56px minmax(0, 1fr);
    gap: 12px;
    margin-bottom: 20px; }
  .makerboard-story-card__avatar {
    width: 56px;
    height: 56px; }
  .makerboard-story-card__profile > span {
    font-size: 12px; }
  .makerboard-story-card__name {
    margin-top: 4px !important;
    font-size: 20px !important; }
  .makerboard-story-card__content {
    margin-top: 20px; }
  .makerboard-quick-buy h2,
  .makerboard-try__body h2,
  .makerboard-try__message {
    font-size: 32px; }
  .makerboard-try__message {
    margin-top: 40px;
    font-size: 32px;
    line-height: 1.5; }
  .makerboard-quick-buy {
    display: flex;
    flex-direction: column;
    align-items: center;
    min-height: 0;
    padding: 30px 20px;
    border-radius: 10px; }
  .makerboard-quick-buy__visual {
    position: relative;
    top: auto;
    left: auto;
    order: -1;
    width: 100%;
    max-width: 260px;
    height: auto;
    margin: 0 auto 24px; }
    .makerboard-quick-buy__visual img {
      height: auto; }
  .makerboard-quick-buy__content {
    position: relative;
    top: auto;
    left: auto;
    order: 0;
    width: 100%;
    max-width: 335px;
    text-align: center; }
  .makerboard-quick-buy__button {
    display: flex;
    width: 100%;
    max-width: 335px;
    margin: 0 auto; }
  .makerboard-offline {
    padding: 20px; }
    .makerboard-offline h3 {
      font-size: 24px; }
    .makerboard-offline p {
      font-size: 15px; }
  .makerboard-try__body p:not(.makerboard-section__label) {
    font-size: 15px; }
  .makerboard-try {
    display: block; }
  .makerboard-try__body {
    width: 100%;
    margin: 0 0 36px;
    text-align: center; }
    .makerboard-try__body h2 {
      margin: 24px 0 20px;
      white-space: normal; }
  .makerboard-try__button {
    width: 100%;
    max-width: 272px;
    margin: 0 auto; }
  .makerboard-try__cards {
    display: grid;
    grid-template-columns: 180fr 138fr;
    column-gap: 17px;
    row-gap: 20px;
    align-items: start;
    justify-content: center;
    width: 100%;
    max-width: 335px;
    margin: 0 auto; }
  .makerboard-try__card .makerboard-try__card-media {
    border-radius: 10px; }
  .makerboard-try__card .makerboard-try__card-title {
    top: -18px;
    max-width: 100%; }
  .makerboard-try__card--stand {
    grid-column: 1 / -1;
    width: 100%; }
    .makerboard-try__card--stand .makerboard-try__card-title {
      top: -16px;
      max-width: 100%; }
  .makerboard-try__cards .makerboard-try__card--stand > .makerboard-try__card-title {
    top: -16px; }
  .makerboard-try__card--flap {
    grid-column: 1;
    margin-top: 24px; }
  .makerboard-try__card--extend {
    grid-column: 2; }
  .makerboard-kit-list h3,
  .makerboard-programming-item__body h3,
  .makerboard-column-list h3 {
    font-size: 20px; }
  .makerboard-programming-item__body h3 {
    font-size: 24px; }
  .makerboard-kit-card h3 {
    font-size: 20px;
    line-height: 1.4; }
  .makerboard-kit-card__items {
    font-size: 16px;
    line-height: 1.6; }
  .makerboard-kit-card__note {
    font-size: 14px;
    line-height: 1.6; }
  .makerboard-products,
  .makerboard-programming-list {
    gap: 56px; }
  .makerboard-product,
  .makerboard-programming-item,
  .makerboard-requirements,
  .makerboard-column-item {
    gap: 24px; }
  .makerboard-product__image,
  .makerboard-programming-item__image,
  .makerboard-requirements__visual,
  .makerboard-column-item__image {
    width: 100%;
    max-width: 560px;
    margin: 0 auto; }
  .makerboard-product__body,
  .makerboard-programming-item__body,
  .makerboard-requirements__body,
  .makerboard-column-item__body {
    min-width: 0;
    max-width: 100%; }
  .makerboard-feature-list__item p,
  .makerboard-product__body p,
  .makerboard-programming-item__body p:not(.makerboard-programming-item__level),
  .makerboard-requirements__body p,
  .makerboard-requirements__body dd,
  .makerboard-column-item__body p,
  .makerboard-kit-card__note,
  .makerboard-store__note {
    overflow-wrap: anywhere; }
  .makerboard-programming-item__level {
    margin-right: auto;
    margin-left: 0; }
  .makerboard-requirements__body h3 {
    font-size: 20px; }
  .makerboard-requirements__body p,
  .makerboard-requirements__body dd {
    font-size: 14px; }
  .makerboard-requirements__body dt {
    font-size: 14px; }
  .makerboard-voice-list {
    gap: 24px; }
  .makerboard-section--voice {
    background-image: url("/images/makerboard/voice-bg-sp.png");
    background-position: center top;
    background-size: cover;
    background-repeat: no-repeat; }
  .makerboard-voice-list__item {
    flex-direction: column;
    align-items: center;
    gap: 14px;
    padding: 32px 20px; }
    .makerboard-voice-list__item p {
      width: 100%;
      font-size: 14px; }
  .makerboard-voice-list__avatar {
    flex: 0 0 auto; }
  .makerboard-voice-gallery {
    --voice-gallery-step: calc((160px + 14px) * 5);
    display: flex;
    gap: 14px;
    width: max-content;
    min-width: 100%;
    margin-top: 36px;
    transform: translateX(calc(-1 * var(--voice-gallery-step)));
    animation: makerboard-voice-gallery-loop 24s linear infinite; }
  .makerboard-voice-gallery li {
    flex: 0 0 160px; }
  .makerboard-column-list li {
    padding: 0; }
  .makerboard-column-item {
    gap: 18px; }
  .makerboard-column-item__heading {
    gap: 10px; }
    .makerboard-column-item__heading img {
      width: 44px;
      height: auto; }
  .makerboard-column-item__body h3 {
    font-size: 20px; }
  .makerboard-column-item__body p {
    margin-top: 10px;
    font-size: 14px; }
  .makerboard-faq-list li {
    padding: 20px; }
  .makerboard-section--faq {
    background-image: url("/images/makerboard/faq-bg-sp.png");
    background-position: center top;
    background-size: cover;
    background-repeat: no-repeat; }
  .makerboard-faq-list__q,
  .makerboard-faq-list__a {
    padding-left: 36px; }
    .makerboard-faq-list__q span,
    .makerboard-faq-list__a span {
      width: 28px;
      height: 28px;
      font-size: 16px; }
  .makerboard-faq-list__q {
    font-size: 20px; }
  .makerboard-faq-list__a {
    margin-top: 10px;
    font-size: 14px; }
  .makerboard-faq__more {
    margin-top: 32px; }
  .makerboard-section--store .makerboard-actions {
    gap: 14px;
    margin-top: 26px; }
  .makerboard-section--contact .makerboard-actions {
    gap: 14px;
    margin-top: 26px; }
  .makerboard-store__note {
    margin-top: 22px;
    font-size: 14px; }
  .makerboard-section-title__heading,
  .makerboard-section__heading h2 {
    font-size: 32px;
    line-height: 1.6; }
  .makerboard-about__lead,
  .makerboard-feature-list__item p,
  .makerboard-programming-item__body p:not(.makerboard-programming-item__level),
  .makerboard-try__body p:not(.makerboard-section__label),
  .makerboard-column-item__body p,
  .makerboard-voice-list__item p,
  .makerboard-story-card p,
  .makerboard-faq-list__a,
  .makerboard-store__note {
    font-size: 16px;
    line-height: 1.6; }
  .makerboard-about__lead {
    font-size: 22px;
    line-height: 1.8;
    text-align: center; }
  .makerboard-kit-card h3,
  .makerboard-column-item__body h3,
  .makerboard-faq-list__q {
    font-size: 28px;
    line-height: 1.4; }
  .makerboard-programming-item__actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 15px;
    flex-wrap: nowrap; }
  .makerboard-programming-item__actions--offline {
    width: 100%;
    max-width: 335px;
    margin-right: auto;
    margin-left: auto;
    grid-template-columns: 1fr;
    gap: 16px;
    justify-items: center; }
  .makerboard-programming-item__button,
  .makerboard-programming-item__button--medium,
  .makerboard-programming-item__button--store,
  .makerboard-programming-item__button--contact,
  .makerboard-button--medium,
  .makerboard-product__button,
  .makerboard-try__button,
  .makerboard-quick-buy__button {
    width: 100%;
    max-width: 335px;
    min-height: 54px;
    border-width: 2px;
    font-size: 14px;
    line-height: 1.6; }
    .makerboard-programming-item__button span,
    .makerboard-programming-item__button--medium span,
    .makerboard-programming-item__button--store span,
    .makerboard-programming-item__button--contact span,
    .makerboard-button--medium span,
    .makerboard-product__button span,
    .makerboard-try__button span,
    .makerboard-quick-buy__button span {
      font-size: inherit;
      line-height: inherit; }
  .makerboard-programming-item__button--store,
  .makerboard-programming-item__button--contact {
    font-size: 14px; }
  .makerboard-programming__heading-small {
    font-size: 28px; }
  .makerboard-voice__heading-small {
    font-size: 25px; }
  .makerboard-column-item__body h3 {
    font-size: 20px;
    line-height: 1.4; }
  .makerboard-column-item__body p {
    font-size: 16px;
    line-height: 1.6; }
  .makerboard-kit-card--board {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0; }
  .makerboard-kit-card--board .makerboard-kit-card__body {
    display: contents; }
  .makerboard-kit-card--board h3 {
    grid-row: 1;
    margin-bottom: 12px;
    font-size: 20px;
    line-height: 1.4; }
  .makerboard-kit-card--board .makerboard-kit-card__items {
    grid-row: 2;
    margin: 0 0 20px;
    font-size: 16px;
    line-height: 1.6; }
  .makerboard-kit-card--board .makerboard-kit-card__image {
    grid-row: 3;
    width: 140px;
    max-width: 140px;
    margin: 0 auto 20px;
    justify-self: center; }
  .makerboard-kit-card--board .makerboard-kit-card__price {
    grid-row: 4;
    margin: 0 0 20px; }
  .makerboard-kit-card--board .makerboard-kit-card__note {
    grid-row: 5;
    margin-top: 0;
    font-size: 14px;
    line-height: 1.6; }
  .makerboard-kit-card--board .makerboard-kit-card__button {
    grid-row: 6;
    margin-top: 20px; }
  .makerboard-kit-card--communication h3 {
    font-size: 20px;
    line-height: 1.4; }
  .makerboard-kit-card--communication {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0; }
  .makerboard-kit-card--communication .makerboard-kit-card__body {
    display: contents; }
  .makerboard-kit-card--communication h3 {
    grid-row: 1; }
  .makerboard-kit-card--communication .makerboard-kit-card__items {
    grid-row: 2; }
  .makerboard-kit-card--communication .makerboard-kit-card__items,
  .makerboard-kit-card--communication .makerboard-kit-card__items p {
    font-size: 16px;
    line-height: 1.6; }
  .makerboard-kit-card--communication .makerboard-kit-card__image {
    grid-row: 3; }
  .makerboard-kit-card--communication .makerboard-kit-card__price {
    grid-row: 4;
    margin: 0 0 20px; }
  .makerboard-kit-card--communication .makerboard-kit-card__note {
    grid-row: 5;
    font-size: 14px;
    line-height: 1.6; }
  .makerboard-kit-card--communication .makerboard-kit-card__button {
    grid-row: 6;
    margin-top: 20px; }
  .makerboard-kit-card--communication .makerboard-kit-card__image {
    width: 100%;
    max-width: 320px;
    justify-self: center; }
  .makerboard-faq-list__q {
    font-size: 20px;
    line-height: 1.5; }
  .makerboard-faq-list__a {
    font-size: 16px;
    line-height: 1.6; } }

.kurikit-footer p {
  color: #ffffff;
  line-height: 2.2; }

.kurikit-footer a {
  font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: normal;
  font-size: 1rem;
  text-decoration: none;
  display: inline-block;
  font-size: 1.8rem; }
  @media screen and (min-width: 1024px) {
    .kurikit-footer a {
      font-size: 0.875rem; } }
.kurikit-footer {
  background: #282828; }
  .kurikit-footer-inner {
    max-width: 1000px;
    width: 90vw;
    margin: 0 auto;
    z-index: 1;
    position: relative;
    height: 100%;
    padding: 6.25% 0 5%;
    display: grid;
    grid-template-columns: 1fr 1fr; }
    @media screen and (min-width: 1024px) {
      .kurikit-footer-inner {
        grid-template-columns: 2fr 2fr 1fr 2fr; } }
  .kurikit-footer .external-icon {
    display: inline-block;
    height: 1.6rem;
    width: auto;
    margin: 0 0 0 6px; }
    @media screen and (min-width: 1024px) {
      .kurikit-footer .external-icon {
        height: 0.8rem; } }
    .kurikit-footer .external-icon img {
      display: flex;
      width: 100%;
      height: 100%; }
    .kurikit-footer .external-icon.is-no-space {
      margin: 0; }
  .kurikit-footer .link {
    display: block;
    grid-column: 1 / 4;
    border-bottom: 1px solid #9F9F9F;
    padding-bottom: 10px; }
    @media screen and (min-width: 1024px) {
      .kurikit-footer .link {
        grid-column: 1 / 2;
        border-bottom: none;
        padding-bottom: 0; } }
  .kurikit-footer .product {
    display: block;
    grid-column: 1 / 4;
    padding-top: 10px; }
    @media screen and (min-width: 1024px) {
      .kurikit-footer .product {
        grid-column: 2 / 3;
        padding-top: 0; } }
    .kurikit-footer .product-title {
      font-size: 1.8rem; }
      @media screen and (min-width: 1024px) {
        .kurikit-footer .product-title {
          font-size: 0.875rem; } }
      .kurikit-footer .product-title p {
        color: #707070; }
    .kurikit-footer .product-item {
      display: flex;
      align-items: center;
      justify-content: left; }
      .kurikit-footer .product-item p {
        font-size: 1.8rem; }
        @media screen and (min-width: 1024px) {
          .kurikit-footer .product-item p {
            font-size: 0.75rem; } }
      .kurikit-footer .product-item:before {
        border-top: 1px solid #707070;
        content: "";
        width: 5px;
        margin-right: 7px; }
  @media screen and (max-width: 1023px) {
    .kurikit-footer .info:before {
      display: block;
      content: "";
      width: 100vw;
      margin: 0 calc(50% - 50vw);
      border-top: 1px solid #cfcfcf;
      top: 0;
      position: absolute; } }
  .kurikit-footer .info {
    display: block;
    text-align: center;
    margin: 5% 0 0;
    grid-column: 1 / 3;
    padding: 60px 0;
    position: relative; }
    @media screen and (min-width: 1024px) {
      .kurikit-footer .info {
        display: grid;
        grid-template-rows: 1fr 1fr 3fr;
        margin: 0;
        padding: 0 0 0 40px;
        border-left: 1px solid #cfcfcf;
        grid-column: 4 / 5; } }
    .kurikit-footer .info .yukai-logo {
      margin: 5% auto;
      width: 220px;
      max-width: 100%;
      height: auto;
      transform-box: fill-box; }
      @media screen and (min-width: 1024px) {
        .kurikit-footer .info .yukai-logo {
          margin: 0 auto;
          width: 11em;
          height: auto;
          grid-row: 1 / 2; } }
      .kurikit-footer .info .yukai-logo img {
        width: 100%;
        height: 100%; }
    .kurikit-footer .info .icons {
      display: flex;
      margin: 0 auto;
      width: 50%;
      justify-content: space-between; }
      @media screen and (min-width: 1024px) {
        .kurikit-footer .info .icons {
          margin: 5px auto;
          width: 75%;
          grid-row: 2 / 3; } }
      .kurikit-footer .info .icons .icon a {
        width: 34px; }
        .kurikit-footer .info .icons .icon a img {
          width: 100%;
          height: 100%; }
    .kurikit-footer .info .lang {
      display: flex;
      justify-content: center;
      margin: 5% auto; }
      @media screen and (min-width: 1024px) {
        .kurikit-footer .info .lang {
          margin: auto;
          grid-row: 3 / 4; } }
      .kurikit-footer .info .lang a, .kurikit-footer .info .lang p {
        line-height: 1; }
      .kurikit-footer .info .lang a.inactive p {
        color: #888888; }
        .kurikit-footer .info .lang a.inactive p:hover {
          transition: 0.2s;
          color: #ffffff; }
    .kurikit-footer .info .copyright {
      position: relative; }
      .kurikit-footer .info .copyright p {
        font-size: 0.9rem;
        line-height: 1;
        margin-top: 60px; }
        @media screen and (min-width: 1024px) {
          .kurikit-footer .info .copyright p {
            font-size: 0.625rem;
            position: absolute;
            bottom: 10px;
            right: 0;
            left: 0;
            grid-row: 4 / 4;
            margin-top: 0; } }
