@charset "UTF-8";
@import "./font.css";

*,
::before,
::after {
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

html {
    -webkit-text-size-adjust: 100%;
    -moz-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    text-size-adjust: 100%;
}

a {
    margin: 0;
    padding: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
}

.hdc-cakes {
    font-family: 'Zen Kaku Gothic New', "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", sans-serif;
    word-break: break-word;
    position: relative;
}

.ZenKakuGothicNew {
    font-family: 'Zen Kaku Gothic New', "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", sans-serif;
}

.KulturistaBold {
    font-family: 'KulturistaBold', "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", sans-serif;
}

.anchor-link {
    position: relative;
    top: -1.15rem;
    display: block;
    line-height: 0;
}

.anchor-link#special {
    top: -18vw;
}

@media(max-width:767px) {
    .anchor-link {
        top: 0;
    }
}

/*
==============================================================
============================ Common ==========================
==============================================================
*/
/*
==============================================================
======================= hamburger menu =======================
==============================================================
*/
.hamburger-menu {
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    transition: 0.2s;
    z-index: 1100;
    width: 0.7rem;
    height: 0.7rem;
    border-radius: 50%
}

.hamburger-menu .bar,
.hamburger-menu .bar:after,
.hamburger-menu .bar:before {
    width: 0.3rem;
    height: 0.01rem;
    border-radius: 50vh;
    background: #000;
}

.hamburger-menu .bar:after {
    width: 0.26rem;
}

.hamburger-menu .bar {
    position: relative;
    width: 0.22rem;
    line-height: 1;
    transition: all 0ms 300ms;
    margin-right: 0.08rem
}

.hamburger-menu .bar:before {
    content: "";
    position: absolute;
    left: 0;
    top: -0.08rem;
    transition: bottom 300ms 300ms cubic-bezier(0.23, 1, 0.32, 1), transform 300ms cubic-bezier(0.23, 1, 0.32, 1);
}

.hamburger-menu .bar:after {
    content: "";
    position: absolute;
    left: 0;
    top: 0.08rem;
    transition: top 300ms 300ms cubic-bezier(0.23, 1, 0.32, 1), transform 300ms cubic-bezier(0.23, 1, 0.32, 1);
}

.hamburger-menu.active .bar {
    background: none !important;
    margin-right: 0;
    width: 0.35rem;
}

.hamburger-menu.active .bar::before,
.hamburger-menu.active .bar::after {
    width: 0.35rem;
    top: 0;
    bottom: 0;
    background: #000;
}

.hamburger-menu.active .bar:before {
    transform: rotate(-45deg);
    transition: bottom 300ms cubic-bezier(0.23, 1, 0.32, 1), transform 300ms 300ms cubic-bezier(0.23, 1, 0.32, 1);
    ;
}

.hamburger-menu.active .bar:after {
    transform: rotate(45deg);
    transition: top 300ms cubic-bezier(0.23, 1, 0.32, 1), transform 300ms 300ms cubic-bezier(0.23, 1, 0.32, 1);
    ;
}

.hdc-cakes .hdc-header .hamburger-menu {
    position: absolute;
    right: 0.5rem;
    top: 0.5rem;
    background: url(../img/hamburger-bg.png) no-repeat;
    background-size: 100% !important;
    border-radius: 0;
    width: 0.7rem;
    height: 0.8rem;
}

.hdc-cakes .hdc-header .hamburger-menu:hover {
    background: url(../img/hamburger-bg-close.png) no-repeat !important;
    background-size: 100% !important;
}

.hdc-cakes .hdc-header {
    width: 5rem;
    position: fixed;
    right: 0;
    top: 1.15rem;
    z-index: 1000;
    transition: .5s;
    display: none;
}

.fixed-hdc-header .hdc-cakes .hdc-header {
    display: block;
}

@media(max-width: 767px) {
    .hamburger-menu {
        width: 0.35rem;
        height: 0.35rem;
    }

    .hdc-cakes .hdc-header .hamburger-menu {
        right: 0.25rem;
        top: 0.25rem;
        width: 0.36rem;
        height: 0.41rem;
    }

    .hamburger-menu .bar,
    .hamburger-menu .bar:after,
    .hamburger-menu .bar:before {
        width: 0.14rem;
        height: 1px;
    }

    .hamburger-menu .bar {
        width: 0.1rem;
        margin-right: 0.05rem;
    }

    .hamburger-menu .bar:after {
        width: 0.12rem;
    }

    .hamburger-menu .bar:before {
        top: -0.03rem;
    }

    .hamburger-menu .bar:after {
        top: 0.03rem;
    }

    .hamburger-menu.active .bar::before,
    .hamburger-menu.active .bar::after,
    .hamburger-menu.active .bar {
        width: 0.14rem;
        height: 1px;
    }

    .hdc-cakes .hdc-header {
        width: 100%;
        top: 0.6rem
    }

    .hdc-cakes .hdc-header.open-menu {
        top: 0;
    }

    .hdc-cakes .hdc-header .main-menu ul {
        padding-bottom: 0.75rem;
    }
}

/*
==============================================================
====================== End hamburger menu ====================
==============================================================
*/
.hdc-cakes .hdc-header .main-menu {
    padding-top: 122px;
    text-align: center;
    background: #FDD000;
    display: none;
    height: calc(100vh - 1.15rem);
    overflow: auto;
}

.hdc-cakes .hdc-header.open-menu .hamburger-menu {
    background: url(../img/hamburger-bg-close.png) no-repeat;
}

.hdc-cakes .hdc-header .main-menu .logo {
    text-align: center;
    margin-bottom: 0.65rem;
}

.hdc-cakes .hdc-header .main-menu .logo img {
    width: 100%;
    max-width: 3.94rem;
}

.hdc-cakes .hdc-header .main-menu ul li {
    text-decoration: unset;
    color: #000;
    font-size: 0.13rem;
    line-height: 1;
    border-top: 3px dotted #A96930;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    padding: 0.19rem 0;
    transition: .3s;
    cursor: pointer;
    letter-spacing: 0.1em;
    position: relative;
    font-family: "Zen Kaku Gothic New", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, sans-serif;
}

.hdc-cakes .hdc-header .main-menu ul li:hover {
    color: rgba(255, 255, 255, 0.6);
}

.hdc-cakes .hdc-header .main-menu ul li a {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: 1;
}

.hdc-cakes .hdc-header .main-menu ul li .inner {
    text-align: center;
    width: 100%;
}

.hdc-cakes .hdc-header .main-menu ul li .inner .lg {
    font-size: 0.3rem;
    padding-bottom: 0.05rem;
    letter-spacing: 0.05em;
    font-family: 'KulturistaBold', sans-serif;
}

.hdc-cakes .hdc-header .main-menu ul li a:hover {
    color: #338C9B;
}

.hdc-cakes .hdc-header .main-menu ul li:last-child a {
    border-bottom: 3px dotted #A96930;

}

.hdc-cakes .hdc-header .main-menu ul {
    max-width: 3rem;
    margin: 0 auto;
    padding-bottom: 1.5rem;
}
@media(max-width:767px) {
    .hdc-cakes .hdc-header .main-menu {
        padding-top: 0.55rem;
        height: 100vh;
    }

    .hdc-cakes .hdc-header .main-menu ul li:last-child a {
        border-bottom: unset;
    }

    .hdc-cakes .hdc-header .main-menu .logo img {
        max-width: 2.45rem;
    }

    .hdc-cakes .hdc-header .main-menu ul {
        max-width: 1.8rem;
        padding-bottom: 0.5rem;
    }

    .hdc-cakes .hdc-header .main-menu .logo {
        margin-bottom: 0.28rem;
    }

    .hdc-cakes .hdc-header .main-menu ul li .inner .lg {
        font-size: 0.18rem;
        padding-bottom: 0.025rem;
        letter-spacing: 0.025em;
    }

    .hdc-cakes .hdc-header .main-menu ul li {
        font-size: 0.095rem;
        padding: 0.12rem 0;
    }

    .hdc-cakes .hdc-header .main-menu ul li .inner {
        margin-left: 0.16rem;
    }

    .hdc-cakes .hdc-header .main-menu ul li:last-child {
        border-bottom: 3px solid rgba(255, 255, 255, 0.6);
    }
}

.hdc-cakes .container {
    margin: 0 auto;
    max-width: 1240px;
    position: relative;
    z-index: 10;
    padding-left: 20px;
    padding-right: 20px;
    width: 100%;
}

.lb-pc {
    display: block;
}

.lb-sp {
    display: none;
}

.cl1 {
    color: #D1212F;
}
.cl2 {
    color: #ED1C24;
}

@media(max-width: 767px) {
    .lb-sp {
        display: block;
    }

    .lb-pc {
        display: none;
    }

    .hdc-cakes .container {
        padding: 0 5.33vw;
    }
}

/*
==============================================================
======================== End Common ==========================
==============================================================
*/
/*
==============================================================
======================= hamburger menu =======================
==============================================================
*/
#kobe {
    padding-top: 1.15rem;
    /* color: #3F2713; */
}

.hdc-cakes {
    margin-top: 0 !important;
    color: #3f220f;
}

.hdc-cakes img {
    position: relative;
    width: 100%;
}

/* mv ======================================================== */
.hdc-cakes .mv {
    position: relative;
}

.hdc-cakes .mv::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url(../img/mv/bg-mv-main.png) no-repeat;
    background-size: contain;
    z-index: -1;
}

.hdc-cakes .mv .txt-box {
    position: absolute;
    top: 6.5%;
    left: 0;
    right: 0;
    max-width: 52%;
    margin: 0 auto;
    text-align: center;
    z-index: 1;
}
.hdc-cakes .mv .txt-box .date-time {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    padding-top: 0.15rem
}
.hdc-cakes .mv .txt-box .date-time .date {
    max-width: 850px;
    width: 85%;
    margin: 20px auto;
}
.hdc-cakes .mv .txt-box .date-time .date img {
    display: block;
}

.hdc-cakes .mv .txt-box .location {
    display: flex;
    justify-content: center;
    color: #000;
}

.hdc-cakes .mv .txt-box .location .t_left {
    font-size: 0.37rem;
    font-weight: 700;
    line-height: 1;
    font-family: "Noto Sans JP", sans-serif;
    color: #000;
    letter-spacing: -.03em;
}

.hdc-cakes .mv .txt-box .location .t_right {
    border: 1px solid #000;
    font-size: 0.192rem;
    margin-left: 0.25rem;
    letter-spacing: 0.1em;
    line-height: 1;
    padding: 0.06rem 0.085rem;
    font-weight: 500;
    font-family: "Zen Kaku Gothic New", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, sans-serif;
}

.hdc-cakes .mv .txt-box .sm .t_right .lg {
    font-size: 0.21rem;
    line-height: 1.1;
    letter-spacing: 0.05em;
}

.hdc-cakes .mv .txt-box .txt .intro .title {
    padding-top: 5.2vw;
    font-size: clamp(0.3rem, 5vw, 0.45rem);
    line-height: 1.1;
    letter-spacing: 0.05em;
    font-weight: 900;
}

.hdc-cakes .mv .txt-box .txt .intro .title .sm {
    font-size: 0.36rem;
    line-height: 1.4;
}

.hdc-cakes .mv .txt-box .txt .intro .title .lg {
    font-size: 0.55rem;
    line-height: 0.9;
}

.hdc-cakes .mv .txt-box .txt .intro .title .xl {
    font-size: 0.70rem;
}
.hdc-cakes .mv .txt-box .txt .intro .title .excl {
    letter-spacing: -0.6em;
}
.hdc-cakes .mv .txt-box .txt .intro .desc {
    padding-top: 3.15vw;
    font-size: clamp(0.14rem, 1.5vw, 0.22rem);
    line-height: 1.8;
    letter-spacing: 0.05em;
    font-weight: 700;
    color: #231815;
}

.hdc-cakes .mv .txt-box .txt .intro .desc .highlight {
    font-weight: 900;
    color: #D1212F;
}

