@charset "UTF-8";
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-style: normal;
  vertical-align: baseline;
  line-break: strict; }

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

img {
  vertical-align: top; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

input, textarea {
  margin: 0;
  padding: 0; }

ol, ul {
  list-style: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

caption, th {
  text-align: left; }

a:focus {
  outline: none; }

.clearfix:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden; }

.clearfix {
  min-height: 1px; }

* html .clearfix {
  height: 1px; }

.both {
  clear: both; }

h1,
h2,
h3,
h4,
p,
a,
span {
  white-space: normal;
  word-break: break-word; }

/* フォームのスタイル解除
------------------------------------------------------ */
input,
button,
textarea,
select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: none;
  border-radius: 0;
  outline: none;
  resize: none;
  border: none; }
  input:hover,
  button:hover,
  textarea:hover,
  select:hover {
    cursor: pointer; }

/* ----------------------------------------------------------
font-weight
---------------------------------------------------------- */
@use 'colors';
@use "mixin";
@use 'media';
@use 'font';
html {
  scroll-behavior: smooth; }

html,
body {
  margin: 0;
  font-weight: 400;
  /* regular */
  color: #000;
  counter-reset: number 0;
  font-size: 10px;
  font-family: 'Shippori Mincho', serif; }
  html a,
  html button,
  html .children,
  body a,
  body button,
  body .children {
    -webkit-transition: opacity 0.3s ease;
    transition: opacity 0.3s ease; }

body {
  width: 100%;
  overflow: scroll;
  font-weight: 400;
  /* regular */
  color: #000;
  position: relative;
  position: relative; }

ul,
li {
  list-style: none; }

a {
  text-decoration: none; }

img {
  max-width: 100%; }

.t-bold {
  font-weight: 700;
  /* bold */ }

.t-a-r {
  text-align: right; }

#container {
  position: relative;
  padding-top: 0px;
  padding-top: calc(0 / 375 * 100vw);
  /*&:before {
    position: absolute;
    left: 0;
    top: 0;
    opacity: 0.3;
    background: {
      image: url(../../_home.jpg);
      size: 100% auto;
    }
    content: "";
    width: 100%;
    height: 100%;
    z-index: 100;
    pointer-events: none;
  }*/ }

.scroll-section {
  position: relative;
  -webkit-transition: opacity 0.5s ease-in-out .5s;
  transition: opacity 0.5s ease-in-out .5s; }

#home-nav {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding-top: 0px;
  padding-top: calc(0 / 375 * 100vw); }

.home-nav__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column; }

.home-nav__item {
  color: #000;
  font-family: 'Shippori Mincho', serif;
  -webkit-writing-mode: tb-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
          writing-mode: vertical-rl;
  text-orientation: upright;
  font-size: 0px;
  font-size: calc(0 / 375 * 100vw);
  letter-spacing: 0.38em;
  margin-bottom: 0px;
  margin-bottom: calc(0 / 375 * 100vw);
  position: relative; }
  .home-nav__item:after {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0px;
    right: calc(0 / 375 * 100vw);
    width: 1px;
    height: 0%;
    background: #000;
    -webkit-transition: height 0.5s ease-in-out;
    transition: height 0.5s ease-in-out; }
  .home-nav__item.is-seeing:after {
    height: 100%;
    top: 0; }

#kv {
  height: auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding-top: 87px;
  padding-top: calc(87 / 375 * 100vw); }

#kv-content {
  width: 345px;
  width: calc(345 / 375 * 100vw);
  height: 703px;
  height: calc(703 / 375 * 100vw);
  position: relative; }

