@charset "UTF-8";
:root {
  --main-red: #e80000;
  --main-blue: #45496a;
  --dull-blue: #7d8bae;
  --light-gray: #e0e0e0;
  --main-gray: #9b9b9b;
  --font-gray: #484848;
  --font-white: #f5f5f5;
}

* {
  box-sizing: border-box;
  margin: 0px;
  padding: 0px;
}

html {
  font-size: 62.5%; /* font-size 1em = 10px on default browser settings */
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Oxygen-Sans", "Ubuntu", "Cantarell", "Helvetica Neue", "ヒラギノ角ゴシック", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", Roboto, sans-serif;
}

body {
  font-size: 1.8rem;
}
@media screen and (max-width: 430px) {
  body {
    font-size: 1.6rem;
  }
}

a {
  text-decoration: none;
}

.layout-a1 {
  position: relative;
  height: max(100vh, -moz-max-content);
  height: max(100vh, max-content);
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  /* Elements */
}
.layout-a1__page-header {
  position: sticky;
  top: 0px;
  z-index: 10000;
  flex-grow: 0;
}
.layout-a1__main {
  position: relative;
  flex-grow: 1;
}
.layout-a1__page-footer {
  position: sticky;
  top: 100vh;
  flex-grow: 0;
}

.page-header-a1 {
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 10px;
  background-color: #ffffff;
  /* Elements */
  /* Modifiers */
}
.page-header-a1__logo-area {
  order: 0;
  flex-grow: 0;
  flex-shrink: 0;
}
.page-header-a1__logo-image {
  max-width: 100px;
}
.page-header-a1__navigation-area {
  order: 1;
  flex-grow: 1;
  flex-shrink: 1;
}

.page-header-a2 {
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 10px;
  background-color: #ffffff;
  /* Elements */
  /* Modifiers */
}
.page-header-a2__logo-area {
  order: 0;
  flex-grow: 0;
  flex-shrink: 0;
  font-size: large;
  font-weight: bold;
  color: var(--font-gray);
}
.page-header-a2__logo-area a, .page-header-a2__logo-area a:hover, .page-header-a2__logo-area a:visited {
  color: inherit;
}
.page-header-a2__logo-image {
  max-width: 200px;
}
.page-header-a2__navigation-area {
  order: 1;
  flex-grow: 1;
  flex-shrink: 1;
  font-size: large;
  font-weight: bold;
  display: flex;
  justify-content: flex-end;
}

.page-footer-a1 {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 10px;
  background-color: #ffffff;
  /* Elements */
  /* Modifiers */
}
.page-footer-a1__navigation-area {
  order: 0;
  padding: 10px;
}
.page-footer-a1__copyright-area {
  order: 1;
  padding: 10px;
}

.horizontal-menu-a1 {
  list-style: none;
  display: flex;
  /* Elements */
  /* Modifiers */
}
.horizontal-menu-a1__item {
  padding: 0px 10px;
}
.horizontal-menu-a1--flex-end {
  justify-content: flex-end;
}
.horizontal-menu-a1--center {
  justify-content: center;
}

/* .flexible-humburger-menu-a1 -BEGIN */
/* A alement that has .flexible-humburger-menu-a1 class must be "details" and have "open" attribute. */
.flexible-humburger-menu-a1 {
  position: relative;
  display: flex;
  justify-content: flex-end;
  width: -moz-max-content;
  width: max-content;
  /* Elements */
}
.flexible-humburger-menu-a1__menu-button {
  display: none;
  width: -moz-max-content;
  width: max-content;
  list-style: none;
}
.flexible-humburger-menu-a1__list {
  list-style: none;
  display: flex;
  justify-content: flex-end;
}
.flexible-humburger-menu-a1__item {
  margin-left: 10px;
}
.flexible-humburger-menu-a1__item:first-child {
  margin-left: 0px;
}