@media(max-width:1150px) {
    .hdc-cakes .mv .txt-box {
        top: 3%;
    }
    .hdc-cakes .mv .txt-box .txt .intro .title {
        padding-top: 3vw;
    }
    .hdc-cakes .mv .txt-box .txt .intro .desc {
        padding-top: 2.5vw;
    }
}
@media(max-width:767px) {
    .hdc-cakes .mv .txt-box {
        max-width: 93.33%;
        top: 8%;
    }
    .hdc-cakes .mv .txt-box .txt .intro .title {
        padding-top: 0.5rem;
        font-size: 6.67vw;
    }
    .hdc-cakes .mv .txt-box .txt .intro .title .sm {
        font-size: 5vw;
    }
    .hdc-cakes .mv .txt-box .txt .intro .title .lg {
        font-size: 6vw;
    }
    .hdc-cakes .mv .txt-box .txt .intro .title .xl {
        font-size: 12vw;
        height: 12.67vw;
    }
    .hdc-cakes .mv .txt-box .txt .intro .desc {
        padding-top: 0.3rem;
        font-size: 3.7vw;
        line-height: 1.78;
        letter-spacing: -0.09em;
    }
    .hdc-cakes .mv .txt-box .date-time .date {
        /* font-size: 10.66vw; */
        width: 75%;
        margin: 0 auto 10px;
    }

    .hdc-cakes .mv .txt-box .date-time .time {
        font-size: 5.86vw;
        width: 100%;
        padding-top: 1.5vw;
    }

    .hdc-cakes .mv .txt-box .sm img {
        width: 0.8rem;
        margin-bottom: 0.075rem;
    }

    .hdc-cakes .mv .txt-box .sm {
        flex-direction: column;
        justify-content: unset;
        align-items: center;
        margin-top: 0;
        padding-top: 0.2rem;
    }

    .hdc-cakes .mv .txt-box .date-time .date p::after {
        width: 0.95VW;
        height: 0.95VW;
        left: 1.2vw;
    }

    .hdc-cakes .mv .txt-box .date-time .date p {
        padding-left: 3vw;
    }

    .hdc-cakes .mv .txt-box .date-time {
        padding-top: 4.5vw;
    }

    .hdc-cakes .mv .txt-box .location {
        padding-top: 1.5vw;
        flex-direction: column;
        gap: 10px;
    }

    .hdc-cakes .mv .txt-box .location .t_right {
        margin-left: 10px;
    }

    .hdc-cakes .mv .txt-box .location .t_right .lg {
        font-size: 0.105rem;
    }

    .hdc-cakes .mv .txt-box .location .t_right {
        font-size: 0.12rem;
        letter-spacing: 0.05em;
        padding: 0.017rem 0.062rem 0.018rem;
        width: fit-content;
        margin: 0 auto;
    }

    .hdc-cakes .mv {
        /* margin-top: 0.2rem; */
        /* z-index: 1; */
    }

    .hdc-cakes .mv .txt-box .location .t_left {
        font-size: 4.95vw;
        letter-spacing: -0.1em;
    }

    .hdc-cakes .mv img {
        position: relative;
        z-index: 1;
    }

    .hdc-cakes .mv {
        background: unset;
    }

    .hdc-cakes .mv::before {
        content: "";
        position: absolute;
        left: 0;
        right: 0;
        top: 0;
        bottom: 0;
        z-index: -1;
        background: url(../img/mv-bg.jpg);
        background-repeat: repeat;
        background-size: cover;
    }
}

#footer {
    margin-top: 0 !important;
}
.box.-col3>.box__item:nth-child(n+4) {
    margin-top: 0 !important;
}
@media(max-width:767px) {
    .box.-col3>.box__item:nth-child(n+4) {
        margin-top: .2rem !important;
    }
}
@media screen and (min-width: 768px),print {
    .footer__inner {
        max-width: 16.4rem !important;
    }
}

/* anchor-group ========================================== */
.hdc-cakes .anchor-group {
    position: relative;
    z-index: 1;
}

.hdc-cakes .anchor-group .container {
    max-width: 1240px;
}

.hdc-cakes .anchor-group .bg {
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    height: 9.1rem;
    object-fit: cover;
    object-position: top center;
}

.hdc-cakes .anchor-group .content {
    display: flex;
    align-items: flex-end;
}

.hdc-cakes .anchor-group ul {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -0.09rem;
    padding: 30px 0;
}

.hdc-cakes .anchor-group ul li {
    position: relative;
    width: 14.2%;
    text-align: center;
    padding: 0 0.09rem;
}

.hdc-cakes .anchor-group ul li::before {
    content: "";
    position: absolute;
    top: 0;
    right: -.15vw;
    bottom: 0;
    text-align: center;
    width: 6px;
    background: url('../img/anchor-group/border-right-dotted.png') no-repeat center;
    background-size: contain;
}

.hdc-cakes .anchor-group ul li:nth-of-type(7):before {
    content: unset;
}
.hdc-cakes .anchor-group ul li:last-child::before {
    content: unset;
}

.hdc-cakes .anchor-group ul li .inner {
    position: relative;
    height: 100%;
    font-size: 0.15rem;
    font-weight: 900;
    letter-spacing: 0.05em;
    transition: .3s;
}

.hdc-cakes .anchor-group ul li .inner .txt {
    position: relative;
    padding: 0.5rem 0 0.7rem;
    height: 100%;
}

.hdc-cakes .anchor-group ul li .inner .txt::before {
    left: 0.18rem;
    border-radius: 0.05rem 0px 0px 0.05rem;
}

.hdc-cakes .anchor-group ul li .inner .txt::after {
    right: 0.18rem;
    border-right: 0.03rem solid #fff;
    border-radius: 0 0.05rem 0.05rem 0;
}

.hdc-cakes .anchor-group ul li .inner a {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 10;
    cursor: pointer;
}

.hdc-cakes .anchor-group ul li .inner h3 {
    font-size: 0.30rem;
    line-height: 1;
    letter-spacing: 0.05em;
    position: relative;
    margin-top: 0.22rem;
}

.hdc-cakes .anchor-group ul li .inner .lg {
    font-size: 0.15rem;
    font-weight: 700;
}

.hdc-cakes .anchor-group ul li .inner img {
    width: 100%;
}

.hdc-cakes .anchor-group ul li .inner .desc {
    font-size: 0.17rem;
    line-height: 1.58;
    font-weight: 900;
    letter-spacing: 0.05em;
    position: relative;
    text-align: center;
    padding: 0 0.15rem;
}

.hdc-cakes .anchor-group ul li .inner .desc span {
    position: relative;
}

.hdc-cakes .anchor-group ul li .inner .desc::before,
.hdc-cakes .anchor-group ul li .inner .desc::after {
    content: "";
    position: absolute;
    width: 0.14rem;
    height: 0.5rem;
    background-size: 100% !important;
    background-position: center !important;
    top: 50%;
    margin-top: -0.25rem;
}

.hdc-cakes .anchor-group ul li .inner .desc::before {
    background: url(../img/anchor-tl-l.png) no-repeat;
    left: 0;
}

.hdc-cakes .anchor-group ul li .inner .desc::after {
    background: url(../img/anchor-tl-r.png) no-repeat;
    right: 0;
}

.hdc-cakes .anchor-group ul li .inner .img {
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 0.45rem;
    margin: 0 auto;
}

.hdc-cakes .anchor-group ul li .inner .img img {
    width: auto;
    max-width: 82%;
    max-height: 100%;
    object-fit: contain;
    object-position: center;
}

.hdc-cakes .anchor-group ul li .inner::after {
    content: "";
    position: absolute;
    bottom: 0.28rem;
    width: 0.2rem;
    height: 0.15rem;
    background: url(../img/arr-down.png) no-repeat;
    background-size: 100%;
    left: 50%;
    margin-left: -0.1rem;
    z-index: 1;
}

.hdc-cakes .anchor-group ul li .inner:hover {
    transform: translateY(20px);
}

@media(max-width:767px) {
    .hdc-cakes .anchor-group .bg {
        height: 192vw;
    }

    .hdc-cakes .anchor-group .content {
        padding-bottom: 7vw;
    }

    .hdc-cakes .anchor-group ul {
        padding: 0;
        margin-left: -1vw;
        margin-right: -1vw;
        justify-content: center;
    }

    .hdc-cakes .anchor-group ul li {
        width: 50%;
        padding: 0 2vw 4vw;
    }

    .hdc-cakes .anchor-group ul li::before {
        top: 30px;
        right: -1px;
    }

    .hdc-cakes .anchor-group ul li:nth-child(even)::before {
        content: unset;
    }

    .hdc-cakes .anchor-group ul li:nth-of-type(7):before {
        content: "";
    }

    .hdc-cakes .anchor-group ul li::after {
        content: "";
        position: absolute;
        left: 1vw;
        bottom: -4vw;
        height: 6px;
        background: url(../img/anchor-group/border-bottom-dotted.png) repeat-x center;
        background-size: contain;
        width: 93%;
    }

    .hdc-cakes .anchor-group ul li:nth-of-type(even)::after {
        right: 1vw;
    }

    .hdc-cakes .anchor-group ul li:nth-of-type(7)::after,
    .hdc-cakes .anchor-group ul li:nth-of-type(8)::after {
        content: none;
    }

    .hdc-cakes .anchor-group ul li .inner h3 {
        font-size: 5vw;
        margin-top: 0.1rem;
    }

    .hdc-cakes .anchor-group ul li .inner .lg {
        font-size: 2.93vw;
    }

    .hdc-cakes .anchor-group ul li .inner .txt {
        padding: 12vw 0 6vw;
    }

    .hdc-cakes .anchor-group ul li .inner .img img {
        width: 78%;
    }

    .hdc-cakes .anchor-group ul li .inner::after {
        bottom: 0;
        width: 3.34vw;
        height: 2.5vw;
        margin-left: -1.67vw;
    }
}

/* access ============================================ */
.hdc-cakes .access h2 {
    text-align: center;
    font-size: 0.55rem;
    letter-spacing: 0.1em;
    line-height: 1.3;
    color: #3f220f;
    font-weight: 700;
    position: relative;
    margin-top: 0.8rem;
    font-family: 'KulturistaBold', "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", sans-serif;
}
.hdc-cakes .access h2 span {
    position: relative;
    padding: 0 0.45rem;
    background: #fff;
    z-index: 10;
}
.hdc-cakes .access .tl-box .sub {
    text-align: center;
    font-size: clamp(0.2rem, 1.5vw, 0.25rem);
    letter-spacing: 0.05em;
    line-height: 1;
    color: #3f220f;
    font-weight: 700;
}

.hdc-cakes .access h2 span::before,
.hdc-cakes .access h2 span::after {
    content: "";
    position: absolute;
    width: 85px;
    height: 10px;
    background-repeat: no-repeat !important;
    background-size: cover !important;
    top: 42%;
    transform: translateY(-50%);
}
.hdc-cakes .access h2 span::before {
    background: url(../img/access_tl_l.png);
    left: -70px;
}
.hdc-cakes .access h2 span::after {
    background: url(../img/access_tl_r.png);
    right: -70px;
}
.hdc-cakes .access {
    position: relative;
    padding-bottom: 1rem;
}
.hdc-cakes .access .content {
    max-width: 1100px;
    margin: 0 auto;
}

.hdc-cakes .access .content {
    text-align: center;
}

.hdc-cakes .access .content .img-box {
    padding-top: 60px;
    max-width: 8.4rem;
    margin: 0 auto;
}

.hdc-cakes .access .content .txt-box {
    padding-top: 70px;
    font-size: 0.2rem;
    letter-spacing: 0.15em;
    color: #231815;
}

.hdc-cakes .access .content .txt-box h3 img {
    height: 0.485rem;
    width: auto;
}
.hdc-cakes .access .content .txt-box .tag {
    border: 1px solid #000;
    color: #000;
    font-size: 0.24rem;
    line-height: 1;
    display: inline-block;
    font-weight: 700;
    min-width: 2.5rem;
    text-align: center;
    padding: 0.06rem 0.1rem;
    margin-top: 0.2rem;
    margin-bottom: 0.45rem;
}