#kv-script__sm {
  position: relative;
  width: 100%;
  height: 100%; }
  #kv-script__sm .item {
    position: absolute;
    left: 50%;
    top: 50%;
    translate: -50% -50%;
    width: 100%;
    height: 100%;
    background-position: center center;
    background-size: auto 100%;
    background-repeat: no-repeat;
    opacity: 0;
    -webkit-transition: 1s ease-in-out;
    transition: 1s ease-in-out; }
  #kv-script__sm .item-1 {
    background-image: url(../../images/home/script-1__sm.svg);
    z-index: 1; }
  #kv-script__sm.phase-1 .item-1 {
    opacity: 1; }
  #kv-script__sm .item-2 {
    background-image: url(../../images/home/script-2__sm.svg);
    z-index: 2; }
  #kv-script__sm.phase-2 .item-2 {
    opacity: 1; }
  #kv-script__sm .item-3 {
    background-image: url(../../images/home/script-3__sm.svg);
    z-index: 3; }
  #kv-script__sm.phase-3 .item-3 {
    opacity: 1; }
  #kv-script__sm .item-4 {
    background-image: url(../../images/home/script-4__sm.svg);
    z-index: 4; }
  #kv-script__sm.phase-4 .item-4 {
    opacity: 1; }
  #kv-script__sm .item-5 {
    background-image: url(../../images/home/script-5__sm.svg);
    z-index: 5; }
  #kv-script__sm.phase-5 .item-5 {
    opacity: 1; }
  #kv-script__sm .navigation {
    position: absolute;
    top: 50%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    width: 30px;
    height: 20%;
    z-index: 5;
    font-size: 12px;
    font-size: calc(12 / 375 * 100vw);
    opacity: 0.5;
    -webkit-transition: .5s ease-in-out;
    transition: .5s ease-in-out; }
    #kv-script__sm .navigation.prev {
      right: -11px;
      right: calc(-11 / 375 * 100vw);
      translate: 100% -50%; }
      #kv-script__sm .navigation.prev:after {
        content: "→"; }
    #kv-script__sm .navigation.next {
      left: -11px;
      left: calc(-11 / 375 * 100vw);
      translate: -100% -50%; }
      #kv-script__sm .navigation.next:after {
        content: "←"; }
  #kv-script__sm.phase-1 .navigation.prev {
    opacity: 0;
    pointer-events: none; }
  #kv-script__sm.phase-3 .navigation.next {
    opacity: 0;
    pointer-events: none; }

#kv-script {
  position: absolute;
  top: 45px;
  top: calc(45 / 375 * 100vw);
  right: 97px;
  right: calc(97 / 375 * 100vw);
  width: 844px;
  width: calc(844 / 375 * 100vw);
  height: 610px;
  height: calc(610 / 375 * 100vw); }
  #kv-script path {
    fill: url(#gradient);
    opacity: 0;
    -webkit-animation: script 1s linear 1s forwards;
            animation: script 1s linear 1s forwards; }
  #kv-script #stop1 {
    -webkit-animation: stop1 3s ease-in-out 1s forwards alternate;
            animation: stop1 3s ease-in-out 1s forwards alternate; }

