<h3>LV1:進入禁止</h3>
<div class="route_sign radius" id="lv1">
    <div class="sign_base"></div>
    <div class="sign_content"></div>
</div>
:root{
    --c-red:#ee0000;
    --c-yellow:#ffc000;
    --c-blue:#0168b7;
    --c-black:#000000;
    --c-white:#ffffff;
    --sign-size:200px;
}
body{ padding:20px; }
div, p, div:before, div:after{ padding:0px; margin:0; box-sizing:border-box;}

/* 標識のベース設定 */
.route_sign{
    width:var(--sign-size);
    height:var(--sign-size);
    position:relative;
    overflow:hidden;
}
.sign_base,
.sign_content{
    position:absolute;
    width:100%; height:100%;
    margin:0;
    top:0; bottom:0;
    left:0; right:0;
}

/* 丸い標識 */
.route_sign.radius,
.route_sign.radius .sign_base{
    border-radius:var(--sign-size);
}

/* ひし形の標識 */
.route_sign.hishigata{
    border-radius:0.25em;
    transform:rotate(45deg);
    /* 回転したことによってふちっこがはみ出てしまう */
    margin-top:calc(var(--sign-size) / 4.5);
    margin-bottom:calc(var(--sign-size) / 4.5);
    margin-left:calc(var(--sign-size) / 4.5);
}
.route_sign.hishigata .sign_content{
    transform:rotate(-45deg); /* 0°に戻す */
}

/* 進入禁止 */
#lv1 .sign_base{
    border:var(--c-black) solid 2px;
}
#lv1 .sign_base:before{
    content:"";
    display:block;
    width:100%; height:100%;
    position:absolute;
    border-radius:var(--sign-size);
    margin:auto;
    top:0; bottom:0;
    left:0; right:0;
    border:var(--c-white) solid 3px;
    background:var(--c-red);
}

#lv1 .sign_content{
    width:calc(var(--sign-size) * 0.75); height:calc(var(--sign-size) / 5);
    background:var(--c-white);
    margin:auto;
    top:0; bottom:0;
    left:0; right:0;
}

External CSS

This Pen doesn't use any external CSS resources.

External JavaScript

This Pen doesn't use any external JavaScript resources.