#uhb-special {
    position: relative;
    font-family: "Mochiy Pop One", sans-serif;
    font-size: 1.8rem;
    background-color: #e6f77c;
}

#uhb-special::before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    opacity: 0.7;
    background-image: url("../images/bg-pc.png");
    background-size: 154px 146px;
    background-repeat: repeat;
    mask-image: conic-gradient(#000 25%, transparent 0 50%, #000 0 75%, transparent 0);
    mask-size: 308px 292px;
    mask-repeat: repeat;
    -webkit-mask-image: conic-gradient(#000 25%, transparent 0 50%, #000 0 75%, transparent 0);
    -webkit-mask-size: 308px 292px;
    -webkit-mask-repeat: repeat;
}

#uhb-special img {
    display: block;
}

#uhb-special .contents-wrap {
    width: 100%;
    max-width: 678px;
    margin: 0 auto;
    position: relative;
    z-index: 5;
    overflow-x: hidden;
}

#uhb-special .pad-all {
    padding: 10% 5%;
}

#uhb-special .date {
    position: relative;
    background-color: #c4d84a;
    text-align: center;
}

#uhb-special .date::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    transform: translateY(100%);
    width: 100%;
    aspect-ratio: 678 / 61;
    background-image: url(../images/date-section-base.png);
    background-size: contain;
    background-repeat: no-repeat;
    z-index: 1;
}

#uhb-special .date.pad-all {
    padding: 5%;
    padding-bottom: 0;
}

#uhb-special .date .bg {
    position: relative;
    margin: 0 auto;
    width: 90%;
    aspect-ratio: 497 / 318;
    background-image: url(../images/date-text-base.png);
    background-size: contain;
    background-repeat: no-repeat;
}

#uhb-special .date .inner-wrap {
    position: absolute;
    width: 80%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -40%);
}

#uhb-special .date .inner-wrap>p {
    color: #f19217;
    font-size: 28px;
    margin-bottom: 3%;
}

#uhb-special .date .schedule {
    color: #95c752;
    font-size: 22px;
}

#uhb-special .date .schedule p {
    line-height: 1;
    margin-bottom: 2%;
}

#uhb-special .date .schedule span {
    font-size: 16px;
}

#uhb-special .corner {
    position: relative;
    background-color: #f6ec3e;
}

#uhb-special .corner.pad-all {
    padding-top: 2%;
}

#uhb-special .corner .pad-box {
    width: 100%;
    aspect-ratio: 678 / 61;
}

#uhb-special .corner .title {
    display: grid;
    place-items: center;
}

#uhb-special .corner .title-inner-wrap {
    position: relative;
    display: inline-block;
    margin: 0 auto;
}

#uhb-special .corner .title img {
    margin: 0 auto;
}

#uhb-special .corner-wrap {
    position: relative;
    z-index: 1;
    border-radius: 20px;
    padding: 5%;
    margin: 5% 0;
    color: #803921;
}

#uhb-special .corner-wrap::before,
#uhb-special .corner-wrap::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    border-radius: 20px;
}

#uhb-special .corner-wrap::after {
    top: 0;
    left: 0;
    background-color: #fff;
    z-index: -1;
}

#uhb-special .corner-wrap::before {
    top: 4px;
    left: -3px;
    background-color: #f19217;
    z-index: -2;
}

#uhb-special .corner .corner-title {
    text-align: center;
    font-size: 2.8rem;
    margin-bottom: 3%;
    color: #f19217;
}

#uhb-special .corner .inner-wrap {
    display: grid;
    grid-template-columns: auto 122px;
    gap: 20px;
}

#uhb-special .corner .inner-wrap img {
    place-self: end center;
}

#uhb-special .date .bg::before,
#uhb-special .date .bg::after,
#uhb-special .corner::after,
#uhb-special .corner .title-inner-wrap::before {
    content: "";
    position: absolute;
    width: 77px;
    aspect-ratio: 77 / 73;
    background-image: url(../images/deco.png);
    background-size: contain;
    background-repeat: no-repeat
}

#uhb-special .date .bg::before {
    top: 0;
    right: 0;
}

#uhb-special .date .bg::after {
    bottom: 0;
    left: 0;
}

#uhb-special .corner::after {
    bottom: 3%;
    right: 5%;
}

#uhb-special .corner .title-inner-wrap::before {
    top: -15%;
    left: 0;
    transform: translateX(-120%);
}


.gHeader {
    background-color: #fff;
}

.gHeader,
.gFooter {
    z-index: 999;
}

#uhb-special .pc-none {
    display: none;
}