@-webkit-keyframes script {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@keyframes script {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@-webkit-keyframes stop1 {
  0% {
    stop-color: #fff; }
  100% {
    stop-color: #000; } }

@keyframes stop1 {
  0% {
    stop-color: #fff; }
  100% {
    stop-color: #000; } }

@-webkit-keyframes stop2 {
  0% {
    stop-color: #fff; }
  100% {
    stop-color: #000; } }

@keyframes stop2 {
  0% {
    stop-color: #fff; }
  100% {
    stop-color: #000; } }

/*------------------------------------------

トップページ共通パーツ

------------------------------------------*/
.home-copy__inner {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

.home-copy__head {
  font-size: 15px;
  font-size: calc(15 / 375 * 100vw);
  letter-spacing: 0.66em;
  font-weight: 400;
  /* regular */
  -webkit-writing-mode: tb-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
          writing-mode: vertical-rl;
  text-orientation: upright;
  margin-bottom: 60px;
  margin-bottom: calc(60 / 375 * 100vw); }

.home-copy__body {
  font-size: 20px;
  font-size: calc(20 / 375 * 100vw);
  font-weight: 400;
  /* regular */
  line-height: 2;
  margin-bottom: 20px;
  margin-bottom: calc(20 / 375 * 100vw); }
  .home-copy__body .brackets:before, .home-copy__body .brackets:after {
    position: relative; }
  .home-copy__body .brackets:before {
    content: "「"; }
  .home-copy__body .brackets:after {
    content: "」"; }
  .home-copy__body .green {
    color: #5DA804;
    font-weight: 600;
    /* semibold */ }

.home-content {
  padding-top: 180px;
  padding-top: calc(180 / 375 * 100vw); }
  .home-content:not(:last-of-type) {
    margin-bottom: 60px;
    margin-bottom: calc(60 / 375 * 100vw); }
  .home-content.no-fig {
    padding-top: 0px;
    padding-top: calc(0 / 375 * 100vw); }

.home-lead {
  font-size: 18px;
  font-size: calc(18 / 375 * 100vw);
  height: auto;
  margin-left: 0px;
  margin-left: calc(0 / 375 * 100vw);
  margin-bottom: 25px;
  margin-bottom: calc(25 / 375 * 100vw); }
  .home-lead .brackets {
    margin-top: -3px;
    margin-top: calc(-3 / 375 * 100vw); }
    .home-lead .brackets:before, .home-lead .brackets:after {
      position: relative; }
    .home-lead .brackets:before {
      content: "「"; }
    .home-lead .brackets:after {
      content: "」"; }

.home-body {
  font-size: 15px;
  font-size: calc(15 / 375 * 100vw);
  height: auto;
  line-break: auto;
  -webkit-transition-delay: 1s;
          transition-delay: 1s; }

.home-fig {
  width: 315px;
  width: calc(315 / 375 * 100vw);
  height: 150px;
  height: calc(150 / 375 * 100vw);
  overflow: hidden;
  position: relative; }
  .home-fig img {
    width: 315px;
    width: calc(315 / 375 * 100vw);
    height: 150px;
    height: calc(150 / 375 * 100vw); }
  .home-fig.narrow {
    width: 315px;
    width: calc(315 / 375 * 100vw); }
    .home-fig.narrow img {
      width: 315px;
      width: calc(315 / 375 * 100vw);
      height: 150px;
      height: calc(150 / 375 * 100vw); }
  .home-fig.right {
    margin-left: 0px;
    margin-left: calc(0 / 375 * 100vw); }

.home-pic {
  width: 375px;
  width: calc(375 / 375 * 100vw);
  height: 375px;
  height: calc(375 / 375 * 100vw);
  display: block;
  margin-left: auto;
  margin-right: auto; }
  .home-pic img {
    width: 375px;
    width: calc(375 / 375 * 100vw);
    height: 375px;
    height: calc(375 / 375 * 100vw); }

/*------------------------------------------

はじめに

------------------------------------------*/
#intro {
  /* BEGINNING セクションごとに違う */
  padding-top: 60px;
  padding-top: calc(60 / 375 * 100vw);
  padding-bottom: 110px;
  padding-bottom: calc(110 / 375 * 100vw);
  /* END セクションごとに違う */ }
  #intro .label {
    color: #fff;
    background: #5DA804;
    width: 315px;
    width: calc(315 / 375 * 100vw);
    height: 83px;
    height: calc(83 / 375 * 100vw);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 20px;
    font-size: calc(20 / 375 * 100vw);
    letter-spacing: 0.05em;
    font-weight: 600;
    /* semibold */
    text-align: center;
    line-height: 2;
    margin-bottom: 50px;
    margin-bottom: calc(50 / 375 * 100vw); }

/*------------------------------------------

職人気質

------------------------------------------*/
#craftman {
  /* BEGINNING セクションごとに違う */
  padding-top: 60px;
  padding-top: calc(60 / 375 * 100vw);
  padding-bottom: 50px;
  padding-bottom: calc(50 / 375 * 100vw);
  /* END セクションごとに違う */ }
  #craftman .home-copy {
    margin-bottom: 30px;
    margin-bottom: calc(30 / 375 * 100vw); }

/*------------------------------------------

結局は基礎

------------------------------------------*/
#basic {
  /* BEGINNING セクションごとに違う */
  padding-top: 60px;
  padding-top: calc(60 / 375 * 100vw);
  padding-bottom: 50px;
  padding-bottom: calc(50 / 375 * 100vw);
  /* END セクションごとに違う */ }

/*------------------------------------------

縁ジニア

------------------------------------------*/
#engineer {
  /* BEGINNING セクションごとに違う */
  padding-top: 60px;
  padding-top: calc(60 / 375 * 100vw);
  padding-bottom: 50px;
  padding-bottom: calc(50 / 375 * 100vw);
  /* END セクションごとに違う */ }

/*------------------------------------------

本音と建前

------------------------------------------*/
#stance {
  /* BEGINNING セクションごとに違う */
  padding-top: 60px;
  padding-top: calc(60 / 375 * 100vw);
  padding-bottom: 50px;
  padding-bottom: calc(50 / 375 * 100vw);
  /* END セクションごとに違う */ }
@media screen and (min-width: 769px) {
  .setOrder {
    color: #000; }
    #container {
      padding-top: 0px;
      padding-top: calc(0 / 1366 * 100vw); }
    #home-nav {
      padding-top: 38px;
      padding-top: calc(38 / 1366 * 100vw); }
    .home-nav__item {
      font-size: 13px;
      font-size: calc(13 / 1366 * 100vw); }
    .home-nav__item {
      margin-bottom: 31px;
      margin-bottom: calc(31 / 1366 * 100vw); }
      .home-nav__item:after {
        right: -4px;
        right: calc(-4 / 1366 * 100vw); }
    #kv {
      height: 768px;
      height: calc(768 / 1366 * 100vw); }
    #kv {
      padding-top: 0px;
      padding-top: calc(0 / 1366 * 100vw); }
    #kv {
      min-height: 100vh;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
    #kv-content {
      width: 990px;
      width: calc(990 / 1366 * 100vw); }
    #kv-content {
      height: 703px;
      height: calc(703 / 1366 * 100vw); }
    #kv-content {
      background-image: url(../../images/home/scriptpaper-1.svg);
      background-position: top right;
      background-size: auto 100%;
      background-repeat: repeat-x; }
      #kv-script__sm .navigation {
        font-size: 0px;
        font-size: calc(0 / 1366 * 100vw); }
        #kv-script__sm .navigation.prev {
          right: 0px;
          right: calc(0 / 1366 * 100vw); }
        #kv-script__sm .navigation.next {
          left: 0px;
          left: calc(0 / 1366 * 100vw); }
    #kv-script {
      top: 44px;
      top: calc(44 / 1366 * 100vw); }
    #kv-script {
      right: 52px;
      right: calc(52 / 1366 * 100vw); }
    #kv-script {
      width: 844px;
      width: calc(844 / 1366 * 100vw); }
    #kv-script {
      height: 610px;
      height: calc(610 / 1366 * 100vw); }
    .home-copy__inner {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: reverse;
          -ms-flex-direction: row-reverse;
              flex-direction: row-reverse;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center; }
    .home-copy__head {
      font-size: 15px;
      font-size: calc(15 / 1366 * 100vw); }
    .home-copy__head {
      margin-bottom: 0px;
      margin-bottom: calc(0 / 1366 * 100vw); }
    .home-copy__head {
      position: absolute;
      top: -0.55em;
      left: 50%; }
    .home-copy__body {
      font-size: 25px;
      font-size: calc(25 / 1366 * 100vw); }
    .home-copy__body {
      margin-bottom: 0px;
      margin-bottom: calc(0 / 1366 * 100vw); }
    .home-copy__body {
      -webkit-writing-mode: tb-rl;
          -ms-writing-mode: tb-rl;
              writing-mode: tb-rl;
      -webkit-writing-mode: vertical-rl;
              writing-mode: vertical-rl;
      text-orientation: upright;
      letter-spacing: 0.4em;
      position: relative;
      top: 1.1em;
      left: 0.1em;
      line-break: anywhere; }
      .home-copy__body .brackets:before {
        left: 0.35em; }
      .home-copy__body .brackets:after {
        left: -0.35em;
        bottom: -0.2em; }
      .home-content:not(:last-of-type) {
        margin-bottom: 155px;
        margin-bottom: calc(155 / 1366 * 100vw); }
    .home-content {
      padding-top: 0px;
      padding-top: calc(0 / 1366 * 100vw); }
    .home-content {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: reverse;
          -ms-flex-direction: row-reverse;
              flex-direction: row-reverse; }
      .home-content.no-fig {
        padding-top: 0px;
        padding-top: calc(0 / 1366 * 100vw); }
    .home-lead {
      font-size: 20px;
      font-size: calc(20 / 1366 * 100vw); }
    .home-lead {
      height: 321px;
      height: calc(321 / 1366 * 100vw); }
    .home-lead {
      margin-left: 22px;
      margin-left: calc(22 / 1366 * 100vw); }
    .home-lead {
      margin-bottom: 0px;
      margin-bottom: calc(0 / 1366 * 100vw); }
    .home-lead {
      -webkit-writing-mode: tb-rl;
          -ms-writing-mode: tb-rl;
              writing-mode: tb-rl;
      -webkit-writing-mode: vertical-rl;
              writing-mode: vertical-rl;
      text-orientation: upright;
      line-height: 2;
      letter-spacing: 0.25em; }
      .home-lead .brackets {
        margin-top: -10px;
        margin-top: calc(-10 / 1366 * 100vw); }
        .home-lead .brackets:before {
          left: 0.35em; }
        .home-lead .brackets:after {
          left: -0.35em;
          bottom: -0.2em; }
    .home-body {
      font-size: 15px;
      font-size: calc(15 / 1366 * 100vw); }
    .home-body {
      height: 325px;
      height: calc(325 / 1366 * 100vw); }
    .home-body {
      letter-spacing: 0.33em;
      line-height: 1.9;
      -webkit-writing-mode: tb-rl;
          -ms-writing-mode: tb-rl;
              writing-mode: tb-rl;
      -webkit-writing-mode: vertical-rl;
              writing-mode: vertical-rl;
      text-orientation: upright; }
    .home-fig {
      width: 250px;
      width: calc(250 / 1366 * 100vw); }
    .home-fig {
      height: 320px;
      height: calc(320 / 1366 * 100vw); }
      .home-fig img {
        width: 250px;
        width: calc(250 / 1366 * 100vw); }
      .home-fig img {
        height: 320px;
        height: calc(320 / 1366 * 100vw); }
      .home-fig.narrow {
        width: 200px;
        width: calc(200 / 1366 * 100vw); }
        .home-fig.narrow img {
          width: 250px;
          width: calc(250 / 1366 * 100vw); }
        .home-fig.narrow img {
          height: 320px;
          height: calc(320 / 1366 * 100vw); }
        .home-fig.narrow img {
          max-width: none;
          height: 100%; }
    .home-fig.left {
      margin-right: auto; }
      .home-fig.left .anim {
        -webkit-transition-delay: 1.3s;
                transition-delay: 1.3s; }
      .home-fig.right {
        margin-left: 35px;
        margin-left: calc(35 / 1366 * 100vw); }
    .home-pic {
      width: 966px;
      width: calc(966 / 1366 * 100vw); }
    .home-pic {
      height: 500px;
      height: calc(500 / 1366 * 100vw); }
      .home-pic img {
        width: 966px;
        width: calc(966 / 1366 * 100vw); }
      .home-pic img {
        height: 500px;
        height: calc(500 / 1366 * 100vw); }
    #intro {
      padding-top: 88px;
      padding-top: calc(88 / 1366 * 100vw); }
    #intro {
      padding-bottom: 197px;
      padding-bottom: calc(197 / 1366 * 100vw); }
    #intro .home-copy__head {
      left: calc(50% + 225 / 1366 * 100vw); }
    #intro .home-copy__inner {
      margin-bottom: 40px;
      margin-bottom: calc(40 / 375 * 100vw); }
    #intro .home-copy__body {
      height: auto; }
    #intro .home-content {
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      padding-right: 0px;
      padding-right: calc(0 / 375 * 100vw); }
      #intro .label {
        width: 454px;
        width: calc(454 / 1366 * 100vw); }
      #intro .label {
        height: 43px;
        height: calc(43 / 1366 * 100vw); }
      #intro .label {
        font-size: 20px;
        font-size: calc(20 / 1366 * 100vw); }
      #intro .label {
        margin-bottom: 80px;
        margin-bottom: calc(80 / 1366 * 100vw); }
      #intro .label {
        margin-left: auto;
        margin-right: auto; }
    #craftman {
      padding-top: 120px;
      padding-top: calc(120 / 1366 * 100vw); }
    #craftman {
      padding-bottom: 195px;
      padding-bottom: calc(195 / 1366 * 100vw); }
    #craftman .home-copy__head {
      left: calc(50% + 165 / 1366 * 100vw); }
    #craftman .home-copy__inner {
      margin-bottom: 40px;
      margin-bottom: calc(40 / 375 * 100vw); }
    #craftman .home-copy__body {
      height: auto;
      line-height: 2.2; }
      #craftman .home-copy__body .p {
        margin-right: 0px;
        margin-right: calc(0 / 375 * 100vw);
        display: inline-block; }
      #craftman .home-copy__body .brackets {
        display: inline-block;
        margin-top: 0px;
        margin-top: calc(0 / 375 * 100vw); }
    #craftman .home-content {
      -webkit-box-sizing: border-box;
              box-sizing: border-box; }
      #craftman .home-content:nth-of-type(1) .home-body {
        line-height: 1.85; }
      #craftman .home-copy {
        margin-bottom: 165px;
        margin-bottom: calc(165 / 1366 * 100vw); }
    #basic {
      padding-top: 130px;
      padding-top: calc(130 / 1366 * 100vw); }
    #basic {
      padding-bottom: 195px;
      padding-bottom: calc(195 / 1366 * 100vw); }
    #basic .home-copy__head {
      left: calc(50% + 165 / 1366 * 100vw); }
    #basic .home-copy__inner {
      margin-bottom: 40px;
      margin-bottom: calc(40 / 375 * 100vw); }
    #basic .home-copy__body {
      height: auto;
      line-height: 2.2; }
      #basic .home-copy__body .p {
        margin-right: 0px;
        margin-right: calc(0 / 375 * 100vw);
        display: inline-block; }
      #basic .home-copy__body .brackets {
        display: inline-block;
        margin-top: 0px;
        margin-top: calc(0 / 375 * 100vw); }
    #basic .home-content {
      -webkit-box-sizing: border-box;
              box-sizing: border-box; }
    #basic .home-lead {
      white-space: nowrap; }
    #engineer {
      padding-top: 123px;
      padding-top: calc(123 / 1366 * 100vw); }
    #engineer {
      padding-bottom: 174px;
      padding-bottom: calc(174 / 1366 * 100vw); }
    #engineer .home-copy__head {
      left: calc(50% + 165 / 1366 * 100vw); }
    #engineer .home-copy__inner {
      margin-bottom: 40px;
      margin-bottom: calc(40 / 375 * 100vw); }
    #engineer .home-copy__body {
      height: auto;
      line-height: 2.2; }
      #engineer .home-copy__body .p {
        margin-right: 0px;
        margin-right: calc(0 / 375 * 100vw);
        display: inline-block; }
      #engineer .home-copy__body .brackets {
        display: inline-block;
        margin-top: 0px;
        margin-top: calc(0 / 375 * 100vw); }
    #engineer .home-content {
      -webkit-box-sizing: border-box;
              box-sizing: border-box; }
      #engineer .home-content:not(:last-of-type) {
        margin-bottom: 60px;
        margin-bottom: calc(60 / 375 * 100vw); }
    #engineer .home-lead {
      margin-left: 0px;
      margin-left: calc(0 / 375 * 100vw); }
    #engineer .home-body {
      height: auto; }
    #stance {
      padding-top: 130px;
      padding-top: calc(130 / 1366 * 100vw); }
    #stance {
      padding-bottom: 161px;
      padding-bottom: calc(161 / 1366 * 100vw); }
    #stance .home-copy__head {
      left: calc(50% + 165 / 1366 * 100vw); }
    #stance .home-copy__inner {
      margin-bottom: 40px;
      margin-bottom: calc(40 / 375 * 100vw); }
    #stance .home-copy__body {
      height: auto;
      line-height: 2.2; }
      #stance .home-copy__body .p {
        margin-right: 0px;
        margin-right: calc(0 / 375 * 100vw);
        display: inline-block; }
      #stance .home-copy__body .brackets {
        display: inline-block;
        margin-top: 0px;
        margin-top: calc(0 / 375 * 100vw); }
    #stance .home-content {
      -webkit-box-sizing: border-box;
              box-sizing: border-box; }
      #stance .home-content:nth-of-type(1) {
        margin-bottom: 60px;
        margin-bottom: calc(60 / 375 * 100vw); }
        #stance .home-content:nth-of-type(1) .home-lead {
          white-space: nowrap;
          margin-left: 0px;
          margin-left: calc(0 / 375 * 100vw); }
        #stance .home-content:nth-of-type(1) .home-body {
          height: 355px;
          letter-spacing: 0.3em; }
      #stance .home-content:nth-of-type(2) .home-fig.right {
        margin-left: 0px;
        margin-left: calc(0 / 375 * 100vw); }
      #stance .home-content:nth-of-type(2) .home-lead {
        margin-left: 0px;
        margin-left: calc(0 / 375 * 100vw); } }
