@import url(https://fonts.googleapis.com/css2?family=Bree+Serif&family=Montserrat:wght@400;700&family=Noto+Sans+JP:wght@300;500;700&family=Noto+Serif+JP:wght@700&display=swap);

.l-entry-in .wpcf7 {
    width: 100%;
}

.input-text, .input-tel, .input-email {
  padding: 0 0 0 13px;
  border: none;
  border-radius: 0;
  outline: none;
  background: none;
  box-shadow: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  /* リセットじゃない部分 */
  border: 1px solid rgba(0, 0, 0, 0.16);
  width: 100%;
  height: 100%;
}

.input-year, .input-month, .input-day {
  padding: 0 0 0 13px;
  border: none;
  border-radius: 0;
  outline: none;
  background: none;
  box-shadow: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  /* リセットじゃない部分 */
  border: 1px solid rgba(0, 0, 0, 0.16);
  width: 75%;
  min-height: 45px;
}
.input-text:focus,
.input-year:focus,
.input-month:focus,
.input-day:focus,
.input-tel:focus,
.input-email:focus {
  outline: 2px solid #3498db;
  /* 自由な色に変更可能 */
  outline-offset: 0;
}

.l-entry-in .entry-form.wpcf7-form .entry-form-row .entry-form-row-right .entry-form-selectBox:has(.input-text):before,
.l-entry-in .entry-form.wpcf7-form .entry-form-row .entry-form-row-right .entry-form-selectBox:has(.input-year):before,
.l-entry-in .entry-form.wpcf7-form .entry-form-row .entry-form-row-right .entry-form-selectBox:has(.input-tel):before,
.l-entry-in .entry-form.wpcf7-form .entry-form-row .entry-form-row-right .entry-form-selectBox:has(.input-email):before {
  content: '';
}

.entry-form-row:has(.input-year) {
  align-items: center;
}

.year-text, .month-text, .day-text {
  padding-inline: 10px;
}

.custom-file-upload {
  position: relative;
  display: inline-block;
  width: 100%;
}

.input-file {
  display: none;
}

.custom-file-upload button {
  padding: 10px;
  border: 1px solid rgba(0, 0, 0, 0.16);
  background: none;
  cursor: pointer;
  color: #000;
  width: 100%;
  height: 45px;
  color: rgb(117, 117, 117);
}

.custom-file-upload button:focus {
  border-color: #3498db; /* Border color when focused */
  box-shadow: 0 0 0 2px rgba(52, 152, 219, 0.5); /* Add a soft outline */
}

.entry-submit-wrap {
  width: fit-content;
  margin-inline: auto;
  position: relative;
}

.entry-submit-wrap::before {
  content: '';
  position: absolute;
  background-image: url(../resource/img/icon-arrow--blue.webp);
  background-repeat: no-repeat;
  background-size: 5px;
  background-position: center;
  display: block;
  aspect-ratio: 1;
  width: 16px;
  height: auto;
  background-color: #fff;
  border-radius: 50%;
  z-index: 1;
  top: 22%;
  right: 40px;
}

.entry-submit-wrap:hover::before {
  border: 1.5px solid #18327c;
}

.entry-submit {
  margin-top: 33px;
  text-align: center;
}

@media screen and (max-width: 1000px) {
  .entry-submit-wrap {
    min-width: auto !important;
    width: min(492px, 100%);
  }
  .entry-submit {
    width: 100%;
    min-width: auto !important;
  }
}

.l-entry-in .entry-form .entry-form-row:nth-child(2) {
    border-top: 1px solid rgba(217, 217, 217, 0.4);
}

.l-entry-in .entry-form.wpcf7-form .entry-form-row .entry-form-row-right select {
  color: #000;
}

.entry-form-inputBox:nth-child(2) .wpcf7-not-valid-tip {
  visibility: hidden;
}

.entry-form-selectBox .wpcf7-not-valid-tip {
  display: inline-block;
}

.l-entry-in .entry-form.wpcf7-form .entry-form-row .entry-form-row-right {
  height: 45px;
}

.entry-form-selectBox:has(.input-year) {
  display: flex;
  justify-content: start;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px 0;
}

@media screen and (max-width: 1000px) {
  .entry-form-row:has(.input-year) {
    align-items: start;
  }  
}

.entry-form-selectBox > div {
  width: 26%;
}

@media screen and (max-width: 1000px) {
  .entry-form-selectBox > div {
    flex-grow: 1;
  }
}

@media screen and (max-width: 767px) {
  .entry-form-selectBox > div {
    flex-grow: 0;
    width: 200px;
  }
}

.l-entry-in .entry-form.wpcf7-form .entry-form-row .entry-form-row-right:has(.input-year) {
  height: auto;
}

.wpcf7-radio + .wpcf7-not-valid-tip {
  white-space: nowrap;
}