@charset "UTF-8";
@layer base, components, pages;
.stick {
  --topY: calc(var(--floatingPos) + var(--btnMenu) + 1rem);
  position: sticky;
  top: var(--topY);
}
@media (max-width: 1100px) {
  .stick.killSp {
    position: inherit;
    --topY: inherit;
  }
}

.symbol {
  --topY: 0;
  --maskSize: 157%;
  --maskRepeat: no-repeat;
  --maskPosition: 25% 85%;
  --maskColor: linear-gradient(45deg, var(--typo), var(--sub));
  --maskWidth: 100%;
  --ratio: 1000/1086.22;
  --maskImage: url("../images/mark.svg");
  --maskTr: all .8s cubic-bezier(0, 0.54, 0.46, 0.27);
  width: var(--maskWidth);
  mask-repeat: var(--maskRepeat);
  mask-position: var(--maskPosition);
  mask-size: var(--maskSize);
  -webkit-mask-repeat: var(--maskRepeat);
  -webkit-mask-position: var(--maskPosition);
  -webkit-mask-size: var(--maskSize);
  aspect-ratio: var(--ratio);
  mask-image: var(--maskImage);
  -webkit-mask-image: var(--maskImage);
  background: var(--maskColor);
  flex-shrink: 0;
  margin-right: calc(0% - var(--maskWidth));
  z-index: -1;
  opacity: 0.1;
  height: 100vh;
  transition: var(--maskTr);
}
@media (max-width: 1100px) {
  .symbol {
    display: none;
  }
}

.sepWrap {
  --gridCol: 1fr 1fr;
  --wrapGap: calc(var(--pad) * 3);
  --placeContent: inherit;
  --placeItems: center flex-start;
  --contGap: 1em;
  --figOrder: inherit;
  display: grid;
  grid-template-columns: var(--gridCol);
  place-content: var(--placeContent);
  place-items: var(--placeItems);
  gap: var(--wrapGap);
}
@media (max-width: 1536px) {
  .sepWrap {
    --wrapGap: calc(var(--pad) * 2);
  }
}
@media (max-width: 1100px) {
  .sepWrap {
    --contGap: 1em;
    --gridCol: 1fr;
    --wrapGap: var(--pad);
    --placeContent: flex-start;
  }
}
.sepWrap .figWrap {
  order: var(--figOrder);
}
.sepWrap .figWrap figure {
  width: 100%;
  height: 100%;
}
.sepWrap .figWrap figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.sepWrap .contWrap {
  align-items: flex-start;
  gap: var(--contGap);
}

section {
  width: 100%;
  --titleSize: 5em;
  --subSize: var(--h3);
}
@media (max-width: 1100px) {
  section {
    --titleSize: 4em;
    --subSize: var(--h4);
  }
}
section h2 {
  margin-bottom: 1em;
}
section h3 {
  font-size: var(--titleSize);
  word-break: break-word;
}
section h3 + * {
  margin-top: calc(var(--pad));
}
section h4 {
  font-size: var(--subSize);
  line-height: 1.75;
}
section h4 + p {
  margin-top: calc(var(--pad) * 2);
}