@media screen and (min-width: 961px) {
  .setOrder {
    color: #000; } }
@media screen and (max-width: 768px) {
  .setOrder {
    color: #000; }
    #kv {
      min-height: 100svh; }
    .home-copy__inner {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; }
    .home-copy__body {
      letter-spacing: 0.04em;
      width: 100%; }
    .home-content {
      position: relative; }
    .home-lead {
      line-height: 2;
      letter-spacing: 0.05em;
      position: relative;
      padding-bottom: 10px; }
      .home-lead:after {
        content: "";
        width: 0%;
        height: 2px;
        position: absolute;
        left: 0;
        bottom: 0;
        background: #5DA804;
        -webkit-transition: width 1s ease-in-out .5s;
        transition: width 1s ease-in-out .5s; }
      .home-lead.is-inview:after {
        width: 100%; }
    .home-body {
      letter-spacing: 0.05em;
      line-height: 2; }
    .home-fig {
      position: absolute;
      top: 0;
      left: 0; }
    #intro .home-copy__head {
      margin-left: auto;
      margin-right: auto; } }
@media screen and (min-width: 1200px) {
    #container {
      padding-top: 0px; }
    #home-nav {
      padding-top: 38px; }
    .home-nav__item {
      font-size: 13px; }
    .home-nav__item {
      margin-bottom: 31px; }
      .home-nav__item:after {
        right: -4px; }
    #kv {
      height: 768px; }
    #kv {
      padding-top: 0px; }
    #kv-content {
      width: 990px; }
    #kv-content {
      height: 703px; }
      #kv-script__sm .navigation {
        font-size: 0px; }
        #kv-script__sm .navigation.prev {
          right: 0px; }
        #kv-script__sm .navigation.next {
          left: 0px; }
    #kv-script {
      top: 44px; }
    #kv-script {
      right: 52px; }
    #kv-script {
      width: 844px; }
    #kv-script {
      height: 610px; }
    .home-copy__head {
      font-size: 15px; }
    .home-copy__head {
      margin-bottom: 0px; }
    .home-copy__body {
      font-size: 25px; }
    .home-copy__body {
      margin-bottom: 0px; }
      .home-content:not(:last-of-type) {
        margin-bottom: 155px; }
    .home-content {
      padding-top: 0px; }
      .home-content.no-fig {
        padding-top: 0px; }
    .home-lead {
      font-size: 20px; }
    .home-lead {
      height: 321px; }
    .home-lead {
      margin-left: 22px; }
    .home-lead {
      margin-bottom: 0px; }
      .home-lead .brackets {
        margin-top: -10px; }
    .home-body {
      font-size: 15px; }
    .home-body {
      height: 325px; }
    .home-fig {
      width: 250px; }
    .home-fig {
      height: 320px; }
      .home-fig img {
        width: 250px; }
      .home-fig img {
        height: 320px; }
      .home-fig.narrow {
        width: 200px; }
        .home-fig.narrow img {
          width: 250px; }
        .home-fig.narrow img {
          height: 320px; }
      .home-fig.right {
        margin-left: 35px; }
    .home-pic {
      width: 966px; }
    .home-pic {
      height: 500px; }
      .home-pic img {
        width: 966px; }
      .home-pic img {
        height: 500px; }
    #intro {
      padding-top: 88px; }
    #intro {
      padding-bottom: 197px; }
      #intro .label {
        width: 454px; }
      #intro .label {
        height: 43px; }
      #intro .label {
        font-size: 20px; }
      #intro .label {
        margin-bottom: 80px; }
    #craftman {
      padding-top: 120px; }
    #craftman {
      padding-bottom: 195px; }
      #craftman .home-copy {
        margin-bottom: 165px; }
    #basic {
      padding-top: 130px; }
    #basic {
      padding-bottom: 195px; }
    #engineer {
      padding-top: 123px; }
    #engineer {
      padding-bottom: 174px; }
    #stance {
      padding-top: 130px; }
    #stance {
      padding-bottom: 161px; } }
