@charset "utf-8";

body { padding-top: 56px; }

section { min-height: 100vh; }

.py-5 { padding: 5rem 1rem !important; }

#top { background-image: url("../img/top.jpg"); background-size: cover; background-position: center center; height: 100vh; display: flex; justify-content: center; align-items: center; text-align: center; color: white; position: relative; }

#top::before { content: ""; position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.5); z-index: 1; }

#top .content { position: relative; z-index: 2; }

.catchphrase { font-size: 2.5rem; font-weight: bold; }

#top h1 { padding-top: 1.5rem; padding-left: 0.5rem; padding-right: 0.5rem; }

#top p { font-size: 1.25rem; }

@media (max-width: 768px) {
  .navbar-brand img { height: 1.8rem; }
  .catchphrase { font-size: 2rem; }
  #top img { height: 2.3rem; }
  #top h1 { font-size: 1.45rem; }
  #top p { font-size: 1rem; padding-left: 1rem; padding-right: 1rem; }
}

#business h2 { margin-bottom: 2rem; font-size: 2rem; font-weight: bold; text-align: center; }

#business ul { margin-top: 30px; }

#business li { margin-bottom: 0.5rem; }

#business h4 { font-size: 1.25rem; margin-bottom: 1rem; }

#overview .card { border: none; border-radius: 8px; box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 6px; }

#overview .card-title { font-size: 1.5rem; margin-bottom: 1rem; }

#overview ul { padding-left: 1rem; }

#greeting { text-align: center; }

#greeting p { font-size: 1.25rem; line-height: 1.8; }

#recruitment h2 { margin-bottom: 2rem; font-size: 2rem; text-align: center; }

#recruitment h3 { font-size: 1.25rem; margin-bottom: 1rem; }

#recruitment ul { list-style: none; padding: 0px; }

#recruitment li { margin-bottom: 0.5rem; }

#contact .form-label { font-weight: bold; }

#contact input, #contact textarea { border-radius: 8px; border: 1px solid rgb(221, 221, 221); padding: 0.75rem; }

#contact button { background-color: rgb(0, 123, 255); color: rgb(255, 255, 255); border: none; padding: 0.75rem 1.5rem; border-radius: 8px; transition: background-color 0.3s; }

#contact button:hover { background-color: rgb(0, 86, 179); }

.embed-responsive { position: relative; display: block; width: 100%; padding: 0px; overflow: hidden; }

.embed-responsive-16by9 { padding-top: 56.25%; }

.embed-responsive-item { position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; }
