@charset "UTF-8";
:root {
  --color-main-text: #3D393B;
  --color-1st-green: #1A9C9B;
  --color-2nd-green: #D8F3F3;
  --color-1st-yellow: #E3A93A;
  --color-2nd-yellow: #FBFF00;
  --color-pink: #E33A80;
  --color-gray: #F5F5F5; }

@media (min-width: 1400px) {
  .container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
    max-width: 1279px; } }
body {
  font-family: "Noto Sans JP", sans-serif;
  font-style: normal; }

html {
  font-size: 62.5%;
  /*16px * 62.5% = 10px*/
  /* スマホサイズ */ }
  @media (max-width: 479px) {
    html {
      font-size: 52.5%; } }

p {
  font-size: 1.8rem;
  color: var(--color-main-text); }

.container {
  /* スマホサイズ */ }
  @media (max-width: 479px) {
    .container {
      padding-right: calc(var(--bs-gutter-x) * 1);
      padding-left: calc(var(--bs-gutter-x) * 1); } }

.row {
  margin-right: calc(-1 * var(--bs-gutter-x));
  margin-left: calc(-1 * var(--bs-gutter-x)); }

.row > * {
  padding-right: calc(var(--bs-gutter-x) * 1);
  padding-left: calc(var(--bs-gutter-x) * 1); }

.topfixed {
  position: fixed;
  width: 100%;
  z-index: 1;
  background-color: var(--color-gray); }

/* ======================== */
/* header */
/* ======================== */
#header {
  padding-top: 24px;
  padding-bottom: 24px; }
  #header .navbar {
    padding: 0;
    /* スマホサイズ */
    /* スマホサイズ以上 */ }
    @media (max-width: 479px) {
      #header .navbar {
        display: flex;
        min-width: 0; }
        #header .navbar .navbar-toggler {
          width: 51px;
          height: 51px;
          background-color: #fff; } }
    @media (min-width: 480px) {
      #header .navbar .logo-area {
        padding-right: 100px; } }
    #header .navbar .container-fluid {
      padding-left: 0;
      padding-right: 0; }
    #header .navbar .navbar-nav {
      padding: 10px 0.5rem;
      justify-content: space-between;
      align-items: center;
      /* スマホサイズ */ }
      #header .navbar .navbar-nav .nav-item {
        font-size: 1.6rem;
        font-weight: 500; }
        #header .navbar .navbar-nav .nav-item a {
          color: var(--color-main-text);
          text-decoration: none; }
        #header .navbar .navbar-nav .nav-item .btn-contact {
          color: #fff;
          background-color: var(--color-1st-green);
          border-radius: 5px;
          padding: 10px 20px 10px 40px;
          background-image: url("../images/icon-doc.png");
          background-repeat: no-repeat;
          background-position: 5px center; }
        #header .navbar .navbar-nav .nav-item .btn-demo {
          color: #fff;
          background-color: var(--color-1st-yellow);
          border-radius: 5px;
          padding: 10px 20px 10px 40px;
          background-image: url("../images/icon-demo.png");
          background-repeat: no-repeat;
          background-position: 5px center; }
      @media (max-width: 479px) {
        #header .navbar .navbar-nav .nav-item {
          margin-bottom: 10px; }
        #header .navbar .navbar-nav .btn-contact {
          display: inline-block; }
        #header .navbar .navbar-nav .btn-demo {
          display: inline-block; } }

/* ======================== */
/* breadcrumb */
/* ======================== */
.breadcrumb {
  margin-bottom: 75px; }
  .breadcrumb li, .breadcrumb li a {
    font-size: 1.2rem; }

