/* CSS Document */
.site-header {
  background-color: #fff !important; }

#header {
  background: #efcd99 url("../img/header-entry.jpg") center/cover; }
  #header::before {
    background-image: url("../../img/wave-green-top.svg"); }

#page-nav {
  background: #bde2c9; }
  #page-nav ul {
    width: 70%;
    margin: 0 auto; }
    #page-nav ul li {
      border: #513619 solid 1px;
      transition: 0.2s ease-in-out; }
      #page-nav ul li a {
        color: #513619; }
      #page-nav ul li:hover {
        background: #513619; }
        #page-nav ul li:hover a {
          color: #fff; }

#wrapper {
  overflow: hidden; }

#entry-intro {
  padding-bottom: 7rem; }
  @media screen and (max-width: 767px) {
    #entry-intro {
      padding-bottom: 5rem; } }
  @media screen and (max-width: 575px) {
    #entry-intro {
      padding-bottom: 3rem; } }
  #entry-intro .message {
    text-align: center;
    background: #bde2c9;
    padding-top: 5rem; }
    @media screen and (max-width: 991px) {
      #entry-intro .message {
        padding-top: 3rem; } }
    @media screen and (max-width: 767px) {
      #entry-intro .message {
        padding-top: 0; } }
    #entry-intro .message .message-main {
      position: relative;
      font-size: 32px;
      font-size: 3.2rem;
      font-weight: 700;
      display: inline-block;
      line-height: 1.3em;
      margin-bottom: 3rem; }
      @media screen and (max-width: 767px) {
        #entry-intro .message .message-main {
          font-size: 25px;
          font-size: 2.5rem;
          margin-bottom: 2rem; } }
      @media screen and (max-width: 575px) {
        #entry-intro .message .message-main {
          font-size: 22px;
          font-size: 2.2rem; } }
      #entry-intro .message .message-main::before {
        position: absolute;
        left: -30px;
        top: 0;
        content: "";
        width: 5px;
        height: 100%;
        background: #fff;
        border-radius: 5px;
        transform: rotate(-25deg); }
        @media screen and (max-width: 767px) {
          #entry-intro .message .message-main::before {
            left: -15px; } }
      #entry-intro .message .message-main::after {
        position: absolute;
        content: "";
        right: -30px;
        top: 0;
        width: 5px;
        height: 100%;
        background: #fff;
        border-radius: 5px;
        transform: rotate(25deg); }
        @media screen and (max-width: 767px) {
          #entry-intro .message .message-main::after {
            right: -15px; } }
    #entry-intro .message .message-bg {
      position: relative;
      background: url("../img/entry-hero.jpg");
      background-size: cover;
      background-repeat: no-repeat;
      background-position: center;
      height: 500px; }
      @media screen and (max-width: 991px) {
        #entry-intro .message .message-bg {
          height: 400px; } }
      @media screen and (max-width: 767px) {
        #entry-intro .message .message-bg {
          height: 350px; } }
      @media screen and (max-width: 575px) {
        #entry-intro .message .message-bg {
          height: 200px; } }
      #entry-intro .message .message-bg::before {
        content: "";
        position: absolute;
        top: -20px;
        left: 5%;
        background-image: url("../../img/onpu2.svg");
        background-size: contain;
        background-repeat: no-repeat;
        width: 50px;
        height: 90px; }
        @media screen and (max-width: 767px) {
          #entry-intro .message .message-bg::before {
            width: 40px;
            height: 70px; } }
        @media screen and (max-width: 575px) {
          #entry-intro .message .message-bg::before {
            width: 35px;
            height: 60px; } }
      #entry-intro .message .message-bg::after {
        content: "";
        position: absolute;
        bottom: -20px;
        right: 5%;
        background-image: url("../../img/onpu1.svg");
        background-size: contain;
        background-repeat: no-repeat;
        width: 80px;
        height: 60px;
        z-index: 10; }
        @media screen and (max-width: 767px) {
          #entry-intro .message .message-bg::after {
            width: 70px;
            height: 50px; } }
        @media screen and (max-width: 575px) {
          #entry-intro .message .message-bg::after {
            width: 60px;
            height: 40px; } }
  #entry-intro .message-text {
    padding-top: 5rem; }
    #entry-intro .message-text p {
      margin-bottom: 3rem; }
    #entry-intro .message-text .message-title {
      font-size: 23px;
      font-size: 2.3rem;
      font-weight: 600;
      color: #e8b86d;
      line-height: 1.75em; }
      @media screen and (max-width: 991px) {
        #entry-intro .message-text .message-title {
          font-size: 20px;
          font-size: 2rem;
          margin-bottom: 2rem; } }
    @media screen and (max-width: 767px) {
      #entry-intro .message-text .message-img {
        text-align: center; } }
    #entry-intro .message-text .message-img img {
      width: 480px;
      height: auto;
      transform: translateY(-10rem);
      border-radius: 50%;
      border: 15px solid white;
      box-shadow: 0 0 10px rgba(0, 0, 0, 0.1); }
      @media screen and (max-width: 991px) {
        #entry-intro .message-text .message-img img {
          transform: none;
          border: 10px solid white; } }
      @media screen and (max-width: 767px) {
        #entry-intro .message-text .message-img img {
          width: 90%;
          margin-bottom: 3rem; } }

