/* =========================================
           カスタマイズ設定エリア (CSS)
           色を変更したい場合はここを編集してください
           ========================================= */
:root {
    /* アクセントカラー (文字色や強調に使われます) */
    --accent-color: #f2ff00;

    /* 基本の文字色 */
    --text-color: #111;
    --bg-color: #ffffff;

    /* グリッド線の色 */
    --grid-color: #eee;
    --tag-height: 150px;
    /* 画像の高さに合わせて調整してください */
    --visible-bottom: 0px;
    /* 残しておきたい高さ */
}

.click-line {
    position: fixed;
    top: 0;
    left: 0;
    width: 2px;
    height: 15px; /* 線の長さ */
    background-color: #ff2600; /* 線の色 */
    pointer-events: none;
    z-index: 9999;
    border-radius: 3px;
    transform-origin: center;
    opacity: 0;
  }

/* --- 基本設定 --- */
body {
     font-family: 'Inter', 'Noto Sans JP', sans-serif;
    background-image: url('/image/HP_back.png');
    color: var(--text-color);
    margin: 0;
    padding: 0;
    overflow-x: hidden;
    position: relative; /* 追加 */
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    min-height: 100vh;
}
main {
    flex: 1;
    margin: auto;
}

.work-link {
    text-decoration: none;
    /* 下線を消す */
    color: inherit;
    /* 文字色を親要素から引き継ぐ */
    display: block;
    /* 項目全体をクリック可能にする */
}

/* ホバー（マウスを乗せた時）の演出 */
.work-item:hover .work-img {
    transform: scale(1.05);
    /* 少し拡大 */
    filter: grayscale(0%);
    /* 白黒からカラーへ（お好みで） */
}

.sticky-clock {
    position: fixed;
    top: 10px;
    right: 5px;
    z-index: 99;
    border: solid 1px;
    background: rgba(247, 255, 16);
    color: #000000;
    padding: 3px 12px;
    border-radius: 6px;
    font-family: "DotGothic16", sans-serif;
    font-size: 0.95rem;
    white-space: nowrap;
    /* 折り返しを禁止 */
    box-shadow: 0 2px 10px rgba(72, 72, 72, 0.3);
    padding: 1px 12%;
}
.tag {
    position: sticky;
    margin-left: 20px;
}

a.work-link {
    width: 130px;
}

a.work-link img {
    width: 130px;
}
/* --- news --- */
.news_contents {
    background: rgba(247, 255, 16);
    width: 95%;
    margin: auto;
    position: relative; /* 基準点にする */
    overflow: hidden;
        border: 1px solid #000;
}

.newst {
          font-family: "Alfa Slab One", serif;
  font-weight: 400;
  font-style: normal;
}
.newsT {
    display: flex;
    justify-content: end;
    flex-wrap: nowrap;
    padding-right: 1rem;
}

.newsT span {
    width: 150px;
    align-self: center;
    border: #000 solid 9px;
}

h1.newst {
    border-top: 1px solid #000000;
    border-bottom: 1px solid #000000;
    font-size: 4rem;
    text-align: end;
    color: blue;
    -webkit-text-stroke: 1px black;
    margin: 0px;
    line-height: 45px;
    padding-top: 5px;
        padding-right: 1rem;
}

.newspaper {
    font-family: "Kiwi Maru", serif;
    font-weight: 400;
    font-style: normal;
    padding: 1rem;
	    border: 1px solid #000;
    width: 85%;
    margin: 1rem auto;
    padding-bottom: 13rem;
}
h2.newstitle {
    font-weight: bold;
    font-size: 1.5rem;
    text-align: center;
}
.policy-heading::before {
    content: "✔"; /* ここにチェックマーク */
    color: #001aff; /* Nacajiさんのサイトデザインに合わせたアクセントカラーを */
    margin-right: 0.5em; /* 文字との隙間 */
    font-weight: bold;
}