/* ======================== */
/* cta */
/* ======================== */
#cta {
  background-color: var(--color-1st-green);
  padding-top: 50px;
  padding-bottom: 50px;
  margin-bottom: 75px; }
  #cta h2 {
    color: #fff;
    font-size: 4.6rem;
    text-align: center; }
  #cta .h2-btm {
    color: #fff;
    text-align: center;
    margin-bottom: 50px; }
  #cta .cta_box {
    padding-right: calc(var(--bs-gutter-x) * 2);
    padding-left: calc(var(--bs-gutter-x) * 2); }
  #cta .demo_cta {
    background-color: #fff;
    display: flex;
    justify-content: space-between;
    border-radius: 10px;
    margin-bottom: 20px;
    padding: 50px 60px;
    /* スマホサイズ */ }
    #cta .demo_cta div {
      flex: 1; }
    #cta .demo_cta h3 {
      color: var(--color-1st-green);
      font-size: 2.4rem; }
    #cta .demo_cta p {
      padding-right: 40px; }
    @media (max-width: 479px) {
      #cta .demo_cta {
        display: block;
        padding: 30px; }
        #cta .demo_cta p {
          padding-right: 0; } }
    #cta .demo_cta .btn-cta {
      margin-top: 20px;
      background-color: var(--color-1st-yellow);
      border-radius: 10px;
      text-align: center;
      height: fit-content; }
      #cta .demo_cta .btn-cta a {
        display: inline-block;
        color: #fff;
        width: 100%;
        height: 100%;
        padding-top: 20px;
        padding-bottom: 20px;
        text-decoration: none;
        font-size: 2.2rem; }
  #cta .contact_cta {
    background-color: #fff;
    display: flex;
    border-radius: 10px;
    padding: 50px 60px;
    /* スマホサイズ */ }
    #cta .contact_cta div {
      flex: 1; }
    #cta .contact_cta h3 {
      color: var(--color-1st-green);
      font-size: 2.4rem; }
    #cta .contact_cta p {
      padding-right: 40px; }
    @media (max-width: 479px) {
      #cta .contact_cta {
        display: block;
        padding: 30px; }
        #cta .contact_cta p {
          padding-right: 0; } }
    #cta .contact_cta .btn-cta {
      margin-top: 20px;
      background-color: var(--color-1st-green);
      border-radius: 10px;
      text-align: center;
      height: fit-content; }
      #cta .contact_cta .btn-cta a {
        display: inline-block;
        color: #fff;
        width: 100%;
        height: 100%;
        padding-top: 20px;
        padding-bottom: 20px;
        text-decoration: none;
        font-size: 2.2rem; }

/* ======================== */
/* footer */
/* ======================== */
#footer .footer-top {
  background-color: var(--color-2nd-green);
  margin-bottom: 0;
  padding: 40px 0; }
  #footer .footer-top .footer-menu {
    /* スマホサイズ */ }
    @media (max-width: 479px) {
      #footer .footer-top .footer-menu {
        display: none; } }
    #footer .footer-top .footer-menu ul {
      display: flex;
      justify-content: space-between;
      list-style: none;
      font-size: 1.6rem;
      font-weight: 500; }
      #footer .footer-top .footer-menu ul li {
        line-height: 1.5em; }
      #footer .footer-top .footer-menu ul a {
        color: var(--color-main-text);
        text-decoration: none; }
      #footer .footer-top .footer-menu ul .mini {
        font-size: 1.2rem;
        vertical-align: text-top;
        color: var(--color-1st-green); }
      #footer .footer-top .footer-menu ul .btn-contact {
        padding: 10px 0; }
        #footer .footer-top .footer-menu ul .btn-contact a {
          color: #fff;
          background-color: var(--color-1st-green);
          border-radius: 5px;
          padding: 10px 20px 10px 40px;
          background-image: url("../images/icon-doc.png");
          background-repeat: no-repeat;
          background-position: 5px center; }
      #footer .footer-top .footer-menu ul .btn-demo {
        padding: 10px 0; }
        #footer .footer-top .footer-menu ul .btn-demo a {
          color: #fff;
          background-color: var(--color-1st-yellow);
          border-radius: 5px;
          padding: 10px 20px 10px 40px;
          background-image: url("../images/icon-demo.png");
          background-repeat: no-repeat;
          background-position: 5px center; }
#footer .footer-bottom {
  background-color: var(--color-1st-green);
  padding: 10px 0; }
  #footer .footer-bottom .container {
    display: flex;
    justify-content: space-between; }
  #footer .footer-bottom small {
    color: #fff;
    font-size: 1.6rem; }
  #footer .footer-bottom .footer-link {
    list-style: none;
    padding-left: 0;
    display: flex; }
    #footer .footer-bottom .footer-link li:after {
      color: #fff;
      content: "｜"; }
    #footer .footer-bottom .footer-link a {
      color: #fff;
      text-decoration: none;
      font-size: 1.6rem; }
    #footer .footer-bottom .footer-link li:last-child::after {
      content: none; }