.hdc-cakes .access .content .txt-box .tag .sm {
    font-size: 0.22rem;
}

.hdc-cakes .access .content .txt-box a {
    margin-top: 0.1rem;
}

.hdc-cakes .access .btn-box {
    padding-top: 20px;
    text-align: center;
}
.hdc-cakes .access .btn {
    position: relative;
    font-size: 0.25rem;
    text-decoration: unset;
    letter-spacing: 0.1em;
    display: inline-block;
    text-align: center;
    line-height: 1;
    border-radius: 50px;
    color: #fff;
    padding: 0.2rem 1.2rem;
    min-width: 1.7rem;
    transition: .3s;
    background: #6C9BD2;
    font-weight: 700;
}

.hdc-cakes .access .btn::after {
    content: "";
    position: absolute;
    width: 0.12rem;
    height: 0.16rem;
    background: url(../img/ar-down2.png) no-repeat;
    background-size: 100% !important;
    right: 0.4rem;
    top: 50%;
    transform: translateY(-50%);
}

.hdc-cakes .access .btn span {
    padding-left: 0.25rem;
    position: relative;
    letter-spacing: 0.01em;
}

.hdc-cakes .access .content .txt-box .bottom-box {
    padding-bottom: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}
.hdc-cakes .access .content .txt-box .bottom-box .sm {
    position: relative;
    top: 5px;
    font-size: 0.17rem;
    line-height: 1;
}
.hdc-cakes .access .content .txt-box .bottom-box .tel {
    font-size: 0.35rem;
    letter-spacing: 0.1em;
    font-weight: 700;
    line-height: 1;
}
.hdc-cakes .access .content .txt-box .bottom-box .tel .lg {
    font-size: 0.45rem;
    line-height: 1;
}
.hdc-cakes .access .content .txt-box .cmt {
    margin: 0 auto;
    padding: 50px 0;
    font-size: 0.2rem;
    line-height: 1.7;
    letter-spacing: 0.2em;
    font-weight: 400;
    max-width: 507px;
    text-align: justify;
}
.hdc-cakes .access .content .txt-box .cmt p {
    letter-spacing: 0.1em;
}
.hdc-cakes .access .content .txt-box .cmt .cl2 {
    font-weight: 700;
}
.fade-in {
    opacity: 0;
    animation: fadeIn 1s ease-in-out forwards;
}
@keyframes fadeIn {
    to {
        opacity: 1;
    }
}

.hdc-cakes a {
    transition: all .3s;
}
.hdc-cakes a:hover {
    opacity: .7;
}

@media(max-width:767px) {
    .hdc-cakes .access {
        padding-top: 0.4rem;
    }
    .hdc-cakes .access .content .img-box {
        padding-top: 10px;
    }
    .hdc-cakes .access .content .txt-box {
        width: 100%;
    }
    .hdc-cakes .access .title {
        margin: 0 0.25rem;
    }
    .hdc-cakes .access::after {
        width: 1.06rem;
        height: 2.7rem;
        bottom: 178%;
        margin-bottom: unset;
    }
    .hdc-cakes .access::before {
        content: "";
        position: absolute;
        width: 0.92rem;
        height: 2.65rem;
        bottom: 9.25rem;
        right: 0;
        z-index: 0;
        mix-blend-mode: hard-light;
    }
    .hdc-cakes .access .content .txt-box {
        padding-top: 20px;
    }
    .hdc-cakes .access .content .img-box {
        width: 100%;
    }
    .hdc-cakes .access .content {
        margin-top: .3rem;
        flex-direction: column-reverse;
    }
    .hdc-cakes .access .content .img-box img {
        width: 100%;
    }
    .hdc-cakes .access .content .img-box {
        width: 3.5rem;
        margin: 0 auto;
    }
    .hdc-cakes .access .content .img-box {
        text-align: center;
    }
    .hdc-cakes .access .content .txt-box h3 img {
        height: 0.31rem;
    }
    .hdc-cakes .access .content .txt-box h3 {
        text-align: center;
        margin-top: 0.25rem;
    }
    .hdc-cakes .access .content .txt-box .tag,
    .hdc-cakes .access .content .txt-box .tag .sm {
        font-size: 0.16rem;
    }
    .hdc-cakes .access .content .txt-box .tag {
        min-width: 0.175rem;
    }
    .hdc-cakes .access .content .txt-box {
        text-align: center;
        font-size: 0.125rem;
    }
    .hdc-cakes .access .content .txt-box .tag {
        margin-bottom: 0.08rem;
        font-size: .15rem;
        line-height: 0.77;
        min-width: 1.5rem;
        margin-top: 0.1rem;
    }
    .hdc-cakes .access .content .txt-box a {
        padding: 0.07rem 0.1rem;
        min-width: 2.1rem;
    }
    .hdc-cakes .access .content .txt-box .cmt {
        font-size: 0.15rem;
        padding: 0;
        margin-right: 0;
    }
    .hdc-cakes .access .content .txt-box .cmt p {
        letter-spacing: 0;
    }
    .hdc-cakes .access .content .txt-box .bottom-box .sm {
        font-size: 0.15rem;
    }
    .hdc-cakes .access .content .txt-box .bottom-box .tel .lg {
        font-size: 0.27rem;
    }
    .hdc-cakes .access .content .txt-box .bottom-box .tel {
        font-size: 0.2rem;
        margin-top: 0.08rem;
    }
    .hdc-cakes #footer {
        margin-top: 0.45rem;
    }
    .hdc-cakes .access .content .txt-box .tag {
        /* border: unset; */
    }
    .hdc-cakes .access .btn-box {
        padding-top: 20px;
        text-align: center;
    }
    .hdc-cakes .access .btn {
        font-size: .15rem;
        padding: 0.125rem;
        width: 2.8rem;

    }
    .hdc-cakes .access .content .txt-box a {
        padding: 0.01rem 0.1rem 0.05rem;
        min-width: 2.2rem;
    }
    .hdc-cakes .access .btn::after {
        width: 0.08rem;
        height: 0.11rem;
        right: 0.2rem;
    }
    .hdc-cakes .access {
        padding-bottom: 0.42rem;
    }

    .hdc-cakes #footer {
        margin-top: 0;
    }
    .hdc-cakes .access h2 {
        width: fit-content;
    }
    .hdc-cakes .access h2 span::before,
    .hdc-cakes .access h2 span::after {
        width: 54px;
        height: 8px;
        background-size: contain;
    }
    .hdc-cakes .access h2 span::before {
        left: -60px;
    }
    .hdc-cakes .access h2 span::after {
        right: -60px;
        background-position: top right;
    }
    .hdc-cakes .access h2 {
        font-size: 0.225rem;
        margin: 0;
    }

    .hdc-cakes .access h2 span {
        padding: 0 0.28rem;
    }

    .hdc-cakes .access .content {
        margin-top: .15rem;
    }

    .hdc-cakes .access .container {
        padding: 0 0.24rem;
    }
}

.hdc-cakes .top-content .heading {
    width: 24.48vw;
    margin: 0 auto;
}

.hdc-cakes .top-content .heading .inner {
    background: url(../img/bg-title.png) no-repeat;
    background-size: 100% 100%;
    position: relative;
    text-align: center;
    padding: 2.65vw 0.78vw 5.3083vw;
    width: 100%;
}

.hdc-cakes .top-content .heading .inner .img {
    text-align: center;
}

.hdc-cakes .top-content .heading .inner .img img {
    max-width: 6.4vw;
    width: 5.6vw !important;
    height: auto !important;
    object-fit: contain;
    object-position: center;
}

.hdc-cakes .top-content .heading .inner .label {
    padding-top: 1.56vw;
    font-weight: bold;
}

.hdc-cakes .top-content .heading .inner .label .title {
    font-size: 2.86vw;
    line-height: 1;
    letter-spacing: 0.1em;
    color: #3f220f;
    font-family: 'KulturistaBold', "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", sans-serif;
}

.hdc-cakes .top-content .heading .inner .label .sub {
    padding-top: 1.04vw;
    font-size: 1.30vw;
    line-height: 1.68;
    letter-spacing: 0.05em;
}

.hdc-cakes .top-content .desc {
    position: relative;
    padding-top: 3.94vw;
    font-size: 0.22rem;
    letter-spacing: 0.05em;
    line-height: 1.8;
    text-align: center;
    font-weight: 700;
}
.hdc-cakes .top-content .desc .head {
    font-weight: 700;
    color: #3f220f;
    font-size: 0.37rem;
    line-height: 1.6;
    text-align: center;
    letter-spacing: 0.05em;
}
.hdc-cakes .top-content .desc .txt {
    color: #231815;
    margin-top: 0.15rem;
    letter-spacing: 0.05em;
    font-weight: 500;
}
.hdc-cakes .top-content .desc .txt-sub {
    display: inline-block;
    text-align: left;
    padding-top: 2vw;
    font-size: 0.15rem;
    line-height: 1.8;
    letter-spacing: 0.05em;
    color: #231815;
    font-weight: 400;
}
.hdc-cakes .top-content .desc .loca {
    display: flex;
    justify-content: center;
    font-size: 0.2rem;
    line-height: 1;
    letter-spacing: 0.08em;
    font-weight: 500;
    width: fit-content;
    margin: 0 auto;
    padding-top: 0.4rem;
    letter-spacing: -0.1em;
    font-family: "Zen Kaku Gothic New", sans-serif;
}
.hdc-cakes .top-content .desc .time {
    font-size: 0.136rem;
    background: #fff;
    border: 1px solid #3F2713;
    padding: 0 3px;
}
.hdc-cakes .top-content .desc .tag {
    position: relative;
    width: 0.42rem;
    padding: 0;
    right: 0;
    top: 0;
    display: inline-block;
    margin: 0 0.025rem;
}
.hdc-cakes .top-content .desc .loca p.lbl {
    border-right: unset;
    min-width: 0.8rem;
    padding: 0.03rem 0.15rem 0.05rem;
    text-align: center;
}
.hdc-cakes .top-content .desc .loca p {
    padding: 0.03rem 0.2rem 0.05rem;
    border: 1px solid #000;
}
.hdc-cakes .top-content .desc .available {
    width: 20.7%;
    position: absolute;
    right: 0;
    bottom: -68px;
}
.hdc-cakes .top-content .desc .available p {
    position: absolute;
    font-size: 0.25rem;
    line-height: 1.28;
    font-weight: 700;
    color: #3f220f;
    text-align: center;
    left: 0;
    right: 0;
    bottom: 22%;
}
.hdc-cakes .top-content .desc .available p .sm {
    display: block;
    font-size: 0.15rem;
}
@media(max-width: 767px) {
    .hdc-cakes .pickup-content .top-content .content {
        width: 100%;
        padding-top: 0;
    }
    .hdc-cakes .top-content .sp-bg-container {
        background-color: #fff;
        padding: 0 4% 8%;
    }
    .hdc-cakes .top-content .heading {
        width: 60vw;
        padding: 2.08vw 1.04vw;
    }
    .hdc-cakes .top-content .heading .inner .img img {
        width: 17vw !important;
        max-width: 25vw;
    }
    .hdc-cakes .top-content .heading .inner .label .title {
        padding-top: 10px;
        font-size: 7vw;
    }
    .hdc-cakes .top-content .heading .inner .label .sub {
        font-size: 3.33vw;
    }
    .hdc-cakes .top-content .heading .inner {
        /* padding: 9vw 0.78vw 12vw !important; */
        padding: 5vw 0.78vw 12vw !important;
    }
    .hdc-cakes .top-content .desc .head {
        font-size: 5.9vw;
        letter-spacing: -0.05em;
    }
    .hdc-cakes .top-content .desc .txt {
        font-size: 3.73vw;
    }
    .hdc-cakes .top-content .desc .txt-sub {
        font-size: 0.1rem;
        text-align: left;
    }
    .hdc-cakes .top-content .desc .time {
        font-size: 0.085rem;
        padding-bottom: 0.01rem;
        padding-top: 0.01rem;
        position: relative;
        top: 0;
        display: inline-block;
        line-height: 1;
    }
    .hdc-cakes .top-content .desc .loca {
        padding-top: 0.18rem;
        font-size: 0.145rem;
        margin: 0 auto;
    }
    .hdc-cakes .charity-content .top-content .desc{
        padding-bottom: 30px;
    }
    .hdc-cakes .top-content .desc .available {
        bottom: -30px !important;
        width: 1rem !important;
        margin: 0 auto;
    }
    .hdc-cakes .top-content .desc .available p {
        font-size: 0.1rem;
        line-height: 1.45;
        right: 0;
        bottom: 17%;
    }
    .hdc-cakes .top-content .desc .available p .sm {
        font-size: 0.075rem;
    }
    .hdc-cakes .charity-content .top-content .desc .available {
        bottom: -72% !important;
        width: 1.3rem !important;
        right: -5%;
    }
}
/* pickup-content ==================================== */
.hdc-cakes .pickup-content {
    position: relative;
    padding-top: 150px;
    padding-bottom: 90px;
    background: url(../img/pickup/bg-pickup-main.png) no-repeat;
    background-position: top;
    background-size: cover;
}
.hdc-cakes .top-content {
    position: relative;
    z-index: 11;
}
.hdc-cakes .pickup-content .bg img {
    position: absolute;
}
.hdc-cakes .pickup-content .bg .bg-01 {
    width: 24.69vw;
    top: 0;
    left: 0;
}
.hdc-cakes .pickup-content .bg .bg-02 {
    width: 23.12vw;
    top: 4%;
    right: 9%;
}
.hdc-cakes .pickup-content .bg .bg-03 {
    width: 17.97vw;
    right: 0;
    bottom: 25%;
}
.hdc-cakes .pickup-content .bg .bg-04 {
    width: 21.46vw;
    left: 0;
    bottom: 3%;
}

