@charset "UTF-8";
.formBack {
  background-color: #F3F3F3;
  border-radius: 30px;
  padding-top: 10px;
  padding-bottom: 50px;
  margin-bottom: 50px;
  padding: 50px 10px 50px 10px;
}

.formTitle {
  text-align: center;
}

.formText {
  text-align: center;
}
.formText .formsp {
  text-align: left;
}

.formTopImg {
  display: flex;
  justify-content: center;
}

.formArea {
  max-width: 730px;
  margin-inline: auto;
}

.formRequiredText {
  display: flex;
  align-items: center;
}
.formRequiredText p {
  color: #F10000;
}

.formRequired {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 55px;
  height: 21px;
  font-size: 15px;
  background-color: #F10000;
  color: #FFFFFF;
  border-radius: 50px;
}

.formOptional {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 55px;
  height: 21px;
  font-size: 15px;
  background-color: #A2A2A2;
  color: #FFFFFF;
  border-radius: 50px;
}

.formBlock {
  margin: 10px 0;
}
.formBlock p {
  margin: 10px 0;
}
.formBlock td {
  padding: 15px;
}

.assressRequired {
  position: relative;
  display: flex;
  align-items: center;
  gap: 20px;
}

.radioformBlock {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column; /* 縦並びに変更 */
}

.radioformBlock label {
  display: flex;
  align-items: center; /* ラジオと文字を横並び */
}

.anotherlabel {
  display: flex;
  align-items: center; /* ラジオと文字を横並び */
  flex-wrap: wrap;
}
.formBlockMutualAid {
  display: flex;
}

.MutualAidboxLeft {
  white-space: nowrap;
  margin-right: 5px;
}

.formItem {
  display: flex;
  align-items: center;
  gap: 20px;
  margin-bottom: 10px;
}

.formtext {
  width: 100%;
  border: none;
  border-radius: 5px;
  padding: 5px 10px;
}

.p-postal-code {
  border: none;
  border-radius: 5px;
  padding: 5px 10px;
}

.p-region {
  width: 100%;
  border: none;
  border-radius: 5px;
  padding: 5px 10px;
}

.p-locality {
  width: 100%;
  border: none;
  border-radius: 5px;
  padding: 5px 10px;
}

.p-street-address {
  width: 100%;
  border: none;
  border-radius: 5px;
  padding: 5px 10px;
}

.ageformtext {
  width: 110px;
  border: none;
  border-radius: 5px;
  padding: 5px 10px;
}

.radioItem {
  margin-right: 20px;
}

.formcheckbox {
  margin-right: 5px;
}

.MutualAidbox {
  display: inline-block;
}

.MutualAidItem {
  margin-right: 20px;
}

.formSend {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 260px;
  height: 50px;
  color: #ffffff;
  background-color: #0E65E9;
  border: solid 1px #0E65E9;
  border-radius: 50px;
  text-decoration: none;
  margin: 40px auto;
}

.formSend:hover {
  cursor: pointer;
}

.emphasisCheckbox {
  margin-right: 5px;
}

.BenefitCheckbox {
  margin-right: 5px;
}

.anotherform {
  width: 100%;
  border: none;
  border-radius: 5px;
}

.anotherBox {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 0; /* 隙間を完全にゼロにする */
}

.formsp {
  display: block;
}

.formpc {
  display: none;
}

.error-wrapper {
  display: block;
  position: relative;
}

.error-bubble {
  position: absolute;
  background: #fff;
  color: #000;
  border: 1px solid #000;
  font-size: 14px;
  padding: 6px 10px;
  border-radius: 6px;
  z-index: 9999;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2);
  animation: fadeIn 0.2s ease;
  white-space: normal; /* ← 折り返し可能にする */
  max-width: 90vw; /* ← スマホで長文対応 */
  box-sizing: border-box; /* ← padding込みの幅計算 */
}

@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(-5px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (min-width: 768px){
  .formBack {
    padding: 80px 10px 50px 10px;
  }
  .radioformBlock {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    gap: 0.5em; /* 項目間の余白 */
  }
  .anotherform {
    width: auto;
  }
  .anotherBox {
    width: auto;
  }
  .formsp {
    display: none;
  }
  .formpc {
    display: block;
  }
}

/*# sourceMappingURL=index.css.map*/