@charset "UTF-8";

/* 共通パーツ */
body{
  min-height: 100vh; /* ←コンテンツの高さの最小値＝ブラウザの高さに指定 */
  position: relative;/* ←相対位置 */
  padding-bottom: 60px; /* ←フッターの高さを指定 */
  box-sizing: border-box;
}

h2,
h3 {
  margin: 50px 0 20px;
}

/* 入力されている値は太字にする */
input, textarea, select {
  font-weight: bold !important;
}

/* プレースホルダーは薄くする */
:placeholder-shown {
  font-weight: 100 !important;
}

/* コンテンツ部分 */
.radio {
  display: flex;
}

.radio > label {
  padding-right: 10px;
}

.radio>label {
  padding-right:10px;
}

.sex {
  font-weight:bold;
}

.card {
  min-height: 80vh;
}

.card .card-body {
  padding: 15px 45px 10px;
}

.card .card-body .row {
  margin-bottom: 15px;
}

.card .card-body .row-space {
  justify-content: space-around;
}

.card .card-body .age-group {
  align-items: center;
}

.card .card-body .age-group .tether{
  margin: 15px 10px 0;
  font-weight: bold;
}

.card .card-body .fee .form-group {
  margin: 0 20px 10px 0;
}

.card .card-body .fee .form-group .input {
  position: relative;
}

.card .card-body .fee .form-group .input::after {
  position: absolute;
  content: '円';
  bottom: 0;
  right: -20px;
  font-size: 15px;
  font-weight: bold;
}

.card .card-body .percent .form-group .input {
  position: relative;
}

.card .card-body .percent .form-group .input::after {
  position: absolute;
  content: '%';
  bottom: 0;
  right: -20px;
  font-size: 15px;
  font-weight: bold;
}

.card .card-body .person .form-group .input {
  position: relative;
}

.card .card-body .person .form-group .input::after {
  position: absolute;
  content: '人';
  bottom: 0;
  right: -20px;
  font-size: 15px;
  font-weight: bold;
}

.card label{
  color: inherit;
  font-weight: bold;
  position: relative;
  padding: 0 0 0 15px;
}

.card label::before{
  position: absolute;
  content: '◆';
  top: 1px;
  left: 0;
  font-size: 9px;
}
.card .select {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 15px;
}
.card .select label {
  padding: 0 0 0 20px;
  cursor: pointer;
}
.card .select label::before {
  content: none;
}
.card .select label input {
  margin: 0 5px 2px 0px;
  vertical-align: middle;
  cursor: pointer;
}

.card input {
  color: inherit;
}

.card select {
  cursor: pointer;
}

.back-link {
  margin: 30px 0 0;
}

/* フッター */
footer {
  position: absolute; /* ←絶対位置 */
  bottom: 0;
}

/* アコーディオンメニューの<a>の色を黒にするため */
#service-area-label>label>a {
  color:black;
}

span.necessary {
  color: red;
}