@charset "UTF-8";
/* CSS Document */
body {
  width: 100%; }

#wrapper {
  box-sizing: border-box;
  width: 100%;
  position: relative;
  overflow: hidden; }

.clip-me {
  clip-path: url(#clipshape); }
  @media screen and (max-width: 767px) {
    .clip-me {
      clip-path: url(#clipshape4); } }

.header-box {
  position: fixed;
  z-index: 99;
  width: 100%; }
  .header-box::before {
    content: '';
    background: url(../img/header-logo.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    width: 200px;
    height: 200px;
    position: absolute;
    z-index: 99;
    top: 15%;
    left: 15%; }
    @media screen and (max-width: 1199px) {
      .header-box::before {
        top: 10%;
        left: 10%; } }
    @media screen and (max-width: 991px) {
      .header-box::before {
        width: 180px;
        height: 180px;
        top: 8%;
        left: 5%; } }
    @media screen and (max-width: 767px) {
      .header-box::before {
        width: 120px;
        height: 120px;
        top: 20%; } }
    @media screen and (max-width: 575px) {
      .header-box::before {
        width: 110px;
        height: 110px;
        top: 8%; } }

.hamburgerbox-header {
  background: #c8f6ed;
  background: linear-gradient(90deg, #c8f6ed 0%, #bbf1fa 100%);
  min-height: 240px; }
  @media screen and (max-width: 767px) {
    .hamburgerbox-header {
      min-height: 130px; } }
  .hamburgerbox-header table {
    margin-top: 1rem;
    max-height: 100px;
    color: #3C3C3C; }
    @media screen and (max-width: 991px) {
      .hamburgerbox-header table {
        margin-top: 0rem; } }
    @media screen and (max-width: 767px) {
      .hamburgerbox-header table {
        display: none; } }
    .hamburgerbox-header table th {
      vertical-align: initial;
      font-weight: normal; }
      .hamburgerbox-header table th::before {
        content: '●';
        color: #51C2D5; }
    .hamburgerbox-header table td {
      padding-left: 1em; }

.hamburgerbox-sitename {
  display: flex;
  justify-content: flex-end; }
  @media screen and (max-width: 767px) {
    .hamburgerbox-sitename {
      justify-content: flex-start; } }
  .hamburgerbox-sitename h1 {
    font-size: 12px;
    font-size: 1.2rem;
    margin-top: 1.5rem;
    margin-right: 3rem; }
    @media screen and (max-width: 1199px) {
      .hamburgerbox-sitename h1 {
        margin-right: 6rem; } }
    @media screen and (max-width: 991px) {
      .hamburgerbox-sitename h1 {
        margin-top: 1rem; } }
    @media screen and (max-width: 767px) {
      .hamburgerbox-sitename h1 {
        font-size: 11px;
        font-size: 1.1rem;
        margin-right: 0rem; } }
    @media screen and (max-width: 575px) {
      .hamburgerbox-sitename h1 {
        display: none; } }

.hamburger-menubox * {
  font-size: 16px; }

.input-hidden {
  display: none; }

.hamburger-switch {
  cursor: pointer;
  position: fixed;
  right: 2%;
  top: 0.5%;
  z-index: 9999;
  width: 4em;
  height: 4em; }
  @media screen and (max-width: 575px) {
    .hamburger-switch {
      right: 4%; } }
  .hamburger-switch::after {
    content: "MENU";
    color: #51C2D5;
    display: block;
    position: absolute;
    bottom: -30%;
    left: 14%;
    margin: auto; }

#hamburger1:checked ~ .hamburger-switch {
  position: fixed; }

.hamburger-switch-line1,
.hamburger-switch-line1:before,
.hamburger-switch-line1:after {
  width: 60px;
  height: 2px;
  background: #51C2D5;
  position: absolute;
  top: 50%;
  left: 50%;
  transition: .3s;
  content: ""; }

.hamburger-switch-line1 {
  transform: translate(-50%, -50%); }

.hamburger-switch-line1:before {
  transform: translate(-50%, -800%); }

.hamburger-switch-line1:after {
  transform: translate(-50%, 700%); }

#hamburger1:checked ~ .hamburger-switch .hamburger-switch-line1 {
  width: 0; }

#hamburger1:checked ~ .hamburger-switch .hamburger-switch-line1:before {
  transform: rotate(45deg) translate(-35%, 1000%); }

#hamburger1:checked ~ .hamburger-switch .hamburger-switch-line1:after {
  transform: rotate(-45deg) translate(-35%, -1000%); }

.hamburger-menuwrap {
  position: fixed;
  height: 100%;
  background: #fafafa;
  padding: 5em 3% 2em;
  z-index: 9998;
  transition: .3s;
  overflow-y: scroll;
  top: 0;
  left: 100%;
  width: 70%; }
  @media screen and (max-width: 575px) {
    .hamburger-menuwrap {
      padding: 5em 7% 2em; } }

.hamburger-menulist {
  margin-right: 3%;
  padding-left: 0;
  list-style: none;
  margin-top: 1em; }

.hamburger-menubox li {
  margin-bottom: 2rem;
  border-bottom: 1px solid #51C2D5; }
  .hamburger-menubox li a {
    text-decoration: none;
    color: #3C3C3C;
    display: block;
    padding: .5em 0;
    font-size: 20px;
    font-size: 2rem;
    transition: 0.3s; }
    .hamburger-menubox li a:hover {
      transform: translateX(20px);
      color: #51C2D5; }
    .hamburger-menubox li a span {
      display: block;
      font-size: 14px;
      font-size: 1.4rem;
      line-height: 1.5rem; }

.hamburger-menubox li:nth-child(5),
.hamburger-menubox li:nth-child(6) {
  border-bottom: none; }
  .hamburger-menubox li:nth-child(5) a,
  .hamburger-menubox li:nth-child(6) a {
    background: #989898;
    padding: 1rem 1rem 1rem 2rem; }
    @media screen and (max-width: 575px) {
      .hamburger-menubox li:nth-child(5) a,
      .hamburger-menubox li:nth-child(6) a {
        padding: 1rem; } }
    .hamburger-menubox li:nth-child(5) a:hover,
    .hamburger-menubox li:nth-child(6) a:hover {
      background: #51C2D5; }
    .hamburger-menubox li:nth-child(5) a img,
    .hamburger-menubox li:nth-child(6) a img {
      width: 20%; }
      @media screen and (max-width: 991px) {
        .hamburger-menubox li:nth-child(5) a img,
        .hamburger-menubox li:nth-child(6) a img {
          width: 30%; } }
      @media screen and (max-width: 767px) {
        .hamburger-menubox li:nth-child(5) a img,
        .hamburger-menubox li:nth-child(6) a img {
          width: 50%; } }
      @media screen and (max-width: 575px) {
        .hamburger-menubox li:nth-child(5) a img,
        .hamburger-menubox li:nth-child(6) a img {
          width: 70%; } }

.hamburger-menubox li:nth-child(7) {
  border-bottom: none; }
  .hamburger-menubox li:nth-child(7) a {
    background: white;
    padding: 1rem 1rem 1rem 2rem; }
    @media screen and (max-width: 575px) {
      .hamburger-menubox li:nth-child(7) a {
        padding: 1rem; } }
    .hamburger-menubox li:nth-child(7) a:hover {
      filter: drop-shadow(5px 5px 5px rgba(45, 175, 148, 0.3)); }
    .hamburger-menubox li:nth-child(7) a img {
      width: 20%; }
      @media screen and (max-width: 991px) {
        .hamburger-menubox li:nth-child(7) a img {
          width: 30%; } }
      @media screen and (max-width: 767px) {
        .hamburger-menubox li:nth-child(7) a img {
          width: 50%; } }
      @media screen and (max-width: 575px) {
        .hamburger-menubox li:nth-child(7) a img {
          width: 70%; } }

#hamburger1:checked ~ .hamburger-menuwrap {
  left: 80%; }
  @media screen and (max-width: 991px) {
    #hamburger1:checked ~ .hamburger-menuwrap {
      left: 70%; } }
  @media screen and (max-width: 767px) {
    #hamburger1:checked ~ .hamburger-menuwrap {
      left: 60%; } }
  @media screen and (max-width: 575px) {
    #hamburger1:checked ~ .hamburger-menuwrap {
      left: 50%; } }

#hamburger1:checked ~ .hamburger-cover {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 9997;
  background: rgba(3, 3, 3, 0.5);
  display: block; }

footer #page-top {
  position: relative;
  right: 0;
  z-index: 1; }
  footer #page-top a {
    position: absolute;
    width: 120px;
    height: 120px;
    background: #4BE4C5;
    border-radius: 50%;
    right: 5%;
    top: 35px;
    text-align: center;
    color: white;
    font-size: 2.5rem;
    font-size: 25px;
    filter: drop-shadow(5px 5px 5px rgba(45, 175, 148, 0.3));
    transition: 0.5s; }
    @media screen and (max-width: 767px) {
      footer #page-top a {
        font-size: 2rem;
        font-size: 20px;
        width: 100px;
        height: 100px;
        line-height: 2.5rem;
        top: -90px; } }
    @media screen and (max-width: 575px) {
      footer #page-top a {
        top: -210px; } }
    footer #page-top a:hover {
      transform: translateY(30px); }
    footer #page-top a span {
      position: absolute;
      display: inline-block;
      left: 0;
      top: 45%;
      -webkit-transform: translateY(-50%);
      transform: translateY(-50%);
      width: 120px;
      text-align: center; }
      @media screen and (max-width: 767px) {
        footer #page-top a span {
          width: 100px; } }
