@charset "UTF-8";
/* =========================================================
o-title - style (pure CSS using f-variables.css)
============================================================*/
/* 基本 */
.o-title {
    font-weight: 900!important;

    &.__en {
        letter-spacing: .01rem;
        font-family: var(--font-family02);
    }

    
    /* サイズ */
    &.__huge,
    &.__huge.o-icon:before {
        font-size: var(--fs-huge);
    }

    &.__big,
    &.__big.o-icon:before {
        font-size: var(--fs-big);
    }

    &.__large,
    &.__large.o-icon:before {
        font-size: var(--fs-large);
    }

    &.__title {
        &, &.o-icon:before {
            font-size: var(--fs-title);
        }

        &.__en {
            letter-spacing: .3rem;
        }
    }

    &.__p,
    &.__p.o-icon:before {
        font-size: var(--fs-p);
    }

    &.__postp,
    &.__postp.o-icon:before {
        font-size: var(--fs-postp);
    }

    &.__mid,
    &.__mid.o-icon:before {
        font-size: var(--fs-mid);
    }

    &.__min,
    &.__min.o-icon:before {
        font-size: var(--fs-min);
    }

    &.__tiny,
    &.__tiny.o-icon:before {
        font-size: var(--fs-tiny);
    }

    
    /* 幅・整列 */
    &.__mw01 {
        max-width: 280px;
        margin-left: auto;
        margin-right: auto;
    }

    &.__mw02 {
        max-width: clamp(280px,100%,320px);
        margin-left: auto;
        margin-right: auto;
    }

    &.__left {
        margin-left: inherit;
    }

    &.__center {
        text-align: center;
    }

    &.__w100 {
        width: 100%;
    }

    
    /* カラー */
    &.__white {
        color: var(--text-color02);
    }

    &.__gold {
        color: var(--accent-color07);
    }
}
