@charset "UTF-8";

/* ================================================== */
/* base */
/* ================================================== */
:root {
  --border-color-gray: #d7d7d7;
  --border-radius-card: .75rem;
  --color-green: #16a45a;
  --color-lightgray: #ebebeb;
  --color-red: #e10000;
  --font-family-font-awesome: "Font Awesome 5 Free";
}

html {
  font-size: 62.5%;
  height: 100%;
}

body {
  color: #333;
  font-family: 
    "Hiragino Sans",
    "Yu Gothic",
    "Meiryo UI",
    "Meiryo",
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    Roboto,
    Oxygen,
    Ubuntu,
    Cantarell,
    "Fira Sans",
    "Droid Sans",
    "Helvetica Neue",
    Arial,
    sans-serif;
  -webkit-font-feature-settings: "pkna";
  font-feature-settings: "pkna";
  font-size: 1.6rem;
  font-weight: normal;
  height: 100%;
  letter-spacing: .1rem;
  line-height: 1.6;
  width: 100%;
  word-break: break-all;
  word-wrap: break-word;
}

.caveat-bold {
  font-family: "Caveat", cursive;
  font-optical-sizing: auto;
  font-weight: 700;
  font-style: normal;
  letter-spacing: normal;
  line-height: 1;
}

/* ================================================== */
/* elements */
/* ================================================== */
a {
  color: var(--color-green);
}
a:hover {
  text-decoration: underline;
}

.block:not(:last-child) {
  margin-bottom: 6rem;
}

.button {
  background-color: #000;
  color: #fff;
  font-size: 1.6rem;
}
.button:hover {
  background-color: var(--color-green);
  text-decoration: none;
}

.content p:not(:last-child),
.content ul:not(:last-child) {
  margin-bottom: 2rem;
}
.content ul:not(:first-child) {
  margin-top: 1rem;
}

.has-text-white a {
  color: #fff;
}

.image-full-width {
  width: 100%;
}

.title:not(:last-child),
.title-description:not(:last-child) {
  margin-bottom: 3rem;
}
.title.is-1 {
  font-size: 9.6rem;
}
.title.is-2 {
  font-size: 4.8rem;
}
.title.is-3 {
  font-size: 3.2rem;
}
.title.is-4 {
  font-size: 1.6rem;
}
.title-description {
  font-size: 2rem;
  font-weight: bold;
}
.title-description span {
  background-color: var(--color-green);
  color: #fff;
  padding: .5rem 1rem;
}

.title-wrap {
  margin-bottom: 3rem;
}
.title-wrap .title {
  margin-bottom: 1.5rem;
}

/* ================================================== */
/* components */
/* ================================================== */
.card-content {
  padding: 4rem;
}

.navbar {
  padding: 1rem 0;
}
.navbar-brand img {
  height: 36px;
  max-height: none;
}
.navbar-burger:hover {
  background-color: transparent;
}
.navbar-burger span {
  background-color: var(--color-green);
}
.navbar-end .navbar-item {
  padding: .5rem 1.5rem;
}
.navbar-end .navbar-item:last-child {
  padding-right: .75rem;
}
a.navbar-item:hover {
  background-color: transparent;
  color: var(--color-green);
  text-decoration: none;
}
body.has-navbar-fixed-top {
  padding-top: 70px;
}

/* ================================================== */
/* layout */
/* ================================================== */
.footer {
  padding: 3rem;
}
.footer a {
  color: #333;
}
.footer a:hover {
  color: var(--color-green);
}

.section {
  padding: 10rem 3rem;
}

/* ================================================== */
/* font-awesome */
/* ================================================== */
ul.list-note {
  color: var(--color-red);
  font-size: 1.4rem;
  list-style-type: none;
  margin-inline-start: 1.2em;
}

ul.list-note li,
.faq-title {
  display: flex;
}
ul.list-note li::before,
.faq-title::before {
  font-family: var(--font-family-font-awesome);
  margin-right: .5rem;
}

ul.list-note li::before {
  content: "\2a";
}

.faq-title::before {
  content: "\f059";
}

/* ================================================== */
/* helpers */
/* ================================================== */
.bc_green {
  background-color: var(--color-green);
}

.bi_linear-gradient_light {
  background-image: linear-gradient(to bottom, #fff, var(--color-lightgray));
}