@charset "utf-8";

.tFv {
    position: relative;
}

.tFv::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    background: linear-gradient(to bottom, rgba(31, 15, 15, 0.8), rgba(31, 15, 15, 0) 25%), linear-gradient(to top, rgba(31, 15, 15, 0.8), rgba(31, 15, 15, 0) 25%), rgba(31, 15, 15, 0.13);
    pointer-events: none;
    mix-blend-mode: multiply;
}

.sliderContent {
    aspect-ratio: 1/1;
    overflow: hidden;
}

.gjs-dashed .sliderContent {
    aspect-ratio: unset;
}


.sliderContent>img {
    width: 100%;
    height: 100% !important;
    object-fit: cover;
}

.tReadTit01 span {
    font-size: min(141.6%, 68px);
    letter-spacing: 0.05em;
    line-height: 1.2em;
}

.tReadImg01,
.tReadImg02 {
    filter: drop-shadow(rgba(0, 0, 0, 0.2) 0 6px 10px) !important;
}

.tConcept {
    position: relative;
}

.tConcept::before {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
    height: 81.25%;
    background: url(/system_panel/uploads/images/cmn_bg02.jpg)no-repeat top center /cover;
    clip-path: polygon(0 0, 100% 10.4167vw, 100% 100%, 0 100%);
}

.tConceptImg {
    aspect-ratio: 750/655;
    overflow: hidden;
}

.tConceptImg img {
    width: 100%;
    height: 100% !important;
    object-fit: cover;
}

.tConceptDecoTxt01 {
    font-size: clamp(80px, 41.165px + 10.356vw, 240px);
}

.tCommitmentLoopWr {
    transform: translateY(-50%);
}

.tCommitmentDecoTxt01 {
    font-size: clamp(63px, 37.029px + 6.926vw, 170px) ;
}

.tMenuBx {
    display: grid !important;
    grid-template-columns: repeat(1, 1fr);
    gap: 10px;
}

.tMenuItem {
    position: relative;
}

.tMenuItem::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    background: #55300C;
    opacity: .85;
    transition: all .3s;
    mix-blend-mode: multiply;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
}

.tMenuItem:hover::before {
    opacity: .5;
}

.tMenuItemTxt {
    transition: all .3s;
    height: 0 !important;
    opacity: 0;
    pointer-events: none;
    transform-origin: bottom;
}

.gjs-dashed .tMenuItemTxt,
.tMenuItem:hover .tMenuItemTxt {
    height: auto !important;
    opacity: 1;
    pointer-events: all;
}

@media (hover: none) or (pointer: coarse) {
    .tMenuItem .tMenuItemTxt {
        height: auto !important;
        opacity: 1;
        pointer-events: all;
    }
}

.tMenuItemArrow {
    transition: all .3s;
}

.tScene {
    position: relative;
}

.tScene::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    background: linear-gradient(to right, #55300C, rgba(85, 48, 12, 0.3));
}

.tSceneTit {
    font-size: clamp(22px, 19.568px + 0.647vw, 32px);
    line-height: 1.45;
    letter-spacing: 0.05em;
    font-weight: 600;
    font-family: var(--fontB);
}

.tShopImg {
    position: relative;
    aspect-ratio: 61/62;
}

.tShopImg::before {
    content: "";
    position: absolute;
    z-index: 1;
    inset: 0;
    background: var(--primary);
    transform: translate(-40px, 40px);
}

.tShopImg img {
    position: relative;
    z-index: 5;
    width: 100%;
    height: 100% !important;
    object-fit: cover;
}

.tLinkItem {
    position: relative;
}

.tLinkItem::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    background: #55300C;
    opacity: .55;
    transition: all .3s;
}

.tLinkItem:hover::before {
    opacity: .3;
}

.voiceItem {
    display: block;
    width: 100% !important;
    border-bottom: 1px dashed rgba(26, 22, 20, 0.4);
}

.voiceLink {
    position: relative;
    display: block;
    width: 100%;
    padding: 15px 45px 15px 0;
    transition: all .3s;
}

.voiceArrow {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    transform: translateX(-8px);
    transition: all .3s;
    width: 30px;
}

.voiceLink:hover .voiceArrow {
    transform: translate(0);
}

.voiceTxtBx {
    flex: 1;
    padding: 0 10px 0 0;
    overflow: hidden;
}

.voiceCate {
    flex: 1;
    display: inline-block;
    width: 100%;
    max-width: max-content;
    height: 27px;
    padding: 0 16px;
    color: var(--black);
    background: rgba(58, 28, 15, 0.2);
    font-size: clamp(14px, 13.52px + 0.129vw, 16px);
    font-weight: 500;
    line-height: 1.8em;
    letter-spacing: 0.05em;
    text-align: center;
    word-break: keep-all;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.voiceDate {
    color: var(--black);
    line-height: 1.45em;
    font-size: clamp(14px, 13.52px + 0.129vw, 16px);
    font-weight: 600;
    letter-spacing: 0.05em;
}

.voiceTit {
    color: var(--black);
    line-height: 1.5em;
    transition: all .3s;
}

.voiceLink:hover .voiceTit {
    color: var(--primary);
}

.voiceArrow img {
    width: 100%;
    transition: all .3s;
}

.tNewsBxR iframe{
    width: 100%;
}

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
@media screen and (min-width:768px) {

    .sliderContent {
        aspect-ratio: 192/96;
    }

    .tScene::before {
        content: "";
        position: absolute;
        inset: 0;
        z-index: 1;
        background: linear-gradient(to right, #55300C, rgba(85, 48, 12, 0));
    }

    .tSceneTit {
        font-size: clamp(26px, 20.660px + 1.424vw, 48px);
    }

    .voiceLink {
        padding: 24px 50px 24px 0;
    }

    .voiceArrow {
        width: 34.5px;
    }

    .voiceTitFl {
        margin: 20px 0 0;
    }

    .voiceCate {
        height: 30px;
        font-size: 16px;
    }

    .voiceDate {
        font-size: 16px;
    }
}

/* min-width: 768px ここまで */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
@media screen and (min-width:1024px) {

    .tReadImgBx {
        display: contents !important;
    }

    .tMenuBx {
        grid-template-columns: repeat(3, 1fr);
        gap: 0;
    }

    .tMenuItemTxt {
        font-size: clamp(14px, 7.143px + 0.67vw, 20px) !important;
    }
}

/* min-width: 1024px ここまで */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
@media screen and (min-width:1440px) {

    .tReadTxtBx {
        padding: 40px 0 140px !important;
    }

    .tConceptImg {
        top: -80px !important;
        left: 0 !important;
    }

    .tConceptBx02 {
        padding: 90px 80px 90px 15px !important;
    }

    .tMenuItemTxt {
        text-align: center !important;
    }
}

/* min-width: 1440px ここまで */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */