@import url('https://fonts.googleapis.com/css2?family=DotGothic16&display=swap');

body {
  font-family: "DotGothic16", sans-serif;
  font-weight: 400;
  font-style: normal;
  background-image: url("linktree/IMG_9355.png"); 
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  background-attachment: fixed;
  color: #333;
  padding: 20px;
  line-height: 1.6;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  gap: 20px;
}


    header {
      grid-column: 1 / -1;
      text-align: center;
      margin-bottom: 30px;
      background: rgba(255, 255, 255, 0.85);
      border-radius: 12px;
      padding: 20px;
      box-shadow: 0 4px 10px rgba(0,0,0,0.1);
      position: relative;
    }

    .main-icon {
      width: 120px;
      height: 120px;
      border-radius: 50%;
      border: 3px solid #b3e0f7;
    }

    .email-copy {
      cursor: pointer;
      color: #0066cc;
      margin-top: 10px;
      font-size: 14px;
    }

    .sns-icons {
      margin-top: 10px;
    }

    .sns-icons a {
      margin: 0 5px;
    }

    .sns-icons img {
      width: 32px;
      height: 32px;
      filter: brightness(0) invert(0);
      transition: transform 0.2s ease;
    }

    .sns-icons a img:hover {
      transform: scale(1.2);
      opacity: 0.9;
    }

　　.sns-icons {
  fill: #91C8E4;
  transition: fill 0.3s ease;
}
.sns-icons:hover {
  fill: #749BC2;
}


.section {
  background: #fffef8 url('https://cdn.pixabay.com/photo/2015/05/03/09/52/paper-751847_1280.jpg') repeat;
  border-radius: 14px;
  padding: 20px;
  box-shadow: 0 8px 15px rgba(0,0,0,0.1);
  position: relative;
  transform: rotate(-1deg);
  border: 2px dashed #ddd; /* ← ステッチ風の点線枠 */
}

.section:nth-of-type(2) {
  transform: rotate(1.5deg);
}
.section:nth-of-type(3) {
  transform: rotate(-0.8deg);
}

/* マスキングテープ画像 */
.section::before {
  content: "";
  background: url("linktree/IMG_9357.png") no-repeat center;
  background-size: contain;
  width: 200px;
  height: 80px;
  position: absolute;
  top: -20px;
  left: 20px;
  transform: rotate(-5deg);
  z-index: 2;
}

/* クリップ画像（右上） */
.section::after {
  content: "";
  background: url("linktree/crip01.png") no-repeat center;
  background-size: contain;
  width: 64px;
  height: 64px;
  position: absolute;
  top: -16px;
  right: 16px;
  transform: rotate(8deg);
  z-index: 3;
}

/* 押しピン画像は任意で左上に追加したい場合 */
.section.pin {
  position: relative;
}
.section.pin::after {
  content: "";
  background: url("linktree/pin01.png") no-repeat center;
  background-size: contain;
  width: 60px;
  height: 60px;
  position: absolute;
  top: -18px;
  left: 10px;
  transform: rotate(3deg);
}

    .section h2 {
      border-left: 5px solid #b3e0f7;
      padding-left: 10px;
      margin-bottom: 10px;
      color: 4682A9;
    }

/* ステッカー風リンクボタン */
.sticker-container {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 20px;
}

.sticker-button {
  width: 40%;
  position: relative;
  transition: transform 0.3s ease;
  filter: drop-shadow(4px 4px 8px rgba(0,0,0,0.3));
}

.sticker-button img {
  width: 200px;
  height: auto;
  display: block;
}

.sticker-button:nth-child(odd) {
  align-self: flex-start;
  transform: rotate(-5deg);
}

.sticker-button:nth-child(even) {
  align-self: flex-end;
  transform: rotate(5deg);
}


    .sticker-button:hover {
      transform: scale(1.05);
    }

    .sticker-button:active {
      animation: peelOff 0.5s ease forwards;
    }

@keyframes peelOff {
  0% {
    transform: rotate(0deg) scale(1);
    opacity: 1;
    filter: drop-shadow(4px 4px 8px rgba(0, 0, 0, 0.3));
  }
  30% {
    transform: rotate(5deg) translateY(-5px);
  }
  60% {
    transform: rotate(-15deg) translateY(20px) translateX(-10px);
  }
  100% {
    transform: rotate(25deg) translateY(60px) translateX(30px) scale(0.8);
    opacity: 0;
    filter: drop-shadow(0 0 0 transparent);
  }
}

    /* ランダム風配置 */
    .left { align-self: flex-start; transform: rotate(-4deg); }
    .right { align-self: flex-end; transform: rotate(3deg); }
    .center { align-self: center; transform: rotate(-2deg); }
    .angle1 { transform: rotate(2deg); }
    .angle2 { transform: rotate(-3deg); }
    .angle3 { transform: rotate(5deg); }

    .description {
      font-size: 14px;
      margin-bottom: 10px;
      color: #444;
    }

    .icon-label {
      display: flex;
      align-items: center;
      gap: 8px;
      margin-top: 10px;
    }

    .amazon-icon {
      width: 20px;
      height: 20px;
      vertical-align: middle;
    }

    .amazon-link {
      font-size: 14px;
      color: #007acc;
      text-decoration: underline;
      vertical-align: middle;
    }

    footer {
      grid-column: 1 / -1;
      text-align: center;
      font-size: 13px;
      color: #777;
      margin-top: 40px;
    }