.hdc-cakes .top-content .container {
    max-width: 1240px;
}

.hdc-cakes .pickup-content .inner-text {
    display: flex;
    flex-wrap: wrap;
    position: relative;
}

.hdc-cakes .pickup-content .item {
    width: 78.6458vw;
    margin-left: auto;
}

.hdc-cakes .pickup-content .item:nth-child(odd) {
    margin-right: auto;
    margin-left: 0;
}

.hdc-cakes .pickup-content .item .txt {
    display: flex;
    gap: 1.83vw;
    width: 40%;
    font-weight: 700;
    font-size: 1.15vw;
    letter-spacing: -0.02em;
    line-height: 1.7;
    position: relative;
    z-index: 1;
    font-family: "Zen Kaku Gothic New", sans-serif;
}

.hdc-cakes .pickup-content .item .txt img {
    width: 5.73vw;
    height: 6.25vw;
}

.hdc-cakes .pickup-content .item.pickup1 {
    margin-top: -1.40vw;
}

.hdc-cakes .pickup-content .item.pickup1 .txt {
    padding-left: 5.21vw;
    padding-top: 8.96vw;
}

.hdc-cakes .pickup-content .item.pickup1 .img {
    width: 60%;
    padding-right: 10.15vw;
}

.hdc-cakes .pickup-content .item.pickup2 {
    width: 81.25vw;
    margin-top: -13.70vw;
}

.hdc-cakes .pickup-content .item.pickup2 .inner-text {
    flex-direction: row-reverse;
}

.hdc-cakes .pickup-content .item.pickup2 .img {
    flex: 1;
}

.hdc-cakes .pickup-content .item.pickup2 .txt {
    width: 31%;
    position: relative;
    z-index: 4;
    padding-top: 20.833vw;
    transform: translateX(-1.56vw);
}

.hdc-cakes .pickup-content .item.pickup3 {
    margin-top: -9.80vw;
}

.hdc-cakes .pickup-content .item.pickup3 .txt {
    width: 34%;
    padding-top: 15.63vw;
    padding-left: 2.60vw;
}

.hdc-cakes .pickup-content .item.pickup3 .img {
    padding-right: 15.10vw;
    padding-left: 2.5vw;
    flex: 1;
}

.hdc-cakes .pickup-content .img {
    width: 100%;
    position: relative;
    z-index: 3;
}

.hdc-cakes .pickup-content .txt h4 {
    font-size: 1.3vw;
    line-height: 1.68;
    letter-spacing: 0.05em;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-weight: 700;
    margin-bottom: 1.20vw;
    color: #3f220f
}

.hdc-cakes .pickup-content .txt .lg {
    position: relative;
    font-weight: 500;
    font-size: 1.04vw;
    margin-top: 0.30rem;
    line-height: 1.1;
}

.hdc-cakes .pickup-content .item.new .txt .lg::before {
    position: absolute;
    content: '';
    width: 3.65vw;
    height: 3.65vw;
    right: -5px;
    top: 0;
    background: url('../img/new.png') no-repeat;
    background-size: contain;
}

.hdc-cakes .pickup-content .txt .sm {
    font-size: 0.15rem;
}

.hdc-cakes .pickup-content .txt ul {
    padding-top: 10px;
    margin: 0;
    display: flex;
    align-items: center;
    padding-bottom: 0.15rem;
    margin-top: 0.05rem;
    position: relative;
    width: fit-content;
}

.hdc-cakes .pickup-content .txt ul li {
    color: #fff;
    font-weight: 500;
    font-size: 0.89vw;
    letter-spacing: 0.01rem;
    line-height: 1;
    width: unset;
    padding: 0.25vw 0.91vw 0.5vw;
    background: #694B3D;
    border-radius: 50vh;
    margin-right: 4px;
    min-width: 2.5vw;
    text-align: center;
}

