/*
* Prefixed by https://autoprefixer.github.io
* PostCSS: v8.4.14,
* Autoprefixer: v10.4.7
* Browsers: last 4 version
*/

@charset "UTF-8";
@import url('https://fonts.googleapis.com/css?family=Exo:400,700');

body {
  background-color: #eef4f7;
  font-family: 'Exo', sans-serif;
  padding-top: 5rem;
}

.container.mt-3.mb-3.border.p-5.rounded {
  background-color: #212629;
  display: flex;
  align-items: center;
  gap: 16px;
  color: #eef4f7;
  width: 100%;
  margin: 0 auto;
  min-height: calc(100vh - 300px);
  justify-content: center;
}

/*吹き出し*/
.balloon {
  position: relative;
  background-color: #f9f9e9;
  color: #333;
  padding: 12px 16px;
  border-radius: 8px;
  width: 50%;
}

/* 吹き出しの「しっぽ」（左側に尖る） */
.balloon::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 100%;
  transform: translateY(-50%);

  /* 三角形をborderで作る */
  border-width: 8px;
  border-style: solid;
  border-color: transparent transparent transparent #f9f9e9;
}

/* 404画像 */
.mb-3.text-center {
  max-width: 600px; /* 画像の最大幅を指定 */
  height: auto; /* アスペクト比を保つ */
  display: block;
}
/* おしらせ */
.alert-text-area {
  flex: 1;
  overflow-wrap: break-word;
}

/*画面幅調整 基本のpcサイズ*/
.img-size {
  max-width: 100%;
  height: auto;
}

html {
  font-size: 14px; /* デフォルトの文字サイズを設定 */
}

/* 画面幅 960px以下（タブレットくらい） */
@media (max-width: 768px) {
  html {
    font-size: 10px;
  } /*スマホの文字サイズ設定*/
  .img-size {
    max-width: 80%;
  }
  .balloon {
    width: 70%;
  }
  .balloon::after {
    top: 100%;
    left: 30px;
    transform: none;
    border-width: 8px 8px 0 8px;
    border-style: solid;
    border-color: #f9f9e9 transparent transparent transparent;
  }
}

input[type='submit'] {
  height: 44px;
  width: 240px;
}

.privacy {
  font-size: 0.8em;
  color: #999;
}

.spinwrapper {
  position: fixed;
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  top: 0;
  background-color: #999;
  opacity: 0.5;
}

.spin {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0 auto;
  width: 3rem;
  height: 3rem;
}

.form-check-label,
input[type='checkbox'] {
  cursor: pointer;
}

th,
td {
  white-space: nowrap;
}

.table-responsive {
  min-height: 120px;
}
