/* --- アンケート一覧ボタン2段用 --- */
.button-stack {
  display: flex;
  flex-direction: row;
  align-items: center;
}
@media (max-width: 768px) {
  .button-stack {
    flex-direction: column;
    align-items: stretch;
  }
  .button-stack .ms-2 {
    margin-left: 0 !important;
    margin-top: 0.5rem !important;
  }
}
html {
  font-size: 14px;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

html {
  position: relative;
  min-height: 100%;
}

body {
  margin-bottom: 60px;
}

.auto-fit-title {
  font-size: clamp(1.2rem, 4vw, 2.2rem);
  white-space: nowrap;
  line-height: 1.2;
  width: 100%;
  max-width: 100%;
  display: block;
}

@media (max-width: 500px) {
  .auto-fit-title {
    font-size: clamp(1rem, 7vw, 1.5rem);
  }
}

.btn-primary {
  --bs-btn-bg: #198754;
  --bs-btn-border-color: #198754;
  --bs-btn-hover-bg: #157347;
  --bs-btn-hover-border-color: #146c43;
  --bs-btn-active-bg: #146c43;
  --bs-btn-active-border-color: #13653f;
  --bs-btn-disabled-bg: #198754;
  --bs-btn-disabled-border-color: #198754;
  color: #fff;
}

.btn-primary {
  background-color: #198754 !important;
  border-color: #198754 !important;
}

.btn-primary:hover, .btn-primary:focus {
  background-color: #157347 !important;
  border-color: #146c43 !important;
}

@media (max-width: 768px) {
    #form-area .form-control,
    #form-area select,
    #form-area input[type="text"],
    #form-area input[type="date"],
    #form-area input[type="email"],
    #form-area input[type="password"] {
        font-size: 1.3rem;
        min-height: 3.2rem;
        padding: 0.8rem 1rem;
    }

    #form-area label,
    #form-area .form-label {
        font-size: 1.2rem;
    }

    #form-area button.btn {
        font-size: 1.3rem;
        padding: 0.8rem 0;
        min-height: 3.2rem;
        min-width:8rem;
    }

    .form-check-label {
        font-size: 1.2rem;
    }
    #consentBtn{
                font-size: 1.3rem;
        padding: 0.8rem 0;
        min-height: 3.2rem;
        min-width:8rem;
    }
}

@media (max-width: 768px) {
    .KT2025_001 .container.mt-4,
    .KT2025_001 .container.mt-5 {
        font-size: 1.25rem;
    }
    .KT2025_001 .form-label,
    .KT2025_001 .form-check-label,
    .KT2025_001 .form-select,
    .KT2025_001 .form-control,
    .KT2025_001 .alert,
    .KT2025_001 #questionCounter,
    .KT2025_001 button {
        font-size: 1.6em !important;
    }
    .KT2025_001 h3,
    .KT2025_001 h4,
    .KT2025_001 h2,
    .KT2025_001 label,
    .KT2025_001 p {
        font-size: 1.3em !important;
    }
    .KT2025_001 .btn {
        font-size: 1.2em !important;
        padding: 0.8em 1.5em;
    }
}

@media (max-width: 768px) {
    .birth-selects

{
    flex-direction: column !important;
    gap: 0.5em !important;
}

}