@media screen and (min-width: 769px) and (min-width: 769px) {
    #intro .home-copy__inner {
      margin-bottom: 128px;
      margin-bottom: calc(128 / 1366 * 100vw); }
    #intro .home-copy__body {
      height: 525px;
      height: calc(525 / 1366 * 100vw); }
    #intro .home-content {
      padding-right: 15px;
      padding-right: calc(15 / 1366 * 100vw); }
    #craftman .home-copy__inner {
      margin-bottom: 128px;
      margin-bottom: calc(128 / 1366 * 100vw); }
    #craftman .home-copy__body {
      height: 530px;
      height: calc(530 / 1366 * 100vw); }
      #craftman .home-copy__body .p {
        margin-right: 10px;
        margin-right: calc(10 / 1366 * 100vw); }
      #craftman .home-copy__body .brackets {
        margin-top: -5px;
        margin-top: calc(-5 / 1366 * 100vw); }
    #basic .home-copy__inner {
      margin-bottom: 60px;
      margin-bottom: calc(60 / 1366 * 100vw); }
    #basic .home-copy__body {
      height: 530px;
      height: calc(530 / 1366 * 100vw); }
      #basic .home-copy__body .p {
        margin-right: 10px;
        margin-right: calc(10 / 1366 * 100vw); }
      #basic .home-copy__body .brackets {
        margin-top: -5px;
        margin-top: calc(-5 / 1366 * 100vw); }
    #engineer .home-copy__inner {
      margin-bottom: 145px;
      margin-bottom: calc(145 / 1366 * 100vw); }
    #engineer .home-copy__body {
      height: 530px;
      height: calc(530 / 1366 * 100vw); }
      #engineer .home-copy__body .p {
        margin-right: 10px;
        margin-right: calc(10 / 1366 * 100vw); }
      #engineer .home-copy__body .brackets {
        margin-top: -5px;
        margin-top: calc(-5 / 1366 * 100vw); }
      #engineer .home-content:not(:last-of-type) {
        margin-bottom: 128px;
        margin-bottom: calc(128 / 1366 * 100vw); }
    #engineer .home-lead {
      margin-left: 27px;
      margin-left: calc(27 / 1366 * 100vw); }
    #engineer .home-body {
      height: 345px;
      height: calc(345 / 1366 * 100vw); }
    #stance .home-copy__inner {
      margin-bottom: 108px;
      margin-bottom: calc(108 / 1366 * 100vw); }
    #stance .home-copy__body {
      height: 530px;
      height: calc(530 / 1366 * 100vw); }
      #stance .home-copy__body .p {
        margin-right: 15px;
        margin-right: calc(15 / 1366 * 100vw); }
      #stance .home-copy__body .brackets {
        margin-top: -5px;
        margin-top: calc(-5 / 1366 * 100vw); }
      #stance .home-content:nth-of-type(1) {
        margin-bottom: 152px;
        margin-bottom: calc(152 / 1366 * 100vw); }
        #stance .home-content:nth-of-type(1) .home-lead {
          margin-left: 12px;
          margin-left: calc(12 / 1366 * 100vw); }
      #stance .home-content:nth-of-type(2) .home-fig.right {
        margin-left: 13px;
        margin-left: calc(13 / 1366 * 100vw); }
      #stance .home-content:nth-of-type(2) .home-lead {
        margin-left: 12px;
        margin-left: calc(12 / 1366 * 100vw); } }