footer .footer-box {
  position: relative;
  height: 590px; }
  @media screen and (max-width: 991px) {
    footer .footer-box {
      max-height: 545px; } }
  @media screen and (max-width: 767px) {
    footer .footer-box {
      max-height: 720px; } }
footer .clip-me2 {
  clip-path: url(#clipshape2);
  background: #c8f6ed;
  background: linear-gradient(90deg, #c8f6ed 0%, #bbf1fa 100%);
  padding: 10rem 0 1rem;
  bottom: 0;
  position: absolute;
  width: 100%; }
  @media screen and (max-width: 991px) {
    footer .clip-me2 {
      padding: 7rem 0 1rem; } }
  @media screen and (max-width: 767px) {
    footer .clip-me2 {
      clip-path: url(#clipshape3); } }
  footer .clip-me2 ul li:first-child {
    margin-right: 1rem; }
    @media screen and (max-width: 575px) {
      footer .clip-me2 ul li:first-child {
        margin-right: 1rem;
        width: 50%; } }
    footer .clip-me2 ul li:first-child a {
      background: white;
      border-radius: 1rem;
      padding: 1rem;
      display: flex;
      align-items: center;
      transition: 0.3s; }
      footer .clip-me2 ul li:first-child a:hover {
        filter: drop-shadow(5px 5px 5px rgba(45, 175, 148, 0.5)); }
  footer .clip-me2 ul li:last-child a {
    background: #51C2D5;
    color: white;
    padding: 2.3rem;
    font-size: 25px;
    border-radius: 1rem;
    display: flex;
    transition: 0.3s; }
    @media screen and (max-width: 575px) {
      footer .clip-me2 ul li:last-child a {
        padding: 2rem 2.5rem;
        font-size: 20px;
        border-radius: 1rem;
        align-items: center; } }
    footer .clip-me2 ul li:last-child a:hover {
      filter: drop-shadow(5px 5px 5px rgba(45, 175, 148, 0.5));
      background: white;
      color: #51C2D5; }
    footer .clip-me2 ul li:last-child a i {
      padding-right: 1rem; }
  footer .clip-me2 ul + p {
    margin-top: 2rem; }
    @media screen and (max-width: 767px) {
      footer .clip-me2 ul + p {
        text-align: center; } }
    footer .clip-me2 ul + p a {
      font-size: 40px;
      font-size: 4rem;
      color: #3C3C3C;
      font-weight: bold; }
      footer .clip-me2 ul + p a i {
        color: #51C2D5;
        padding-right: 1rem; }
  footer .clip-me2 .footer-right table {
    margin-top: 4rem;
    max-height: 100px;
    color: #828282; }
    @media screen and (max-width: 767px) {
      footer .clip-me2 .footer-right table {
        margin-top: 2rem;
        text-align: left; } }
    @media screen and (max-width: 575px) {
      footer .clip-me2 .footer-right table {
        font-size: 1.5rem;
        font-size: 15px; } }
    footer .clip-me2 .footer-right table th {
      vertical-align: initial;
      font-weight: normal; }
      footer .clip-me2 .footer-right table th::before {
        content: '●';
        color: #51C2D5; }
    footer .clip-me2 .footer-right table td {
      padding-left: 1em; }
  footer .clip-me2 .footer-right p {
    display: inline-block;
    font-size: 1.5rem;
    font-size: 15px;
    color: white;
    background: #51C2D5;
    border-radius: 5rem;
    padding: 0 2rem;
    margin-top: 2rem; }
  footer .clip-me2 .footer-left {
    margin-right: 5rem; }
    @media screen and (max-width: 991px) {
      footer .clip-me2 .footer-left {
        margin-right: 2rem; } }
    footer .clip-me2 .footer-left img {
      width: 80%; }
    footer .clip-me2 .footer-left p {
      margin-top: 2rem;
      color: #828282; }
      footer .clip-me2 .footer-left p i {
        padding-right: 1rem; }
  footer .clip-me2 div + .d-flex {
    justify-content: center;
    align-items: flex-end;
    margin-top: 5rem; }
    @media screen and (max-width: 991px) {
      footer .clip-me2 div + .d-flex {
        margin-top: 2rem; } }
    @media screen and (max-width: 767px) {
      footer .clip-me2 div + .d-flex {
        margin-top: 5rem;
        flex-wrap: wrap;
        text-align: center; } }
  footer .clip-me2 .copyright {
    border-top: 1px solid #51C2D5;
    margin-top: 3rem;
    padding-top: 2rem; }
    footer .clip-me2 .copyright p {
      font-size: 12px;
      font-size: 1.2rem;
      color: #51C2D5; }