#voice {
  position: relative;
  padding-bottom: 10rem; }
  @media screen and (max-width: 575px) {
    #voice {
      padding-bottom: 5rem; } }
  #voice::after {
    content: "";
    position: absolute;
    bottom: -2px;
    width: 100%;
    height: 5.7vw;
    background-image: url("../../img/wave-green-top.svg");
    background-size: contain;
    background-repeat: no-repeat;
    left: 50%;
    transform: translateX(-50%); }
  #voice .voice-container {
    display: flex;
    gap: 4rem;
    background: #bde2c9;
    border-radius: 10px;
    padding: 4rem 4rem 3rem;
    margin-bottom: 3rem; }
    @media screen and (max-width: 767px) {
      #voice .voice-container {
        padding: 4rem 3rem 3rem;
        flex-direction: column;
        gap: 2rem; } }
    @media screen and (max-width: 575px) {
      #voice .voice-container {
        margin-bottom: 2rem;
        gap: 1rem; } }
    #voice .voice-container .profile {
      width: 30%;
      text-align: center; }
      @media screen and (max-width: 991px) {
        #voice .voice-container .profile {
          width: 35%; } }
      @media screen and (max-width: 767px) {
        #voice .voice-container .profile {
          width: 100%; } }
      #voice .voice-container .profile img {
        height: 195px;
        margin-bottom: 2rem; }
        @media screen and (max-width: 767px) {
          #voice .voice-container .profile img {
            height: 160px; } }
      #voice .voice-container .profile p {
        font-weight: 600;
        line-height: 1.5em; }
    #voice .voice-container .comment {
      width: 70%; }
      @media screen and (max-width: 991px) {
        #voice .voice-container .comment {
          width: 65%; } }
      @media screen and (max-width: 767px) {
        #voice .voice-container .comment {
          width: 100%; } }

#guidelines {
  padding-top: 2rem;
  background: #bde2c9; }
  #guidelines table {
    width: 100%; }
    #guidelines table th, #guidelines table td {
      border-top: 1px solid #009d42;
      border-bottom: 1px solid #009d42;
      padding: 1.5rem 0;
      vertical-align: top; }
    #guidelines table th {
      font-weight: 400;
      width: 15%; }
      @media screen and (max-width: 575px) {
        #guidelines table th {
          width: 20%; } }
    #guidelines table .strong {
      font-weight: 600;
      color: #009d42; }
    #guidelines table .underline {
      text-decoration-line: underline; }

#contact-banner {
  padding: 7rem 0 10rem;
  background: #bde2c9; }
  @media screen and (max-width: 991px) {
    #contact-banner {
      padding: 5rem 0 5rem; } }
  @media screen and (max-width: 575px) {
    #contact-banner {
      padding: 3rem 0 3rem; } }
  #contact-banner .banner-content {
    display: flex;
    gap: 2rem;
    align-items: center;
    background: #009d42;
    border-radius: 10px;
    margin-bottom: 3rem;
    padding: 2rem;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
    transition: 0.2s ease-in-out; }
    @media screen and (max-width: 767px) {
      #contact-banner .banner-content {
        padding: 1.5rem; } }
    #contact-banner .banner-content:hover {
      background: #4cba7b; }
    #contact-banner .banner-content .text, #contact-banner .banner-content .image {
      flex: 1; }
    @media screen and (max-width: 575px) {
      #contact-banner .banner-content .text {
        text-align: center; } }
    #contact-banner .banner-content .text p {
      font-size: 35px;
      font-size: 3.5rem;
      line-height: 1.35em;
      color: #fff;
      border-bottom: dotted 3px #fff;
      display: inline-block;
      font-weight: 700; }
      @media screen and (max-width: 767px) {
        #contact-banner .banner-content .text p {
          font-size: 30px;
          font-size: 3rem; } }
      @media screen and (max-width: 575px) {
        #contact-banner .banner-content .text p {
          font-size: 28px;
          font-size: 2.8rem; } }
    #contact-banner .banner-content .image {
      height: 170px;
      overflow: hidden; }
      @media screen and (max-width: 991px) {
        #contact-banner .banner-content .image {
          height: 120px; } }
      @media screen and (max-width: 767px) {
        #contact-banner .banner-content .image {
          height: 120px; } }
      @media screen and (max-width: 575px) {
        #contact-banner .banner-content .image {
          display: none; } }
      #contact-banner .banner-content .image img {
        border-radius: 10px;
        width: 100%;
        height: 100%;
        object-fit: cover;
        mask-image: linear-gradient(to right, black 0%, black 70%, transparent 100%);
        -webkit-mask-image: linear-gradient(to right, black 0%, black 70%, transparent 100%); }