.chap {
  --h2: 1em;
  --bold: normal;
  display: flex;
  align-items: center;
  color: var(--sub);
}
.chap:before {
  content: "";
  display: block;
  width: 1.5em;
  height: 1px;
  margin-right: 0.5em;
  background: currentColor;
}
.chap span {
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.home.fields .frontPage .fields .bg {
  opacity: 1;
}
.home .frontPage {
  --sloganSize: 6vmin;
  --h1Size: .25em;
  --conceptSize: 9.5vmax;
  --conceptMinus: -.8em;
  --heroH: var(--fitH);
  --heroFigH: 100%;
  --heroFigPos: relative;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  overflow: clip;
}
@media (max-width: 1100px) {
  .home .frontPage {
    --sloganSize: 8vmin;
    --h1Size: 1rem;
    --conceptSize: 18vmin;
    --conceptMinus: -2em;
  }
}
.home .frontPage .hero {
  position: absolute;
  z-index: -2;
  width: 100%;
  height: var(--heroH);
  top: 0;
  left: 0;
  overflow: hidden;
}
.home .frontPage .hero .slides {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: auto 100%;
  background-position: center;
  background-repeat: no-repeat;
  background-color: var(--body);
  z-index: 0;
  transition: opacity 600ms ease;
}
.home .frontPage .hero canvas {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  background-color: var(--body);
}
.home .frontPage .hero .heroProgress {
  position: absolute;
  top: 0;
  right: 0;
  width: 2px;
  height: 100%;
  z-index: 2;
  pointer-events: none;
}
.home .frontPage .hero .heroProgressBar {
  width: 100%;
  height: 100%;
  background: var(--typo);
  transform-origin: top;
  transform: scaleY(0);
}
.home .frontPage .slogan {
  width: 100%;
  height: var(--heroH);
  position: relative;
  z-index: 1;
  padding: var(--innPad);
  display: grid;
  place-items: flex-end flex-start;
}
.home .frontPage .slogan header {
  display: flex;
  flex-direction: column-reverse;
  font-size: var(--sloganSize);
  line-height: 1.5;
  gap: 0.3em;
}
.home .frontPage .slogan header em {
  font-size: 1em;
  letter-spacing: 0.08em;
}
.home .frontPage .slogan header em u {
  text-decoration: none;
  background: linear-gradient(180deg, transparent 0%, transparent 96%, currentColor 96%);
}
.home .frontPage .slogan header h1 {
  font-size: var(--h1Size);
  font-weight: var(--regular);
}
.home .frontPage .slogan header h1 span {
  display: inline-block;
}
@media (min-width: 1100px) {
  .home .frontPage .slogan header h1 span:before {
    content: "|";
    display: inline-block;
    vertical-align: middle;
    margin: 0 1em;
  }
}
@media (max-width: 1100px) {
  .home .frontPage .slogan header h1 span {
    display: block;
  }
}
.home .frontPage .vision {
  --copySize: var(--h4);
  width: 100%;
  position: relative;
  z-index: 0;
}
@media (max-width: 1100px) {
  .home .frontPage .vision {
    --copySize: 1rem;
    background-color: var(--typo);
    background-image: url(../images/noise.png);
    background-repeat: repeat;
    background-attachment: fixed;
    color: white;
  }
}
.home .frontPage .vision .concept {
  --topY: 0;
  overflow: hidden;
  font-size: var(--conceptSize);
  font-weight: var(--black);
  margin-top: var(--conceptMinus);
  width: 100%;
  mix-blend-mode: soft-light;
}
.home .frontPage .vision .concept .sans {
  display: block;
  font-weight: var(--black);
  color: white;
}
@media (min-width: 1100px) {
  .home .frontPage .vision .concept .sans {
    white-space: nowrap;
    word-break: break-all;
  }
}
.home .frontPage .vision .inner {
  --titleSize: 2.2em;
  --padTop: calc(var(--innPad) * 3);
  --padBottom: 0;
  --contPad: 0;
}
@media (max-width: 1100px) {
  .home .frontPage .vision .inner {
    --titleSize: 1.6em;
    --padTop: calc(var(--innPad) * 2);
    --padLeft: 0;
    --padRight: 0;
    --contPad: var(--innPad);
  }
}
.home .frontPage .vision .inner .figWrap {
  --gridGap: calc(var(--pad) * 2);
  --img2Y: 66%;
  --img3X: 66%;
  --imgRad: var(--rad1);
  grid-template-rows: 37% 1fr;
  place-items: center flex-start;
}
@media (max-width: 1100px) {
  .home .frontPage .vision .inner .figWrap {
    --figOrder: 2;
    --gridGap: 0;
    --img2Y: 0;
    --img3X: 0;
    --imgRad: 0;
    grid-template-rows: 1fr 1fr;
    grid-template-columns: 45% 1fr;
  }
}
.home .frontPage .vision .inner .figWrap figure {
  clip-path: inset(0 0 round var(--imgRad));
}
.home .frontPage .vision .inner .figWrap figure img {
  width: 100%;
  height: 120%;
  object-fit: cover;
  margin-top: -10%;
}
.home .frontPage .vision .inner .figWrap figure:nth-child(2) {
  margin-top: calc(0% - var(--img2Y));
}
@media (max-width: 1100px) {
  .home .frontPage .vision .inner .figWrap figure:nth-child(2) {
    grid-column-start: 1;
    grid-row-start: 2;
  }
}
.home .frontPage .vision .inner .figWrap figure:nth-child(3) {
  margin-left: var(--img3X);
}
@media (max-width: 1100px) {
  .home .frontPage .vision .inner .figWrap figure:nth-child(3) {
    grid-row: span 2/span 2;
    grid-column-start: 2;
    grid-row-start: 1;
  }
}
.home .frontPage .vision .inner .contWrap {
  position: relative;
  padding: var(--contPad);
}
.home .frontPage .vision .inner .contWrap h3 {
  line-height: 1.5;
}
.home .frontPage .vision .inner .contWrap p {
  font-size: var(--copySize);
  margin-top: 3em;
}
.home .frontPage .framework {
  --dir: row-reverse;
}
.home .frontPage .framework .inner {
  flex-direction: var(--dir);
}
.home .frontPage .framework .inner .figWrap {
  --figOrder: 2;
}
.home .frontPage .framework .inner .figWrap figure svg {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.home .frontPage .fields {
  position: relative;
  width: 100%;
}
.home .frontPage .fields .bg {
  opacity: 0;
  position: absolute;
  width: 50%;
  aspect-ratio: 1200/872;
  top: 0;
  right: 0;
  z-index: 0;
  background: var(--typo);
  border-radius: 50%;
  -webkit-mask-image: radial-gradient(rgb(255, 255, 255) 52%, rgba(255, 255, 255, 0) 70%);
  mask-image: radial-gradient(rgb(255, 255, 255) 52%, rgba(255, 255, 255, 0) 70%);
  transition: all 1.2s var(--springGlide);
}
.home .frontPage .fields .bg img {
  position: relative;
  mix-blend-mode: soft-light;
}
.home .frontPage .fields .bg:before {
  --color1: var(--typo);
  --color2: transparent;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 1;
  left: 0;
  top: 0;
  background-image: linear-gradient(90deg, var(--color1) 0%, var(--color2) 20%), linear-gradient(0deg, var(--color1) 0%, var(--color2) 20%), radial-gradient(farthest-corner at 60% 20%, var(--color2) 60%, var(--color1) 82%);
}
@media (max-width: 1100px) {
  .home .frontPage .fields .bg {
    width: 100%;
    position: relative;
  }
}
.home .frontPage .fields .inner {
  position: relative;
  z-index: 1;
  --gridCol: 1fr;
  --gridGap: 0;
  --figW: 100%;
  --wrapGap: 0;
  --contTextMax: 28em;
  --contPad: 0;
}
@media (max-width: 1100px) {
  .home .frontPage .fields .inner {
    --gridGap: var(--pad);
    --padTop: 0;
    --padRight: 0;
    --contPad: var(--innPad);
  }
}
.home .frontPage .fields .inner .contWrap {
  padding-right: var(--contPad);
}
.home .frontPage .fields .inner .contWrap p {
  max-width: var(--contTextMax);
}
.home .frontPage .fields .inner .figWrap .tree {
  --treeGap: calc(var(--pad) * 1.2);
  --treeBorder: 2px;
  --itemGap: calc(var(--pad) * .8);
  --treeBW: var(--treeBorder);
  --treeBH: var(--treeGap);
  --treeBY: 100%;
  --treeBX: calc(50% - var(--treeBorder) * .5);
  --childTreeBW: calc(100% + var(--itemGap));
  --childTreeBH: var(--treeBorder);
  --childTreeBY: calc(100% + var(--treeGap));
  --childTreeBX: calc(50% - var(--treeBorder) * .5);
  --itemW: calc(100% / 4 - var(--itemGap) * (1 - (1 / 4)));
  --parentGap: calc(var(--treeGap) * 2);
  --childPad: 0;
  --childW: 100%;
  --parentAlign: center;
  align-items: center;
  justify-content: center;
  gap: var(--parentGap);
}
@media (max-width: 1100px) {
  .home .frontPage .fields .inner .figWrap .tree {
    --childW: 400%;
    --parentAlign: flex-start;
    --itemW: calc(100% / 4 - var(--itemGap) * (1 - (1 / 4)) - var(--innPad));
    overflow: scroll hidden;
    align-items: flex-start;
  }
}
.home .frontPage .fields .inner .figWrap .tree .item {
  position: relative;
  width: var(--itemW);
}
.home .frontPage .fields .inner .figWrap .tree .item:before {
  content: "";
  display: block;
  width: var(--treeBW);
  height: var(--treeBH);
  background: white;
  position: absolute;
  top: var(--treeBY);
  left: var(--treeBX);
}
.home .frontPage .fields .inner .figWrap .tree .item > div {
  position: relative;
  color: var(--typo);
  width: 100%;
  clip-path: inset(0 0 round var(--rad3));
}
.home .frontPage .fields .inner .figWrap .tree .item > div div, .home .frontPage .fields .inner .figWrap .tree .item > div a {
  width: 100%;
  height: 100%;
  transition: all 0.6s var(--springGlide);
}
.home .frontPage .fields .inner .figWrap .tree .item > div div {
  background: white;
  padding: calc(var(--pad) * 1) 0;
}
.home .frontPage .fields .inner .figWrap .tree .item > div a {
  position: absolute;
  top: 0;
  left: 0;
  display: grid;
  place-content: center;
  opacity: 0;
  transform: scale(1.4);
  background: var(--bk09);
  grid-template-columns: auto auto;
  color: white;
  text-decoration: none;
  gap: 1em;
  box-shadow: 0.5em 0.5em 3em var(--wh02) inset, -0.75em -0.75em 1.5em var(--typo) inset, 0.5em -1em 0.5em 1.25em var(--bk02) inset, 0 0 5em var(--sub) inset;
  background-color: var(--typo);
  background-image: url(../images/noise.png);
  background-repeat: repeat;
  background-attachment: fixed;
  border-radius: var(--rad3);
}
.home .frontPage .fields .inner .figWrap .tree .item > div a span {
  display: inline-block;
  line-height: 1;
}
.home .frontPage .fields .inner .figWrap .tree .item > div svg {
  width: 100%;
}
.home .frontPage .fields .inner .figWrap .tree .item > div dl {
  text-align: center;
}
.home .frontPage .fields .inner .figWrap .tree .item > div dl dt {
  position: relative;
  font-size: var(--h3);
}
.home .frontPage .fields .inner .figWrap .tree .item > div dl dd {
  font-size: 0.8em;
}
.home .frontPage .fields .inner .figWrap .tree .item > div ul {
  gap: 0.5em;
  line-height: 1;
  margin-top: var(--itemGap);
  display: grid;
  grid-template-columns: auto auto;
  place-content: center;
}
.home .frontPage .fields .inner .figWrap .tree .item > div ul li {
  text-align: center;
  padding: 0.75em;
  border-radius: var(--rad0);
  background: var(--body);
  font-size: 0.8em;
  box-shadow: 0 0 0 1px var(--bk01);
}
.home .frontPage .fields .inner .figWrap .tree .parent {
  width: var(--childW);
  justify-content: var(--parentAlign);
}
.home .frontPage .fields .inner .figWrap .tree .child {
  width: var(--childW);
  position: relative;
  gap: var(--itemGap);
  padding-left: var(--childPad);
}
.home .frontPage .fields .inner .figWrap .tree .child .item:before {
  top: auto;
  bottom: 100%;
}
.home .frontPage .fields .inner .figWrap .tree .child .item:after {
  content: "";
  display: block;
  width: var(--childTreeBW);
  height: var(--childTreeBH);
  background: white;
  position: absolute;
  bottom: var(--childTreeBY);
  left: var(--childTreeBX);
}
.home .frontPage .fields .inner .figWrap .tree .child .item:last-child:after {
  width: var(--treeBorder);
}
@media (min-width: 1100px) {
  .home .frontPage .fields .inner .figWrap .tree .child .item:hover > div div {
    opacity: 0.2;
    transform: scale(1.05);
  }
  .home .frontPage .fields .inner .figWrap .tree .child .item:hover > div a {
    opacity: 1;
    transform: scale(1);
  }
}
.home .frontPage .potential .inner {
  --gridCol: 1fr 1fr;
  --gap: calc(var(--pad) * 2);
  --contY: calc(var(--gap) * 2);
  --img1Y: calc(0% - var(--gap) * 3);
}
@media (max-width: 1100px) {
  .home .frontPage .potential .inner {
    --gridCol: 100%;
    --contY: 0;
    --img1Y: 0;
  }
}
.home .frontPage .potential .contWrap {
  --gridGap: calc(var(--gap) * 3);
  --padBottom: 0;
  margin-bottom: var(--gap);
}
@media (max-width: 1100px) {
  .home .frontPage .potential .contWrap {
    --gridGap: calc(var(--pad));
  }
}
.home .frontPage .potential .contWrap div {
  flex: 1;
}
.home .frontPage .potential .contWrap div:last-child {
  margin-top: var(--contY);
}
.home .frontPage .potential .figWrap {
  --padTop: 0;
  --padLeft: 0;
  --padRight: 0;
  --padBottom: 0;
  --figPadX: calc(var(--innPad) * 2);
  --figPadY: calc(var(--innPad) * .5);
  --figRatio: 1;
  --gridGap: 0;
  align-items: flex-start;
}
@media (max-width: 1100px) {
  .home .frontPage .potential .figWrap {
    --figPadX: var(--innPad);
    --figPadY: var(--innPad);
    --figRatio: 1/1.25;
  }
}
.home .frontPage .potential .figWrap figure {
  flex: 1;
  overflow: hidden;
  aspect-ratio: var(--figRatio);
  line-height: 1;
  padding: 0 var(--innPad) var(--figPadY);
  justify-content: flex-end;
  gap: var(--pad);
}
.home .frontPage .potential .figWrap figure:first-child {
  padding-left: var(--figPadX);
}
.home .frontPage .potential .figWrap figure:last-child {
  padding-right: var(--figPadX);
}
.home .frontPage .potential .figWrap figure img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 120%;
  object-fit: cover;
  z-index: -1;
  margin-top: -10%;
}
.home .frontPage .potential .figWrap figure figcaption {
  color: white;
}
.home .frontPage .potential .figWrap figure figcaption h3 {
  font-size: var(--h1);
  font-weight: var(--regular);
}
.home .frontPage .potential .figWrap figure figcaption h4 {
  font-size: 0.8em;
  font-weight: var(--regular);
  margin-top: 1em;
}
.home .frontPage .potential .figWrap figure:first-child {
  margin-top: var(--img1Y);
}
.home .frontPage .potential .figWrap figure ul {
  font-size: 0.9em;
  line-height: 1;
  --gridCol: 1fr 1fr 1fr;
  --gridGap: .5em;
}
@media (max-width: 1100px) {
  .home .frontPage .potential .figWrap figure ul {
    --gridCol: 1fr 1fr;
  }
}
.home .frontPage .potential .figWrap figure ul li {
  text-align: center;
  padding: 0.75em 0;
  border-radius: var(--rad0);
  background: white;
}
.home .frontPage .profile {
  --dtW: 10em;
  --dtPad: 1em;
  --mobPad: var(--dtPad);
  --itemGap: calc(var(--pad) * 4);
}
@media (max-width: 1100px) {
  .home .frontPage .profile {
    --dtW: 100%;
    --mobPad: 0;
    --mobBorder: none;
    --itemGap: var(--pad);
  }
}
.home .frontPage .profile .contWrap {
  place-items: flex-start;
  --gridCol: 33% 1fr;
  --gridGap: calc(var(--pad) * 3);
  --parentBorder: none;
  --parentWeight: var(--regular);
  --childBorder: 1px solid;
}
@media (max-width: 1100px) {
  .home .frontPage .profile .contWrap {
    --gridCol: auto;
    --gridGap: var(--pad);
    --parentBorder: 1px solid;
    --parentWeight: var(--bold);
    --childBorder: none;
  }
}
.home .frontPage .profile .contWrap .coInfo {
  margin-top: var(--itemGap);
  width: 100%;
}
.home .frontPage .profile .contWrap dl {
  width: 100%;
  border-bottom: var(--parentBorder);
}
.home .frontPage .profile .contWrap dl:first-child {
  border-top: 1px solid;
}
.home .frontPage .profile .contWrap dl dt,
.home .frontPage .profile .contWrap dl dd {
  padding: var(--dtPad);
  border-bottom: var(--childBorder);
}
.home .frontPage .profile .contWrap dl dt {
  width: var(--dtW);
  font-weight: var(--parentWeight);
  padding-bottom: var(--mobPad);
}
.home .frontPage .profile .contWrap dl dd {
  flex: 1;
  padding-top: var(--mobPad);
}

.subPage {
  --chapSize: 5em;
  --sloganSize: 6vw;
  --heroTop: calc(var(--floatingPos) + var(--btnMenu) + var(--pad) * 4);
  --heroAlign: center;
  --heroH2Size: calc(var(--h2) * 1.28);
  width: 100%;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  overflow: clip;
}
@media (min-width: 1100px) {
  .subPage {
    overflow-x: clip;
  }
  .subPage .hero h2 br {
    display: none;
  }
}
@media (max-width: 1100px) {
  .subPage {
    overflow: hidden;
    --chapSize: 14vw;
    --sloganSize: 16vw;
    --heroAlign: left;
  }
}
.subPage article {
  width: 100%;
  position: relative;
}
.subPage .hero {
  --padTop: var(--heroTop);
  --padBottom: 0;
  --heroGap: calc(var(--pad) * 1);
  align-items: center;
  text-align: var(--heroAlign);
}
.subPage .hero h1 {
  margin-top: var(--heroGap);
}
.subPage .hero em.sans {
  font-size: var(--sloganSize);
  font-weight: var(--black);
  line-height: 1;
}
.subPage .hero hgroup {
  margin-top: calc(var(--heroGap) * 1);
  display: grid;
  gap: calc(var(--heroGap) * 0.5);
}
.subPage .hero hgroup h2 {
  font-size: var(--heroH2Size);
  margin-top: calc(var(--heroGap) * 0.5);
}

.contactPage {
  --tplPrime: var(--typo);
  --tplSecond: var(--theme);
  --tplSub: var(--sub);
  --tplPad: calc(var(--pad) * 2);
  --tplBg: var(--typo);
  --featSectGap: calc(var(--pad) * 2.5);
}
.contactPage .formsWrap .inner {
  --padTop: 0;
}

.formsWrap {
  --formMax: 54em;
  --sectsAlign: center;
  --inputPad: 1.5em;
  --confPad: var(--pad);
  --confDtW: 10em;
  --confDdW: calc(100% - var(--confDtW));
  --telSize: 2em;
  --tplRad: var(--rad3);
  --labelW: 15em;
  --labelPad: 1.5em 0 0;
  --controlsW: auto;
  --formDir: row;
  --formPad: 1em 0;
  --formGap: 2em;
  --tplPrime: var(--typo);
  --tplSecond: var(--theme);
  --tplSub: var(--sub);
  --tplPad: calc(var(--pad) * 2);
  --tplBg: var(--typo);
}
@media (max-width: 1100px) {
  .formsWrap {
    --inputPad: 1em;
    --labelW: 100%;
    --labelPad: 0;
    --controlsW: 100%;
    --formDir: column;
    --formPad: 0 0 3em;
    --formGap: .5em;
  }
}
.formsWrap .tel {
  margin-bottom: var(--pad);
  gap: 1em;
}
.formsWrap .tel:before, .formsWrap .tel:after {
  content: "";
  width: 100%;
  height: 1px;
  display: block;
  background: currentColor;
  opacity: 1;
  margin: 1em 0 1em;
}
.formsWrap .tel dt {
  font-size: var(--h5);
  font-weight: var(--bold);
}
.formsWrap .tel dd a {
  font-size: var(--telSize);
  font-weight: var(--semi);
}
.formsWrap .tel dd small {
  display: block;
}
.formsWrap .inner {
  align-items: var(--sectsAlign);
}
.formsWrap .snow-monkey-form {
  width: 100%;
  margin: 0 auto;
  padding: var(--tplPad);
  background-color: var(--tplBg);
  color: var(--tplSecond);
  border-radius: var(--tplRad);
}
.formsWrap .snow-monkey-form .smf-form {
  max-width: var(--formMax);
  margin: 0 auto;
}
.formsWrap .snow-monkey-form .smf-form .smf-system-error-content {
  text-align: center;
}
.formsWrap .snow-monkey-form .smf-action {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  column-gap: 1em;
}
.formsWrap .snow-monkey-form .smf-action .smf-button-control {
  display: block;
}
@media (min-width: 1100px) {
  .formsWrap .snow-monkey-form .smf-action .smf-button-control {
    min-width: 10em;
  }
}
@media (max-width: 1100px) {
  .formsWrap .snow-monkey-form .smf-action .smf-button-control {
    min-width: calc(50% - 0.5em);
  }
}
.formsWrap .snow-monkey-form .smf-action .smf-button-control + .smf-button-control {
  margin: 0;
}
.formsWrap .snow-monkey-form .smf-action .smf-button-control .smf-button-control__control {
  --arrow: .75em;
  --paddingPort: calc(var(--arrow) * 1.5);
  --paddingLand: calc(var(--arrow) * 2);
  --arrowPsos: var(--arrow);
  --display: inline-block;
  --borderWid: 2px;
  --btnMin: 15em;
  font-size: var(--h4);
  border: none;
  margin: 0;
  text-align: center;
  line-height: 1.5;
  position: relative;
  display: var(--display);
  z-index: 1;
  cursor: pointer;
  padding: var(--paddingPort) var(--paddingLand);
  transition: all 1.2s var(--springGlide);
  border-radius: 5em;
  gap: var(--padding);
  background-color: var(--sub);
  background-image: url(../images/noise.png);
  background-repeat: repeat;
  background-attachment: fixed;
  color: white;
  min-width: var(--btnMin);
  font-weight: var(--bold);
  box-shadow: 0 0 1em transparent inset, 0 0 3em transparent inset;
  background-attachment: inherit;
}
@media (min-width: 1100px) {
  .formsWrap .snow-monkey-form .smf-action .smf-button-control .smf-button-control__control:hover {
    box-shadow: 0.5em 0.5em 3em var(--wh02) inset, -0.75em -0.75em 1.5em var(--typo) inset, 0.5em -1em 0.5em 1.25em var(--bk02) inset, 0 0 5em var(--sub) inset;
  }
}
.formsWrap .snow-monkey-form .smf-action .smf-button-control .smf-button-control__control:before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: transparent;
  background-image: url(../images/noise.png);
  background-repeat: repeat;
  background-attachment: fixed;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  mix-blend-mode: overlay;
}
.formsWrap .snow-monkey-form .smf-action .smf-button-control .smf-button-control__control:after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  width: var(--arrow);
  height: var(--arrow);
  z-index: 0;
  border-top: var(--borderWid) solid;
  border-right: var(--borderWid) solid;
  transform: rotate(45deg);
  margin-left: var(--arrowPsos);
  flex-shrink: 0;
}
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item {
  margin: 0 auto;
  text-align: left;
  padding: var(--formPad);
  display: flex;
  flex-direction: var(--formDir);
  gap: var(--formGap);
  align-items: flex-start;
}
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-item__col--label {
  width: var(--labelW);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  padding: var(--labelPad);
}
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-item__col--label .smf-item__label {
  display: inline-block;
  font-weight: var(--bold);
}
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-item__col--label .smf-item__description {
  background-color: var(--tplSecond);
  color: var(--tplPrime);
  display: block;
  margin: 0 0 0 1em;
  padding: 0.2em 1em;
  font-size: 0.6em;
  border-radius: var(--rad0);
}
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-item__col--controls {
  flex: 1;
  width: var(--controlsW);
  text-align: left;
  position: relative;
}
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-item__col--controls input, .formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-item__col--controls textarea {
  font-size: 1em;
}
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-item__col--controls input:-webkit-autofill, .formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-item__col--controls textarea:-webkit-autofill {
  -webkit-box-shadow: 0 0 0 1000px var(--tplSecond) inset;
}
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-item__col--controls input::placeholder, .formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-item__col--controls textarea::placeholder {
  color: var(--bk02);
}
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-item__col--controls input.hasDatepicker, .formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-item__col--controls textarea.hasDatepicker {
  width: auto;
  min-width: 6em;
}
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-item__col--controls input:not([type=checkbox]),
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-item__col--controls textarea {
  width: 100%;
}
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-item__col--controls input:not([type=checkbox]),
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-item__col--controls select,
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-item__col--controls textarea {
  text-align: left;
  border-radius: 0.5em;
  padding: var(--inputPad);
  border: 2px solid var(--tplPrime);
}
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-item__col--controls select {
  height: 2.5em;
  flex: 1;
}
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-radio-buttons-control__control,
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-checkboxes-control__control {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 1em;
}
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-radio-buttons-control__control .smf-label,
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-checkboxes-control__control .smf-label {
  --btnWidth: 2em;
}
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-radio-buttons-control__control .smf-label label .smf-radio-button-control,
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-radio-buttons-control__control .smf-label label .smf-checkbox-control,
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-checkboxes-control__control .smf-label label .smf-radio-button-control,
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-checkboxes-control__control .smf-label label .smf-checkbox-control {
  display: flex;
}
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-radio-buttons-control__control .smf-label label .smf-radio-button-control .smf-radio-button-control__control,
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-radio-buttons-control__control .smf-label label .smf-radio-button-control .smf-checkbox-control__control,
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-radio-buttons-control__control .smf-label label .smf-checkbox-control .smf-radio-button-control__control,
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-radio-buttons-control__control .smf-label label .smf-checkbox-control .smf-checkbox-control__control,
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-checkboxes-control__control .smf-label label .smf-radio-button-control .smf-radio-button-control__control,
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-checkboxes-control__control .smf-label label .smf-radio-button-control .smf-checkbox-control__control,
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-checkboxes-control__control .smf-label label .smf-checkbox-control .smf-radio-button-control__control,
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-checkboxes-control__control .smf-label label .smf-checkbox-control .smf-checkbox-control__control {
  color: var(--tplPrime);
  position: relative;
  display: inline-block;
  line-height: 1.75;
  cursor: pointer;
  padding: 0;
  letter-spacing: normal;
  width: var(--btnWidth);
  height: var(--btnWidth);
  transition: var(--tr04);
  border-radius: 50%;
  border: 1px solid currentColor;
  margin: 0 0.5em 0 0;
}
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-radio-buttons-control__control .smf-label label .smf-radio-button-control .smf-radio-button-control__control:checked,
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-radio-buttons-control__control .smf-label label .smf-radio-button-control .smf-checkbox-control__control:checked,
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-radio-buttons-control__control .smf-label label .smf-checkbox-control .smf-radio-button-control__control:checked,
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-radio-buttons-control__control .smf-label label .smf-checkbox-control .smf-checkbox-control__control:checked,
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-checkboxes-control__control .smf-label label .smf-radio-button-control .smf-radio-button-control__control:checked,
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-checkboxes-control__control .smf-label label .smf-radio-button-control .smf-checkbox-control__control:checked,
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-checkboxes-control__control .smf-label label .smf-checkbox-control .smf-radio-button-control__control:checked,
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-checkboxes-control__control .smf-label label .smf-checkbox-control .smf-checkbox-control__control:checked {
  background: var(--tplSecond);
  color: var(--tplPrime);
}
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-radio-buttons-control__control .smf-label label .smf-radio-button-control .smf-radio-button-control__control:checked:before,
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-radio-buttons-control__control .smf-label label .smf-radio-button-control .smf-checkbox-control__control:checked:before,
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-radio-buttons-control__control .smf-label label .smf-checkbox-control .smf-radio-button-control__control:checked:before,
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-radio-buttons-control__control .smf-label label .smf-checkbox-control .smf-checkbox-control__control:checked:before,
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-checkboxes-control__control .smf-label label .smf-radio-button-control .smf-radio-button-control__control:checked:before,
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-checkboxes-control__control .smf-label label .smf-radio-button-control .smf-checkbox-control__control:checked:before,
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-checkboxes-control__control .smf-label label .smf-checkbox-control .smf-radio-button-control__control:checked:before,
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-checkboxes-control__control .smf-label label .smf-checkbox-control .smf-checkbox-control__control:checked:before {
  background: none;
  content: "";
  position: absolute;
  top: 33%;
  left: 25%;
  margin: auto;
  width: 1em;
  height: 0.5em;
  border-style: none;
  border-width: 0;
  border-left: 2px solid;
  border-bottom: 2px solid;
  border-color: currentColor;
  rotate: -45deg;
  transform: none;
  border-radius: 0;
}
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-radio-buttons-control__control .smf-label label .smf-radio-button-control .smf-radio-button-control__label,
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-radio-buttons-control__control .smf-label label .smf-radio-button-control .smf-checkbox-control__label,
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-radio-buttons-control__control .smf-label label .smf-checkbox-control .smf-radio-button-control__label,
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-radio-buttons-control__control .smf-label label .smf-checkbox-control .smf-checkbox-control__label,
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-checkboxes-control__control .smf-label label .smf-radio-button-control .smf-radio-button-control__label,
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-checkboxes-control__control .smf-label label .smf-radio-button-control .smf-checkbox-control__label,
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-checkboxes-control__control .smf-label label .smf-checkbox-control .smf-radio-button-control__label,
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item .smf-checkboxes-control__control .smf-label label .smf-checkbox-control .smf-checkbox-control__label {
  display: block;
}
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item:has(.smf-file-control) .smf-item__col--controls {
  margin-top: calc(var(--pad) * 0.5);
}
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item:has(.smf-file-control) .smf-item__col--controls .smf-item__controls {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: calc(var(--pad) * 0.5) var(--pad);
}
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item:has(.smf-file-control) .smf-item__col--controls .smf-item__controls .smf-file-control .smf-file-control__label {
  border: none;
  background: var(--tplPrime);
  color: var(--tplSecond);
  border-radius: 3em;
  padding: 0.5em 1em;
}
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item:has(.smf-file-control) .smf-item__col--controls .smf-item__controls .smf-file-control .smf-file-control__filename {
  font-size: 0.7em;
}
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item.smf-item:has(.smf-file-control) .smf-item__col--controls .smf-item__controls .smf-file-control p {
  width: 100%;
  font-size: 0.7em;
  opacity: 0.5;
}
.formsWrap .snow-monkey-form .wp-block-snow-monkey-forms-item p {
  font-size: 0.75em;
}
.formsWrap .snow-monkey-form .smf-error-messages {
  color: var(--tplSecond);
  background: var(--tplSub);
  display: inline-block;
  padding: 0.2em 0.5em;
  line-height: 2;
  font-size: 0.6rem !important;
  margin-top: 0.5em;
}
.formsWrap .snow-monkey-form .smf-error-messages:before {
  content: "!";
  margin-right: 0.5em;
  display: inline-block;
  border: 1px solid var(--tplSecond);
  width: 1.5em;
  line-height: 1.5;
  text-align: center;
  border-radius: 50%;
  flex-shrink: 0;
}
.formsWrap .snow-monkey-form[data-screen=confirm] {
  --labelPad: 0;
}
.formsWrap .snow-monkey-form[data-screen=confirm] .smf-form {
  padding: var(--confPad);
  background-color: var(--tplSecond);
  color: var(--tplPrime);
  border-radius: var(--rad3);
}
.formsWrap .snow-monkey-form[data-screen=confirm] .smf-form .wp-block-snow-monkey-forms-item.smf-item {
  padding: 1em;
  display: flex;
  flex-wrap: wrap;
}
.formsWrap .snow-monkey-form[data-screen=confirm] .smf-form .wp-block-snow-monkey-forms-item.smf-item .smf-item__col--label {
  width: var(--confDtW);
}
.formsWrap .snow-monkey-form[data-screen=confirm] .smf-form .wp-block-snow-monkey-forms-item.smf-item .smf-item__col--label .smf-item__description {
  display: none;
}
.formsWrap .snow-monkey-form[data-screen=confirm] .smf-form .wp-block-snow-monkey-forms-item.smf-item .smf-item__col--controls {
  width: var(--confDdW);
}
.formsWrap .snow-monkey-form[data-screen=confirm] .smf-form .wp-block-snow-monkey-forms-item.smf-item:after {
  content: "";
  width: 100%;
  height: 1px;
  display: block;
  background: currentColor;
  opacity: 0.2;
  margin: 0 0 0;
}
.formsWrap .snow-monkey-form[data-screen=confirm] .smf-action:before {
  content: "入力内容に間違いがなければ「送信」をクリックしてください。";
  display: block;
  width: 100%;
  margin-bottom: 1em;
}
.formsWrap .snow-monkey-form[data-screen=complete] .smf-complete-content {
  text-align: center;
}

/*# sourceMappingURL=pages.css.map */