.hdc-cakes .pickup-content .txt ul li.bg1 {
    background: #73A567;
}
.hdc-cakes .pickup-content .txt ul li.bg2 {
    background: #EA5532;
}
.hdc-cakes .pickup-content {
    position: relative;
}
.hdc-cakes .pickup-content .txt .t_inner {
    flex: 1;
    font-size: 0.78vw;
    color: #231815;
    max-width: 259px;
}
@media(min-width: 1550px) {
    .hdc-cakes .pickup-content .txt .t_inner {
        max-width: unset;
    }
    .hdc-cakes .pickup-content .item.pickup1 .txt .t_inner {
       max-width: 259px;
    }
}
@media(max-width:767px) {
    .hdc-cakes .pickup-content {
        padding-top: 70px;
        overflow: hidden;
        background: url(../img/pickup/bg-pickup-main-sp.png) no-repeat;
        background-size: cover;
    }
    .hdc-cakes .pickup-content .item {
        width: 100% !important;
    }
    .hdc-cakes .pickup-content .item {
        padding: 15px;
    }
    .hdc-cakes .pickup-content .item .inner-text .txt {
        width: 90%;
        margin: 0 auto !important;
        padding: 10px !important;
        gap: 8%;
    }
    .hdc-cakes .pickup-content .item .inner-text .img {
        flex: auto;
    }
    .hdc-cakes .pickup-content .item .inner-text .txt img {
        width: 17.33vw;
        height: 17.45vw;
    }

    .hdc-cakes .pickup-content .item .img {
        width: 82% !important;
        padding: 0 !important;
        max-width: 650px;
        margin: 0 auto;
    }

    .hdc-cakes .pickup-content .txt .t_inner {
        flex: auto;
        font-size: 3.33vw;
        color: #3C2817;
    }

    .hdc-cakes .pickup-content .txt h4 {
        font-size: 4vw;
        /* letter-spacing: 0.1em; */
        margin-bottom: 2.2vw;

    }

    .hdc-cakes .pickup-content .txt .lg {
        display: inline-block;
        font-size: 2.66vw;
        margin-top: 2.5vw;
    }

    .hdc-cakes .pickup-content .item.new .txt .lg::before {
        width: 9.33vw;
        height: 9.33vw;
        right: -10vw;
    }

    .hdc-cakes .pickup-content .txt .sm {
        font-size: 2vw;
    }

    .hdc-cakes .pickup-content .txt ul li {
        font-size: 2.66vw;
        padding: 0.7vw 1.5vw 0.7vw;
    }

    .hdc-cakes .pickup-content .pickup1 .txt ul li.new {
        width: 9.33vw;
        top: -5.5vw;
    }
    .hdc-cakes .pickup-content .txt ul {
        padding-right: 10vw;
    }
    .hdc-cakes .pickup-content .item.pickup1 {
        margin-top: 0;
        padding-top: 35%;
    }
    .hdc-cakes .pickup-content .item.pickup1,
    .hdc-cakes .pickup-content .item.pickup2,
    .hdc-cakes .pickup-content .item.pickup3 {
        margin-top: 0;
    }

    .hdc-cakes .pickup-content .item.pickup2 .txt {
        width: 90%;
        top: -20px;
        /* transform: translateX(0); */
    }

    .hdc-cakes .pickup-content .top-content::before {
        width: 140px;
        height: 180px;
        top: -40px;
        left: 0;
    }

    .hdc-cakes .pickup-content .top-content::after {
        width: 150px;
        height: 180px;
        top: 50px;
        right: 0;
    }

    .hdc-cakes .pickup-content .bg .bg-01 {
        width: 2.5rem;
        left: -42%;
        top: -2.2%;
    }
    .hdc-cakes .pickup-content .bg .bg-02 {
        width: 1.3rem;
        right: 0;
        left: 0;
        top: 21%;
        margin: auto;
    }
    .hdc-cakes .pickup-content .bg .bg-03 {
        width: 2.2rem;
        right: -39%;
        bottom: 79%;

    }
    .hdc-cakes .pickup-content .bg .bg-04 {
        width: 2.7rem;
        bottom: 50%;
        left: inherit;
        right: -35%;
    }
    .hdc-cakes .pickup-content .bg .bg-05 {
        width: 3.2rem;
        bottom: 24%;
        left: -47%
    }
    .hdc-cakes .pickup-content .bg .bg-06 {
        width: 2.5rem;
        bottom: 13%;
        right: -55%;
    }
    .hdc-cakes .pickup-content .bg .bg-07 {
        width: 3.3rem;
        bottom: -6%;
        left: -46%;
    }

    .hdc-cakes .pickup-content .inner-text {
        flex-direction: column-reverse;
        gap: .1rem;
    }
    .hdc-cakes .pickup-content .item.pickup2 .inner-text {
        flex-direction: column-reverse;
        gap: .1rem;
    }
    .hdc-cakes .pickup-content .item.pickup2 .img {
        max-width: 120vw !important;
        width: 120vw !important;
        margin: 0 calc(40% - 50vw) !important;
        bottom: -35px;
    }

    .hdc-cakes .pickup-content .item.pickup2 .txt .t_inner {
        position: relative;
    }
    .hdc-cakes .pickup-content .item.pickup2 .txt .t_inner::before,
    .hdc-cakes .pickup-content .item.pickup2 .txt .t_inner::after {
        content: "";
        display: inline-block;
        position: absolute;
        top: -30%;
        width: 200px;
        height: 200px;
    }
    .hdc-cakes .pickup-content .item.pickup2 .txt .t_inner::before {
        left: -20%;
        background: radial-gradient(circle, #f6d233 0%, rgba(255, 200, 0, 0) 90%);
        filter: blur(30px);
        z-index: -1;
    }
    .hdc-cakes .pickup-content .item.pickup2 .txt .t_inner::after {
        right: -30px;
        background: radial-gradient(circle, #f6d233 0%, rgba(255, 200, 0, 0) 90%);
        filter: blur(20px);
        z-index: -1;
    }
}

.hdc-cakes .special-content {
    position: relative;
    padding: 150px 0 150px;
}

.hdc-cakes .special-content::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background: url(../img/special-content/bg-special-content-main.png) no-repeat;
    background-size: cover;
    background-position: center;
    top: 0;
    left: 0;
}

.hdc-cakes .special-content .top-content .heading .inner {
    background: url(../img/bg-title-02.png) no-repeat;
    background-size: 100% 100%;
    position: relative;
    text-align: center;
    padding: 2.65vw 0.78vw 5.3083vw;
    width: 100%;
}

.hdc-cakes .special-content .special-img {
    position: relative;
    padding-top: 47px;
    width: 56.4%;
    height: auto;
    margin: 0 auto;
}

.hdc-cakes .special-content .special-img .first-come-badge {
    position: absolute;
    top: 0;
    right: -30px;
    width: 1.46rem;
    height: 1.46rem;
    border-radius: 50%;
    background: #EA5532;
    color: #fff;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    line-height: 1;
}

.hdc-cakes .special-content .special-img .first-come-badge .label {
    background: #fff;
    color: #EA5532;
    padding: 0 10px;
    border-radius: 20px;
    font-size: 0.16rem;
    font-weight: 700;
    line-height: 1.9;
    letter-spacing: 0.1em;
}

.hdc-cakes .special-content .special-img .first-come-badge strong {
    font-size: 0.45rem;
    font-weight: 900;
    line-height: 1;
    margin: 4px 0 2px;
}

.hdc-cakes .special-content .special-img .first-come-badge .people {
    font-size: 0.2rem;
    font-weight: 700;
}

.hdc-cakes .special-content .product {
    padding-top: 50px;
    text-align: center;
}

.hdc-cakes .special-content .product .product-name {
    font-size: 0.25rem;
    line-height: 1.68;
    letter-spacing: 0.05em;
    font-weight: 700;
    color: #3f220f;
}

.hdc-cakes .special-content .product .product-desc {
    padding-top: 30px;
    font-size: 0.15rem;
    line-height: 1.73;
    letter-spacing: 0.05em;
    font-weight: 400;
    color: #231815;
}

@media(max-width: 767px) {
    .hdc-cakes .special-content {
        padding: 50px 0;
    }

    .hdc-cakes .special-content .special-img {
        padding-top: 30px;
    }

    .hdc-cakes .special-content .special-img .first-come-badge {
        width: 0.7rem;
        height: 0.7rem;
        top: 5px;
    }

    .hdc-cakes .special-content .special-img .first-come-badge .label {
        font-size: 0.05rem;
    }

    .hdc-cakes .special-content .special-img .first-come-badge strong {
        font-size: 0.15rem;
    }

    .hdc-cakes .special-content .special-img .first-come-badge .people {
        font-size: 0.1rem;
        font-weight: 700;
    }

    .hdc-cakes .special-content .product .product-name {
        font-size: 0.15rem;
    }

    .hdc-cakes .special-content .product .product-desc {
        font-size: 0.1rem;
    }

    .hdc-cakes .special-content .special-img {
        width: 80%;
    }

    .hdc-cakes .special-content .product,
    .hdc-cakes .special-content .product .product-desc {
        padding-top: 20px;
    }

    .hdc-cakes .special-content::before {
        content: "";
        position: absolute;
        width: 100%;
        height: 100%;
        background: url(../img/special-content/bg-special-content-main-sp.png) repeat;
        background-size: contain;
        top: 0;
        left: 0;
    }
}

/* bakery-content ============================== */
.hdc-cakes .bakery-content .in_content {
    position: relative;
    background: url(../img/bakery-content/bg-bakery-content-main.png);
    background-size: 100%;
    background-repeat: repeat;
    padding: 150px 0;
}

.hdc-cakes .bakery-content .in_content::before {
    content: '';
    position: absolute;
    background: #fff;
    top: 260px;
    bottom: 150px;
    left: max(7px, calc((100vw - 1920px) / 2 + 260px));
    right: max(7px, calc((100vw - 1920px) / 2 + 260px));
}

.hdc-cakes .bakery-content .top-content .heading .inner {
    background: url(../img/bg-title-02.png) no-repeat;
    background-size: 100% 100%;
    position: relative;
    text-align: center;
    padding: 2.65vw 0.78vw 5.3083vw;
    width: 100%;
}

.hdc-cakes .bakery-content .container {
    max-width: 1140px;
}

.hdc-cakes .products {
    padding-bottom: 130px;
}

.hdc-cakes .products .tabs {
    padding-top: 100px;
    padding-bottom: 0.45rem;
    gap: 0.18rem;
    justify-content: center;
}

.hdc-cakes .products .tabs,
.hdc-cakes .products .bakeries,
.hdc-cakes .control-btns {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -0.15rem;
}

.hdc-cakes .products .tabs .tab {
    border-radius: 50vh;
    text-align: center;
    align-content: center;
    background: #d3d3d3;
    color: #fff;
    font-size: 0.3rem;
    padding: 0.04rem 0.68rem;
    line-height: 1.75;
    font-weight: 700;
    font-family: "KulturistaBold", sans-serif;
    position: relative;
    letter-spacing: 0.05em;
}

.hdc-cakes .products .tabs .tab .slash {
    font-family: "KulturistaLight", sans-serif;
    font-weight: 400;
    letter-spacing: 0.1em;
}

.hdc-cakes .products .tabs .tab.tab1.active {
    background: #694B3D;
}

.hdc-cakes .products .tabs .tab.tab2.active {
    background: #73A567;
}

.hdc-cakes .products .tabs .tab.tab3.active {
    background: #EA5532;
}

.hdc-cakes .products .bakeries .bakery.show {
    display: block;
}

.hdc-cakes .products .bakeries .bakery {
    position: relative;
    text-align: center;
    width: 33.33%;
    box-sizing: border-box;
    display: none;
    padding: 0.15rem;
}

.hdc-cakes .products .bakeries .bakery .img-title {
    position: relative;
    overflow: hidden;
}

.hdc-cakes .products .bakeries .bakery .img-title .floor_num {
    position: absolute;
    left: 0;
    top: 0;
    width: 70px;
    height: 70px;
    z-index: 1;
    background: url(../img/bg_floor_num.png) no-repeat;
    background-size: 100% !important;
    color: #231815;
    font-family: 'Zen Kaku Gothic New', "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", sans-serif;
    font-size: 15px;
    font-weight: 900;
    text-align: left;
    line-height: 1;
    padding: 10px 0px 4px 8px;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    letter-spacing: 0.2em;
}

.hdc-cakes .products .bakeries .bakery .img-title .floor_num .number {
    font-size: 0.2rem;
    letter-spacing: 0.2em;
}

.hdc-cakes .products .bakeries .bakery .img-title.new::after {
    position: absolute;
    content: "";
    background: url(../img/new.png) no-repeat;
    background-size: cover;
    top: 0.1rem;
    right: 0.1rem;
    width: 80px;
    height: 40px;
    z-index: 1;
}

.hdc-cakes .products .bakeries .bakery .img-title.ticket::before {
    position: absolute;
    content: "";
    background: url(../img/icon-ticket.png) no-repeat;
    background-size: contain;
    background-position: right top;
    top: 0.125rem;
    right: 0.1rem;
    width: 82px;
    height: 40px;
    z-index: 1;
}

.hdc-cakes .products .bakeries .bakery .img-title.new.ticket::after {
    right: calc(0.1rem + 90px + 0.05rem);
}

.hdc-cakes .products .bakeries .bakery .img-title .img-product {
    position: relative;
    display: block;
    padding-top: 100%;
    overflow: hidden;
}

.hdc-cakes .products .bakeries .bakery .img-title .img-product img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.hdc-cakes .products .bakeries .bakery .img-title img {
    transition: .3s;
}

.hdc-cakes .products .bakeries .bakery .img-title .date {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 10px;
    font-size: 0.17rem;
    color: #FFF;
    text-align: end;
    padding-right: 0.1rem;
    line-height: 1;
}

.hdc-cakes .products .bakeries .bakery .img-title .date span {
    padding: 0.05rem 0.17rem 0.07rem;
    border-radius: 50vh;
    display: inline-block;
}

.hdc-cakes .products .bakeries .bakery .img-title .date .date-1 {
    background-color: #694B3D;
}

.hdc-cakes .products .bakeries .bakery .img-title .date .date-2 {
    background-color: #73A567;
}

.hdc-cakes .products .bakeries .bakery .img-title .date .date-3 {
    background-color: #EA5532;
}

.hdc-cakes .products .bakeries .bakery .img-title .date .pm {
    border-radius: 0;
    border: 1px solid #000;
    background: #fff;
    color: #3C2817;
    font-weight: 500;
    padding: 0.04rem 0.025rem 0.06rem;
    font-size: 0.17rem;
}

.hdc-cakes .products .bakery .description {
    font-size: 0.2rem;
    line-height: 1;
    font-weight: 500;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding-top: 0.05rem;
    position: relative;
}

.hdc-cakes .products .bakery .description .name {
    display: flex;
    flex-wrap: wrap;
    line-height: 1.5;
    text-align: left;
    letter-spacing: 0;
    color: #231815;
}

.hdc-cakes .products .bakery .description .name .sm {
    font-size: 0.15rem;
    line-height: 2.1;
}

.hdc-cakes .products .bakeries .bakery .img-title.delivery .date::before {
    position: absolute;
    content: "";
    background: url(../img/ic-kitchen-car.png) no-repeat;
    background-size: contain;
    bottom: 0.05rem;
    left: 0.1rem;
    width: 0.75rem;
    height: 0.5rem;
    z-index: 1;
}

.hdc-cakes .control-btns {
    flex-direction: column;
    gap: 50px;
    width: 6rem;
    margin: 0 auto;
    padding-top: 1.5rem;
    /* padding-bottom: 2rem; */
}

.hdc-cakes .control-btns button,
.hdc-cakes .control-btns a.map {
    color: #3f220f;
    background: #FDD000;
    padding: 0.225rem 0;
    font-size: 0.25rem;
    line-height: 1;
    letter-spacing: 0.1em;
    width: 100%;
    transition: .3s;
    font-weight: 700;
    font-family: "Zen Kaku Gothic New", sans-serif;
    border-radius: 50px;
    text-align: center;
    text-decoration: none;
    display: block;
}

.hdc-cakes .control-btns a.map {
    font-weight: 700;
}

.hdc-cakes .control-btns button#more-products,
.hdc-cakes .control-btns button#close-products {
    display: none;
}

.hdc-cakes .control-btns button#more-products.show,
.hdc-cakes .control-btns button#close-products.show {
    display: block;
}

.hdc-cakes .control-btns button:nth-child(2) {
    background: none;
    border: 3px solid #FDD000;
    background-color: #fff;
}

.hdc-cakes .control-btns a.map {
    color: #fff;
    background: #EA5532;
}

.hdc-cakes .control-btns button:hover {
    opacity: .7;
}

.hdc-cakes .control-btns button>span,
.hdc-cakes .control-btns a.map>span {
    position: relative;

}

.hdc-cakes .control-btns button span::before,
.hdc-cakes .control-btns a.map span::before {
    content: "";
    position: absolute;
    width: 0.2rem;
    height: 0.15rem;
    background-size: 100% !important;
    top: 50%;
    margin-top: -0.075rem;
}

.hdc-cakes .control-btns button:first-child span::before {
    background: url(../img/arr-down.png) no-repeat;
    left: -0.35rem;
}

.hdc-cakes .control-btns button:nth-child(2) span::before {
    background: url(../img/ic-up.png) no-repeat;
    left: -0.35rem;
}

.hdc-cakes .control-btns a.map span {
    padding-right: 0.3rem;
}

.hdc-cakes .control-btns a.map span::before {
    background: url(../img/ar-down2.png) no-repeat;
    right: -1rem;
    width: 0.15rem;
    height: 0.2rem;
}

.hdc-cakes .bakery-content .top-content .heading .inner .img img {
    max-width: 6.4vw;
    width: 4vw !important;
}

