body{
  font-size: 12px;
}


.highlight-orange{
  color: #ff9800;
  font-weight: 600;
}

.highlight-blue{
  color: #3636ff;
  font-weight: 600;
}

.highlight-black{
  color: #2a2a2a;
  font-weight: 600;
}



/* top-green レイアウト --------------------- */
.symptoms-top-green{
  background: linear-gradient(to bottom, #ffffff 0%, #eeffe0 20%,#eeffe0 80%, #ffffff 100%);
  padding: 3em 3em 3em 3em ;
  margin-bottom: 3em;
}
.symptoms-top-green-frame{
  display: grid;
  grid-template-columns: 8fr 2fr;
  margin: 0 auto;
  gap: 50px;
  align-items: center;
}

.symptoms-top-green-title {
  font-size: 24px;
  text-align: center;
  margin-top: 2em;
  margin-bottom: 0px;
  color: #333;
}
.symptoms-top-green-text {
  margin-bottom: 0px;
}
.symptoms-top-green-image{
  text-align: right;
  max-width: 80%;
  max-height: 12em;
}
/* レスポンシブ対応 */
@media (max-width: 768px) {
  .symptoms-top-green-frame{
    grid-template-columns: 1fr;
  }
}

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

/* top-orange レイアウト --------------------- */
.symptoms-top-orange{
  background: linear-gradient(to bottom, #ffffff 0%, #fff6d7 20%,#fff6d7 80%, #ffffff 100%);
  padding: 3.5em 3em 3.5em 3em ;
  margin-bottom: 1em;
}
.symptoms-top-orange-frame{
  display: grid;
  grid-template-columns: 8fr 2fr;
  margin: 0 auto;
  gap: 50px;
  align-items: center;
}

.symptoms-top-orange-title {
  font-size: 24px;
  text-align: center;
  margin-top: 2em;
  margin-bottom: 0px;
  color: #333;
}
.symptoms-top-orange-text {
  margin-bottom: 0px;
}
.symptoms-top-orange-image{
  text-align: right;
  max-width: 80%;
  max-height: 12em;
}
/* レスポンシブ対応 */
@media (max-width: 768px) {
  .symptoms-top-orange-frame{
    grid-template-columns: 1fr;
  }
}
/* ------------------------------------------- */



/* guidelines1 レイアウト --------------------- */
.symptoms-guidelines1 {
  background: linear-gradient(to bottom, #ffffff 0%, #fff6d7 20%,#fff6d7 80%, #ffffff 100%);
  padding: 40px 0 32px 0;
  margin-top: 32px;
  margin-bottom: 32px;
}
.symptoms-guidelines1-box {
  margin: 0 auto;
  padding: 0 16px;
  display: flex;
  flex-wrap: wrap;
  gap: 32px;
  align-items: flex-start;
}
.symptoms-guidelines1-content {
  flex: 2;
  min-width: 240px;
  border: 2px dashed #ff9800;
  border-radius: 12px;
  background: #ffffff;
  padding: 2em;
}

.symptoms-guidelines1-title {
  text-align: center;
  font-size: 1.3rem;
  margin-bottom: 18px;
  font-weight: 500;
  letter-spacing: 0.05em;
}

.symptoms-guidelines1-note {
  font-size: 0.98rem;
  color: #666;
  margin-top: 8px;
}
.symptoms-guidelines1-image {
  flex: 1;
  min-width: 180px;
  text-align: right;
}
.symptoms-guidelines1-image img {
  max-width: 100%;
  border-radius: 8px;
  align-items: center;
}

.symptoms-guidelines1-frame{
  display: grid;
  grid-template-columns: 8fr 2fr;
  margin: 0 auto;
  gap: 50px;
  align-items: center;
}
.symptoms-guidelines1-grid {
  display: grid;
  gap: 24px;
  margin: 0 auto;
  padding: 1em;
}

.symptoms-guidelines1-card {

  width: 90%;
  margin: 0 auto;
  background: #fffbec;
  border: 1px solid #ffb84e;
  border-radius: 8px;
  padding: 1em;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.symptoms-guidelines1-row {
  display:block;
  width: 100%;
  padding: 0.5em;
}

.symptoms-guidelines1-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
  padding: 1em;
}

.symptoms-guidelines1-grid1-text {
  width: 90%;
  max-width: 90%;
  min-width: 70%;
  font-weight: 700;
  margin: 0;
}

.symptoms-guidelines1-grid1-check {
  font-weight: 700;
  box-sizing: border-box;
  position: relative;
  padding-left: 2em;
}

.symptoms-guidelines1-grid1-check::before {
  content: "";
  position: absolute;
  left: 0;
  top: -0.3em;
  width: 1.7em;
  height: 1.7em;
  border-radius: 3px;
  border: 2px solid #ffc876;
  background: #fff;
  box-sizing: border-box;
  /* チェックマークをSVGで描画（iOSでもオレンジ色を確実に表示） */
  background-image: url("data:image/svg+xml;utf8,<svg width='18' height='18' viewBox='0 0 18 18' fill='none' xmlns='http://www.w3.org/2000/svg'><rect x='1' y='1' width='16' height='16' rx='3' fill='white' stroke='%23FF9800' stroke-width='2'/><path d='M5 9.5L8 12.5L13 7.5' stroke='%23FF9800' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/></svg>");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 2em 2em;
  font-size: 1.1em;
}

@media (max-width: 768px) {
  .symptoms-guidelines1-card {
    width: 90%;
    padding: 24px;
  }
  .symptoms-guidelines1-frame {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .symptoms-guidelines1-list li {
    font-size: 11px;
  }
  .symptoms-guidelines1-title {
    font-size: clamp(9px, 10vw, 14px); /* 16px〜64pxの範囲で自動調整 */
  }
}
/* ------------------------------------------- */


/* guidelines2 レイアウト --------------------- */
.symptoms-guidelines2 {
  background: linear-gradient(to bottom, #ffffff 0%, #fff6d7 20%,#fff6d7 80%, #ffffff 100%);
  padding: 6em 0 7em 0;
  margin-top: 2em 0 2em 0;
}
.symptoms-guidelines2-box {
  margin: 0 auto;
  padding: 0 16px;
  flex-wrap: wrap;
  gap: 32px;
  align-items: flex-start;
}


.symptoms-guidelines2-title {
  text-align: center;
  font-size: 1.3em;
  margin-bottom: 18px;
  font-weight: 500;
}

.symptoms-guidelines2-note {
  font-size: 0.98rem;
  color: #666;
  margin-top: 8px;
}
.symptoms-guidelines2-image {
  flex: 1;
  min-width: 180px;
  text-align: right;
}
.symptoms-guidelines2-image img {
  max-width: 100%;
  border-radius: 8px;
  align-items: center;
  margin: 0 auto;
}

.symptoms-guidelines2-frame{
  background: #ffffff;
  padding: 40px 0 32px 0;
  border-radius: 8px;
  padding: 2em 4em 1em 4em;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
  width:fit-content;
  display: grid;
  grid-template-columns: 1fr auto;
  margin: 0 auto;
  gap: 50px;
  align-items: center;
}

.symptoms-guidelines2-grid {
  display: grid;
  gap: 24px;
  margin: 0 auto;
  flex:1;
}

.symptoms-guidelines2-card {
  width: 90%;
  margin: 0 auto;
  flex:1;
  padding: 1em;
}
.symptoms-guidelines2-row {
  display: flex;
  align-items: flex-start;
  margin-bottom: 1em;
  padding: 0.5em;
  background-color: #fff;
  border-left: 4px solid #ff9500;
  border-radius: 4px;
  box-shadow: 0 1px 3px rgba(0,0,0,0.1);
  flex:1;
}
.symptoms-guidelines2-grid1-check {
  width: 20px;
  height: 20px;
  background-color: #ff9500;
  border-radius: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 1em 0 1em;
  flex-shrink: 0;
  align-self: center;
}

.symptoms-guidelines2-grid1-check::after {
  content: "✓";
  color: white;
  font-weight: 800;
  font-size: 18px;
  margin-left: -13px;
}

.symptoms-guidelines2-grid1-text {
  color: #333;
  font-size: 12px;
  flex: 1;
}



@media (max-width: 768px) {
  .symptoms-guidelines2-frame {
    padding: 1.5em;
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .symptoms-guidelines2-title {
    font-size: clamp(9px, 10vw, 14px); /* 16px〜64pxの範囲で自動調整 */
  }
}
/* ------------------------------------------- */



/* checklist1 レイアウト --------------------- */
.symptoms-checklist1 {
  background: linear-gradient(to bottom, #ffffff 0%, #fff6d7 20%,#fff6d7 80%, #ffffff 100%);
  padding: 40px 0 32px 0;
  margin-top: 32px;
  margin-bottom: 32px;
}
.symptoms-checklist1-box {
  margin: 0 auto;
  padding: 0 16px;
  display: flex;
  flex-wrap: wrap;
  gap: 32px;
  align-items: flex-start;
}
.symptoms-checklist1-content {
  flex: 2;
  min-width: 240px;
  border: 2px dashed #ff9800;
  border-radius: 12px;
  background: #ffffff;
  padding: 2em;
}

.symptoms-checklist1-title {
  text-align: center;
  font-size: 1.3rem;
  margin-bottom: 18px;
  font-weight: 500;
  letter-spacing: 0.05em;
}
.symptoms-checklist1-list {
  list-style: none;
  padding: 0;
  margin: 0 0 8px 0;
  columns: 2;
  column-gap: 32px;
}
.symptoms-checklist1-list li {
  margin-bottom: 8px;
  font-size: 1.05rem;
  position: relative;
  padding-left: 1.6em;
  font-weight: 700;
}

.symptoms-checklist1-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.15em;
  width: 1em;
  height: 1em;
  border-radius: 3px;
  border: 2px solid #ffb84e;
  background: #fff;
  box-sizing: border-box;
  /* チェックマークをSVGで描画（iOSでもオレンジ色を確実に表示） */
  background-image: url("data:image/svg+xml;utf8,<svg width='18' height='18' viewBox='0 0 18 18' fill='none' xmlns='http://www.w3.org/2000/svg'><rect x='1' y='1' width='16' height='16' rx='3' fill='white' stroke='%23FF9800' stroke-width='2'/><path d='M5 9.5L8 12.5L13 7.5' stroke='%23FF9800' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/></svg>");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 1.3em 1.3em;
  font-size: 1.1em;
}
.symptoms-checklist1-note {
  font-size: 0.98rem;
  color: #666;
  margin-top: 8px;
}
.symptoms-checklist1-image {
  flex: 1;
  min-width: 180px;
  text-align: right;
}
.symptoms-checklist1-image img {
  max-width: 180px;
  border-radius: 8px;
  box-shadow: 0 2px 8px #0001;
}

@media (max-width: 768px) {
  .symptoms-checklist1-card {
    width: 100%;
    padding: 24px;
  }
  .symptoms-checklist1-list {
    columns: 1;
  }
  .symptoms-checklist1-list li {
    font-size: 11px;
  }
  .symptoms-checklist1-title {
    font-size: clamp(9px, 10vw, 14px); /* 16px〜64pxの範囲で自動調整 */
  }
}
/* ------------------------------------------- */


/* checklist2 レイアウト --------------------- */
.symptoms-checklist2 {
  background: #f8f8f2;
  border-radius: 16px;
  border: 1.5px solid #bdb76b33;
  margin: 3em auto 6em auto;
  padding: 32px 24px 24px 24px;
  flex-wrap: wrap;
  gap: 32px;
  align-items: center;
  box-shadow: 6px 8px 16px rgba(0,0,0,0.1);
}

.symptoms-checklist2-content {
  flex: 2;
  min-width: 240px;
  border: 2px dashed #0099ff;
  border-radius: 12px;
  background:#e1f0ff;

  padding: 2em;
}

.symptoms-checklist2-card {
  margin: 0 auto;
  width: 90%;
  background: #fefcf8;
  border: 2px solid #d5f0d2;
  border-radius: 16px;
  padding: 24px;
  text-align: left;
  box-shadow: 0 2px 8px rgba(37, 151, 60, 0.08);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.symptoms-checklist2-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
}

.symptoms-checklist2-title {
  text-align: center;
  font-size: 1.3rem;
  padding-bottom: 1em;
  font-weight: 500;
  letter-spacing: 0.05em;
}
.symptoms-checklist2-list {
  list-style: none;
  padding: 0;
  margin: 0 0 8px 0;
  columns: 1;
  column-gap: 32px;
}
.symptoms-checklist2-list li {
  margin-bottom: 8px;
  position: relative;
  padding-left: 1.6em;
}
.symptoms-checklist2-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.15em;
  width: 1em;
  height: 1em;
  border-radius: 3px;
  border: 2px solid #9deb94;
  background: #fff;
  box-sizing: border-box;
  /* チェックマークをSVGで描画（iOSでも緑色を確実に表示） */
  background-image: url("data:image/svg+xml;utf8,<svg width='18' height='18' viewBox='0 0 18 18' fill='none' xmlns='http://www.w3.org/2000/svg'><rect x='1' y='1' width='16' height='16' rx='3' fill='white' stroke='%2367f157' stroke-width='2'/><path d='M5 9.5L8 12.5L13 7.5' stroke='%2367f157' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/></svg>");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 1.3em 1.3em;
  font-size: 1.1em;
}
.symptoms-checklist2-note {
  font-size: 0.98rem;
  color: #666;
  margin-top: 8px;
}
.symptoms-checklist2-image {
  flex: 1;
  min-width: 180px;
  text-align: right;
}
.symptoms-checklist2-image img {
  max-width: 180px;
  border-radius: 8px;
  box-shadow: 0 2px 8px #0001;
}
@media (max-width: 768px) {
  .symptoms-checklist2-card {
    width: 100%;
    padding: 24px;
  }
  .symptoms-checklist2-list li {
    font-size: 11px;
  }
  .symptoms-checklist2-title {
    font-size: clamp(9px, 10vw, 14px); /* 16px〜64pxの範囲で自動調整 */
  }
}

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


/* box1 レイアウト --------------------- */
.symptoms-box1{
  margin: 0 auto;
  display: grid;
  grid-template-columns: 8fr 2fr;
  gap: 50px;
  align-items: center;
  padding: 1em 3em 3em 3em ;
}
.symptoms-box1-title {
  font-size: 24px;
  text-align: center;
  margin-bottom: 1em;
  color: #333;
}

.symptoms-box1-section {
  background: #f8f8f2;
  border-radius: 16px;
  border: 1.5px solid #bdb76b33;
  max-width: 900px;
  margin: 0 auto 40px auto;
  padding: 32px 24px 24px 24px;
  display: flex;
  flex-wrap: wrap;
  gap: 32px;
  align-items: flex-start;
  box-shadow: 6px 8px 16px rgba(0,0,0,0.1);
}

.symptoms-box1-section .box-content {
  flex: 2;
  min-width: 240px;
}
.symptoms-box1-section .box-title {
  font-size: 1.15rem;
  font-weight: 500;
  margin-bottom: 12px;
  color: #7b6f3e;
  display: flex;
  align-items: center;
  gap: 8px;
}
.symptoms-box1-section .box-title .emoji {
  font-size: 1.3em;
}
.symptoms-box1-section .box-text {
  font-size: 1.02rem;
  margin-bottom: 12px;
}
.symptoms-box1-section .box-btn {
  display: inline-block;
  margin-top: 8px;
  padding: 8px 24px;
  background: #8bc34a;
  color: #fff;
  border-radius: 24px;
  text-decoration: none;
  font-size: 1.05rem;
  font-weight: 500;
  transition: background 0.2s;
}
.symptoms-box1-section .box-btn:hover {
  background: #6fa32a;
}
.symptoms-box1-section .box-image {
  flex: 1;
  min-width: 120px;
  text-align: right;
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
}
.symptoms-box1-section .box-image img {
  max-width: 120px;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 5px 5px rgba(0,0,0,0.2);
}
/* ------------------------------------------- */


/* band1 レイアウト --------------------- */
.symptoms-band1 {
  background: linear-gradient(to bottom, #ffffff 0%, #e2ffd7 20%,#e2ffd7 80%, #ffffff 100%);
  padding: 40px 0 32px 0;
}

.symptoms-band1-content{
  display: grid;
  grid-template-columns: 8fr 2fr;
  margin-bottom: 32px;
}

.symptoms-band1-title {
  font-size: 24px;
  text-align: center;
  margin-bottom: 1em;
  color: #333;
}
.symptoms-band1-image {
  flex: 1;
  min-width: 120px;
  text-align: right;
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
}
.symptoms-band1-image img {
  max-width: 120px;
}
/* ------------------------------------------- */


/* band2 レイアウト --------------------- */
.symptoms-band2 {
  background: linear-gradient(to bottom, #ffffff 0%, #eeffe0 20%,#eeffe0 80%, #ffffff 100%);
  padding: 40px 0 32px 0;
}

.symptoms-band2-content{
  display: grid;
  grid-template-columns: 2fr 8fr;
  margin-bottom: 32px;
}

.symptoms-band2-title {
  font-size: 24px;
  text-align: center;
  margin-bottom: 1em;
  color: #333;
}
.symptoms-band2-image {
  flex: 1;
  min-width: 120px;
  text-align: left;
  display: flex;
  align-items:flex-end;
  justify-content:center;
}
.symptoms-band2-image img {
  max-width: 120px;
}
/* ------------------------------------------- */

/* dualbox1 レイアウト --------------------- */
.symptoms-dualbox1{
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  align-items: center;
  padding: 1em 3em 3em 3em ;
  align-items: flex-start;
  justify-content: flex-start;
}
.symptoms-dualbox1-title {
  font-size: 24px;
  text-align: left;
  color: #333;
}

.symptoms-dualbox1-content {
  background: #f8faf6;
  border-radius: 16px;
  border: 1.5px solid #8bc34a;
  margin: 0 1em 0 1em;
  padding: 24px;
  min-height: 20em;
  vertical-align: top;
  text-align: left;
}

.symptoms-dualbox1-description{
  vertical-align: top;
}

.symptoms-dualbox1-separator-line{
  height: 2px;
  border-width: 0;
  width:95%;
  margin: 0 auto;
  margin-bottom: 1em;
  background-color: #00bcd4;
  background-image: -webkit-linear-gradient( 135deg, #cee07e 10%, #d6f061 25%,#cde952 100%);
  background-image: linear-gradient( 135deg, #cee07e 10%, #d6f061 25%,#cde952 100%);
}

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


@media (max-width: 768px) {
  .section-content, .checklist-box, .box-section {
    flex-direction: column;
    gap: 16px;
  }
  .section-content .image,
  .checklist-image,
  .box-section .box-image {
    text-align: center;
    justify-content: center;
  }

  .symptoms-top1{
    grid-template-columns: 1fr;
  }
  .symptoms-box1{
    grid-template-columns: 1fr;
  }
  .symptoms-dualbox1{
    margin: 0;
    padding: 0;
    grid-template-columns: 1fr;
  }
  .symptoms-dualbox1-content {
    margin: 0;
    padding: 16px;
    min-height: 0;
  }
}



/* grid1 レイアウト --------------------- */
.symptoms-grid1-section {
  background: #f8f8f2;
  border-radius: 16px;
  border: 1.5px solid #bdb76b33;
  margin: 0 auto;
  padding: 4em 8em 4em 8em;
  display: flex;
  flex-wrap: wrap;
  gap: 32px;
  align-items: flex-start;
  box-shadow: 6px 8px 16px rgba(0,0,0,0.1);
}

.symptoms-grid1-title {
  font-size: 24px;
  font-weight: 600;
  color: #333;
  margin-bottom: 8px;
  display: flex;
  align-items: center;
  gap: 8px;
}

.symptoms-grid1-title::before {
  font-size: 1.2em;
}

.symptoms-grid1-title::after {
  content: "";
  flex: 1;
  height: 3px;
  background: linear-gradient(to right, #ffb74d, #ffd089);
  border-radius: 2px;
  margin-left: 16px;
}

.symptoms-grid1-description {
  line-height: 1.6;
  color: #555;
  margin-bottom: 32px;
  max-width: 1000px;
}

.symptoms-grid1-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 24px;
  max-width: 1000px;
  margin: 0 auto;
}

.symptoms-grid1-card {
  background: #fefcf8;
  border: 2px solid #f0e6d2;
  border-radius: 16px;
  padding: 24px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.symptoms-grid1-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
}
.symptoms-grid1-card-title {
  font-size: 14px;
  line-height: 1.7;
  color: #592500;
  font-weight: 600;
  margin: 0;
}

.symptoms-grid1-mark {
  color: #ffb74d;
}
.symptoms-grid1-card-text {
  font-size: 12px;
  line-height: 1.7;
  color: #555;
  margin: 0;
}

/* レスポンシブ対応 */
@media (max-width: 768px) {
  .symptoms-grid1-section {
    padding: 32px 16px;
  }
  
  .symptoms-grid1-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  
  .symptoms-grid1-title {
    font-size: 20px;
  }
  
  .symptoms-grid1-title::after {
    margin-left: 12px;
  }
  
  .symptoms-grid1-card {
    padding: 20px;
  }
  
  .symptoms-grid1-card-text {
    font-size: 11px;
  }
}
/* ------------------------------------------- */




/* grid2 レイアウト --------------------- */
.symptoms-grid2-section {
  background: linear-gradient(to bottom, #ffffff 0%, #fff8f0 20%, #fff8f0 80%, #ffffff 100%);
  padding: 40px 20px 64px 20px;
}

.symptoms-grid2-title {
  font-size: 24px;
  font-weight: 600;
  color: #333;
  margin-bottom: 8px;
  display: flex;
  align-items: center;
  gap: 8px;
}

.symptoms-grid2-title::before {
  font-size: 1.2em;
}

.symptoms-grid2-title::after {
  content: "";
  flex: 1;
  height: 3px;
  background: linear-gradient(to right, #ff9800, #ffb74d);
  border-radius: 2px;
  margin-left: 16px;
}

.symptoms-grid2-description {
  font-size: 16px;
  line-height: 1.6;
  color: #555;
  margin-bottom: 32px;
  max-width: 1000px;
}

.symptoms-grid2-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 24px;
  max-width: 1000px;
  margin: 0 auto;
}

.symptoms-grid2-card {
  background: #fefcf8;
  border: 2px solid #f0e6d2;
  border-radius: 16px;
  padding: 24px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.symptoms-grid2-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
}

.symptoms-grid2-card-title {
  display: inline-block;
  font-size: 14px;
  font-weight: 600;
  color: #ff9800;
  border: 2px solid #ff9800;
  border-radius: 18px;
  padding: 8px 16px;
  margin-bottom: 16px;
  background: #fff;
}

.symptoms-grid2-card-text {
  font-size: 12px;
  line-height: 1.7;
  color: #555;
  margin: 0;
}

/* レスポンシブ対応 */
@media (max-width: 768px) {
  .symptoms-grid2-section {
    padding: 32px 16px;
  }
  
  .symptoms-grid2-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  
  .symptoms-grid2-title {
    font-size: 20px;
  }
  
  .symptoms-grid2-title::after {
    margin-left: 12px;
  }
  
  .symptoms-grid2-card {
    padding: 20px;
  }
  
  .symptoms-grid2-card-title {
    font-size: 15px;
    padding: 6px 14px;
  }
  
  .symptoms-grid2-card-text {
    font-size: 14px;
  }
}
/* ------------------------------------------- */



/* grid3 レイアウト --------------------- */
.symptoms-grid3-section {
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  gap: 32px;
  align-items: flex-start;
  padding: 40px 20px 40px 20px;
}

.symptoms-grid3-title {
  font-size: 24px;
  font-weight: 600;
  color: #333;
  margin-bottom: 8px;
  display: flex;
  align-items: center;
  gap: 8px;
}

.symptoms-grid3-title::before {
  font-size: 1.2em;
}

.symptoms-grid3-title::after {
  content: "";
  flex: 1;
  height: 3px;
  background: linear-gradient(to right, #6ce6ff, #c8f0ff);
  border-radius: 2px;
  margin-left: 16px;
}

.symptoms-grid3-description {
  font-size: 16px;
  line-height: 1.6;
  color: #555;
  margin-bottom: 32px;
  max-width: 1000px;
}

.symptoms-grid3-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
  margin: 0 auto;
}

.symptoms-grid3-card {
  display: flex;
  align-items: flex-start;
  background: #fafeff;
  border-left: 4px solid #bcf4ff;
  border-radius: 8px;
  width: 100%;
  padding: 24px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
  align-items: center;
}

.symptoms-grid3-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
}

.symptoms-grid3-card-title {
  width: 8em;
  font-size: 14px;
  display: flex;
  align-items: center;
}

.symptoms-grid3-card-text {
  font-size: 12px;
  color: #555;
  margin: 0;
  flex: 1;
  text-align: left;
  align-items: center;
}

.symptoms-grid3-check {
  font-weight: 700;
  box-sizing: border-box;
  position: relative;
  padding-left: 2em;
}

.symptoms-grid3-check::before {
  content: "";
  position: absolute;
  left: 0;
  top: -0.3em;
  width: 1.7em;
  height: 1.7em;
  border-radius: 3px;
  border: 2px solid #6ce6ff;
  background: #6ce6ff;
  box-sizing: border-box;

  background-image: url("data:image/svg+xml;utf8,<svg width='18' height='18' viewBox='0 0 18 18' fill='none' xmlns='http://www.w3.org/2000/svg'><rect x='1' y='1' width='16' height='16' rx='3' fill='%236ce6ff' stroke='%236ce6ff' stroke-width='2'/><path d='M5 9.5L8 12.5L13 7.5' stroke='white' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/></svg>");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 2em 2em;
  font-size: 1.1em;
}


/* レスポンシブ対応 */
@media (max-width: 768px) {
  .symptoms-grid3-section {
    padding: 32px 16px;
  }
  
  .symptoms-grid3-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  
  .symptoms-grid3-title {
    font-size: 20px;
  }
  
  .symptoms-grid3-title::after {
    margin-left: 12px;
  }
  
  .symptoms-grid3-card {
    padding: 0.5em 0 0.5em 0;
  }
  
  .symptoms-grid3-card-title {
    width: 6em;
    font-size: 15px;
    padding: 6px 14px;
  }
  
  .symptoms-grid3-card-text {
    padding: 6px 14px;
    margin: 1em;
    font-size: 14px;
  }
}
/* ------------------------------------------- */





/* listblock1 レイアウト --------------------- */
.symptoms-listblock1-section {
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr;
  flex-wrap: wrap;
  gap: 32px;
  align-items: flex-start;
  background: linear-gradient(to bottom, #ffffff 0%, #fff8f0 20%, #fff8f0 80%, #ffffff 100%);
  padding: 64px 20px 64px 20px;
}

.symptoms-listblock1-box {
  width: 100%;
  margin: 0 auto;
  gap: 32px;
  align-items: flex-start;
}

.symptoms-listblock1-list {
  background: #fefcf8;
  border: 2px solid #f0e6d2;
  border-radius: 16px;
  padding: 0 4em 2em 2em ;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.symptoms-listblock1-list:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
}

.symptoms-listblock1-list-block{
  padding-bottom: 3em;
}

.symptoms-listblock1-list-title {
  display: inline-block;
  font-size: 14px;
  font-weight: 600;
  color: #592500;
  margin: 0;
}

.symptoms-listblock1-block-hr {
  border: none;
  height: 2px;
  background: linear-gradient(to right, #ffb74d, #ffd089, #ffb74d);
  border-radius: 2px;
  margin: 0 0 0.5em 0;
  width: 100%;
  opacity: 0.85;
  box-shadow: 0 1px 6px 0 rgba(255,183,77,0.10);
}

.symptoms-listblock1-block-title {
  display: inline-block;
  font-size: 12px;
  font-weight: 600;
  color: #090909;
  margin: 0;
  padding-left: 1.5em;
}

.symptoms-listblock1-block-text {
  font-size: 12px;
  line-height: 1.7;
  color: #555;
  padding-left: 1em;
}

.symptoms-listblock1-note{
  margin: 1.5em;
  text-align: center;
  font-size: 15px;
  font-weight: 600;
  color: #ff6a00;
}


/* レスポンシブ対応 */
@media (max-width: 768px) {
  .symptoms-listblock1-box {
    padding: 0px;
    margin: 0;
  }
}
/* ------------------------------------------- */



/* listblock2 レイアウト --------------------- */
.symptoms-listblock2-section {
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr;
  flex-wrap: wrap;
  gap: 32px;
  align-items: flex-start;
  background: linear-gradient(to bottom, #ffffff 0%, #f0f8ff 20%, #f0f8ff 80%, #ffffff 100%);
  padding: 64px 20px 64px 20px;
}

.symptoms-listblock2-box {
  width: 100%;
  margin: 0 auto;
  gap: 32px;
  align-items: flex-start;
}

.symptoms-listblock2-list {
  background: #f8fdfe;
  border: 2px solid #d2dff0;
  border-radius: 16px;
  padding: 0 4em 2em 2em ;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.symptoms-listblock2-list:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
}

.symptoms-listblock2-list-block{
  padding-bottom: 3em;
}

.symptoms-listblock2-list-title {
  display: inline-block;
  font-size: 14px;
  font-weight: 600;
  color: #592500;
  margin: 0;
}

.symptoms-listblock2-block-hr {
  border: none;
  height: 2px;
  background: linear-gradient(to right, #1f76e9, #7abdff, #4d77ff);
  border-radius: 2px;
  margin: 0 0 0.5em 0;
  width: 100%;
  opacity: 0.85;
  box-shadow: 0 1px 6px 0 rgba(255,183,77,0.10);
}

.symptoms-listblock2-block-title {
  display: inline-block;
  font-size: 12px;
  font-weight: 600;
  color: #090909;
  margin: 0;
  padding-left: 1.5em;
}

.symptoms-listblock2-block-text {
  font-size: 12px;
  line-height: 1.7;
  color: #555;
  padding-left: 1em;
}

.symptoms-listblock2-note{
  margin: 1.5em;
  text-align: center;
  font-size: 15px;
  font-weight: 600;
  color: #ff6a00;
}


/* レスポンシブ対応 */
@media (max-width: 768px) {
  .symptoms-listblock2-box {
    padding: 0px;
    margin: 0;
  }
  .symptoms-listblock2-list {
    padding: 0 2em 1em 1em ;
  }
}
/* ------------------------------------------- */


/* listblock3 レイアウト --------------------- */

.symptoms-listblock3-section {
  display: grid;
  grid-template-columns: 1fr;
  flex-wrap: wrap;
  gap: 32px;
  align-items: flex-start;
  background: linear-gradient(to bottom, #ffffff 0%, #fff5f5 20%, #fff5f5 80%, #ffffff 100%);
  padding: 6em 0 8em 0;
  margin-top: 2em 0 2em 0;
}

.symptoms-listblock3-box {
  width: 100%;
  margin: 0 auto;
  gap: 32px;
  align-items: flex-start;
}

.symptoms-listblock3-list {
  background: #ffffff;
  border: 2px solid #ffe4e4;
  border-radius: 16px;
  padding: 1em ;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.symptoms-listblock3-list:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
}

.symptoms-listblock3-list-block{
  padding-bottom: 1em;
}

.symptoms-listblock3-list-title {
  display: inline-block;
  font-size: 16px;
  font-weight: 600;
  color: #592500;
  margin: 0;
}

.symptoms-listblock3-block-hr {
  border: none;
  height: 2px;
  background: linear-gradient(to right, #ffb3a9, #ffddd9, #ffd7c5);
  border-radius: 2px;
  margin: 0 0 0.5em 0;
  width: 100%;
  opacity: 0.85;
  box-shadow: 0 1px 6px 0 rgba(255,183,77,0.10);
}

.symptoms-listblock3-block-title {
  display: inline-block;
  font-size: 16px;
  font-weight: 600;
  color: #090909;
  margin-left: 1.5em;
  padding: 0.5em;
}

.symptoms-listblock3-block-text {
  font-size: 12px;
  line-height: 1.7;
  color: #555;
  padding-left: 1em;
}

.symptoms-listblock3-note{
  margin: 1.5em;
  text-align: center;
  font-size: 15px;
  font-weight: 600;
  color: #ff6a00;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
}

.symptoms-listblock3-note-text{
  margin: 1.5em;
}


.symptoms-listblock3-image{
  text-align: right;
  max-width: 80%;
  max-height: 4em;
}

/* レスポンシブ対応 */
@media (max-width: 768px) {
  .symptoms-listblock3-box {
    padding: 0px;
    margin: 0;
  }

}
/* ------------------------------------------- */

