@charset "UTF-8";
.armg_main *, .armg_main div, .armg_main span, .armg_main h1, .armg_main h2, .armg_main h3, .armg_main h4, .armg_main h5, .armg_main h6, .armg_main p, .armg_main dl, .armg_main dt, .armg_main dd, .armg_main ul, .armg_main ol, .armg_main li, .armg_main img, .armg_main strong, .armg_main em, .armg_main small, .armg_main sub, .armg_main sup, .armg_main b, .armg_main i, .armg_main iframe, .armg_main table, .armg_main thead, .armg_main tbody, .armg_main tfoot, .armg_main caption, .armg_main tr, .armg_main th, .armg_main td, .armg_main form, .armg_main fieldset, .armg_main label, .armg_main legend, .armg_main input, .armg_main textarea, .armg_main select, .armg_main pre, .armg_main blockquote, .armg_main abbr, .armg_main cite, .armg_main code, .armg_main del, .armg_main dfn, .armg_main ins, .armg_main kbd, .armg_main q, .armg_main samp, .armg_main var, .armg_main article, .armg_main section, .armg_main aside, .armg_main header, .armg_main footer, .armg_main nav, .armg_main menu, .armg_main main, .armg_main hgroup, .armg_main summary, .armg_main address, .armg_main figure, .armg_main figcaption, .armg_main object, .armg_main canvas, .armg_main details, .armg_main time, .armg_main mark, .armg_main audio, .armg_main video {
  margin: revert-layer;
  padding: revert-layer;
  font-size: revert-layer;
  font-weight: revert-layer;
  font-style: revert-layer;
  font-family: revert-layer;
  vertical-align: revert-layer;
  -webkit-text-decoration: revert-layer;
          text-decoration: revert-layer;
  text-transform: revert-layer;
  text-indent: revert-layer;
  text-shadow: revert-layer;
  letter-spacing: revert-layer;
  word-spacing: revert-layer;
  line-height: revert-layer;
  display: revert-layer;
  box-sizing: revert-layer;
}
.armg_main table {
  border-collapse: revert-layer;
  border-spacing: revert-layer;
}

/* base */
html {
  scroll-behavior: smooth;
  height: 100%;
}
@media screen and (max-width: 768px) {
  html {
    scroll-behavior: smooth;
  }
}

.armg_main {
  line-height: 1.8;
  min-width: unset;
  font-size: 16px;
  font-family: var(--default-font-family);
  box-sizing: border-box;
}

html.fixed, html.fixed body {
  height: 100%;
  overflow: hidden;
}

.armg_main a:link, .armg_main a:visited, .armg_main a:hover, .armg_main a:active {
  transition: all 0.3s ease 0s;
  text-decoration: underline;
}

article {
  background: linear-gradient(90deg, #E6F1F7 0%, #F2FAFF 48.56%, #E6F1F7 100%);
}

.armg_main em {
  font-style: normal;
}
.armg_main em.yellow-line {
  position: relative;
}
.armg_main em.yellow-line::before {
  content: "";
  position: absolute;
  display: inline-block;
  bottom: -1px;
  left: 0;
  width: 100%;
  height: 4px;
  border-radius: 2px;
  background-color: var(--color-yellow);
}
.armg_main em.heading {
  align-items: center;
  display: flex;
  justify-content: center;
  color: var(--color-brand-blue);
}
.armg_main em.heading::before, .armg_main em.heading::after {
  background-color: var(--color-brand-blue);
  border-radius: 5px;
  content: "";
  height: 2px;
  width: 22px;
}
@media screen and (max-width: 768px) {
  .armg_main em.heading::before, .armg_main em.heading::after {
    width: 45px;
  }
}
.armg_main em.heading::before {
  margin-right: 4px;
  transform: rotate(60deg);
}
.armg_main em.heading::after {
  margin-left: 4px;
  transform: rotate(-60deg);
}

@layer base {
  button:not(:disabled),
  [role=button]:not(:disabled) {
    cursor: pointer;
    transition: all 0.3s ease 0s;
  }
}
/* FV */
.fv h1 span {
  z-index: 1;
}
.fv h1 span::before {
  transform: skewX(-30deg); /*平行四辺形の角度*/
  content: "";
  position: absolute;
  bottom: 12px;
  left: 0;
  right: 16px;
  z-index: -1;
  background: #BFDBFE;
  height: 24%;
}
@media screen and (max-width: 768px) {
  .fv h1 span::before {
    height: 24%;
  }
}

/* ファーストビューのコンテナ */
.fv-video-container {
  position: relative;
  width: 82.4%;
  overflow: hidden;
  background-image: url("../img/isometric.png");
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
@media screen and (max-width: 768px) {
  .fv-video-container {
    background-image: url("../img/isometric_sp.png");
    width: 454px;
    height: 378px;
  }
}

/* FAQ */
.faq li dt::before {
  content: "Q.";
  font-size: 20px;
  font-weight: 500;
  color: var(--color-brand-blue-light);
  line-height: 28.8px;
}
.faq li dt::after {
  content: "";
  display: block;
  width: 24px;
  height: 24px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath fill='%232563EB' fill-rule='evenodd' clip-rule='evenodd' d='M2.41842 17.5607C2.97631 18.1464 3.88083 18.1464 4.43872 17.5607L12 9.62132L19.5613 17.5607C20.1192 18.1464 21.0237 18.1464 21.5816 17.5607C22.1395 16.9749 22.1395 16.0251 21.5816 15.4393L13.0102 6.43934C12.4523 5.85355 11.5477 5.85355 10.9898 6.43934L2.41842 15.4393C1.86053 16.0251 1.86053 16.9749 2.41842 17.5607Z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  margin: 0 0 0 auto;
  transform: rotate(180deg);
  transition: all 0.3s ease 0.3s;
}
.faq li dd {
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  margin-top: 0;
  transition: max-height 0.3s ease, opacity 0.6s ease, margin-top 0.3s ease;
}
.faq li dd::before {
  content: "A.";
  font-size: 20px;
  font-weight: 500;
  color: var(--color-amber-500);
  line-height: 28.8px;
}
.faq li.open dt::after {
  transform: rotate(0deg);
  transition: all 0.3s ease 0s;
}
.faq li.open dd {
  max-height: 200px;
  opacity: 1;
  margin-top: 20px;
}

/* Fade In */
.fade-in {
  opacity: 0;
  transform: translateY(50px);
  transition: opacity 1s ease, transform 1s cubic-bezier(0.4, 0, 0.2, 1);
}
@media screen and (max-width: 768px) {
  .fade-in {
    transform: translateY(20px);
    transition: opacity 0.5s ease, transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);
  }
}

.fade-in.is-visible {
  opacity: 1;
  transform: translateY(0);
}

/* stagger */
.stagger-item {
  opacity: 0;
  transform: translateY(40px);
  transition: opacity 0.8s, transform 0.8s cubic-bezier(0.4, 0, 0.2, 1);
}

.stagger-item.is-visible {
  opacity: 1;
  transform: translateY(0);
}

.stagger-item:nth-child(1) {
  transition-delay: 0s;
}

.stagger-item:nth-child(2) {
  transition-delay: 0.2s;
}

.stagger-item:nth-child(3) {
  transition-delay: 0.4s;
}

.stagger-item:nth-child(4) {
  transition-delay: 0.6s;
}