@media(max-width:767px) {
    .hdc-cakes .bakery-content .in_content {
        padding: 30px 0 0;
    }

    .hdc-cakes .bakery-content .in_content::before {
        content: '';
        position: absolute;
        background: inherit;
        top: 150px;
        bottom: 30px;
    }

    .hdc-cakes .products {
        padding-top: 0;
        padding-bottom: 50px;
    }

    .hdc-cakes .control-btns button,
    .hdc-cakes .control-btns a.map {
        padding-bottom: 40px;
    }

    .hdc-cakes .products .tabs .tab {
        font-size: 0.15rem;
        padding: 0.0188rem 0.3rem;
        min-width: 1rem;
    }

    .hdc-cakes .products .tabs {
        gap: 0.09rem;
    }

    .hdc-cakes .products .bakeries .bakery {
        width: 50%;
        padding: 0.045rem;
    }

    .hdc-cakes .products .tabs,
    .hdc-cakes .products .bakeries,
    .hdc-cakes .control-btns {
        margin: -0.05rem;
    }

    .hdc-cakes .products .tabs {
        padding-top: 30px;
        padding-bottom: 0.15rem;
    }
    .hdc-cakes .products .bakeries .bakery .img-title .date .pm {
        padding: 0.03rem 0.025rem 0.03rem;
        font-size: 0.1rem;
    }
    .hdc-cakes .products .bakeries .bakery .img-title.new::after {
        top: 1.33vw;
        right: 1.33vw;
        width: 45px;
        height: 23px;
    }
    .hdc-cakes .products .bakeries .bakery .img-title.ticket::before {
        top: 1.9vw;
        right: 1.5vw;
        width: 45px;
        height: 23px;
        background-size: contain;
        background-position: right top;
    }
    .hdc-cakes .products .bakeries .bakery .img-title.new.ticket::after {
        right: calc(1.33vw + 50px + 1.33vw);
    }
    .hdc-cakes .products .bakeries .bakery .img-title.delivery .date::before {
        bottom: -0.06rem;
        left: 0.05rem;
        width: 0.33rem;
        height: 0.22rem;
        z-index: 1;
    }

    .hdc-cakes .products .bakeries .bakery .img-title::before {
        width: 0.35rem;
        height: 0.35rem;
    }

    .hdc-cakes .products .bakeries .bakery .img-title .date span {
        padding: 0.025rem 0.05rem 0.035rem;
    }

    .hdc-cakes .products .bakeries .bakery .img-title .date {
        font-size: 0.1rem;
        letter-spacing: 0;
        padding-right: 0.05rem;
    }

    .hdc-cakes .products .bakery .description .name {
        font-size: 0.1rem;
    }

    .hdc-cakes .products .bakery .description .name .sm {
        font-size: 0.075rem;
    }

    .hdc-cakes .products .bakery .description {
        padding-top: 0.03rem;
        padding-bottom: 0.05rem;
    }

    .hdc-cakes .control-btns {
        gap: 40px;
        width: 3rem;
        margin: 0 auto !important;
        padding-top: 0.4rem;
        padding-bottom: 0.1rem;
    }

    .hdc-cakes .control-btns button,
    .hdc-cakes .control-btns a.map {
        font-size: 0.15rem;
        font-weight: 700;
        text-align: center;
        padding: 0.125rem;
    }

    .hdc-cakes .products .bakeries .bakery .img-title .floor_num {
        font-size: 2.86vw;
        width: 11vw;
        height: 10vw;
        padding: 1.3vw 0px 0px 0.657vw;
    }

    .hdc-cakes .products .bakeries .bakery .img-title .floor_num .number {
        font-size: 2.86vw;
    }

    .hdc-cakes .bakery-content .top-content .heading .inner .img img {
        width: 11vw !important;
        max-width: 25vw !important;
    }
}

/* bakery-content ========================================= */

@media(max-width:767px) {

    .hdc-cakes .bakery-content .top-content .content {
        padding-top: 0.25rem;
    }

    .hdc-cakes .control-btns button span::before,
    .hdc-cakes .control-btns a.map span::before {
        width: 0.11rem;
        height: 0.09rem;
        top: 50%;
        margin-top: -0.045rem;
    }

    .hdc-cakes .control-btns button:first-child span::before,
    .hdc-cakes .control-btns button:nth-child(2) span::before {
        left: -0.15rem;
    }

    .hdc-cakes .control-btns a.map span::before {
        right: -0.1rem;
        width: 0.09rem;
        height: 0.11rem;
        margin-top: -0.055rem;
    }

    .hdc-cakes .control-btns a.map span {
        padding-right: 0.15rem;
    }
}

/* present-content ======================================== */
.hdc-cakes .present-content {
    padding: 150px 50px;
    position: relative;
    background: #FDD000;
}

.hdc-cakes .present-content .top-content .desc .available {
    width: 13.2%;
    bottom: -105px;
}
.hdc-cakes .present-content .top-content .desc .available p {
    bottom: 0;
    top: 22%;
}
.hdc-cakes .present-content .bg {
    height: 22.61rem;
    object-fit: cover;
    object-position: center;
}
.hdc-cakes .present-content .container {
    max-width: 1140px;
}

.hdc-cakes .present-content .prize-list {
    padding: 0 30px;
    display: flex;
    flex-wrap: wrap;
    margin-top: 120px;
    position: relative;
    padding-bottom: 0.35rem;
}

.hdc-cakes .present-content .prize-list::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 0.05rem;
    background: url(../img/prize-border.png) no-repeat;
    background-size: 100% auto;
    left: 0;
    bottom: 0;

}

.hdc-cakes .present-content .prize-list.last::after {
    display: none;
}

.hdc-cakes .present-content .prize-list .txt-list {
    width: 46%;
}

.hdc-cakes .present-content .prize-list .txt-list .lb {
    font-size: 0.4rem;
    font-family: "Zen Kaku Gothic New", sans-serif;
    color: #fff;
    background: url(../img/present-content/prize-list-bg.png) no-repeat;
    background-size: 100% !important;
    width: 1.1rem;
    height: 1.05rem;
    text-align: center;
}

.hdc-cakes .present-content .prize-list .txt-list .sm {
    font-size: 0.25rem;
}

.hdc-cakes .present-content .prize-list .img-box {
    flex: 1;
    text-align: right;
    font-size: 0.15rem;
    align-self: center;
}
.hdc-cakes .present-content .prize-list .img-box03 {
    /* max-width: 200px; */
    margin: 0 auto;

}
.hdc-cakes .present-content .prize-list .txt-list li {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 22px;
}

.hdc-cakes .present-content .prize-list .txt-list .desc {
    flex: 1;
    padding-left: 0.25rem;
}

.hdc-cakes .present-content .prize-list .txt-list .desc .lg {
    font-size: 0.6rem;
    font-weight: 700;
    line-height: 1;
}

.hdc-cakes .present-content .prize-list .txt-list .desc .capacity {
    font-size: 0.22rem;
    font-weight: 500;
    line-height: 1.8;
    letter-spacing: 0.05em;
}

.hdc-cakes .present-content .prize-list.fm1 .txt-list .desc .lg {
    font-size: 0.37rem;
    line-height: 0.94;
    font-weight: 700;
    letter-spacing: 0.05em;
}

.hdc-cakes .present-content .prize-list.fm1 .txt-list .desc .lg.lh {
    line-height: 1.2;
}

.hdc-cakes .present-content .prize-list.fm1 .txt-list .desc .lg .xl {
    font-size: 0.6rem;
    font-weight: 900;
}

.hdc-cakes .present-content .prize-list.fm1 {
    margin-top: 0.35rem;
}

.hdc-cakes .present-content .prize-list.lb-sp {
    display: none;
}

.hdc-cakes .present-content .prize-list .txt-list .md {
    font-size: 0.22rem;
    line-height: 1;
    letter-spacing: -0.02em;
}

.hdc-cakes .present-content .prize-list.fm1 .txt-list {
    width: 58%;
    padding-top: 0.3rem;
}

.hdc-cakes .present-content .prize-list .txt-list .lb {
    line-height: 1.3;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-top: 0.04rem;
    font-weight: 700;
}

.hdc-cakes .present-content .txt-box {
    padding: 10px 30px 0;
    font-size: 0.15rem;
    color: #3F2713;
    letter-spacing: 0.05em;
    line-height: 1.8;
}

.hdc-cakes .present-content .top-content .desc .available p {
    color: #fff;
}

.hdc-cakes .present-content .top-content .heading .inner .img img {
    max-width: 6.4vw;
    width: 4vw !important;
}

@media(max-width:767px) {
    .hdc-cakes .present-content {
        padding: 30px 0;
    }

    .hdc-cakes .present-content .prize-list {
        /* flex-direction: column-reverse; */
        padding: 20px 0;
        padding-bottom: 0.25rem;
        margin: 0 auto;
    }
    .hdc-cakes .present-content .top-content .desc .available p {
        font-size: 0.16rem;
    }
    .hdc-cakes .present-content .prize-list.fm1 .txt-list .desc .lg .xl {
        font-size: 0.3rem;
    }
    .hdc-cakes .present-content .prize-list .img-box {
        flex: auto;
        font-size: 0.075rem;
    }
    .hdc-cakes .present-content .prize-list .txt-list {
        width: 100%;
        padding-top: 0.05rem;
    }
    .hdc-cakes .present-content .prize-list .txt-list .desc .lg {
        font-size: 0.3rem;
    }
    .hdc-cakes .present-content .prize-list .txt-list .lb {
        font-size: 0.2rem;
        width: 0.7rem;
        height: 0.7rem;
    }
    .hdc-cakes .present-content .prize-list .txt-list .sm {
        font-size: 0.11rem;
    }
    .hdc-cakes .present-content .prize-list .txt-list .desc {
        align-self: center;
        padding-left: 0.1rem;
        max-width: 1.4rem;
    }
    .hdc-cakes .present-content .prize-list .txt-list li {
        justify-content: center;
    }
    .hdc-cakes .present-content .prize-list.fm1 .txt-list .desc {
        max-width: 100%;
    }
    .hdc-cakes .present-content .prize-list.fm1 .txt-list .desc .lg {
        font-size: 0.2rem;
    }
    .hdc-cakes .present-content .prize-list.fm1 .txt-list {
        width: 100%;
        padding-top: 0.7rem;
    }
    .hdc-cakes .present-content .prize-list .txt-list .desc .capacity {
        font-size: 0.11rem;
    }

    .hdc-cakes .present-content .prize-list .txt-list .lb.md {
        font-size: 0.125rem;
        line-height: 1.2;
    }

    .hdc-cakes .present-content .prize-list.fm1 .img-box {
        max-width: 2.5rem;
        margin: 0 auto;
    }

    .hdc-cakes .present-content .prize-list.fm1 .txt-list {
        width: 100%;
        padding-top: 0.2rem;
    }

    .hdc-cakes .present-content .prize-list.fm1 .txt-list {
        width: 88%;
        padding-top: 0.2rem;
        margin: 0 auto;
    }

    .hdc-cakes .present-content .prize-list.fm1 {
        margin-top: 0;
        padding-top: 0px;
        position: relative;
    }

    .hdc-cakes .present-content .txt-box {
        font-size: 0.1rem;
        line-height: 1.5;
        padding: 0.05rem 0;
    }

    .hdc-cakes .present-content .txt-box p {
        padding-bottom: 0.08rem;
        padding-left: 0.1rem;
        position: relative;
    }

    .hdc-cakes .present-content .txt-box p .sp {
        position: absolute;
        left: 0;
        top: 0;
    }

    .hdc-cakes .present-content .prize-list.lb-sp {
        display: flex;
    }

    .hdc-cakes .present-content .prize-list.lb-pc {
        display: none;
    }

    .hdc-cakes .present-content .prize-list .img-box {
        max-width: 2.85rem;
        margin: 0 auto;
    }

    .hdc-cakes .present-content .bg {
        height: 17.25rem;
    }

    .hdc-cakes .present-content .txt-box {
        padding-left: 15px;
        padding-right: 15px;
        margin: 0 auto;
    }
    .hdc-cakes .access {
        /* padding-top: 0; */
    }
    .hdc-cakes .access .tl-box {
        margin-top: 0.25rem;
        margin-bottom: 0.2rem;
    }

    .hdc-cakes .access h2::before,
    .hdc-cakes .access h2::after {
        height: 0.06rem;
        margin-top: -0.03rem;
    }

    .hdc-cakes .access h2 span {
        padding: 0 0.15rem;
        font-size: 7vw;
    }

    .hdc-cakes .access h2 {
        width: 2.5rem;
        margin: 0 auto;
    }

    .hdc-cakes .present-content .top-content .heading .inner .img img {
        width: 9vw !important;
        max-width: 25vw !important;
    }

    .hdc-cakes .access .tl-box .sub {
        font-size: 3.33vw;
    }
}

