@charset "UTF-8";
/* ----------------------------------------------------------------
form
----------------------------------------------------------------- */
.form-area form {
  max-width: 800px;
  padding: 0 20px;
  margin-inline: auto; }
  @media (max-width: 768px) {
    .form-area form {
      /*  768px  */
      padding: 0; } }

.form-area textarea {
  width: 100%;
  height: 150px;
  border: 1px solid #b3b3b3;
  border-radius: 5px;
  background-color: #E4EDE2; }
  @media (max-width: 768px) {
    .form-area textarea {
      /*  768px  */
      width: 100%; } }

.form-area input {
  width: 300px;
  height: 40px;
  font-size: 1.5rem;
  border: 1px solid #b3b3b3;
  padding-left: 5px;
  border-radius: 5px;
  background-color: #E4EDE2; }
  @media (max-width: 768px) {
    .form-area input {
      /*  768px  */
      width: 100%; } }

.form-area select {
  width: 300px;
  height: 40px;
  font-size: 1.5rem;
  border: 1px solid #18513d;
  padding-left: 5px;
  border-radius: 5px; }
  @media (max-width: 768px) {
    .form-area select {
      /*  768px  */
      width: 100%; } }

.name {
  display: flex;
  align-items: center;
  gap: 1rem; }

.mei {
  margin-left: 1rem; }
  @media (max-width: 768px) {
    .mei {
      /*  768px  */
      margin-left: 0;
      margin-top: 1rem; } }

.terms-wrap {
  width: 100%;
  height: 200px;
  overflow-y: scroll;
  background-color: #fff;
  border: 1px solid #b3b3b3;
  font-size: 1.6rem;
  border-radius: 5px; }

.form-area .title {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-top: 3rem; }

.form-area .title p {
  font-weight: bold; }

@media (max-width: 768px) {
  .form-text {
    /*  768px  */
    font-size: 1.4rem; } }

.required {
  padding: 4px 10px;
  background-color: #963B3B;
  color: #fff;
  font-size: 13px;
  border-radius: 5px;
  line-height: 1;
  margin-top: 2px; }

.any {
  padding: 4px 10px;
  background-color: #999999;
  color: #fff;
  font-size: 13px;
  border-radius: 5px;
  line-height: 1;
  margin-top: 2px; }

.form-area .consent input {
  width: 30px;
  height: 30px; }
  @media (max-width: 768px) {
    .form-area .consent input {
      /*  768px  */
      width: 20px;
      height: 20px; } }

.consent {
  margin-top: 3rem;
  display: flex;
  align-items: center;
  gap: 2rem; }
  @media (max-width: 768px) {
    .consent {
      /*  768px  */
      gap: 1rem;
      margin-top: 1.5rem; } }

.consent p {
  font-size: 1.6rem; }

.confirmation {
  margin-top: 3rem;
  text-align: center; }
  @media (max-width: 768px) {
    .confirmation {
      /*  768px  */
      margin-top: 1.5rem; } }

.confirmation input {
  position: relative;
  background-color: #18513d;
  max-width: 400px;
  width: 90%;
  height: 70px;
  color: #fff;
  border: none;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  border-radius: 0px;
  font-size: 1.7rem;
  letter-spacing: 0.1em;
  font-family: "Shippori Mincho","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif; }
  @media (max-width: 768px) {
    .confirmation input {
      /*  768px  */
      margin-left: 0;
      width: 100%; } }

.confirmation input:hover {
  background-color: #00935f; }

/* ----------------------------------------------------------------
イベント用form
----------------------------------------------------------------- */
.short {
  width: 80px !important; }
  @media (max-width: 768px) {
    .short .short {
      /*  768px  */
      width: 70px !important; } }

.long {
  width: 70% !important; }
  @media (max-width: 768px) {
    .long .long {
      /*  768px  */
      width: 100% !important; } }

.radioarea-day {
  display: -ms-grid;
  display: grid;
  grid-template-columns: repeat(6, 1fr); }
  @media (max-width: 768px) {
    .radioarea-day .radioarea-day {
      /*  768px  */
      grid-template-columns: repeat(2, 1fr); } }

.radioarea-day-input {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 10px; }

.radioarea-day-input input {
  width: 20px;
  height: 20px; }

.radioarea-time {
  display: -ms-grid;
  display: grid;
  grid-template-columns: repeat(5, 1fr); }
  @media (max-width: 768px) {
    .radioarea-time .radioarea-time {
      /*  768px  */
      grid-template-columns: repeat(2, 1fr); } }

.radioarea-time-input {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 10px; }

.radioarea-time-input input {
  width: 20px;
  height: 20px; }

.kengaku {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 10px; }

.kengaku-input {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 10px; }

.kengaku-input input {
  width: 4%;
  height: 20px; }

span {
  font-size: 14px; }
  @media (max-width: 768px) {
    span span {
      /*  768px  */
      font-size: 10px;
      display: block; } }

@media (max-width: 768px) {
  .kengaku-wrap span {
    /*  768px  */
    display: inline; } }
/* ----------------------------------------------------------------
森の風用form
----------------------------------------------------------------- */
p.radio {
  display: flex;
  flex-direction: row; }
  p.radio input {
    width: 20px;
    margin: 0 10px 0 0; }

p.tel input {
  width: 80px; }

p.checkbox {
  display: flex;
  flex-direction: row;
  align-items: center; }
  p.checkbox input[type="checkbox"] {
    width: 20px;
    height: 20px;
    margin: 0 10px 0 0; }