.honbun {
    font-size: 0.8rem;
    line-height: 1.7rem;
}
.honbun a {
    font-weight: 900;
    color: #1e9bba;
    text-decoration: none;
    font-family: "DotGothic16", sans-serif;
}

/* --- レイアウトコンテナ --- */
.hand-container {
    position: absolute;
    bottom: 3rem;
    left: -3rem;
    z-index: 3;
}
.anim-hand {
  width: 270px;
  height: auto;
  
  /* 回転の軸を「左下の角」に設定 */
  transform-origin: left bottom; 
  
  /* 5秒周期で無限ループ */
  animation: hand-move 6s ease-in-out infinite;
  
  /* お守り */
  will-change: transform;
}

@keyframes hand-move {
  0%   { transform: rotate(0deg); }
  /* 1. 左右に振れる（0.5秒〜1.5秒付近） */
  10%  { transform: rotate(5deg); }
  20%  { transform: rotate(-5deg); }
  30%  { transform: rotate(0deg); }
  
  /* 2. 左下を始点に右に45度傾く（2秒〜3秒付近） */
  45%  { transform: rotate(20deg); }
  
  /* 3. 傾いた先でまた左右に振れる */
  55%  { transform: rotate(25deg); }
  65%  { transform: rotate(20deg); }
  75%  { transform: rotate(25deg); }
  
  /* 4. 元の場所に戻る */
  90%  { transform: rotate(0deg); }
  100% { transform: rotate(0deg); }
}

/*ポッキーの手 */

.pockycase {
    position: relative;
    width: 100%;
    height: 0px;
}
.pocky {
    position: relative;
    width: 100%;
    height: 100px;
    margin-top: -50px;
    top: -200px;
}

.p-stage {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 300px;
    top: 2px;
    height: 210px;
    pointer-events: none;
    overflow: visible;
}
.p-stage img {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 100%;
  height: auto;
  pointer-events: none;
}

/* 修正: .dog-hand のアニメーション */
.dog-hand {
    position: absolute;
    width: 300px;
    bottom: -200px;
    right: -130px;
    z-index: 2;
    /* 初期位置を右側の外に配置 */
    transform: translate(250px, 150px);
  /* ページ読み込み3秒後に開始、1秒で到着、1秒待機、1秒で帰る */
  animation: hand-arrival 4s ease-in-out 3s forwards;
}

/* 修正: アニメーションのキーフレーム */
@keyframes hand-arrival {
    0%   { transform: translate(250px, 150px); } /* 右の外側から */
    25%  { transform: translate(0, 0); }    /* 所定位置に到着 */
    50%  { transform: translate(0, 0); }    /* 1秒待機 */
    100% { transform: translate(250px, 150px); } /* 右の外側へ戻る */
}



/* 2. 【肉球】：手が到着して1秒待機した瞬間に「つく」 */
.dog-hand2 {
  opacity: 0;
  /* 手と同期：25%（到着）+ 25%（待機中）のタイミングで表示 */
  animation: paw-stay 4s ease-in-out 3s forwards;
    position: absolute;
    right: 20%;
    bottom: 0px;
    z-index: 2;
        width: 100px;
}

@keyframes paw-stay {
  0%   { opacity: 0; }
  45%  { opacity: 0; }
  50%  { opacity: 1; } /* 待機時間の後半（手が離れ始める直前）に刻印 */
  100% { opacity: 1; } /* そのまま残る */
}
.animation-wrapper {
    position: relative;
    width: 100%;
    height: 500px;
    overflow: hidden; /* ここで確実にはみ出しを隠す */
}

/* フッター */
footer {
    position: relative;
    bottom: -11rem;
    width: 100%;
    background-color: #f7ff13;
    font-family: "DotGothic16", sans-serif;
    text-align: center;
    padding-bottom: 1rem;
    z-index: 1;
}
.F_c {
    display: flex;
    justify-content: space-around;
}
.F_c p a {
    text-decoration: none;
    font-family: "DotGothic16", sans-serif;
    color: #000000;
    font-size: 1.5rem;
}