@charset "UTF-8";

/* 全体 */
:root {
  --coopBlue: #1e51a2;
  --coopSky: #009bc2;
  --coopBack: #ffffec;
  --formRed1: #ff2222;
  --formRed2: #ff5252;
  --formRed3: #ffe7e7;
  --trans: 0.2s ease;
}
b.aka {
  color: var(--formRed1);
}

/* 枠 */
.tr:not(.tr:first-of-type) {
  margin-top: 1rem !important;
}
.requiredField {
  width: 50%;
  margin-bottom: 2.5rem;
  padding: 1rem;
  border: solid 3px var(--coopBlue);
  border-radius: 0.5rem;
  background-color: var(--coopBack);
  box-sizing: border-box;
}
.requiredField .tr:first-of-type {
  margin: 0;
}
.food-images {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.25rem;
}
.food-images label {
  padding: 1rem;
  border-radius: 0.5rem;
  background-color: #ffffff;
  box-shadow: 0px 1px 4px 0px rgb(0 0 0 / 0.2);
  transition: var(--trans);
  border: solid 2px transparent;
  box-sizing: border-box;
}
.food-images label:has(input[type="radio"]),
.food-images label:has(input[type="checkbox"]) {
  line-height: 1.3;
}
.food-images label:has(input[type="radio"]:checked),
.food-images label:has(input[type="checkbox"]:checked) {
  border-color: var(--formRed2);
  background-color: var(--coopBack);
}
.food-images label:has(input[type="radio"]:checked) img,
.food-images label:has(input[type="checkbox"]:checked) img {
  transform: scale(1.1);
}
.food-images label input[type="radio"],
.food-images label input[type="checkbox"] {
  margin: 0;
  accent-color: var(--formRed2);
}
.food-images label:has(input[type="radio"]:disabled),
.food-images label:has(input[type="checkbox"]:disabled) {
  pointer-events: none;
  filter: grayscale(100%);
  opacity: 0.75;
}
.food-images img {
  display: block;
  width: 90%;
  margin: 0 auto;
  margin-top: 1rem;
  transition: var(--trans);
  filter: drop-shadow(3px 5px 2px rgb(0 0 0 / 0.2));
}
/* input[type="text"].itemName { */
textarea.itemName {
  field-sizing: content;
  display: inline;
  width: 95% !important;
  padding: 0;
  border: none !important;
  line-height: 1.6;
  text-align: left;
  font-family: "noto sans jp";
  font-size: 1.15rem;
  font-weight: bold;
  color: var(--coopBlue);
  pointer-events: none;
  user-select: none;
}

/* 確認画面 */
.foodField {
  padding: 1rem;
  border: solid 2px var(--formRed2);
  border-radius: 0.5rem;
  box-sizing: border-box;
  background-color: var(--coopBack);
  box-shadow: 0px 1px 4px 0px rgb(0 0 0 / 0.2);
}
.colorSpan {
  font-size: 1.1rem;
  color: var(--coopBlue);
}

/* -------------------------------- */

/* PC */
@media screen and (min-width: 680px) {
  .table:has(+ h3) {
    margin-bottom: 4rem;
  }
  .food-images label:hover {
    background-color: var(--coopBack);
  }
  .food-images label input[type="radio"],
  .food-images label input[type="checkbox"] {
    margin-right: 0.5rem;
  }
}

/* -------------------------------- */

/* SP */
@media screen and (max-width: 679px) {
  .requiredField {
    width: 100%;
  }
  .food-images {
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
  }
  .food-images.grid-cancel {
    display: block;
  }
  .food-images label {
    padding: 0.5rem;
    border-radius: 0.25rem;
  }
  .food-images img {
    width: 90%;
  }
  input[type="text"].itemName {
    width: 100% !important;
    font-size: 0.9rem;
  }
  .food-images label input[type="radio"],
  .food-images label input[type="checkbox"] {
    margin: 0;
    margin-bottom: 0.25rem;
  }
  .foodField {
    display: flex !important;
  }
  .foodField:has(+ .foodField) {
    margin-bottom: 0.75rem;
  }
  .foodField img {
    margin: 0;
    width: 50%;
  }
}
