:root {
    --bg-color-main: #B3B3FF; /* 薄いラベンダー */
    --bg-color-desc: #FFC04D; /* オレンジ */
    --color-white: white;
    --color-dark: #333;
}

body {
    /* 最低高さを確保 */
    min-height: 100vh; 
    margin: 0;
    background-color: var(--bg-color-main);
    overflow-x: hidden;
}


#info {
    margin-left: auto;
    margin-right: 200px;
    margin-top: 200px;
    padding:20px;
    width: 450px;
    background-color: #babaffa9;
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.2);
}

.title-kana {
    width: 400px; /* 例: PCでは幅300px */
    height: auto;
}


#container {
    /* 幅は画面の約半分 (960px) を基準とし、中央に配置 */
    width: 960px;
    height: 540px; /* 一旦高さを固定 */
    max-width: 90vw; 
    margin: 0 auto;
    position: relative;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);

}

/* A Living ON! 画像固定 */
#header-bg {
    /* HTMLの<img>タグを排除し、背景画像として設定 */
    background-image: url('img/title_L.png'); 
    background-position: top left;
    background-repeat: no-repeat;
    background-size: auto; /* 画像の高さ固定 (適宜調整) */

    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

/* --- 大きなオレンジの真円を生成 --- */

#description-area {
    /* ユーザー定義のサイズと形状 */
    width: 800px;
    height: 800px;
    border-radius: 50%;
    background-color: var(--bg-color-desc);
    
    /* ***** 真円の配置設定 ***** */
    position: fixed; /* 親要素 #container を基準に配置 */
    bottom: 0;
    bottom: -600px; /* 例: 高さ800pxのうち600px分を下に隠す → 100px分だけ頭が出る */

    /* 水平方向の中央揃え */
    left: 50%;
    transform: translateX(-50%); 
    
    /* 垂直方向の配置（真円の頭を出す） */
    /* 真円の高さ (800px) のうち、頭となる部分だけを #container 内に表示 */
    
    /* 他の要素との重なり順を調整 */
    z-index: 5;
}

/* 説明文テキストのスタイル */
#description-text {
    position: relative;
    text-align: center;
    z-index: 2; 
    color: var(--color-dark);
    font-size: clamp(14px, 2vw, 20px);
    /*font-family: 'Hiragino Sans', 'Meiryo', sans-serif;　*/
    margin-bottom: 20px; /* 下からのマージンをピクセル指定で固定 */
    padding: 90px;
    width: 80%; 
}



/* --- 丸ボタン全体を保持するコンテナ --- */
#circle-container {
    position: absolute; 

    /* width: 65vh; の維持 */
    max-width: 100vh;
    /* 高さを確保することで、align-items: center; が効くようになる */
    height: 20vh; /* 例として高さを30vhに設定 (適宜調整してください) */

    /* 水平方向の中央揃えが必要 */
    left: 50%;
    transform: translateX(-50%); /* 中央寄せの維持 */

    /* 大きな円のカーブに沿うように、垂直位置を調整 */
    bottom: 200px; 
    
    display: flex;
    justify-content: space-around; 
    
    /* 垂直方向の中央揃え (これが効くようになる) */
    align-items: center; 
    
    z-index: 10; 
}



/* --- 各丸ボタンの定義 --- */
.circle {
    /* サイズを固定値で定義し、真円を維持 */
    width: 150px; 
    height: 150px;
    background-color: var(--bg-color-desc);
    border-radius: 50%; /* 真円を保証 */
    
    /* ホバー時のアニメーション設定 */
    transition: transform 0.3s ease-out;
    cursor: pointer;
    
    /* 中の画像を中央配置 */
    display: flex;
    justify-content: center;
    align-items: center;
}



/* マウスオンで若干大きくするアニメーション */
.circle:hover {
    transform: scale(1.1); /* 1.1倍に拡大 */
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.2);
}


/* 丸の中の画像（文字）がはみ出さないように */
.circle img {
    max-width: 80%; 
    max-height: 80%;
    object-fit: contain;
}


#circle1 {
    margin-top:200px;
    margin-right: 10px;
    margin-left:10px;
}

#circle2 {
    margin-top: 50px;
    margin-right: 10px;
    margin-left:10px;
}

#circle3 {
    margin-top: 0px;
    margin-right: 10px;
    margin-left:10px;
}

#circle4 {
    margin-top: 50px;
    margin-right: 10px;
    margin-left:10px;
}

#circle5 {
    margin-top: 200px;
    margin-right: 10px;
    margin-left:10px;
}

/* --- 追加: <a>タグのスタイルをリセット --- */
.circle-link {
    /* <a>タグをブロック要素にし、サイズを正確に反映させる */
    display: block; 
    /* <a>タグのサイズが .circle のサイズと一致するように調整 */
    width: auto; 
    height: auto;
    /* <a>タグに自動で付く下線を非表示にする */
    text-decoration: none;
}

/* --- 既存の .circle の定義 (変更なし) --- */
.circle {
    /* サイズを固定値（または vh）で定義し、真円を維持 */
    width: 15vh; /* 例: 15vhに修正済みの場合 */
    height: 15vh;
    background-color: var(--bg-color-desc);
    border-radius: 50%; 
    transition: transform 0.3s ease-out;
    cursor: pointer;
    
    display: flex;
    justify-content: center;
    align-items: center;
}

/* マウスオンで拡大するアニメーションは .circle にそのまま適用 */
.circle:hover {
    transform: scale(1.1);
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.2);
}