@media screen and (min-width: 769px) and (min-width: 1200px) {
    #intro .home-copy__inner {
      margin-bottom: 128px; }
    #intro .home-copy__body {
      height: 525px; }
    #intro .home-content {
      padding-right: 15px; }
    #craftman .home-copy__inner {
      margin-bottom: 128px; }
    #craftman .home-copy__body {
      height: 530px; }
      #craftman .home-copy__body .p {
        margin-right: 10px; }
      #craftman .home-copy__body .brackets {
        margin-top: -5px; }
    #basic .home-copy__inner {
      margin-bottom: 60px; }
    #basic .home-copy__body {
      height: 530px; }
      #basic .home-copy__body .p {
        margin-right: 10px; }
      #basic .home-copy__body .brackets {
        margin-top: -5px; }
    #engineer .home-copy__inner {
      margin-bottom: 145px; }
    #engineer .home-copy__body {
      height: 530px; }
      #engineer .home-copy__body .p {
        margin-right: 10px; }
      #engineer .home-copy__body .brackets {
        margin-top: -5px; }
      #engineer .home-content:not(:last-of-type) {
        margin-bottom: 128px; }
    #engineer .home-lead {
      margin-left: 27px; }
    #engineer .home-body {
      height: 345px; }
    #stance .home-copy__inner {
      margin-bottom: 108px; }
    #stance .home-copy__body {
      height: 530px; }
      #stance .home-copy__body .p {
        margin-right: 15px; }
      #stance .home-copy__body .brackets {
        margin-top: -5px; }
      #stance .home-content:nth-of-type(1) {
        margin-bottom: 152px; }
        #stance .home-content:nth-of-type(1) .home-lead {
          margin-left: 12px; }
      #stance .home-content:nth-of-type(2) .home-fig.right {
        margin-left: 13px; }
      #stance .home-content:nth-of-type(2) .home-lead {
        margin-left: 12px; } }