/* limited-content ======================================== */
.hdc-cakes .limited-content {
    background: #FFF9E2;
    padding-top: 150px;
    padding-bottom: 100px;
}
.hdc-cakes .limited-content .container {
    max-width: 1240px;
}
.hdc-cakes .limited-content .top-content .heading .inner {
    background: url(../img/bg-title-02.png) no-repeat;
    background-size: 100% 100%;
    position: relative;
    text-align: center;
    padding: 2.65vw 0.78vw 5.3083vw;
    width: 100%;
}
.hdc-cakes .limited-content .content-inner {
    margin-top: 80px;
    padding: 40px 0;
    position: relative;
}
.hdc-cakes .limited-content .content-inner::before,
.hdc-cakes .limited-content .content-inner::after {
    content: "";
    position: absolute;
    left: 150px;
    right: 150px;
    height: 0.21rem;
    background-repeat: no-repeat !important;
    background-size: 100% !important;
}
.hdc-cakes .limited-content .content-inner::before {
    background: url(../img/limited/limeted-border-top.png);
    top: 0;
}
.hdc-cakes .limited-content .content-inner::after {
    background: url(../img/limited/limeted-border-bottom.png);
    bottom: 0;
}

.hdc-cakes .limited-content .top-content .desc .available {
    bottom: -170px;
}

.hdc-cakes .limited-content .top-content .desc .available p {
    position: absolute;
    font-size: 0.22rem;
    line-height: 1.9;
    font-weight: 700;
    color: #3f220f;
    text-align: center;
    left: 0;
    right: 0;
    bottom: 17%;
    transform: rotate(10deg);
}
.hdc-cakes .limited-content .inn_ct {
    display: flex;
    flex-wrap: wrap;
    padding-top: 0.2rem;
    max-width: 8.2rem;
    margin: 0 auto;
}
.hdc-cakes .limited-content h2 {
    text-align: center;
    font-size: 0.37rem;
    letter-spacing: 0.1em;
    line-height: 1.6;
    color: #3f220f;
    font-weight: 700;
    font-family: "Zen Kaku Gothic New", sans-serif;
    margin: 0 auto;
}
.hdc-cakes .limited-content h2 .tl {
    display: block;
}
.hdc-cakes .limited-content h2 span {
    position: relative;
}
.hdc-cakes .limited-content .img {
    flex: 1;
}
.hdc-cakes .limited-content .festival {
    width: fit-content;
    padding-left: 0.12rem;
}
.hdc-cakes .limited-content .festival li {
    width: 1.925rem;
    margin-bottom: 0.12rem;
}
.hdc-cakes .limited-content .festival li img {
    width: 100%;
}

.hdc-cakes .limited-content .top-content .heading .inner .img img {
    width: 5vw !important;
}

@media(max-width: 767px) {
    .hdc-cakes .limited-content .content-inner {
        margin-top: 20px;
        padding-top: 10px;
    }
    .hdc-cakes .limited-content {
        padding: 30px 0;
    }
    .hdc-cakes .limited-content .top-content .desc .available p {
        font-size: 0.1rem;
        bottom: 11%;
    }
    .hdc-cakes .limited-content .top-content .content {
        padding-top: 0.2rem;
    }
    .hdc-cakes .limited-content h2 {
        font-size: 0.25rem;
        letter-spacing: 0em;
        margin: -0.1rem;
        text-align: center;
        line-height: 1.3;
        margin: 0 auto;
    }
    .hdc-cakes .limited-content h2 span {
        padding: 0;
        text-align: center;
        letter-spacing: 0;
        display: block;
        padding: 0.175rem 0;
    }
    .hdc-cakes .limited-content h2 span::before,
    .hdc-cakes .limited-content h2 span::after {
        height: 0.08rem;
    }

    .hdc-cakes .limited-content h2 span.lb-sp {
        padding: 0 !important;
        text-align: unset;
        letter-spacing: 0;
    }
    .hdc-cakes .limited-content h2 span.lb-sp::before,
    .hdc-cakes .limited-content h2 span.lb-sp::after {
        display: none;
    }
    .hdc-cakes .limited-content .festival li {
        width: 0.9rem;
        margin-right: 0.06rem;
        margin-bottom: 0.06rem;
    }
    .hdc-cakes .control-btns button,
    .hdc-cakes .control-btns a.map {
        /* border-radius: 0.05rem; */
    }
    .hdc-cakes .limited-content .inn_ct {
        padding-top: 0;
        /* max-width: 2.75rem; */
        margin: 0 auto;
    }
    .hdc-cakes .limited-content .festival {
        padding-left: 0;
        width: 100%;
        display: flex;
        padding-top: 0.06rem;
    }
    .hdc-cakes .limited-content .img {
        flex: auto;
    }
    .hdc-cakes .limited-content .content-inner::before,
    .hdc-cakes .limited-content .content-inner::after {
        /* left: 0;
        right: 0; */
        content: none;
    }
    .hdc-cakes .limited-content .top-content .desc .available {
        margin-top: 0;
    }

    .hdc-cakes .limited-content .content-inner {
        padding: 20px 5%;
        font-size: 5.9vw;
    }
    .hdc-cakes .limited-content .content-inner .title {
        position: relative;
        font-size: 5.9vw;
        margin-bottom: 20px;
     }
    .hdc-cakes .limited-content .content-inner .title::before,
    .hdc-cakes .limited-content .content-inner .title::after {
        content: "";
        position: absolute;
        left: 0;
        right: 0;
        height: .08rem;
        background-repeat: no-repeat !important;
        background-size: 100% !important;
        width: 100%;
    }
    .hdc-cakes .limited-content .content-inner .title::before {
        top: 0;
         background: url(../img/limited/limeted-border-top-sp.png);
    }
    .hdc-cakes .limited-content .content-inner .title::after {
        bottom: 0;
         background: url(../img/limited/limeted-border-bottom-sp.png);
    }

    .hdc-cakes .limited-content .top-content .desc .available {
        bottom: -105% !important;
        right: -4%;
        width: 1.3rem !important;
    }
    .hdc-cakes .limited-content .top-content .desc .available p {
        font-size: 0.12rem;
        bottom: 14%;
    }

    .hdc-cakes .limited-content .top-content .heading .inner .img img {
        width: 11vw !important;
        max-width: 25vw !important;
    }
}

.hdc-cakes .goods-content {
    background-color: #FFDE5F;
    position: relative;
    padding: 150px 0;
}
.hdc-cakes .goods-content::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url(../img/goods/bg-goods-main.png) repeat;
    background-size: contain;
    background-position: top center;
}
.hdc-cakes .goods-content .gallery {
    padding-top: 80px;
}
.hdc-cakes .goods-content .gallery .inn_ct {
    display: flex;
    flex-wrap: wrap;
    padding-top: 0.2rem;
    max-width: 9.2rem;
    margin: 0 auto;
}
.hdc-cakes .goods-content .gallery .img {
    flex: 1;
}
.hdc-cakes .goods-content .gallery .festival {
    width: fit-content;
    padding-left: 0.12rem;
}
.hdc-cakes .goods-content .gallery .festival li {
    width: 2.09rem;
    margin-bottom: 0.12rem;
}
.hdc-cakes .goods-content .info-card {
    max-width: 9.2rem;
    margin: 0 auto;
}
.hdc-cakes .goods-content .info-card.shop {
    padding-top: 100px;
}
.hdc-cakes .goods-content .info-card.live {
    padding-top: 50px;
}
.hdc-cakes .goods-content .info-card .content-box {
    position: relative;
    background: #FFF9E2;
    padding: 20px;
}
.hdc-cakes .goods-content .info-card.shop .content-box {
    margin-top: 30px;
}
.hdc-cakes .goods-content .info-card.live .content-box {
    position: relative;
    margin-top: 20px;
}
.hdc-cakes .goods-content .info-card .content-box::before {
    content: '';
    position: absolute;
    background: url('../img/goods/bg-live-content.png');
    inset: 20px;
}
.hdc-cakes .goods-content .info-card.shop .content-box::before {
    background: url('../img/goods/bg-live-content.png');
    background-size: 100% 100%;
}
.hdc-cakes .goods-content .info-card.live .content-box::before {
    background: url('../img/goods/bg-time-content.png');
    background-size: 100% 100%;
}
.hdc-cakes .goods-content .info-card.live .content-box .follower-badge {
    width: 1.6rem;
    position: absolute;
    top: -0.6rem;
    left: -1.5rem;
}
.hdc-cakes .goods-content .info-card.live .content-box .intro-badge {
    width: 20%;
    position: absolute;
    right: -9%;
    top: -0.2rem;
}
.hdc-cakes .goods-content .info-card.live .content-box .intro-badge .txt {
    text-align: center;
    position: absolute;
    left: 5%;
    right: 0;
    bottom: 32%;
    font-size: 0.2rem;
    line-height: 1.4;
    font-weight: 700;
    letter-spacing: 0.1em;
    color: #fff;
}
.hdc-cakes .goods-content .info-card.live .content-box .intro-badge .txt .lg {
    font-size: 0.23rem;
    letter-spacing: 0.01em;
}
.hdc-cakes .goods-content .info-card.live .content-box .intro-badge .txt .lg .lt {
    letter-spacing: -0.5em;
}
.hdc-cakes .goods-content .info-card .content-box .inner {
    padding: 50px;
    gap: 40px;
    display: flex;
    flex-wrap: wrap;    
}
.hdc-cakes .goods-content .info-card .content-box .inner .brand {
    position: relative;
    width: 20%;
    text-align: center;
    align-self: center;
}
.hdc-cakes .goods-content .info-card .content-box .inner .logo {
    width: 170px;
}
.hdc-cakes .goods-content .info-card .content-box .inner .ic-logo {
    padding-top: 10px;
    display: flex;
    justify-content: center;
    gap: 10px;
}
.hdc-cakes .goods-content .info-card .content-box .inner .ic-logo img {
    width: 35px;
    height: 35px;
}
.hdc-cakes .goods-content .info-card .content-box .inner .txt-box {
    flex: 1;
}
.hdc-cakes .goods-content .info-card .content-box .inner .txt-box .heading {
    font-size: 0.25rem;
    line-height: 2.4;
    font-weight: 700;
    letter-spacing: 0.05em;
}
.hdc-cakes .goods-content .info-card .content-box .inner .txt-box .desc {
    font-size: 0.2rem;
    line-height: 1.75;
    font-weight: 400;
    letter-spacing: 0.02em;
}

.hdc-cakes .goods-content .title-box {
    text-align: center;
}

.hdc-cakes .goods-content .title-box .title {
    display: inline-block;
    position: relative;
    font-weight: 900;
    color: #3f220f;
    font-size: 0.43rem;
    line-height: 1.42;
    text-align: center;
    letter-spacing: 0.05em;
}

.hdc-cakes .goods-content .title-box .time {
    display: inline-block;
    padding: 0 10px;
    margin-top: 5px;
    background: #fff;
    font-size: 0.25rem;
    line-height: 1.5;
    font-weight: 700;
    letter-spacing: 0.04em;
}

.hdc-cakes .goods-content .title-box .title::before,
.hdc-cakes .goods-content .title-box .title::after {
    content: '';
    position: absolute;
    width: 25px;
    height: 45px;
}

.hdc-cakes .goods-content .title-box .title::before {
    bottom: 0;
    left: -40px;
    background: url('../img//goods/bg-title-left.png') no-repeat;
    background-size: contain;
}

.hdc-cakes .goods-content .title-box .title::after {
    bottom: 0;
    right: -40px;
    background: url('../img//goods/bg-title-right.png') no-repeat;
    background-size: contain;
}

.hdc-cakes .goods-content .top-content .heading .inner .img img {
    max-width: 6.4vw;
    width: 4vw !important;
}