@media screen and (max-width: 620px) {
  .flexible-humburger-menu-a1 {
    /* Elements */
  }
  .flexible-humburger-menu-a1__menu-button {
    display: initial;
    text-align: left;
  }
  .flexible-humburger-menu-a1__list {
    position: absolute;
    z-index: 1;
    right: 0px;
    flex-direction: column;
    justify-content: center;
    padding: 10px;
    background-color: #fff;
    border: 1px solid var(--light-gray);
  }
  .flexible-humburger-menu-a1__item {
    margin: 10px 0px 0px 0px;
  }
  .flexible-humburger-menu-a1__item:first-child {
    margin: 0px;
  }
}
/* .flexible-humburger-menu-a1 -END */
.color-wrapper-a1 {
  background-image: linear-gradient(to bottom, #e9f7f6 0%, #a8f5f1 70%, #50c9c3 100%);
}

.color-wrapper-a2 {
  background-color: #000;
}

.content-wrapper-a1 {
  margin: auto;
  padding-top: 30px;
}

.logo-color-red {
  color: var(--main-red);
}

.figure-triangles-a1 {
  position: absolute;
  aspect-ratio: 1/1;
}
.figure-triangles-a1__triangle-1 {
  position: absolute;
  z-index: 1;
  width: 100%;
  height: 100%;
  background-color: rgb(255, 187, 0);
  -webkit-clip-path: polygon(0% 100%, 50% 0, 45% 100%, 43.5% 100%, 48.5% 6%, 1.5% 100%, 0% 100%);
          clip-path: polygon(0% 100%, 50% 0, 45% 100%, 43.5% 100%, 48.5% 6%, 1.5% 100%, 0% 100%);
}
.figure-triangles-a1__triangle-2 {
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: aqua;
  -webkit-clip-path: polygon(40% 100%, 77.5% 25%, 73.75% 100%, 72.25% 100%, 76% 31%, 41.5% 100%, 40% 100%);
          clip-path: polygon(40% 100%, 77.5% 25%, 73.75% 100%, 72.25% 100%, 76% 31%, 41.5% 100%, 40% 100%);
}
.figure-triangles-a1__triangle-3 {
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: aqua;
  -webkit-clip-path: polygon(70% 100%, 95% 50%, 92.5% 100%, 91% 100%, 93.5% 56%, 71.5% 100%, 70% 100%);
          clip-path: polygon(70% 100%, 95% 50%, 92.5% 100%, 91% 100%, 93.5% 56%, 71.5% 100%, 70% 100%);
}

.figure-spectra-a1 {
  position: absolute;
  aspect-ratio: 1.5/1;
}
.figure-spectra-a1__spectrum-1 {
  position: absolute;
  z-index: 1;
  width: 100%;
  height: 100%;
  background-color: rgb(255, 187, 0);
  -webkit-clip-path: polygon(40% 100%, 40% 95%, 41% 95%, 41% 100%, 43% 100%, 43% 85%, 44% 85%, 44% 100%, 46% 100%, 46% 0%, 47% 0%, 47% 100%, 49% 100%, 49% 70%, 50% 70%, 50% 100%, 52% 100%, 52% 80%, 53% 80%, 53% 100%);
          clip-path: polygon(40% 100%, 40% 95%, 41% 95%, 41% 100%, 43% 100%, 43% 85%, 44% 85%, 44% 100%, 46% 100%, 46% 0%, 47% 0%, 47% 100%, 49% 100%, 49% 70%, 50% 70%, 50% 100%, 52% 100%, 52% 80%, 53% 80%, 53% 100%);
}
.figure-spectra-a1__spectrum-2 {
  position: absolute;
  z-index: 1;
  width: 100%;
  height: 100%;
  background-color: aqua;
  -webkit-clip-path: polygon(0% 100%, 0% 97%, 1% 97%, 1% 100%, 3% 100%, 3% 90%, 4% 90%, 4% 100%, 6% 100%, 6% 74%, 7% 74%, 7% 100%, 9% 100%, 9% 60%, 10% 60%, 10% 100%, 12% 100%, 12% 80%, 13% 80%, 13% 100%, 15% 100%, 15% 90%, 16% 90%, 16% 100%, 24% 100%, 24% 85%, 25% 85%, 25% 100%, 27% 100%, 27% 78%, 28% 78%, 28% 100%, 30% 100%, 30% 83%, 31% 83%, 31% 100%, 70% 100%, 70% 97%, 71% 97%, 71% 100%, 73% 100%, 73% 85%, 74% 85%, 74% 100%, 76% 100%, 76% 80%, 77% 80%, 77% 100%, 79% 100%, 79% 88%, 80% 88%, 80% 100%, 82% 100%, 82% 90%, 83% 90%, 83% 100%, 87% 100%, 87% 96%, 88% 96%, 88% 100%, 90% 100%, 90% 94%, 91% 94%, 91% 100%, 93% 100%, 93% 89%, 94% 89%, 94% 100%, 96% 100%, 96% 93%, 97% 93%, 97% 100%, 99% 100%, 99% 98%, 100% 98%, 100% 100%);
          clip-path: polygon(0% 100%, 0% 97%, 1% 97%, 1% 100%, 3% 100%, 3% 90%, 4% 90%, 4% 100%, 6% 100%, 6% 74%, 7% 74%, 7% 100%, 9% 100%, 9% 60%, 10% 60%, 10% 100%, 12% 100%, 12% 80%, 13% 80%, 13% 100%, 15% 100%, 15% 90%, 16% 90%, 16% 100%, 24% 100%, 24% 85%, 25% 85%, 25% 100%, 27% 100%, 27% 78%, 28% 78%, 28% 100%, 30% 100%, 30% 83%, 31% 83%, 31% 100%, 70% 100%, 70% 97%, 71% 97%, 71% 100%, 73% 100%, 73% 85%, 74% 85%, 74% 100%, 76% 100%, 76% 80%, 77% 80%, 77% 100%, 79% 100%, 79% 88%, 80% 88%, 80% 100%, 82% 100%, 82% 90%, 83% 90%, 83% 100%, 87% 100%, 87% 96%, 88% 96%, 88% 100%, 90% 100%, 90% 94%, 91% 94%, 91% 100%, 93% 100%, 93% 89%, 94% 89%, 94% 100%, 96% 100%, 96% 93%, 97% 93%, 97% 100%, 99% 100%, 99% 98%, 100% 98%, 100% 100%);
}/*# sourceMappingURL=base.css.map */