.indexmenu svg.icon {
  position: absolute;
  right: 17px;
  top: 50%;
  transform: translateY(-50%);
  width: 16px;
  height: 16px;
display: inline-block;
    margin-left: 20px;

  flex-shrink: 0;
    }
.indexmenu  ul li {
  display: flex;
  align-items: center; /* 縦中央揃え */
  gap: 0.5rem; /* テキストとアイコンの間に少しスペース */
}

.indexmenu {
  display: flex;
  justify-content: center; /* 水平方向の中央寄せ */
  align-items: center;     /* 垂直方向の中央揃え（必要に応じて） */
}
    /* 基本スタイル */
    .indexmenu  ul {
      list-style: none;
      padding: 0;
      margin: 0;
      display: flex;
      flex-direction: column; /* デフォルトは縦並び */
    }

    .indexmenu  li {
      margin: 8px 0;
position: relative; /* SVGを絶対配置するために必要 */
  width: 100%;
  text-align: center; /* テキスト中央揃え */
    }

    .indexmenu  a {
      text-decoration: none;
      color: #333;
      padding: 8px 12px;
      border: 1px solid #ccc;
      border-radius: 4px;
      display: inline-block;
    }
.indexmenu  li a{
    width: 260px;
    text-align: center;
}
    /* PC（画面幅が768px以上）のときは横並びに */
    @media screen and (min-width: 768px) {
      .indexmenu  ul {
        flex-direction: row;
        gap: 16px; /* 横の余白 */
      }

      .indexmenu  li {
        margin: 0;
width: auto;
      }
.indexmenu  li a{
    width: auto;
    text-align: center;
}

   .indexmenu svg.icon {
display: inline-block;
    margin-left: 20px;
    width: 16px;
    height: 16px;
    flex-shrink: 0;


  position: static;

  transform: none;


}

    }


.boxs{
box-shadow: 3px 3px 5px rgba(0, 0, 0, .2);
width: 260px;
border-radius: 12px;
}
.relative .space-y-20 > :not([hidden]) ~ :not([hidden]) {
margin-top:0px;
}
.w300m0auto{
padding-top: 50px;
}
.rectangle {
  position: relative;
  display: inline-block;
  margin: 1rem 0 1rem -10px;
  padding: 0.3rem 2rem;
  color: #fff;
  border-radius: 0 100vh 100vh 0;
  background: #4ac071 var(--tw-gradient-from-position);
  -webkit-box-shadow: 3px 3px 5px rgba(0, 0, 0, .2);
  box-shadow: 3px 3px 5px rgba(0, 0, 0, .2);
}

.rectangle:before {
  position: absolute;
  bottom: -10px;
  left: 0;
  width: 0;
  height: 0;
  content: '';
  border-top: 10px solid #318d4f;
  border-left: 10px solid transparent;
}
.gap-20 {
  gap: 5rem;
}

          .thumbnailimg{
          max-height: 220px;
          display: flex;
    align-items: center;

          }



section .faq-item{
margin-top: 0px;
}
.max-w-\[920px\] {
  max-width: 920px;
}

.leftimg{
display: flex;
    align-items: center;
}
@media screen and (max-width: 748px) {

.w300m0auto{
    margin: 0 auto;
    width: 300px;
padding-top: 50px;
}
.relative .faq-item{


margin-top:10px;
}
.leftimg{
    margin-left: 0px;
    margin: 0 auto;
}
}
.thumbnailwebp{
height:220px;
display: flex;
    align-items: center;
}
.imgcenter{
                    display: flex;
  justify-content: center;
  align-items: center; 
                    }
                     .imgcenter img{
                        box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.3);
                    }
  .sticky-element {
    position: sticky;
    top: 20px;
    background: #007bff;
    color: white;
    padding: 10px;
    border-radius: 8px;
  }
 .md\:flex-wrap {
    flex-wrap: wrap
  }

.caseloopflexwrapper{
    margin: 0 auto;
    max-width: 1400px;
}
.caseloopflex:before {
    content: "";
    display: block;
    width: 300px;
    height: 0;
    order: 1;  /* 疑似要素beforeの順番を必ず指定する*/
}
.caseloopflex:after {
    content: "";
    display: block;
    width: 300px;  /* .boxに指定したwidthと同じ幅を指定する */
    height: 0;
}
.my-gradient {
  --gradient-from-position: 0%; /* 開始位置 */
  --gradient-to-position: 100%; /* 終了位置 */
    border: 2px solid #d7eddd;
border-radius: 10px;
padding: 20px;
margin: 10px;
}