@charset "UTF-8";

/* ==========================================================================
   Content - テキスト装飾・アニメーション
   ========================================================================== */

/* 1. 基本タイポグラフィ */
body {
    font-family: var(--cre-font-family-base);
    color: var(--cre-color-text);
    font-size: 1.2rem;
    line-height: var(--cre-line-height-base);
}

p {
    margin-bottom: 1.6rem;
}

@media (max-width: 480px) {
    body {
        font-weight: 500;
        font-size: 1.1rem;
    }
    p {
        margin-bottom: 1.5rem;
    }
}

/* 2. 装飾（太字・サイズ・色） */
.bold { font-weight: bold; }
.big { font-size: 130%; }
.small { font-size: 0.85em; }
.red { color: var(--cre-color-red); }
@media (max-width: 480px) {
    .big {
        font-size: 110%;
    }
}

/* 見出し */
.h2 {
    font-size: 1.8rem;
    font-weight: bold;
    color: var(--cre-color-text);
    text-align: center;
    margin-bottom: 3rem;
    padding-bottom: 1rem;
    border-bottom: 2px solid var(--cre-color-accent);
}
@media (max-width: 480px) {
    .h2 {
        font-size: 1.4rem;
    }
}

/* 3. 余白調整（旧 t2, t3 等） */
.t2 { margin-top: 4rem !important; }
.t3 { margin-top: 5rem !important; }

@media (max-width: 768px) {
    .t2 { margin-top: 3rem !important; }
    .t3 { margin-top: 4rem !important; }
}

/* 4. アニメーション（旧 add.css 等） */
.inview {
    opacity: 0;
    transition: 2s;
}
.inview.is-show {
    opacity: 1;
}

.fadeIn2 {
    opacity: 0;
    transition: 2s;
}
.fadeIn2.is-show {
    opacity: 1;
}

/* 5. もっと〜 ピンク丸 */
.c-sakidori-text {
    display: inline-block;
    position: relative;
}
.c-sakidori-text::before {
    content: '';
    position: absolute;
    inset: -0.15em -0.6em;
    border-radius: 2em;
    background-color: rgba(238, 205, 215, 0.08);
    filter: blur(10px);
    opacity: 0;
    transform: scale(0.88);
    transition: opacity 0.9s ease, transform 0.9s ease;
    pointer-events: none;
}
.c-sakidori-p.is-show .c-sakidori-text::before {
    opacity: 1;
    transform: scale(1);
}

.c-motto-mark {
    position: relative;
    display: inline-block;
}
.c-motto-mark::before {
    content: '';
    position: absolute;
    width: 2em;
    height: 2em;
    border-radius: 50%;
    background-color: rgba(238, 205, 215, 0.5);
    filter: blur(6px);
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) scale(0);
    transition: opacity 0.8s ease, transform 0.8s ease;
    opacity: 0;
    z-index: -1;
    pointer-events: none;
}
.c-motto-p.is-show .c-motto-mark::before {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1);
}

/* 6. 配置調整 */
.txt-center { text-align: center; }
.txt-right { text-align: right; }
.w100 { width: 100%; height: auto; }
.mb50 { margin-top: 5rem; margin-bottom: 5rem; }
.mb15 { margin-top: 1.5rem; margin-bottom: 1.5rem; }
