.s360-inquiry {
  margin-block: 2rem;
  padding: clamp(1rem, 3vw, 2rem);
  border: 1px solid #d8e6dc;
  border-radius: 18px;
  background: #f8fbf8;
  color: #18352c;
}
.s360-inquiry h3 { margin-top: 0; }
.s360-inquiry__form { display: grid; gap: 1.4rem; }
.s360-inquiry fieldset {
  min-width: 0;
  margin: 0;
  padding: 1rem;
  border: 1px solid #cddbd2;
  border-radius: 12px;
  background: #fff;
}
.s360-inquiry legend { padding-inline: .35rem; font-weight: 700; }
.s360-inquiry__areas { display: grid; gap: 1rem; }
.s360-inquiry__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.s360-inquiry__size-actions { display: flex; gap: .5rem; }
.s360-inquiry__size-actions button { padding: .35rem .65rem; border: 1px solid #9baea3; border-radius: 7px; background: #fff; color: #18533d; cursor: pointer; }
.s360-inquiry__size input::-webkit-inner-spin-button,
.s360-inquiry__size input::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
.s360-inquiry__size input[type="number"] { appearance: textfield; -moz-appearance: textfield; }
.s360-inquiry label { display: grid; gap: .3rem; margin-block: .5rem; font-size: .92rem; font-weight: 600; }
.s360-inquiry input:not([type="checkbox"]),
.s360-inquiry select,
.s360-inquiry textarea {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  padding: .7rem;
  border: 1px solid #9baea3;
  border-radius: 7px;
  background: #fff;
  color: #18352c;
  font: inherit;
}
.s360-inquiry__choices { display: flex; flex-wrap: wrap; gap: .4rem 1.2rem; margin-block: 1rem; }
.s360-inquiry__choices > span { width: 100%; font-weight: 700; }
.s360-inquiry__choices label,
.s360-inquiry__consent { display: flex !important; align-items: flex-start; gap: .5rem !important; font-weight: 400 !important; }
.s360-inquiry__choices input,
.s360-inquiry__consent input { margin-top: .25rem; flex: 0 0 auto; }
.s360-inquiry__add,
.s360-inquiry__remove,
.s360-inquiry__submit { cursor: pointer; border-radius: 7px; font: inherit; }
.s360-inquiry__add,
.s360-inquiry__remove { justify-self: start; padding: .55rem .8rem; border: 1px solid #27634e; background: transparent; color: #18533d; }
.s360-inquiry__submit { justify-self: start; padding: .8rem 1.3rem; border: 0; background: #185a43; color: #fff; font-weight: 700; }
.s360-inquiry__notice { padding: .8rem; border-left: 4px solid #278355; background: #e9f7ed; }
.s360-inquiry__trap { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.s360-inquiry [hidden] { display: none !important; }
@media (max-width: 650px) {
  .s360-inquiry__grid { grid-template-columns: 1fr; }
  .s360-inquiry fieldset { padding: .75rem; }
}