@media(max-width: 767px) {
    .hdc-cakes .goods-content {
        padding: 30px 0;
    }
    .hdc-cakes .goods-content .gallery {
        padding-top: 20px;
    }
    .hdc-cakes .goods-content .gallery .festival {
        display: flex;
        gap: 10px;
        width: 100%;
        padding-left: 0;
        padding-top: 0.06rem;
    }
    .hdc-cakes .goods-content .gallery .img {
        flex: auto;
    }
    .hdc-cakes .goods-content .title-box {
        text-align: center;
    }
    .hdc-cakes .goods-content .title-box .title {
        font-size: 0.2rem;
    }
    .hdc-cakes .goods-content .title-box .time {
        font-size: 0.125rem;
    }
    .hdc-cakes .goods-content .title-box .title::before,
    .hdc-cakes .goods-content .title-box .title::after {
        bottom: 10px;
    }
    .hdc-cakes .goods-content .info-card .content-box .inner {
        padding: 15px;
        gap: 10px;
    }
    .hdc-cakes .goods-content .info-card.live .content-box .inner {
        padding-top: 20px;
        gap: 10px;
    }
    .hdc-cakes .goods-content .info-card .content-box .inner .brand {
        width: 100%;
    }
    .hdc-cakes .goods-content .info-card .content-box .inner .txt-box {
        flex: 1;
    }
    .hdc-cakes .goods-content .info-card .content-box .info-card .content-box {
        padding: 10px;
        margin-top: 20px;
    }
    .hdc-cakes .goods-content .info-card .content-box .info-card .content-box::before {
        inset: 10px;
    }
    .hdc-cakes .goods-content .info-card .content-box .inner .txt-box .heading {
        font-size: 0.15rem;
        text-align: center;
        margin-bottom: 13px;
    }
    .hdc-cakes .goods-content .info-card .content-box .inner .txt-box .desc {
        font-size: 0.123rem;
    }
    .hdc-cakes .goods-content .info-card .content-box .inner .logo {
        width: 1.4rem;
    }
    .hdc-cakes .goods-content .info-card .content-box .inner .ic-logo img {
        width: 0.2rem;
        height: 0.2rem;
    }
    .hdc-cakes .goods-content .info-card .content-box::before {
        inset: 5px;
    }
    .hdc-cakes .goods-content .info-card.shop .content-box::before {
        background: url('../img/goods/bg-live-content-sp.png');
        background-size: 100% 100%;
    }
    .hdc-cakes .goods-content .info-card.live .content-box::before {
        background: url('../img/goods/bg-time-content-sp.png');
        background-size: 100% 100%;
    }
    .hdc-cakes .goods-content .info-card.live .content-box .follower-badge {
        position: absolute;
        top: 38%;
        left: -27%;
        width: 1rem;
    }
    .hdc-cakes .goods-content .info-card.live .content-box .intro-badge {
        top: -5%;
        right: -10%;
        width: 1.1rem;
    }
    .hdc-cakes .goods-content .info-card.live .content-box .intro-badge .txt {
        font-size: 0.12rem;
        bottom: 27%;
        left: 3%;
    }
    .hdc-cakes .goods-content .info-card.live .content-box .intro-badge .txt .lg {
        font-size: 0.14rem;
    }
    .hdc-cakes .goods-content .info-card.shop {
        padding-top: 30px;
        padding-inline: 20px;
    }

    .hdc-cakes .goods-content .top-content .heading .inner .img img {
        max-width: 25vw !important;
        width: 8.5vw !important;
    }

    .hdc-cakes .goods-content .info-card .content-box .inner .logo {
        width: 1rem;
    }
    .hdc-cakes .goods-content .info-card .content-box .inner .ic-logo {
        justify-content: flex-end;
        /* width: 90%; */
        gap: 5px;
        padding-top: 0;
        margin-top: -25px;
    }
    .hdc-cakes .goods-content .info-card .content-box .inner .ic-logo img {
        width: 0.3rem;
        height: 0.3rem;
    }
    .hdc-cakes .goods-content .info-card.live {
        padding-inline: 20px;
    }

    .hdc-cakes .goods-content::before {
        background: url(../img/goods/bg-goods-main.png) repeat;
        background-size: 250% auto;
        background-position: top center;
    }

    .hdc-cakes .goods-content .info-card.live .content-box .inner .ic-logo {
        width: 90%;
    }
}

.hdc-cakes .charity-content {
    background: #fff9e2;
    padding-top: 150px;
    padding-bottom: 100px;
}
.hdc-cakes .charity-content .top-content .heading .inner {
    background: url(../img/bg-title-02.png) no-repeat;
    background-size: 100% 100%;
    position: relative;
    text-align: center;
    padding: 2.65vw 0.78vw 5.3083vw;
    width: 100%;
}
.hdc-cakes .charity-content .top-content .desc .available {
    bottom: -170px;
}
.hdc-cakes .charity-content .top-content .desc .available p {
    position: absolute;
    font-size: 0.22rem;
    line-height: 1.9;
    font-weight: 700;
    color: #3f220f;
    text-align: center;
    left: 0;
    right: 0;
    bottom: 17%;
    transform: rotate(10deg);
}
.hdc-cakes .charity-content .content-inner {
    margin-top: 80px;
    padding: 40px 0;
    position: relative;
}
.hdc-cakes .charity-content .content-inner::before,
.hdc-cakes .charity-content .content-inner::after {
    content: "";
    position: absolute;
    left: 150px;
    right: 150px;
    height: 0.21rem;
    background-repeat: no-repeat !important;
    background-size: 100% !important;
}
.hdc-cakes .charity-content .content-inner::before {
    background: url(../img/limited/limeted-border-top.png);
    top: 0;
}
.hdc-cakes .charity-content .content-inner::after {
    background: url(../img/limited/limeted-border-bottom.png);
    bottom: 0;
}
.hdc-cakes .charity-content .content-inner .title {
    text-align: center;
    font-size: 0.37rem;
    letter-spacing: 0.1em;
    line-height: 1.6;
    color: #3f220f;
    font-weight: 700;
    font-family: "Zen Kaku Gothic New", sans-serif;
    margin: 0 auto;
}
.hdc-cakes .charity-content .inn_ct {
    display: flex;
    flex-wrap: wrap;
    max-width: 8.25rem;
    padding-top: 0.2rem;
    margin: 0 auto;
}
.hdc-cakes .charity-content .inn_ct .cnt-frame {
    width: 100%;
    border-radius: 0.28rem;
    overflow: hidden;
}
.hdc-cakes .charity-content .inn_ct .cnt-ttl,
.hdc-cakes .charity-content .inn_ct .cnt-txt {
    margin: 0;
    background: #40230F;
    color: #FFFFFF;
    font-size: 0.3rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: -0.02em;
    text-align: center;
    padding: 0.16rem 0.24rem;
}
.hdc-cakes .charity-content .inn_ct .cnt-note {
    width: 100%;
    margin: 0.12rem 0 0;
}
.hdc-cakes .charity-content .inn_ct .cnt-img img {
    display: block;
    width: 100%;
    height: auto;
}

.hdc-cakes .charity-content .festival {
    padding-top: 40px;
    padding-bottom: 20px;
    display: flex;
    justify-content: center;
    gap: 20px;
}
.hdc-cakes .charity-content  .festival li {
    width: 2.09rem;
}
.hdc-cakes .charity-content .event-note,
.hdc-cakes .charity-content .inn_ct .cnt-note {
    font-size: 0.15rem;
    letter-spacing: 0.05em;
    line-height: 1.8;
    font-weight: 400;
}
.hdc-cakes .charity-content .event-note {
    padding-left: 25%;
}
.hdc-cakes .charity-content .event-note .tag {
    position: relative;
    width: 0.42rem;
    padding: 0;
    right: 0;
    top: 0;
    display: inline-block;
    margin: 0 0.025rem;
}
.hdc-cakes .charity-content .event-note .tag img {
    vertical-align: -3px;
}
.hdc-cakes .charity-content .btn-box {
    padding-top: 80px;
    text-align: center;
}
.hdc-cakes .charity-content .btn {
    position: relative;
    font-size: 0.25rem;
    text-decoration: unset;
    letter-spacing: 0.1em;
    display: inline-block;
    text-align: center;
    line-height: 1;
    border-radius: 50px;
    color: #fff;
    padding: 0.2rem 1.2rem;
    min-width: 1.7rem;
    transition: .3s;
    background: #EA5532;
    font-weight: 700;
    width: 6rem;
}
.hdc-cakes .charity-content .btn::after {
    content: "";
    position: absolute;
    width: 0.12rem;
    height: 0.16rem;
    background: url(../img/ar-down2.png) no-repeat;
    background-size: 100% !important;
    right: 0.4rem;
    top: 50%;
    transform: translateY(-50%);
}

@media(max-width: 767px) {
    .hdc-cakes .charity-content {
        padding: 50px 0;
    }
    .hdc-cakes .charity-content .top-content .desc .available p {
        font-size: 0.12rem;
        bottom: 14%;
    }
    .hdc-cakes .charity-content .content-inner::before,
    .hdc-cakes .charity-content .content-inner::after {
        left: 0;
        right: 0;

        content: none;
    }
    .hdc-cakes .charity-content .content-inner {
        margin-top: 20px;
        padding: 20px 5%;
    }
    .hdc-cakes .charity-content .content-inner .title {
        font-size: 0.25rem;
        letter-spacing: 0em;
        text-align: center;
        line-height: 1.3;
    }
    .hdc-cakes .charity-content .event-note,
    .hdc-cakes .charity-content .inn_ct .cnt-note {
        font-size: 0.1rem;
    }

    .hdc-cakes .charity-content .event-note {
        padding-inline: 5%;
    }

    .hdc-cakes .charity-content .inn_ct .cnt-ttl,
    .hdc-cakes .charity-content .inn_ct .cnt-txt {
        font-size: 0.18rem;
        padding-inline: 4%;
    }

    .hdc-cakes .charity-content .festival {
        padding-top: 20px;
        padding-bottom: 10px;
        gap: 10px;

        justify-content: flex-start;
    }

    .hdc-cakes .charity-content .btn-box {
        padding-top: 20px;
        text-align: center;
    }
    .hdc-cakes .charity-content .btn {
        width: 3rem;
        margin-top: .3rem;
        font-size: .15rem;
        padding: 0.125rem;
    }

    .hdc-cakes .charity-content .btn::after {
        width: 0.08rem;
        height: 0.11rem;
        right: 0.2rem;
    }

    .hdc-cakes .charity-content .inn_ct {
        padding-top: 0;
    }
}

@media(max-width: 767px) {
    .hdc-cakes .bakery-content .desc .available {
        bottom: -10px !important;
        right: -3%;
        position: relative;
    }

    .hdc-cakes .present-content .top-content .desc .available {
        width: 22vw !important;
        bottom: inherit;
        top: -35%;
        height: fit-content;
        right: -3%;
    }
    .hdc-cakes .present-content .top-content .desc .available p {
        top: 20%;
    }

    .hdc-cakes .present-content .prize-list .img-box03 {
        /* max-width: 180px !important; */
        margin: 0 auto;
    }

    .hdc-cakes .charity-content .festival {
        gap: 0;
        justify-content: flex-start;
    }
    .hdc-cakes .charity-content .festival li {
        width: .9rem;
        margin-right: 0.06rem;
        margin-bottom: 0.06rem;
    }

    .hdc-cakes .charity-content .content-inner .title {
        position: relative;
        padding: 20px 0;
        font-size: 5.9vw;
    }
    .hdc-cakes .charity-content .content-inner .title::before,
    .hdc-cakes .charity-content .content-inner .title::after {
        content: "";
        position: absolute;
        left: 0;
        right: 0;
        height: .08rem;
        background-repeat: no-repeat !important;
        background-size: 100% !important;
        width: 100%;
    }
    .hdc-cakes .charity-content .content-inner .title::before {
        top: 0;
         background: url(../img/limited/limeted-border-top-sp.png);
    }
    .hdc-cakes .charity-content .content-inner .title::after {
        bottom: 0;
         background: url(../img/limited/limeted-border-bottom-sp.png);
    }
}

/* パンくず非表示（cotripmarche2026・うつわ市LPと同様） */
.topicPath {
    display: none !important;
}
#wrapper {
    margin-top: 0;
}