@charset "utf-8";


html {
    font-family: "Shippori Mincho", serif;
    font-size: 16px;
}

#wrapper {
    overflow: hidden;
    position: relative;
}

body.open {
    overflow: hidden;
}


/* ローディング ///////////////////////////////////////////////////////////////////////////////////*/
.loading {
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100;
}

.loading-inner {
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 1em;
    position: relative;
    filter: blur(0);
}

.loading-inner::before {
    content: "";
    width: 100%;
    height: 100%;
    display: block;
    background-color: #0c0c0c;
    -webkit-transition: height 0.5s linear;
    transition: height 0.5s linear;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
}

.loading-inner .loading-item {
    -webkit-filter: blur(10px);
    filter: blur(10px);
    -webkit-transition: 0.2s linear;
    transition: 0.2s linear;
    position: relative;
    z-index: 2;
}

.tan {
    width: 200px;
    height: 200px;
    position: relative;
    margin: 0 auto;
}

.tan>img {
    object-fit: contain;
    object-position: center;
    filter: invert(100%) sepia(100%) saturate(0%) hue-rotate(307deg) brightness(104%) contrast(104%);
    width: 100%;
    height: 100%;
}

.tan>img:nth-child(1) {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 60%;
    height: 60%;
}

.tan>img:nth-child(2) {
    animation: rotate 12s infinite linear;
}

@keyframes rotate {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(-360deg);
    }
}

/* ロードされたら */
.loading.loaded .loading-inner .loading-item {
    -webkit-filter: blur(0);
    filter: blur(0);
}

.loading.loaded2 .loading-inner .loading-item {
    opacity: 0;
}

.loading.loaded3 .loading-inner::before {
    height: 0;
}

.loading.loaded4 {
    width: 0;
    height: 0;
    visibility: hidden;
    opacity: 0;
    z-index: -999;
}


/* ２回目の訪問の場合 */
.loading.visited {
    width: 0;
    height: 0;
    display: none;
    visibility: hidden;
    opacity: 0;
    z-index: -999;
}

.loading.visited .loading-inner .loading-item {
    -webkit-filter: blur(0);
    filter: blur(0);
}

.loading.visited .loading-inner .loading-item {
    opacity: 0;
}

.loading.visited .loading-inner::before {
    height: 0;
}

.loading.visited.loaded4 {
    width: 0;
    height: 0;
    visibility: hidden;
    opacity: 0;
    z-index: -999;
}

[data-element-id].loading {
    width: 500px;
    height: 300px;
    margin: 50px auto;
    position: static;
    top: 100px;
    left: 100px;
    z-index: 10;
}

[data-element-id] .loading-inner .loading-item {
    -webkit-filter: unset;
    filter: unset;
}

[data-element-id] .loading-inner {
    border: 2px solid green;
}

[data-element-id] .loading-inner::after {
    content: "ローディング画面です";
    width: 100%;
    height: 20px;
    display: block;
    padding: 0.25em;
    font-size: 10px;
    color: white;
    line-height: 1;
    text-align: center;
    background-color: green;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}

.meat-anime {
    width: 200px;
    height: 100px;
    position: relative;
    margin: 0 auto;
    margin-top: 30px;
}

/* 🔥 炎背景 */
.fire {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 60%;
    background: radial-gradient(circle, rgba(255, 140, 0, 0.8) 5%, transparent 70%),
        radial-gradient(circle, rgba(255, 69, 0, 0.6) 20%, transparent 80%);
    background-repeat: repeat;
    animation: flame 1.5s infinite ease-in-out;
    z-index: 0;
    filter: blur(14px);
}

@keyframes flame {

    0%,
    100% {
        transform: scaleY(1) translateY(0) skew(-45deg);
        opacity: 0.7;
    }

    50% {
        transform: scaleY(1.2) translateY(-5px) skew(-45deg);
        opacity: 1;
    }
}

/* 🍖 焼き網 */
.grill {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 2px solid #888;
    background-image: linear-gradient(0deg, transparent calc(100% - 1px), #888 calc(100% - 1px)),
        linear-gradient(90deg, transparent calc(100% - 1px), #888 calc(100% - 1px));
    background-size: 10px 10px;
    z-index: 1;
    transform: rotate(10deg) skew(-45deg);
    border-radius: 50%;
}

/* 🥩 和牛ステーキ */
.meat {
    position: absolute;
    top: 20px;
    left: 50%;
    width: 90px;
    height: 40px;
    z-index: 2;
    transform: skew(-45deg)translateX(-50%);
}

.meat-inner {
    position: relative;
    width: 100%;
    height: 100%;
    background-image: url('/import/tenant_1/seishin1.a-bisu.jp/images/meat01.webp');
    background-size: 100% 100%;
}

.meat-inner>img {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    animation: grillMeat 2.5s forwards;
}

/* 🍃 湯気 */
.smoke {
    position: absolute;
    top: 10px;
    left: 50%;
    width: 30px;
    height: 40px;
    background: rgba(255, 255, 255, 0.4);
    border-radius: 50%;
    filter: blur(4px);
    animation: smoke 1s infinite ease-in-out;
    transform: translateX(-50%);
    z-index: 3;
}

@keyframes grillMeat {
    0% {
        opacity: 1;
    }

    30% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

@keyframes smoke {
    0% {
        opacity: 0;
        transform: translateX(-50%) translateY(0) scale(1);
    }

    25% {
        opacity: 1;
        transform: translateX(-50%) translateY(-10px) scale(1.1);
    }

    50% {
        opacity: 0.6;
        transform: translateX(-50%) translateY(-20px) scale(0.95);
    }

    100% {
        opacity: 0;
        transform: translateX(-50%) translateY(-30px) scale(1);
    }
}






.header {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    padding: 10px;
    transition: .4s;
    z-index: 6;
}

.header-inner {
    display: flex;
    width: 96%;
    flex-wrap: wrap;
    margin: 0 auto;
}

.for-h1-txt {
    display: none;
}

.h1 {
    width: 100%;
    font-size: 14px;
    color: #fff;
}

.header-left {
    width: 22%;
    max-width: 300px;
}

.header-logo {
    margin-top: 5px;
    width: 100%;
}

.header-logo a,
.header-logo img {
    display: block;
    width: 100%;
}

.header-right {
    width: 78%;
}

.nav-box {
    width: 300px;
    margin-left: auto;
    margin-right: 70px;
    transition: .4s;
}

.nav-list {
    display: flex;
    justify-content: space-between;
}

.nav-item01 {
    flex: 1;
    position: relative;
}

.nav-item01>a,
.nav-item01>.a {
    display: block;
    writing-mode: vertical-rl;
    margin: 0 auto;
    padding: 5px;
    font-feature-settings: initial;
    font-size: 18px;
    transition: .4s;
    position: relative;
    color: #fff;
}

.nav-item01>a::after,
.nav-item01>.a::after {
    content: "";
    width: 1px;
    height: 0;
    background-color: #fff;
    position: absolute;
    top: 0;
    right: 0;
    transition: .4s;
}

.nav-item01>a:hover {
    opacity: 1;
}

.nav-item01>a:hover::after,
.nav-item01>.a:hover::after {
    height: 100%;
}

.d-list {
    display: none;
    position: absolute;
    top: 0;
    right: 100%;
    background-image: url('/import/tenant_1/seishin1.a-bisu.jp/images/bg01.webp');
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
    font-size: 14px;
    padding: 15px;
    white-space: nowrap;
    z-index: 100;
    animation: fadeInSlide 0.4s ease forwards;
}

.nav-item01:hover .d-list {
    display: block;
}

.nav-item02+.nav-item02 {
    margin-top: 8px;
}

.nav-item02>a {
    display: block;
    padding: 5px 0;
    font-size: 14px;
    border-bottom: 1px solid#8f8f00;
    padding-left: 20px;
    position: relative;
    font-weight: 600;
}

.nav-item02>a::before {
    content: "";
    display: block;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background-color: #8f8f00;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}

@keyframes fadeInSlide {
    0% {
        opacity: 0;
        transform: translateX(10px);
    }

    100% {
        opacity: 1;
        transform: translateX(0);
    }
}

.scrolled#header {
    width: 100%;
    position: fixed;
    background: rgba(0, 0, 0, 0.5);
}

.scrolled .nav-box {
    width: 100%;
    padding-left: 15px;
    margin-left: auto;
    margin-right: 0px;
}

.scrolled .nav-item01>a,
.scrolled .nav-item01>.a {
    display: block;
    writing-mode: initial;
    margin: 0 auto;
    padding: 5px 0;
    text-align: center;
    font-size: 16px;
}

.scrolled .nav-item01>a::after,
.scrolled .nav-item01>.a::after {
    width: 0px;
    height: 1px;
    background-color: #fff;
    position: absolute;
    top: auto;
    right: auto;
    bottom: 0;
    left: 0;
    transition: .4s;
}

.scrolled .nav-item01>a:hover::after,
.scrolled .nav-item01>.a:hover::after {
    height: 1px;
    width: 100%;
}

.scrolled .d-list {
    min-width: 100%;
    top: calc(100% - 2px);
    right: auto;
    left: 50%;
    background-image: url('/import/tenant_1/seishin1.a-bisu.jp/images/bg01.webp');
    animation: fadeInSlide2 0.4s ease forwards;
}

@keyframes fadeInSlide2 {
    0% {
        opacity: 0;
        transform: translateX(-50%) translateY(10px);
    }

    100% {
        opacity: 1;
        transform: translateX(-50%) translateY(0px);
    }
}























.hm-btn {
    position: fixed;
    top: 0;
    right: 0;
    display: none;
    width: 60px;
    height: 60px;
    background-color: #b5483e;
    padding: 10px;
    border-radius: 0 0 0 10px;
    z-index: 5;
}

.hm-btn-inner {
    position: relative;
    height: 100%;
}

.hm-btn-inner span {
    display: block;
    background-color: #fff;
    height: 3px;
    width: 100%;
    border-radius: 3px;
    position: absolute;
    transition: .4s;
    transform: translateX(-50%);
    left: 50%;
}

.hm-btn-inner .b01 {
    top: 5px;
}

.hm-btn-inner .b02 {
    top: 50%;
    transform: translate(-50%, -50%);
}

.hm-btn-inner .b03 {
    bottom: 5px;
}

.open .hm-btn-inner .b01 {
    top: 50%;
    transform: translate(-50%, -50%) rotate(45deg);
}

.open .hm-btn-inner .b02 {
    opacity: 0;
}

.open .hm-btn-inner .b03 {
    bottom: auto;
    top: 50%;
    transform: translate(-50%, -50%) rotate(-45deg);
}

.open .h1-dummy {
    font-size: 14px;
}

.nav-add {
    font-size: 12px;
}

@media(max-width:1024px) {
    .h1 {
        display: none;
    }

    .hm-btn {
        display: block;
        z-index: 99;
    }

    .header-left {
        width: 100%;
        max-width: 100%;
    }

    .header-logo {
        margin-top: 5px;
        width: 250px;
    }

    .header-right {
        display: contents;
    }

    .nav-box {
        position: fixed;
        top: 0;
        right: -401px;
        width: 100%;
        max-width: 400px;
        margin: 0;
        height: 100vh;
        background-image: url('/import/tenant_1/seishin1.a-bisu.jp/images/bg01.webp');
        padding: 15px;
        transition: .4s;
        z-index: 90;
    }

    .open .nav-box {
        right: 0;
    }

    .nav-list {
        display: block;
        padding-bottom: 0;
        overflow-y: scroll;
        padding-bottom: 500px;
    }

    .nav-item01+.nav-item01 {
        margin-top: 10px;
    }

    .nav-item01>a,
    .nav-item01>.a {
        display: block;
        writing-mode: initial;
        margin: 0 auto;
        padding: 15px 10px;
        text-align: left;
        font-size: 18px;
        color: #000;
        padding-left: 40px;
    }

    .nav-item01>.a {
        pointer-events: none;
    }

    .nav-item01>a::before,
    .nav-item01>.a::before {
        content: "";
        display: block;
        width: 30px;
        height: 30px;
        position: absolute;
        top: 50%;
        left: 0;
        transform: translateY(-50%);
        background-image: url('/import/tenant_1/seishin1.a-bisu.jp/images/tan01.webp');
        background-size: contain;
        background-position: center;
        background-repeat: no-repeat;
    }

    .nav-item01>a::after,
    .nav-item01>.a::after {
        width: 0px;
        height: 1px;
        background-color: #000;
        position: absolute;
        top: auto;
        right: auto;
        bottom: 0;
        left: 0;
        transition: .4s;
    }

    .nav-item01>a:hover::after,
    .nav-item01>.a:hover::after {
        height: 1px;
        width: 100%;
    }

    .nav-item01>a:hover::before,
    .nav-item01>.a:hover::before {
        transform: translateY(-50%) scale(1.2) rotate(10deg);
    }

    .d-list,
    .nav-item01:hover .d-list {
        display: block;
        position: relative;
        top: 0;
        right: 0;
        left: 0;
        animation: none;
        transform: translate(0, 0);
        background-image: none;
        background-color: #fff;
        box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
        z-index: 0;
        padding: 8px 15px 15px;
    }

    .nav-item01:hover .d-list {
        display: block;
    }

    .overlay {
        display: block;
        height: 100vh;
        top: 0;
        left: 0;
        position: fixed;
        background: rgba(255, 255, 255, 0.3);
        transition: .4s;
        z-index: -1;
    }

    .open .overlay {
        width: 100vw;
        z-index: 89;
    }
}

#footer {
    position: relative;
    z-index: 5;
}


.footer-btns {
    position: relative;
    z-index: 2;
}

.btnlist {
    width: 60px;
    position: fixed;
    top: 50%;
    transform: translateY(-50%);
    right: 0;
}

.btnlist * {
    transition: .0s;
}

.ftb {
    width: 100%;
    border-radius: 10px 0 0 10px;
    overflow: hidden;
}

.ftb+.ftb {
    margin-top: 10px;
}

.ftb a {
    display: flex;
    flex-direction: row-reverse;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    padding: 20px 0;
}


.ftb .r,
.ftb .l,
.ftb .o {
    writing-mode: vertical-rl;
    color: #fff;
    letter-spacing: .1em;
}

.ftb .r {
    font-size: 18px;
    margin-left: -5px;
}

.ftb .o {
    font-size: 20px;
}

.ftb .l {
    font-size: 14px;

}

.ftb .c {
    margin-top: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1em;
    width: 40px;
    height: 40px;
    background-color: #fff;
    font-size: 22px;
    border-radius: 50%;

}

.ftb.ftb01 a {
    background-color: rgba(141, 0, 0, 0.6);
}

.ftb.ftb01 .c {
    color: #8f0000;
    padding-top: 2px;
    padding-right: 2px;
}

.ftb.ftb02 a {
    background-color: rgba(0, 141, 0, 0.6);
}

.ftb.ftb02 .c {
    color: #008f00;
    padding-top: 0px;
    padding-right: 0px;
}

.ftb.ftb03 a {
    background-color: rgba(141, 141, 0, 0.6);
}

.ftb.ftb03 .c {
    color: #8f8f00;
    padding-top: 0px;
    padding-right: 0px;
}


.scrolled .btnlist {
    width: 580px;
    top: auto;
    bottom: 0;
    right: 0;
    display: flex;
    height: 60px;
    transform: translateY(0)
}

.scrolled .ftb {
    width: auto;
    flex: 1;
    border-radius: 10px 10px 0 0px;
}

.scrolled .ftb+.ftb {
    margin-top: 0px;
}

.scrolled .ftb a {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 100%;
    padding: 0 60px 0 20px;
    position: relative;
}

.scrolled .ftb .r,
.scrolled .ftb .l,
.scrolled .ftb .o {
    display: block;
    text-align: left;
    width: 100%;
    writing-mode: horizontal-tb;
    color: #fff;
    letter-spacing: 0em;
}

.scrolled .ftb .r {
    font-size: 16px;
    margin-left: 0px;
}

.scrolled .ftb .o {
    font-size: 16px;
}

.scrolled .ftb .l {
    font-size: 12px;
}

.scrolled .ftb.tel .l {
    font-size: 16px;
}

.scrolled .ftb .c {
    margin-top: 0px;
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
}

@media(max-width:1024px) {
    .btnlist {
        width: 580px;
        top: auto;
        bottom: 0;
        right: 0;
        display: flex;
        height: 60px;
        transform: translateY(0)
    }

    .ftb {
        width: auto;
        flex: 1;
        border-radius: 10px 10px 0 0px;
    }

    .ftb+.ftb {
        margin-top: 0px;
    }

    .ftb a {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        height: 100%;
        padding: 0 60px 0 20px;
        position: relative;
    }

    .ftb .r,
    .ftb .l,
    .ftb .o {
        display: block;
        text-align: left;
        width: 100%;
        writing-mode: horizontal-tb;
        color: #fff;
        letter-spacing: 0em;
    }

    .ftb .r {
        font-size: 16px;
        margin-left: 0px;
    }

    .ftb .o {
        font-size: 16px;
    }

    .ftb .l {
        font-size: 12px;
    }

    .ftb.tel .l {
        font-size: 16px;
    }

    .ftb .c {
        margin-top: 0px;
        position: absolute;
        right: 10px;
        top: 50%;
        transform: translateY(-50%);
    }
}

@media(max-width:599px) {
    .btnlist {
        width: 100%;
        height: 60px;
    }

    .ftb a {
        padding: 38px 0 5px 0;
    }

    .ftb .r,
    .ftb .o {
        font-size: 14px;
        text-align: center;
    }

    .ftb .l {
        display: none;
    }

    .ftb .c {
        width: 30px;
        height: 30px;
        font-size: 18px;
        right: auto;
        left: 50%;
        top: 5px;
        transform: translateX(-50%);
    }

}





























.top-mv-sec {
    position: relative;
}

.mv-backimg {
    width: 100%;
    height: 800px;
    position: relative;
    background-color: #4e0000;
}

.mv-backimg>* {
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0.85;
}

.mv-backimg .filter {
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    background: radial-gradient(circle, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 100%);
    opacity: 1;
}

.mv-txts {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    z-index: 2;
    filter: drop-shadow(1px 2px 2px #000);
}

.mv-txts-main {
    font-size: 38px;
    color: #fff;
    padding-bottom: .5em;
    padding-left: .5em;
    padding-right: .5em;
    margin-bottom: .5em;
    border-bottom: 1px solid #fff;
    display: inline-block;
}

.mv-txts-main .mv-bf {
    font-size: 1.2em;
}

.mv-txts-sub {
    font-size: 20px;
    color: #fff;
    line-height: 2em;
}

@media(max-width:1024px) {
    .mv-backimg {
        height: 700px;
    }

    .mv-txts-main {
        font-size: 30px;
    }

    .mv-txts-sub {
        font-size: 18px;
    }
}

@media(max-width:1024px) {
    .mv-backimg {
        height: 600px;
    }

    .mv-txts-main {
        font-size: 19px;
        padding-left: 0em;
        padding-right: 0em;
        letter-spacing: -.08em;
    }

    .mv-txts-main .mv-bf {
        font-size: 1.5em;
    }

    .mv-txts-sub {
        font-size: 15px;
        letter-spacing: -.08em;
    }
}




section {
    position: relative;
}

.bg-01 {
    background-image: url('/import/tenant_1/seishin1.a-bisu.jp/images/bg01.webp');
    background-size: 100% auto;
    background-repeat: repeat-y;
}

.bg-01 .inner {
    position: relative;
    z-index: 1;
}

.bg-meat {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
}

.bg-meat img {
    width: 100%;
    height: 100%;
}

.deco-left {
    width: 430px;
    position: absolute;
    top: 0;
    left: 0;
    animation: frameout 20s infinite ease-in-out;
}

.deco-left img {
    width: 100%;
    height: 100%;
}

@keyframes frameout {
    0% {
        transform: translateX(0) scale(1);
    }

    50% {
        transform: translateX(-100px);
    }

    100% {
        transform: translateX(0);
    }
}

.tr-flex {
    display: flex;
    flex-direction: row-reverse;
    justify-content: center;
    position: relative
}

.tr-flex-img {
    width: 300px;
    position: absolute;
    bottom: -70px;
    right: -100px;
    filter: drop-shadow(5px 10px 10px #000) brightness(1.25);
}

.tit01 {
    font-size: 25px;
    font-weight: 600;
}

.tr-tit {
    writing-mode: vertical-rl;
    margin-left: 50px;
}

.tr-txt {
    writing-mode: vertical-rl;
    line-height: 2.5em;
    font-size: 18px;
}

.tr-btn {
    display: flex;
    align-items: flex-end;
    margin-right: 50px;
}

.tr-btn a {
    display: inline-block;
    font-size: 18px;
    writing-mode: vertical-rl;
    padding: 20px 5px;
    background-color: #b5483e;
    color: #fff;
    border-radius: 10px;
    transition: .4s;
    border: 1px solid #b5483e;
}

.tr-btn a:hover {
    opacity: 1;
    background-color: #fff;
    color: #b5483e;
    border: 1px solid #b5483e;
}

@media(max-width:1024px) {
    .tr-tit {
        margin-left: 40px;
    }

    .tr-txt {
        line-height: 2em;
        font-size: 16px;
    }

    .tr-btn {
        margin-right: 40px;
    }

    .tr-flex-img {
        width: 250px;
        position: absolute;
        bottom: -140px;
        right: -30px;
    }

    .deco-left {
        width: 230px;
        position: absolute;
    }
}

@media(max-width:599px) {
    .tr-flex {
        display: block;
    }

    .tr-tit {
        text-align: center;
    }

    .bg-meat {
        display: none;
    }

    .tr-flex-img {
        width: 250px;
        position: relative;
        bottom: 0;
        right: 0;
        display: block;
        margin: -30px auto 0 auto;
    }

    .tr-tit {
        writing-mode: horizontal-tb;
        margin-left: 0;
        margin-bottom: 40px;
    }

    .tr-txt {
        margin-top: 30px;
        line-height: 1.7em;
        writing-mode: horizontal-tb;
    }

    .tr-btn {
        margin-right: 0px;
        margin-top: 40px;
        justify-content: center;
    }

    .tr-btn a {
        font-size: 16px;
        writing-mode: horizontal-tb;
        padding: 5px 15px;
    }
}

.bg-02 {
    background-image: url('/import/tenant_1/seishin1.a-bisu.jp/images/bg02.webp');
    background-size: 100% auto;
    background-repeat: repeat-y;
}

.slide-box {
    background: rgba(255, 245, 245, 0.7);
    padding: 40px 30px;
}

.slide-box-item {
    width: 100%;
    display: block;

}

.tit02 {
    color: #4b2e1f;
    margin-bottom: 30px;
}

.tit02-inner {
    display: inline-block;
    font-size: 30px;
    padding-bottom: .2em;
    font-weight: 600;
    border-bottom: 1px solid #b5483e;
}

.slide-box-tit {
    width: 48%;
    float: right;
}

.slide-box-img {
    width: 48%;
    float: left;
}

.slide-box-txt {
    width: 48%;
    float: right;
}

.slide-box .slick-dots {
    display: flex !important;
    max-width: 300px;
    justify-content: space-between;
    align-items: center;
    margin: 30px auto 0 auto;
}

.slide-box .slick-dots li {
    position: relative;
}

.slide-box .slick-dots li button {
    border: none;
    background: none;
    color: #4b2e1f;
    font-size: 20px;
    font-weight: 600;
    transition: .4s;
}

.slide-box .slick-dots li::after {
    content: "";
    display: block;
    width: 36px;
    height: 1px;
    background-color: #4b2e1f;
    pointer-events: none;
    position: absolute;
    top: 50%;
    left: 160%;
}

.slide-box .slick-dots li:last-child::after {
    display: none;
}

.slide-box .slick-dots li button:hover {
    color: #8f0000;
    transform: scale(1.5);
    opacity: 1;
}

.slide-box .slick-dots li.slick-active button {
    color: #8f0000;
    transform: scale(1.5);
}

@media(max-width:1024px) {

    .slide-box-tit,
    .slide-box-img,
    .slide-box-txt {
        width: 100%;
        float: none;
    }

    .slide-box-txt {
        margin-top: 30px;
    }

    .tit02-inner {
        font-size: 26px;
    }
}

@media(max-width:599px) {

    .slide-box {
        padding: 30px 15px;
    }

    .tit02-inner {
        font-size: 21px;
        letter-spacing: -.05em
    }

    .tit02 {
        margin-bottom: 15px;
    }

    .slide-box-txt {
        margin-top: 15px;
    }
}





.tab-btn-set {
    display: flex;
}

.tab-btn-set .btnc {
    display: block;
    padding: 20px 30px;
    background-color: #2c2c2c;
    color: #fff;
    margin-right: 1%;
    border-radius: 20px 20px 0 0;
    cursor: pointer;
}

.tab-btn-set .btnc.active {
    background-color: #b5483e;
}





.tab-cont-set {
    width: 100%;
    display: block;
}

.tab-cont-set li {
    width: 100%;
    display: none;
}

.tab-cont-set li.active {
    display: block;
}

.tab-inner {
    display: flex;
    filter: drop-shadow(0px 0px 10px rgba(0, 0, 0, 0.3));

}

.tab-main {
    width: 55%;
    background-color: #fff;
    padding: 60px 0 60px 30px;
    display: flex;
    position: relative;
    z-index: 3;
}


.tab-title {
    writing-mode: vertical-rl;
    position: relative;
    margin-right: 30px;
    padding-left: 10px;
    font-size: 25px;
    font-weight: 600;
}

.tab-title::before {
    content: "";
    width: 1px;
    height: 90px;
    display: block;
    background-color: #b5483e;
    position: absolute;
    top: 0;
    left: 0;
}

.tab-img {
    width: 46%;
    margin-left: -1%;
    position: relative;
}

.tab-img::after {
    content: "";
    position: relative;
    display: block;
    width: 100%;
    padding-top: 99%;
}

.tab-img>img {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}

.tab-deco {
    position: absolute;
    z-index: 2;
}

.tbdc01 {
    width: 35%;
    left: 10%;
    bottom: 10%;
}

.tbdc02 {
    width: 60%;
    left: 2%;
    bottom: 25%;
}

.tbdc03 {
    width: 60%;
    left: 2%;
    bottom: 5%;
}

.tbdc04 {
    width: 50%;
    left: 2%;
    bottom: 35%;
}

.tit03 {
    font-size: 30px;
    font-weight: 600;
    margin-bottom: 50px;
    text-align: center;
}

.tit03-inner {
    display: inline-block;
    font-weight: 600;
    border-bottom: 1px solid #b5483e;
    padding-bottom: .3em;
}

.r-bg {
    width: 100%;
    position: absolute;
    top: 0;
    right: 0;
    z-index: 0;
}

.deco-right {
    width: 430px;
    position: absolute;
    top: 50%;
    right: 0;
    animation: frameout2 20s infinite ease-in-out;
}

.deco-right img {
    width: 100%;
    height: 100%;
}

@keyframes frameout2 {
    0% {
        transform: translateX(0) scale(1);
    }

    50% {
        transform: translateX(100px);
    }

    100% {
        transform: translateX(0);
    }
}

.top-bg-area>.inner1200 {
    position: relative;
    z-index: 3;
}

.r-bg img {
    width: 100%;
}

@media(Max-width:1024px) {
    .tab-inner {
        display: block;
    }

    .tab-title {
        writing-mode: horizontal-tb;
        position: relative;
        margin-right: 0;
        padding-left: 0;
        padding-bottom: 10px;
        margin-bottom: 20px;
        font-size: 20px;
    }

    .tab-title::before {
        width: 90px;
        height: 1px;
        top: 100%;
        left: 0;
    }

    .tab-main {
        width: 100%;
        background-color: #fff;
        padding: 30px 15px 0px 15px;
        display: block;
    }

    .tab-img {
        margin-top: -1px;
        width: 100%;
        margin-left: 0;
        position: relative;
        display: flex;
    }

    .tab-img::after {
        padding-top: 50%;
        width: 46%;
        background-color: #fff;
        margin-right: -1%;
    }

    .tab-img>img {
        width: 55%;
        left: auto;
        right: 0;
    }

    .tab-deco img {
        width: 100%;
        height: 100%;
        object-fit: contain;
        object-position: center;
    }

    .tbdc01,
    .tbdc02,
    .tbdc03,
    .tbdc04 {
        width: 60%;
        height: 90%;
        left: 35%;
        bottom: auto;
        top: 50%;
        transform: translate(-50%, -50%);
    }

    .deco-right {
        width: 230px;
        top: auto;
        bottom: -15%;
    }

    .tit03 {
        margin-bottom: 40px;
        font-size: 26px;
    }

    .tab-btn-set {
        flex-wrap: wrap;
    }

    .tab-btn-set .btnc {
        display: block;
        flex-grow: 1;
        padding: 10px 10px;
        margin: 5px;
        border-radius: 10px;
        text-align: center;
    }
}

@media(max-width:599px) {
    .tit03 {
        margin-bottom: 30px;
        font-size: 22px;
    }

    .tab-title {
        padding-bottom: 7px;
        margin-bottom: 15px;
        font-size: 18px;
    }

    .tab-btn-set {
        margin-bottom: 15px;
    }
}







.nb-flex {
    display: flex;
    justify-content: space-between;
}

.nb-news {
    width: 30%;
    padding: 30px 20px;
    background-color: #f3f3f1;
    border-radius: 30px 20px;
    background-image: url('/import/tenant_1/seishin1.a-bisu.jp/images/deco_circle.webp');
    background-size: 150%;
    background-position: center 50%;
    filter: drop-shadow(0px 0px 10px rgba(0, 0, 0, 0.3));
}

.nb-news-item {
    display: block;
    border-bottom: 1px solid #999;
}

.nb-news-item+.nb-news-item {
    margin-top: 20px;
}

.nb-news-item>a {
    display: flex;
    flex-wrap: wrap;
    font-family: "Noto Sans JP", sans-serif;
    align-items: center;
    padding-bottom: 15px;
    padding-right: 15px;
    position: relative;
}

.nb-news-item>a::after {
    content: "〉";
    color: #999;
    font-size: 22px;
    position: absolute;
    top: 50%;
    right: -.6em;
    transform: translateY(-50%);
}

.nb-news-tit {
    width:100%;
}

.nb-news-item .date {
    color: #999;
    margin-right: 20px;
}

.nb-news-item .newest {
    display: none;
    color: #b5483e;
    padding: 0px 10px;
    line-height: 1.2em;
    border-radius: 5px;
    border: 1px solid #b5483e;
}

.nb-news-item:first-child .newest {
    display: block;
}



.nb-blog {
    width: 65%;
}

.nb-blog-item>a {
    border-radius: 20px;
    overflow: hidden;
    display: block;
    font-family: "Noto Sans JP", sans-serif;
    background-color: #fff;
    filter: drop-shadow(0px 0px 10px rgba(0, 0, 0, 0.3));
}

.txt-blk {
    padding: 20px 15px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

.nb-blog-item .date {
    color: #999;
    margin-right: 20px;
}

.nb-blog-item .newest {
    display: none;
    color: #b5483e;
    padding: 0px 10px;
    line-height: 1.2em;
    border-radius: 5px;
    border: 1px solid #b5483e;
}

.nb-blog-item:first-child .newest {
    display: block;
}

.nb-blog-tit {
    margin-top: 10px;
    width: 100%;
}

.nb-blog-item .next {
    color: #b5483e;
    width: 100%;
    text-align: right;
    margin-top: 10px;
    font-weight: bold;
    font-size: 14px;
}

.l-btn a {
    display: inline-block;
    padding: 5px 15px;
    background-color: #b5483e;
    color: #fff;
    border-radius: 10px;
    transition: .4s;
    border: 1px solid #b5483e;
}

.lastnone>*:nth-child(4) {
    display: none;
}

.lastnone2>*:nth-child(4) {
    display: none;
}

[data-element-id].lastnone li:nth-child(4) {
    display: none;
}

[data-element-id].lastnone2 li:nth-child(4) {
    display: none;
}

@media(max-width:1024px) {
    .nb-flex {
        flex-direction: column;
    }

    .nb-news {
        width: 100%;
    }

    .nb-news-tit {
        margin-top: 0px;
        width: calc(100% - 120px)
    }

    .nb-news-item .date {
        color: #999;
        margin-right: 0;
        padding-right: 20px;
        width: 120px;
    }

    .nb-news-item .newest {
        position: absolute;
        bottom: 100%;
        left: 0;
        font-size: 12px;
    }

    .nb-news-item>a::after {
        top: -5px;
        transform: translateY(0%);
    }

    .nb-blog {
        width: 100%;
        margin-top: 30px;
    }

    .nb-blog-item .date {
        margin-right: 15px;
    }

    .nb-blog-item .newest {
        font-size: 12px;
    }

    .lastnone2>*:nth-child(4) {
        display: block;
    }
}

@media(max-width:599px) {
    .lastnone>*:nth-child(4) {
        display: block;
    }

    .nb-news {
        padding: 30px 10px 20px 10px;
    }

    .txt-blk {
        padding: 10px 8px;
    }

    .nb-blog-tit {
        margin-top: 5px;
    }

    .nb-blog-item .next {
        margin-top: 5px;
    }
}

.bgb {
    background-image: url('/import/tenant_1/seishin1.a-bisu.jp/images/bgb.webp');
    background-size: 100% auto;
    background-repeat: repeat-y;
    overflow: hidden;
}

#confetti {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 1;
}

.golden {
    background-image: linear-gradient(-90deg, #B67B03 0%, #DAAF08 45%, #ffffff 50%, #DAAF08 55%, #B67B03 100%);
    background-size: 150% 100%;
    background-clip: text;
    -webkit-background-clip: text;
    color: transparent;
    animation: shinetxt 1.5s infinite;
    font-weight: bold;
}

@keyframes shinetxt {
    0% {
        background-position: 100% 50%;
    }

    50% {
        background-position: 0% 50%;
    }

    100% {
        background-position: 100% 50%;
    }
}

.nb-award-item {
    position: relative;
    z-index: 1;
}

.nb-award-item a,
.nb-award-item .a {
    border-radius: 20px;
    overflow: hidden;
    display: block;
    background-color: #fff;
    filter: drop-shadow(0px 0px 10px rgba(0, 0, 0, 0.3));
    position: relative;
}

.nb-award-item .a {
    border: 5px solid #8f0000;
}

.nb-award-item:hover {
    z-index: 2;
}



@media(min-width:1025px) {
    .nb-award-item:hover a {
        transition: transform 1s;
        transform: rotateY(360deg) scale(1.05);
        animation: flash 1s infinite;
    }
}

@keyframes flash {

    0%,
    100% {
        /* 明るく光るよう影を重ねる */
        box-shadow: 0 0 10px #ffc, 0 0 10px #ffc, 0 0 15px #ff9, 0 0 20px #ff6, 0 0 35px #fc6, 0 0 40px #f99, 0 0 50px #ff96, 0 0 75px #ff96;
    }

    50% {
        /* 淡く光るよう影を重ねる */
        box-shadow: 0 0 5px #fff, 0 0 10px #fff, 0 0 15px #ffc, 0 0 20px #ff9;
    }
}

.nb-award-item a:hover {
    opacity: 1;
}

.nb-award-item .txt-blk {
    padding: 30px 15px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
}

.nb-award-tit {
    text-align: center;
    color: #b5483e;
    width: 100%;
    margin-bottom: 15px;
}

@media(max-width:599px) {
    #confetti {
        height: 500px
    }
}

.bgf {
    background-image: url('/import/tenant_1/seishin1.a-bisu.jp/images/bgf.webp');
    background-size: cover;
    background-repeat: no-repeat;
    overflow: hidden;
}


.bgf::after {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: rgba(0, 0, 0, 0.5);
    z-index: 1;
}

.flames-bg {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
}

#flames {
    width: 100%;
    height: 100%;
    position: relative;
}

.flame {
    position: absolute;
    bottom: 0;
    width: 160px;
    height: 160px;
    background: radial-gradient(circle at center,
            rgba(255, 255, 150, 0.8) 0%,
            rgba(255, 100, 0, 0.6) 30%,
            rgba(255, 60, 0, 0.4) 60%,
            rgba(0, 0, 0, 0) 100%);
    filter: blur(60px);
    mix-blend-mode: screen;
    border-radius: 50%;
    animation: flameUp 3s linear infinite;
    opacity: 0;
}

@keyframes flameUp {
    0% {
        transform: translateY(0) translateX(0) scale(0.8);
        opacity: 0;
    }

    15% {
        opacity: 0.9;
    }

    50% {
        transform: translateY(-400px) translateX(-10px) scale(1.2);
        opacity: 0.6;
    }

    85% {
        transform: translateY(-700px) translateX(15px) scale(1.4);
        opacity: 0.3;
    }

    100% {
        transform: translateY(-800px) translateX(0) scale(1.5);
        opacity: 0;
    }
}

.tit04 {
    font-size: 30px;
    font-weight: 600;
    margin-bottom: 50px;
    text-align: left;
}

.tit04-inner {
    display: inline-block;
    font-weight: 600;
    padding-bottom: .3em;
    position: relative;
}

.tit04-inner::after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    right: 0;
    width: 1000px;
    height: 1px;
    background-color: #b5483e;
}

.witi .tit04-inner::after {
    height: 100%;
    background: linear-gradient(90deg, #ffffff 80%, transparent);
    z-index: 0;
}

.witi .tit04-inner>span {
    position: relative;
    z-index: 1;
}

.boss {
    max-width: 500px;
    width: 40vw;
    position: absolute;
    bottom: -91px;
    right: 0%;
}

.gr-txt {
    max-width: 60%;
}

.boss img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center bottom;
}

.nametag {
    background: rgba(255, 255, 255, 0.7);
    padding: 10px 0 10px 10px;
    width: 600px;
    position: absolute;
    bottom: -30px;
    left: calc(100% - 300px)
}

.nametag .r01 {
    font-size: 12px;
    font-weight: 600;
}

.nametag .r02 {
    font-size: 16px;
    font-weight: 600;
}

.nametag .r02 span {
    display: inline-block;
    font-size: 24px;
    font-weight: bold;
    margin-left: 20px;
    margin-top: -10px;
}

.nametag .r03 {
    font-size: 12px;
    font-weight: 600;
}

@media(max-width:1024px) {
    .gr-txt {
        max-width: 100%;
        padding-bottom: 430px;
    }

    .boss {
        width: 400px;
        position: absolute;
        bottom: -61px;
        right: 0%;
    }

    .tit04 {
        font-size: 26px;
        margin-bottom: 40px;
    }
}

@media(max-width:1024px) {
    .gr-txt {
        padding-bottom: 260px;
    }

    .boss {
        width: 300px;
        position: absolute;
        bottom: -100px;
        right: 10%;
    }

    .tit04 {
        font-size: 22px;
        margin-bottom: 30px;
    }
}

.trv-area{
  width: 12.5%;
  margin-bottom: 0px;
  display:flex;
  justify-content: center;
}

.tit02.trv {
  height:350px !important;
  text-align: center;
}

.tit02.trv .tit02-inner {
    padding-bottom: 0;
    padding-right: .2em;
    border-bottom: none;
    border-right: 1px solid #b5483e;
    writing-mode: vertical-rl;
}

.sld-flex {
    display: flex;
    justify-content: space-between;
}

.gl-slide .slick-dots {
    display: flex !important;
    justify-content: center;
    align-items: center;
    margin-top: 15px;
    padding: 0;
    list-style: none;
    position: relative;
}





.trv-slide{
  height:100%!important;
}


/* 各ドット */
.gl-slide .slick-dots li {
    margin: 0 20px;
}

/* ドットの見た目（ボタン） */
.gl-slide .slick-dots button {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    border: none;
    background-color: #ccc;
    text-indent: -9999px;
    overflow: hidden;
    cursor: pointer;
    padding: 0;
    transition: background-color 0.3s ease;
}

/* アクティブなドット */
.gl-slide .slick-dots .slick-active button {
    background-color: #b5483e;
}


@media(max-width:599px) {}





.bnrs {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

.bnr {
    width: 50%;
    background-color: #000;
}

.bnr a {
    display: block;
    width: 100%;
    padding: 120px 0;
    position: relative;
    text-align: center;
}

.bnr a img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    opacity: 0.5;
    transition: .4s;
}

.bnr-tit {
    position: relative;
    z-index: 1;
    display: inline-block;
    color: #fff;
    font-size: 22px;
    padding: 5px 30px;
    border: 1px solid #fff;
    border-radius: 10px;
    transition: .4s;
}

.bnr-tit>span {
    display: inline-block;
    position: relative;
}

.bnr-tit>span::after {
    content: "〉";
    font-weight: bold;
    color: #fff;
    font-size: 22px;
    position: absolute;
    top: 50%;
    right: -30px;
    transform: translateY(-50%);
    transition: .4s;
}

.bnr a:hover {
    opacity: 1;
}

.bnr a:hover img {
    opacity: 1;
}

.bnr a:hover .bnr-tit {
    background-color: #fff;
    color: #000;
    transform: scale(1.1)
}

.bnr a:hover .bnr-tit>span::after {
    color: #000;
}

@media(max-width:1024px) {
    .bnr-tit {
        font-size: 18px;
    }
}

@media(max-width:599px) {
    .bnr {
        width: 100%;
    }

    .bnr a {
        padding: 60px 0;
    }
}





.ftr-col {
    padding-bottom: 30px;
    border-bottom: 1px solid #fff;
}

.footer-logo {
    width: 250px;
    margin-bottom: 30px;
}

.ftr-btn {
    width: 250px;
}

.ftr-btn+.ftr-btn {
    margin-top: 15px;
}

.ftr-btn>a {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    padding: 5px 20px;
    color: #fff;
    border-radius: 20px;
}

.ftr-btn.tel>a {
    background-color: #b5483e;
}

.ftr-btn.tel>a i {
    padding-top: 3px;
    padding-right: 2px;
    color: #b5483e;
}

.ftr-btn.cont>a {
    background-color: #8f8f00;
}

.ftr-btn.cont>a i {
    color: #8f8f00;
}

.ftr-btn .c {
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1em;
    width: 30px;
    height: 30px;
    background-color: #fff;
    font-size: 18px;
    border-radius: 50%;
    margin-right: 10px;
}

.mapbox {
    position: relative;
}

.mapbox::after {
    content: "";
    width: 100%;
    padding-top: 50%;
    display: block;
}

.mapbox.mk2::after {
    padding-top: 129%;
}

.mapbox iframe {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}

.wf img {
    filter: invert(100%);
}

@media(max-width:1024px) {
    .ftr-left {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }
}

@media(max-width:599px) {
    .ftr-left {
        justify-content: center;
    }

    .ftr-nav>ul {
        display: contents;
    }

    .ftr-nav-item {
        width: 50%;
    }


}







.under-mv-sec .mv-backimg {
    width: 100%;
    height: 400px;
    position: relative;
    background-color: #000;
}

.under-mv-sec .mv-txts {
    top: auto;
    left: 50%;
    transform: translateX(-50%);
    bottom: 60px;
}

.mv-backimg .filter-mk2 {
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    background: radial-gradient(rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 100%);
    opacity: 1;
}

@media(Max-width:1024px) {
    .under-mv-sec .mv-txts {
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        bottom: auto;
    }

    .under-mv-sec .mv-backimg {
        height: 300px;
    }
}

/* パンくずリスト */
.bread-area {
    width: 100%;
    position: absolute;
    left: 0;
    bottom: 0;
}

.breadcrumbs-list li+li:before {
    content: ">";
    display: inline;
    margin: 0 0.5em;
}

.breadcrumbs-list li {
    display: inline;
    line-height: 1.2;
    font-size: 14px;
    font-weight: bold;
    color: #fff;
}








/* ------------------------------
 cc
------------------------------ */

.cc01 .titlebox {
    min-width: 500px;
    display: inline-block;
    padding: 3em 1.5em 1.5em 0;
    position: relative;
}

.cc01 .titlebox:before {
    content: "";
    width: 100vw;
    height: calc(100% + 3em);
    background-color: rgba(0, 0, 0, .1);
    position: absolute;
    top: 0;
    right: 0;
    z-index: -1;
}

.cc01box {
    padding: 2em 2em 2em 2em;
    background-color: rgba(0, 0, 0, .1);
    position: relative;
}

.cc01box:before {
    content: "";
    width: 100vw;
    height: 100%;
    background-color: rgba(0, 0, 0, .1);
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}

.cc01box .tbox {
    margin-top: 6em;
}

.cc02box .pbox .vw-right {
    padding-right: 10%;
    margin-top: -60px;
}

.cc02box .tbox .cmntit01.mv:after {
    width: 125%;
}

.cc02box .tbox .textbox {

    padding: 3em 0 4em;
    position: relative;
}

.mk2 .cc02box .tbox .textbox {
    padding: 0;
}

.KsoShinryuSou {
    font-family: "shinryu",
        sans-serif;
    font-weight: 400;
    font-style: normal;
}

.cc02box .tbox .textbox:after {
    content: "";
    width: 105vw;
    height: 100%;
    background-color: #fdf5e2;
    position: absolute;
    top: 0;
    right: -50%;
    z-index: -1;
}

.mk2 .cc02box .tbox .textbox:after {
    display: none
}

.cc-info li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding-bottom: 1em;
    margin-bottom: 1em;
    border-bottom: 1px solid rgba(0, 0, 0, .1);
}

.cc-dt {
    letter-spacing: 0;
    width: 120px;
}

.cc-dd {
    letter-spacing: 0;
    width: calc(100% - 120px);
    padding-left: 10px;
}

.cc01list .cc01box {
    margin-top: 40px;
}

.cc01list .cc01box:first-child {
    margin-top: 0px;
}

@media (max-width: 1024px) {

    .cc-dt {
        width: 100%;
    }

    .cc-dd {
        width: 100%;
        padding-left: 0px;
    }

    .cc01list .cc01box {
        margin-top: 30px;
    }

    .cc02 .titlebox {
        min-width: inherit;
        display: block;
        padding: 0em 0em 1em 0em;
    }

    .cc01box {
        padding: 1em 1em 1em;
    }

    .cc01box .tbox {
        margin-top: 1em;
    }

    .cc02box .pbox .vw-right {
        padding-right: 0;
        margin-top: 0;
        position: relative;
        width: 100%;
    }

    .cc02box .tbox .textbox {
        padding: 1em 0 1em;
    }

    .cc02box .tbox .textbox:after {
        top: -60px;
    }
}




.gallery {
    margin: 0 0 5px 0;
}

.gallery li {
    list-style: none;
}

/*矢印の設定*/

/*戻る、次へ矢印の位置*/
.gallery .slick-prev,
.gallery .slick-next {
    position: absolute;
    /*絶対配置にする*/
    z-index: 3;
    top: 42%;
    cursor: pointer;
    /*マウスカーソルを指マークに*/
    outline: none;
    /*クリックをしたら出てくる枠線を消す*/
    border-top: 3px solid #ccc;
    /*矢印の色*/
    border-right: 3px solid #ccc;
    /*矢印の色*/
    height: 25px;
    width: 25px;
}

.gallery .slick-prev {
    /*戻る矢印の位置と形状*/
    left: 2.5%;
    transform: rotate(-135deg);
}

.gallery .slick-next {
    /*次へ矢印の位置と形状*/
    right: 2.5%;
    transform: rotate(45deg);
}

/*選択するサムネイル画像の設定*/

.choice-btn li {
    cursor: pointer;
    outline: none;
    background: #333;
    list-style: none;
}

.choice-btn li img {
    opacity: 0.4;
    transition: 0.4s;
}

/* 選択中の画像は不透明（強調） */
.choice-btn .slick-current li img {
    opacity: 1 !important;
}

.choice-btn .slick-prev,
.choice-btn .slick-next {
    position: absolute;
    z-index: 2;
    top: 42%;
    width: 20px;
    height: 20px;
    cursor: pointer;
    border-top: 3px solid #ccc;
    border-right: 3px solid #ccc;
}

.choice-btn .slick-prev {
    left: -10px;
    /* スライダーの外側に出す場合は負の値に */
    transform: rotate(-135deg);
}

.choice-btn .slick-next {
    right: -10px;
    transform: rotate(45deg);
}

.ss .box {
    background-color: #fff;
}

.ss .box::after {
    content: "";
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: -webkit-gradient(linear, left top, right top, from(rgba(255, 255, 255, 0)), color-stop(35%, #fff), color-stop(40%, #fff));
    background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, #fff 35%, #fff 40%);
    z-index: 2;
}

.ss .box .tl-img {
    width: 40%;
    z-index: 1;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

.ss .box .tl-img img {
    -o-object-position: right center;
    object-position: right center;
    object-fit: cover;
    width: 100%;
    height: 100%;
}

.ssbox {
    position: relative;
    z-index: 3;
    padding: 3em 3em 3em 40%;
}

.info-list li {
    display: flex;
    border-bottom: 1px solid #b5483e;
    padding-bottom: 10px;
}

.info-list li+li {
    margin-top: 15px;
}

.info-title {
    width: 120px;
    font-weight: bold;
    color: #4e0000;
    letter-spacing: -.05em;
}

.info-data {
    width: calc(100% - 120px);

}

.mini-bnr {
    position: relative;
    max-width: 400px;
    margin-left: auto;
    margin-right: auto;
}

.mini-bnr>a {
    display: block;
    position: relative;
    width: 100%;
    border: 2px solid #b5483e;
    border-radius: 10px;
    overflow: hidden;
    filter: drop-shadow(0px 0px 5px #555);
}

.mini-bnr>a::after {
    content: "";
    width: 100%;
    height: 100%;
    background-image: linear-gradient(-90deg, #ffffff 55%, transparent);
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 1
}

.mini-bnr img {
    position: absolute;
    top: 0;
    left: 0;
    width: 50%;
    height: 100%;
    object-fit: cover;
}

.mini-bnr-title {
    width: 50%;
    padding: 60px 0;
    margin: 0 0 0 auto;
    text-align: center;
    font-size: 24px;
    position: relative;
    z-index: 2;
}

@media(max-width:1024px) {
    .choice-btn .slick-prev {
        left: 10px;
    }

    .choice-btn .slick-next {
        right: 10px;
    }

    .mini-bnr-title {
        padding: 50px 0;
        font-size: 22px;
    }
}

@media (max-width: 599px) {

    .ss .box .tl-img {
        width: 100%;
        height: 300px;
    }

    .ssbox {
        padding: 300px 1em 2em 1em;
    }

    .ss .box::after {
        background: linear-gradient(rgba(255, 255, 255, 0) 100px, #fff 280px, #fff 300px);
    }

    .ssbox .tbox {
        width: 100%;
    }

    .KsoShinryuSou {
        letter-spacing: -.05em;
    }

    .info-data {
        font-size: 14px;
    }

    .mini-bnr-title {
        padding: 40px 0;
        font-size: 22px;
    }

}

































.p2-deco {
    width: 80%;
    max-width: 500px;
    position: absolute;
    bottom: 0;
    right: 0;
}

.p2mk-deco {
    width: 80%;
    max-width: 700px;
    position: absolute;
    bottom: 0;
    right: 0;
}

@media(Max-width:1024px) {
    .p2-deco,
    .p2mk-deco{
        opacity: 0.5;
    }
}

.cp_timeline01 {
    position: relative;
    width: 100%;
    list-style-type: none;
}

.cp_timeline01:before {
    position: absolute;
    left: 50%;
    top: 0;
    content: '';
    display: block;
    width: 6px;
    height: 100%;
    margin-left: -3px;
    background: linear-gradient(to bottom,
            transparent 0px,
            #999 60px,
            #999 calc(100% - 60px),
            transparent 100%);
}

.cp_timeline01 li {
    position: relative;
}

.cp_timeline01 li:nth-child(odd)>img {
    width: calc(50% - 30px);
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    height: 60%;
    object-position: center;
    object-fit: cover;
    filter: drop-shadow(0px 0px 5px #555);
    border: 5px solid #fff;
}

.cp_timeline01 li:nth-child(even)>img {
    width: calc(50% - 30px);
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    height: 60%;
    object-position: center;
    object-fit: cover;
    filter: drop-shadow(0px 0px 5px #555);
    border: 5px solid #fff;
}


.cp_timeline01 li:after {
    content: '';
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}

.cp_timeline01 li:nth-child(odd) .timeline_item {
    position: relative;
    width: calc(50% - 30px);
    float: left;
    text-align: right;
}

.cp_timeline01 li:nth-child(even) .timeline_item {
    position: relative;
    width: calc(50% - 30px);
    float: right;
}

.cp_timeline01 li .timeline_item .flag_cont {
    position: relative;
    display: inline-block;
    text-align: center;
}

.cp_timeline01 li .timeline_item .flag {
    position: relative;
    display: inline;
    background: #4e0000;
    color: #ffffff;
    padding: 10px 15px;
    border-radius: 5px;
    font-weight: bold;
    text-align: left;
    font-size: 20px;
}

.cp_timeline01 li:nth-child(odd) .timeline_item .flag_cont:before,
.cp_timeline01 li:nth-child(even) .timeline_item .flag_cont:before {
    position: absolute;
    top: 14px;
    right: -39px;
    content: ' ';
    display: block;
    width: 12px;
    height: 12px;
    margin-top: -10px;
    padding: 4px;
    background: #b5483e;
    border-radius: 50%;
    border: 6px solid #4e0000;
    z-index: 10;
}

.cp_timeline01 li:nth-child(even) .timeline_item .flag_cont:before {
    left: -39px;
}

.cp_timeline01 li:nth-child(odd) .timeline_item .flag_cont:after,
.cp_timeline01 li:nth-child(even) .timeline_item .flag_cont:after {
    position: absolute;
    top: 16px;
    right: -37px;
    content: ' ';
    display: block;
    width: 16px;
    height: 16px;
    margin-top: -10px;
    border-radius: 10px;
    border: 2px solid rgba(255, 255, 255, 1);
    z-index: 10;
}

.cp_timeline01 li:nth-child(even) .timeline_item .flag_cont:after {
    left: -37px;
}

.cp_timeline01 li:nth-child(odd) .timeline_item .flag:after {
    content: '';
    position: absolute;
    left: 100%;
    top: 50%;
    height: 0;
    width: 0;
    margin-top: -6px;
    border: solid transparent;
    border-left-color: #4e0000;
    border-width: 6px;
}

.cp_timeline01 li:nth-child(even) .timeline_item .flag:after {
    content: '';
    position: absolute;
    right: 100%;
    top: 50%;
    height: 0;
    width: 0;
    margin-top: -6px;
    border: solid transparent;
    border-right-color: #4e0000;
    border-width: 6px;
}

.cp_timeline01 li .timeline_item .desc {
    margin: 2em 0 0 0;
    line-height: 1.5em;
    padding: 1.5em;
    background: rgba(255, 255, 252, 0.7);
    text-align: left;
    border-radius: 10px;
}

@media only screen and (max-width:1024px) {
    .cp_timeline01 li {
        padding: 2em 0;
    }

    .cp_timeline01 li:nth-child(odd) .timeline_item,
    .cp_timeline01 li:nth-child(even) .timeline_item {
        float: none;
        width: 100%;
        text-align: center;
    }

    .cp_timeline01 li .timeline_item .flag_cont {
        text-align: center;
    }

    .cp_timeline01 li .timeline_item .flag {
        z-index: 15;
    }

    .cp_timeline01 li:nth-child(odd) .timeline_item .flag_cont:before,
    .cp_timeline01 li:nth-child(even) .timeline_item .flag_cont:before {
        top: -34px;
        left: calc(50% - 10px);
    }

    .cp_timeline01 li:nth-child(odd) .timeline_item .flag_cont:after,
    .cp_timeline01 li:nth-child(even) .timeline_item .flag_cont:after {
        top: -32px;
        left: calc(50% - 8px);
    }

    .cp_timeline01 li:nth-child(odd) .timeline_item .flag:after,
    .cp_timeline01 li:nth-child(even) .timeline_item .flag:after {
        content: '';
        position: absolute;
        left: 50%;
        top: -6px;
        height: 0;
        width: 0;
        margin-left: -6px;
        border: solid transparent;
        border-bottom-color: #4e0000;
        border-width: 6px;
        pointer-events: none;
    }

    .cp_timeline01 li .flag_cont {
        display: block;
        position: relative;
        margin: 4px 0 0 0;
        z-index: 14;
    }

    .cp_timeline01 li:nth-child(odd) .timeline_item .time,
    .cp_timeline01 li:nth-child(even) .timeline_item .time {
        float: none;
        text-align: center;
        background: #ffffff;
    }

    .cp_timeline01 li .timeline_item .desc {
        position: relative;
        z-index: 15;
    }

    .cp_timeline01 li:nth-child(odd)>img,
    .cp_timeline01 li:nth-child(even)>img {
        width: 90%;
        position: relative;
        right: 0;
        top: 0;
        left: 0;
        transform: translateY(0);
        height: 400px;
        display: block;
        margin: 0 auto 60px auto;
        z-index: 6;
    }
}

@media(max-width:599px) {
    .cp_timeline01 li {
        padding: 0;
    }

    .cp_timeline01 li+li {
        padding-top: 60px;
    }

    .cp_timeline01 li:nth-child(odd)>img,
    .cp_timeline01 li:nth-child(even)>img {
        height: 200px;
        margin: 0 auto 60px auto;
    }

    .cp_timeline01 li .timeline_item .flag {
        padding: 8px 10px;
        font-size: 18px;
    }

    .cp_timeline01 li .timeline_item .desc {
        padding: 10px;
    }
}




.page-box {
    width: 960px;
    display: flex;
    height: 600px;
    position: relative;
}

.page {
    width: 50%;
    height: 100%;
    background-color: #fff;
    position: relative;
    z-index: 2;
    border: 1px solid #888;
    border-collapse: collapse;
}

.pages {
    background-color: #fff;
    border: 1px solid #888;
    border-collapse: collapse;
    width: 100%;
}

.page-inner {
    width: 100%;
    height: 100%;
    padding: 20px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.pages>*,
.page>* {
    width: 100%;
}

.p-title {
    padding-bottom: .2em;
    border-bottom: 1px solid #b5483e;
}

.book-cont {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 3;
}

#flipbook {
    position: relative;
    width: 100%;
    height: 100%;
}



.page-box::before {
    content: "";
    position: absolute;
    width: calc(100% + 16px);
    height: calc(100% + 20px);
    background-color: #5a2d18;
    filter: drop-shadow(0px 0px 5px #555);
    top: 8px;
    left: -8px;
    z-index: 1;
}

.page-box::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    background-image: linear-gradient(0deg, #fff 25%, #888 25%, #888 50%, #fff 50%, #fff 75%, #888 75%, #888 100%);
    background-size: 4px 4px;
    top: 20px;
    left: 0px;
    z-index: 1;
}

.page-arrow {
    margin-top: 60px;
    font-size: 60px;
    color: #b5483e;
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 300px;
}

.tape {
    display: block;
    background-image: url('/import/tenant_1/seishin1.a-bisu.jp/images/tape.webp');
    width: 60px;
    height: 20px;
    background-size: 100% 100%;
    display: block;
    position: absolute;
    left: -20px;
    top: 0px;
    z-index: 2;
    transform: rotate(-35deg);
    -webkit-transform: rotate(-35deg);
    -moz-transform: rotate(-35deg);
}

@media(max-width:1024px) {

    .page-box,
    .book-cont,
    #flipbook {
        display: contents;
        position: relative;
    }

    .page-box::before,
    .page-box::after {
        display: none;
    }

    .page-box {
        width: 100%;
    }

    .page {
        filter: drop-shadow(0px 0px 5px #555);
    }


    .pages {
        filter: drop-shadow(0px 0px 5px #555);
    }

    .page.p01,
    .pages.p03,
    .pages.p05 {
        position: relative;
        width: 35%;
        margin-top: -30px;
        margin-right: -15px;
        z-index: 3;
    }

    .page.p01 .page-inner,
    .pages.p03 .page-inner,
    .pages.p05 .page-inner {
        padding: 5px;
    }

    .pages.p02,
    .pages.p04,
    .page.p06 {
        width: calc(65% + 15px);
        margin-bottom: 60px;
    }

    .page.p06 {
        margin-bottom: 0;
    }

    .page-arrow {
        display: none;
    }
}

@media(max-width:599px) {

    .page.p01,
    .pages.p03,
    .pages.p05 {
        width: 70%;
        margin-right: -65%;
    }

    .pages.p02,
    .pages.p04,
    .page.p06 {
        width: 95%;
        margin-bottom: 60px;
        padding-top: 38%;
    }

    .pages.p02 .page-inner,
    .pages.p04 .page-inner,
    .page.p06 .page-inner {
        padding: 10px;
    }
}





.cut04box {
    position: relative;
}

.cut04box:before {
    content: "";
    width: 100vw;
    height: 100%;
    background-image: linear-gradient(90deg, #ffffff calc(100% - 150px), transparent);
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    position: absolute;
    top: 50%;
    left: 50%;
}

.cut04box.typeR:before {
    background-image: linear-gradient(-90deg, #ffffff calc(100% - 150px), transparent);
}

.mk2c .cut04box:before {
    background-image: linear-gradient(90deg, beige calc(100% - 150px), transparent);
}

.mk2c .cut04box.typeR:before {
    background-image: linear-gradient(-90deg, beige calc(100% - 150px), transparent);
}


.cut04box.mk2:before {
    display: none;
}

.cut04box .pbox {
    margin: 0;
    z-index: 1;
}

.cut04box .tbox {
    margin: 0;
    z-index: 2;
}

.vw-left {
    width: 50vw;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
}

.vw-right {
    width: 50vw;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

.vw-left img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
}

.vw-right img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center;
}

.mini-title {
    position: relative;
    padding-left: 30px;
    margin-left: 10px;
    color: #8f0000;
    font-size: 14px;
}

.mini-title::before {
    content: "";
    width: 27px;
    height: 1px;
    display: block;
    background-color: #8f0000;
    position: absolute;
    top: calc(50% - .5px);
    left: 0;
}

.up-c-white .mini-title {
    color: #fff;
}

.up-c-white .mini-title::before {
    background-color: #fff;
}

.minitr {
    position: relative;
    padding-top: 30px;
    color: #8f0000;
    font-size: 14px;
    display: block;
}

.minitr::before {
    content: "";
    height: 27px;
    width: 1px;
    display: block;
    background-color: #8f0000;
    position: absolute;
    top: 0;
    left: calc(50% - .5px);
}

.tr-flex+.tr-flex {
    margin-top: 40px;
    padding-top: 40px;
    border-top: 2px solid #888;
}

@media(max-width:1024px) {
    .minitr {
        margin-right: -.5em;
    }

}

@media (max-width: 599px) {
    .vw-left {
        width: 100%;
        height: auto;
        position: relative;
    }

    .vw-right {
        width: 100%;
        height: auto;
        position: relative;
    }

    .cut04box:before {
        width: 100%;
    }

    .cut04box:before,
    .cut04box.typeR:before {
        background: #fff;
    }

    .mk2c .cut04box:before {
        background: #fdf5e2;
    }

    .mk2c .cut04box.typeR:before {
        background: #fdf5e2;
    }

    .cut04box {
        padding-left: 10px;
        padding-right: 10px;
    }

    .cut04box+.cut04box {
        margin-top: 20px;
    }


}

/*layout-col05*/
.layout-col05 .item {
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: start;
    align-items: flex-start;
    -ms-flex-align: start;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 30px;
    background: #fdf5e2;
}

.baseb.layout-col05 .item {
    background: rgba(255, 255, 255, 0.3);
}

.layout-col05 .left {
    width: 28%;
}

.layout-col05 .right {
    width: 70%;
}

.baseb.layout-col05 .left {
    width: 20%;
}

.baseb.layout-col05 .right {
    width: 75%;
}

.layout-col05 .pic {
    overflow: hidden;
    border-radius: 50%;
}

.layout-col05 .tit {
    margin-bottom: 10px;
    padding: 3px 0 5px 10px;
    font-weight: 600;
    font-size: 18px;
    line-height: 1.6;
    border-left: 5px solid #8f0000;
}

.layout-col05 .listtxt {
    margin-top: 10px;
    text-align: center;
}

.layout-col05-list li {
    position: relative;
}

.mini-boss {
    position: absolute;
    bottom: 99%;
    right: 5%;
    width: 200px;
}

.layout-col05-list>li+li {
    margin-top: 30px;
}

@media(Max-width:1024px) {
    .baseb.layout-col05 .left {
        width: 28%;
    }

    .baseb.layout-col05 .right {
        width: 70%;
    }
}

@media (max-width: 599px) {
    .layout-col05 .item {
        padding: 20px 10px 30px;
        overflow: hidden;
        position: relative;
    }

    .layout-col05 .left {
        width: 80%;
        position: absolute;
        bottom: -50px;
        right: -50px;
        opacity: 0.5;
    }

    .layout-col05 .right {
        width: 100%;
        position: relative;
        z-index: 1;
    }

    .layout-col05 .tit {
        width: 100%;
        margin-bottom: 20px;
    }

    .baseb.layout-col05 .left {
        width: 100%;
    }

    .baseb.layout-col05 .right {
        width: 100%;
    }

    .layout-col05 .txt {
        text-shadow: 1px 1px 0 beige,
            -1px -1px 0 beige,
            -1px 1px 0 beige,
            1px -1px 0 #fdf5e2;
    }

    .baseb.layout-col05 .txt {
        text-shadow: 1px 1px 0 #636363,
            -1px -1px 0 #636363,
            -1px 1px 0 #636363,
            1px -1px 0 #636363;
    }

    .mini-boss {
        position: absolute;
        bottom: 99%;
        right: 0%;
        width: 130px;
    }

    .minitr {
        position: relative;
        padding-top: 0;
        padding-right: 0;
        display: inline-block;
        padding-left: 30px;
        margin-left: 0px;
        margin-top: -1em;
        color: #8f0000;
        font-size: 14px;
        line-height: 15px;
    }

    .minitr::before {
        content: "";
        width: 27px;
        height: 1px;
        display: block;
        background-color: #8f0000;
        position: absolute;
        top: calc(50% - .5px);
        left: 0;
    }
}

.radi20 {
    border-radius: 20px;
    overflow: hidden;
}

.pl-item+.pl-item {
    margin-top: 25px;
    padding-top: 25px;
    border-top: 1px solid #fff;
}


/* ------------------------------
 care
------------------------------ */

.care03item {
    margin-top: 20px;
}


.care03item .pbox {
    -webkit-transform: translate(0, -60px);
    transform: translate(0, -60px);
}

.care03item .pbox.mk2 {
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
}

.care03item .tbox .cmntit01.mv:after {
    width: 125%;
}

.care03item .tbox .textbox {

    padding: 3em 0 3em;
    position: relative;
}

.care03item .tbox .textbox:after {
    content: "";
    width: 105vw;
    height: 100%;
    background-color: #fdf5e2;
    position: absolute;
    top: 0;
    right: -50%;
    z-index: -1;
}

.care03item .subtit {
    padding-left: 1.5em;
    position: relative;
}

.care03item .subtit::before {
    content: "";
    display: block;
    width: 30px;
    height: 30px;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    background-image: url('/import/tenant_1/seishin1.a-bisu.jp/images/tan01.webp');
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
}

.textion-list {
    display: block;
}

.textion-list li {
    padding-left: 1rem;
    font-weight: bold;
    position: relative;
    margin-bottom: 10px;
}

.textion-list.lil li {
    margin-top: 0;
    margin-bottom: 0px;
}

.textion-list li:last-child,
.textion-list.lil li:last-child {
    margin-bottom: 0px;
}

.textion-list li::before {
    content: "";
    display: inline-block;
    width: 10px;
    height: 10px;
    background-color: #b5483e;
    border-radius: 50%;
    position: absolute;
    top: 6px;
    left: 0;
}

.textion-list.mk2 li::before {
    top: 9px;
    left: 0;
}

.textion-list.lil li::before {
    top: 11px;
    left: 0;
}

.textion-list li>span {
    display: block;
    font-size: 1.1em;
    text-decoration: underline;
    text-decoration-color: #4e0000;
    text-decoration-thickness: 2px;
    line-height: 2em;
    font-weight: bold;
}


@media (max-width: 599px) {
    .care03item {
        margin-top: 0;
    }

    .care03item .tbox .cmntit01.mv:after {
        width: 100%;
    }

    .care03item .pbox {
        -webkit-transform: none;
        transform: none;
    }

    .care03item .tbox .textbox {
        padding: 1em 0 1em;
        position: relative;
    }

    .care03item .tbox .textbox:after {
        right: -5%;
    }


}


.box-wide {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.box-wide-cont {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.box-wide-cont .block {
    padding: 30px 50px;
    width: 100%;
}

.box-wide:nth-of-type(odd) .box-wide-cont {
    width: 50%;
    margin-left: auto;
}

.box-wide:nth-of-type(even) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

.box-wide:nth-of-type(even) .box-wide-cont {
    width: 50%;
    margin-left: 0;
    margin-right: auto;
}

.box-wide:nth-of-type(even) .box-wide-img .img-skew {
    -webkit-transform: skew(10deg) translate(-10%, 0);
    transform: skew(10deg) translate(-10%, 0);
}

.img-skew {
    overflow: hidden;
    -webkit-transform: skew(10deg) translate(10%, 0);
    transform: skew(10deg) translate(10%, 0);
}

.img-skew img {
    -webkit-transform: skew(-10deg) scale(1.2);
    transform: skew(-10deg) scale(1.2);
}

.box-wide-cont .title-01 {
    margin-bottom: 1em;
    padding: 3px 0 5px 10px;
    font-weight: bold;
    line-height: 1.6;
    border-left: 5px solid #8f0000;
}

@media (max-width: 1024px) {

    .box-wide {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    .box-wide+.box-wide {
        margin-top: 60px;
    }

    .box-wide:nth-of-type(odd) .box-wide-cont {
        width: 100%;
    }

    .box-wide:nth-of-type(even) .box-wide-cont {
        width: 100% !important;
    }

    .box-wide:nth-of-type(even) .box-wide-img .img-skew {
        -webkit-transform: skew(0) translate(0, 0);
        transform: skew(0) translate(0, 0);
    }

    .img-skew {
        -webkit-transform: skew(0) translate(0, 0);
        transform: skew(0) translate(0, 0);
    }

    .img-skew img {
        -webkit-transform: skew(0) scale(1);
        transform: skew(0) scale(1);
    }
}

@media (max-width: 599px) {
    .box-wide-cont .block {
        padding: 10px 2%;
    }

    .tr-flex-img {
        width: 100px;
        position: relative;
        bottom: 0;
        right: 0;
        display: block;
        margin: 0 0 0 auto;
    }
}

.btr-box {
    background-color: #fff;
    padding: 1.5em;
    border: 2px solid #888;
}

.c02mk {
    color: #8f0000;
}

.cc03-list li+li {
    margin-top: 40px;
}

.udb {
    border-bottom: 1px solid #b5483e;
}

.gr-sh {
    text-shadow: 1px 1px 0 #fff,
        -1px -1px 0 #fff,
        -1px 1px 0 #fff,
        1px -1px 0 #fff;
}

.bar-title {
    margin-bottom: 1em;
    padding: 3px 0 5px 10px;
    font-weight: bold;
    line-height: 1.6;
    border-left: 5px solid #8f0000;
}



.detail-list {
    width: 100%;
    position: relative;
    overflow: hidden;
}

.detail-list .sscontent.defo {
    position: relative;
    width: 100%;
    z-index: 0;
}

.ss-box {
    position: absolute;
    width: 100%;
    z-index: 1;
    top: 0;
    left: 0;
}

.sscontent-list {
    position: relative;
}

.sscontent-list .sscontent {
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    z-index: 1;
}

.sscontent-list .sscontent.clicked {
    z-index: 2;
    animation: blur .4s linear;
}

@keyframes blur {
    0% {
        filter: blur(5px);
    }

    100% {
        filter: blur(0px);
    }
}

#map-container.map-container {
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
}

.stars {
    letter-spacing: 10px;
    font-size: 26px;
    line-height: .8em;
    text-align: right;
    color: #8f0000;
}

.星1::after {
    content: "★☆☆☆☆"
}

.星2::after {
    content: "★★☆☆☆"
}

.星3::after {
    content: "★★★☆☆"
}

.星4::after {
    content: "★★★★☆"
}

.星5::after {
    content: "★★★★★"
}

.bui_detail>div+div {
    padding-top: 90px;
}

@media(Max-width:1024px) {
    .bui_detail>div+div {
        padding-top: 60px;
    }
}

@media(max-width:599px) {
    .label {
        padding: 1px 3px;
        font-size: 12px;
    }

    .detail-list .ssbox {
        padding: 2em 1em 300px 1em;
    }

    .ss.detail-list .box .tl-img {
        top: auto;
        bottom: 0;
    }

    .ss.detail-list .box::after {
        background: linear-gradient(0deg, rgba(255, 255, 255, 0) 100px, #fff 280px, #fff 300px);
    }

}

.miniflex {
    display: flex;
    flex-wrap: wrap;
}

.cc03-list .miniflex>li {
    font-weight: 600;
    padding-left: 15px;
    position: relative;
    margin: 5px 30px 5px 0;
}

.miniflex>li::before {
    content: "";
    display: inline-block;
    width: 10px;
    height: 10px;
    background-color: #b5483e;
    border-radius: 50%;
    position: absolute;
    top: 7px;
    left: 0;
}

.price-box {
    text-align: right;
}

.price-box-inner {
    display: inline-block;
    background: rgba(255, 255, 255, 0.6);
    padding: .2em 1em;
    font-size: 26px;
    color: #000;
    text-decoration: underline #b5483e;
    letter-spacing: .1em;
}

.price-box-inner>span {
    font-size: 14px;
    display: inline-block;
    margin-left: 5px;
    letter-spacing: 0;
}

.menub>li {
    border-bottom: 1px solid #fff;
    padding-bottom: 15px;
}

.bgr .menub>li {
    border-bottom: 1px solid #000;
    padding-bottom: 15px;
}

.info-list.formenu li {
    margin: 0px;
    display: flex;
    border-bottom: 1px dotted #888;
    padding-bottom: 6px;
    flex-wrap: wrap;
}

.info-list.formenu li+li {
    margin-top: 10px;
}

.info-list.formenu li:last-child {
    border-bottom: none;
}

.info-list.formenu .info-title {
    color: #000;
    width: calc(100% - 200px);
}

.info-list.formenu .info-data {
    width: 200px;
    font-size: 18px;
    font-weight: bold;
}

.info-list.formenu .info-data>span {
    font-size: 14px;
    display: inline-block;
    margin-left: 5px;
}



@media(max-width:599px) {
    .price-box-inner {
        font-size: 22px;
    }

    .info-list.formenu .info-title {
        width: 100%;
    }

    .info-list.formenu .info-data {
        width: 100%;
        text-align: right;
        font-size: 16px;
    }
}

.bar-line {
    display: block;
    width: 100%;
    height: 1px;
    border-bottom: 1px dotted #888;
}

.longer-title {
    width: 100%;
    display: block;
    background-color: #8f0000;
    color: #fff;
    font-size: 14px;
    padding: 2px .5em;
    margin-bottom: .5em;
}

.beiger {
    background-color: #fdf5e2;
}

.menu-btn-list {
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
}

.menu-btn-item {
    width: 48%;
    margin-bottom: 30px;
    position: block;
}

.menu-btn-item.mini {
    width: 22%;
    margin-bottom: 0px;
    position: block;
}

.menu-btn-item a {
    width: 100%;
    display: block;
    padding: 30px 0;
    position: relative;
    background-color: #000;
    border: 5px solid #fff;
    border-radius: 5px;
    overflow: hidden;
    filter: drop-shadow(0px 0px 5px #555);
}

.menu-btn-item img {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    object-fit: cover;
    object-position: center;
}

.menu-btn-tit {
    display: inline-block;
    width: 100%;
    padding: .2em;
    font-size: 16px;
    position: relative;
    z-index: 1;
    font-weight: bold;
    background-image: linear-gradient(90deg, #ffffff calc(100% - 60px), transparent);
}

@media(max-width:1024px) {
    .menu-btn-item {
        width: 100%;
        margin-bottom: 15px;
        position: block;
    }

    .menu-btn-item.mini {
        width: 48%;
        margin-bottom: 15px;
        position: block;
    }

    .btr-box {
        padding: .5em;
    }
}


.boxmk1 {
    background-color: #fff;
}

.boxmk2 {
    background-color: #fdf5e2;
}

.cuscon-flex {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.cuscon-left {
    width: 75%;
}

.cuscon-right {
    width: 23%;
}

@media(max-width:1024px) {
    .cuscon-left {
        width: 100%;
    }

    .cuscon-right {
        width: 100%;
    }

    .cuscon-flex>*+* {
        margin-top: 65px;
    }
}






.award-item {
    display: block;
    position: relative;
    background-image: -webkit-linear-gradient(315deg, #704308 0%, #ffce08 40%, #e1ce08 60%, #704308 100%);
    background-image: linear-gradient(135deg, #704308 0%, #ffce08 40%, #e1ce08 60%, #704308 100%);
    padding: 5px;
}

.voice .award-item {
    display: block;
    position: relative;
    background-image: none;
    padding: 0;
}

.award-item+.award-item {
    margin-top: 60px;
}

.award-item-inner {
    width: 100%;
    display: flex;
    align-items: center;
    padding: 30px;
    background-color: #fdf5e2;
    justify-content: space-between;
}

.voice .award-item-inner {
    border-radius: 10px;
    border: 3px solid #8f0000;
}

.voice.r-voice .award-item-inner {
    border-radius: 10px;
    background-color:#fff;
    border: 3px solid #8f0000;
}

.award-item-img {
    width: 25%;
}

.award-item-img .imgbdr {
    border: 3px solid #fdf5e2;
}

.award-cont {
    width: 70%;
}

.award-cont .year {
    color: #8f0000;
    font-size: 20px;
    font-weight: bold;
}

.award-cont .prisename {
    font-size: 22px;
    font-weight: bold;
}

.awardname {
    font-size: 36px;
    font-weight: bold;
    position: relative;
    background: linear-gradient(90deg, rgba(207, 0, 0, 1) 0%, rgba(99, 0, 0, 1) 100%);
    padding: 3px 0 3px 90px;
    color: #fff;
    margin: 20px 0;
}

.awardname:after {
    position: absolute;
    content: '';
    width: 0px;
    height: 0px;
    z-index: 1;
    top: 0;
    right: 0;
    border-width: 30px 15px 30px 0px;
    border-color: transparent #fdf5e2 transparent transparent;
    border-style: solid;
}

.awardname::before {
    content: "";
    display: block;
    background-image: url('/import/tenant_1/seishin1.a-bisu.jp/images/medal.webp');
    background-size: 100% 100%;
    background-position: center;
    position: absolute;
    left: -15px;
    top: 50%;
    transform: translateY(-50%);
    width: 90px;
    height: 90px;
}



.ct-title {
    font-size: 18px;
    background-color: #b5483e;
    color: #fff;
    text-align: center;
    padding: 10px 0;
}

.ct-item {
    font-size: 14px;
    background-color: #2c2c2c;
    color: #fff;
    text-align: center;
    border-bottom: 1px solid #888;
}

.ct-item:last-child {
    border: none;
}

.ct-item a {
    display: block;
    padding: 10px 0;
}

@media(max-width:1024px) {
    .award-item-inner {
        padding: 15px;
    }

    .award-cont .year {
        font-size: 16px;
    }

    .award-cont .prisename {
        font-size: 18px;
    }

    .award-comment {
        font-size: 14px;
    }

    .award-item-img {
        width: 200px;
    }

    .award-cont {
        width: calc(100% - 220px);
    }

    .awardname {
        font-size: 30px;
        padding: 1px 0 3px 65px;
        color: #fff;
        margin: 10px 0;
    }

    .awardname::before {
        content: "";
        display: block;
        background-image: url('/import/tenant_1/seishin1.a-bisu.jp/images/medal.webp');
        background-size: 100% 100%;
        background-position: center;
        position: absolute;
        left: -10px;
        top: 50%;
        transform: translateY(-50%);
        width: 70px;
        height: 70px;
    }

    .awardname:after {
        border-width: 24.5px 15px 24.5px 0px;
    }
}

@media(max-width:599px) {
    .award-item-inner {
        flex-direction: column;
    }

    .award-item-img {
        width: 100%;
        order: 4;
    }

    .award-cont {
        width: 100%;
        display: contents;
    }

    .award-cont .year {
        width: 100%;
        order: 1;
    }

    .award-cont .prisename {
        width: 100%;
        order: 2;
    }

    .awardname {
        width: 100%;
        order: 3;
        font-size: 26px;
        margin: 15px 0;
    }

    .awardname:after {
        border-width: 21.5px 15px 21.5px 0px;
    }

    .award-comment {
        width: 100%;
        margin-top: 10px;
        order: 5;
    }

    .award-item-inner {
        padding: 10px;
    }

    .award-item+.award-item {
        margin-top: 30px;
    }
}

.cuscon-center {
    width: 100%;
}

/* ページネーション */
.pagenation {
    display: -webkit-box;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -webkit-box-pack: center;
    justify-content: center;
}

.pagenation .item {
    margin: 0 10px;
}

.pagenation .prev {
    position: relative;
}

.pagenation .prev a:before {
    content: "\f053";
    font-family: "Font Awesome 6 Free";
    font-weight: 600;
}

.pagenation .next {
    position: relative;
}

.pagenation .next a:before {
    content: "\f054";
    font-family: "Font Awesome 6 Free";
    font-weight: 600;
}

.pagenation a,
.pagenation .now {
    font-weight: bold;
}

.pagenation .number a,
.pagenation .now,
.pagenation .next a,
.pagenation .prev a {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    color: #000;
    text-align: center;
    border: none;
    border-radius: 50%;
    background-color: #fdf5e2;
}

.pagenation .number a:hover,
.pagenation .next a:hover,
.pagenation .prev a:hover,
.pagenation .now {
    color: #fff;
    background: #b5483e;
    opacity: 1;
}

@media (max-width: 599px) {
    .pagenation .item {
        margin: 0 5px;
    }

    .pagenation .prev {
        margin-right: 10px;
    }

    .pagenation .next {
        margin-left: 10px;
    }
}


.catarea {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    padding: 10px;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}

.whiteb {
    border: 3px solid #8f0000;
    padding: 30px;
    background-color: #fff;
    border-radius: 10px;
}

.whiteb .catarea {
    position: relative;
}

.catarea>span {
    display: inline-block;
    padding: 1px 5px;
    font-size: 12px;
    color: #fff;
    background-color: #b5483e;
    border-radius: 4px;
    margin: 0 5px 5px 0;
}

.catarea>span.新着情報 {
    background-color: #8f0000;
}

.blog .nb-blog-item>a {
    border: 3px solid #8f0000;
}

/*記事詳細ページ用タイトル*/
.detail-content h2 {
    margin-top: 40px;
    margin-bottom: 20px;
    padding: 5px 10px;
    font-weight: bold;
    font-size: 20px;
    color: #fff;
    background: #b5483e;
}

.detail-content h3 {
    margin-top: 40px;
    margin-bottom: 20px;
    padding-left: 10px;
    font-weight: bold;
    font-size: 20px;
    border-left: solid 4px #b5483e;
}

.detail-content h4 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: baseline;
    align-items: baseline;
    -ms-flex-align: baseline;
    margin-top: 40px;
    margin-bottom: 20px;
    font-weight: bold;
    font-size: 20px;
}

.detail-content h4:before {
    content: "・";
    color: #b5483e;
}

.detail-content ul li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: baseline;
    align-items: baseline;
    -ms-flex-align: baseline;
    -webkit-column-gap: 5px;
    -moz-column-gap: 5px;
    column-gap: 5px;
}

.detail-content ul li::before {
    content: "■";
    color: #b5483e;
}

.detail-content ol li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: baseline;
    align-items: baseline;
    -ms-flex-align: baseline;
    list-style-type: none;
    counter-increment: cnt;
}

.detail-content ol li::before {
    content: ""counter(cnt)".";
    margin-right: 10px;
    font-weight: bold;
    font-size: 120%;
    color: #b5483e;
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

.detail-content iframe[src*="youtube"] {
    margin-top: 1em;
    margin-bottom: 1em;
    height: 100%;
    display: block;
    aspect-ratio: 16 / 9;
}

@media(max-width:1024px) {
    .whiteb {
        padding: 15px;
    }
}

@media(max-width:599px) {
    .whiteb {
        padding: 10px;
    }
}






/* form */
.formitem button,
.formitem input,
.formitem select,
.formitem textarea {
    font-family: inherit;
    font-size: inherit;
    color: inherit;
    border: 1px solid #888;
    background-color: #fff;
    border-radius: 3px;
    color: #000;
}

.formlist {
    max-width: 900px;
}

.formitem {
    padding: 1em 0;
}

.formitem+.formitem {
    border-top: 1px solid #888;
}

.formitem dt {
    width: 30%;
}

.formitem .reqw {
    margin-left: 1em;
    padding: 2px 5px;
    color: #fff;
    text-align: center;
    background-color: #8f0000;
    border-radius: 5px;
}

.formitem dd {
    width: 66%;
}

.formitem dd .inputlist li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    margin-bottom: 1em;
}

.formitem dd input {
    width: 100%;
    padding: .5em .5em;
}

.formitem dd select {
    padding: 0.25em 0.5em;
    -webkit-appearance: auto;
    -moz-appearance: auto;
    appearance: auto;
}

.formitem dd input[type="radio"] {
    display: none;
}

.formitem dd input[type="radio"]+label {
    margin-right: 20px;
    padding-left: 20px;
    line-height: 200%;
    position: relative;
}

.formitem dd input[type="radio"]+label::before {
    content: "";
    width: 10px;
    height: 10px;
    display: block;
    border: 1px solid var(--color14);
    border-radius: 50%;
    background-color: var(--color09);
    position: absolute;
    top: 4px;
    left: 0;
}

.formitem dd input[type="radio"]:checked+label::after {
    content: "";
    width: 8px;
    height: 8px;
    display: block;
    border-radius: 50%;
    background-color: var(--color14);
    position: absolute;
    top: 6px;
    left: 2px;
}

.formitem dd input[type="radio"]:checked+label {
    border-bottom: 1px solid;
    -webkit-transition: 0.3s;
    transition: 0.3s;
}

.formitem dd textarea {
    width: 100%;
    height: 250px;
    padding: 0.25em 0.5em;
}

.formbtn li {
    text-align: center;
}

.formbtn li button,
.formbtn li input {
    width: 260px;
    max-width: 100%;
    display: inline-block;
    padding: 1.25em 0.5em;
    text-align: center;
    border: none;
    border-radius: 50px;
    background-color: #b5483e;
    -webkit-box-shadow: 0.4em 0.4em 0.8em rgba(0, 0, 0, 0.4);
    box-shadow: 0.4em 0.4em 0.8em rgba(0, 0, 0, 0.4);
    -webkit-transition: 0.3s;
    transition: 0.3s;
}

.formbtn li input {
    background-color: #b5483e;
}

.formbtn li button:hover,
.formbtn li input:hover {
    opacity: 0.6;
    cursor: pointer;
}

.formbtn li {
    width: 100%;
    max-width: 320px;
    margin: auto;
}

.formbtn2 li {
    max-width: 250px;
}

@media (max-width:1024px) {
    .formitem dt {
        width: 100%;
        margin-bottom: 0.5em;
    }

    .formitem dt label {
        display: block;
    }

    .formitem dd {
        width: 100%;
    }

    .formbtn2 li {
        max-width: 200px;
    }
}

@media (max-width:599px) {

    .formbtn li button,
    .formbtn li input {
        width: 230px;
    }

    .formbtn2 li {
        max-width: 120px;
    }
}

.form01 .formlist .formitem .checkboxer label {
    display: inline-block;
    margin: 0.5em 0;
    margin-right: 15px;
    padding: 0 10px 0 24px;
    position: relative;
}

.form01 .formlist .formitem .checkboxer label::before {
    content: "";
    width: 20px;
    height: 20px;
    display: block;
    border: 1px solid #888;
    border-radius: 3px;
    background-color: white;
    position: absolute;
    top: 7px;
    left: 0;
}

.form01 .formlist .formitem .checkboxer label:hover {
    text-decoration: underline;
    cursor: pointer;
}

.form01 .formlist .formitem .checkboxer input {
    display: none;
}

.form01 .formlist .formitem .checkboxer input:checked+label {
    text-decoration: underline;
}

.form01 .formlist .formitem .checkboxer input:checked+label::after {
    content: "\f00c";
    width: 0;
    height: 0;
    display: inline-block;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 20px;
    color: #b5483e;
    line-height: 1;
    background-color: transparent;
    position: absolute;
    top: 5px;
    left: 2px;
}

[data-element-id].loading{
  height:auto;
  width:600px;
}

[data-element-id].loading-inner{
  padding:50px;
}

[data-element-id].mv-backimg .filter{
  display:none;
}

[data-element-id]#header {
    width: 100%;
    position:relative;
    background: rgba(0, 0, 0, 0.5);
}

[data-element-id].nav-box {
    width: 100%;
    padding-left: 15px;
    margin-left: auto;
    margin-right: 0px;
}

[data-element-id].nav-item01>a,
[data-element-id].nav-item01>.a {
    display: block;
    writing-mode: initial;
    margin: 0 auto;
    padding: 5px 0;
    text-align: center;
    font-size: 16px;
}

[data-element-id].nav-item01>a::after,
[data-element-id].nav-item01>.a::after {
    width: 0px;
    height: 1px;
    background-color: #fff;
    position: absolute;
    top: auto;
    right: auto;
    bottom: 0;
    left: 0;
    transition: .4s;
}

[data-element-id].nav-item01>a:hover::after,
[data-element-id].nav-item01>.a:hover::after {
    height: 1px;
    width: 100%;
}

[data-element-id].d-list {
  display:block;
    position:relative;
    min-width: 100%;
    top: 0;
    right: auto;
    left: 50%;
    background-image: url('/import/tenant_1/seishin1.a-bisu.jp/images/bg01.webp');
    animation: fadeInSlide2 0.4s ease forwards;
}

[data-element-id].footer-btns{
  width:600px;
  margin-left:auto;
}

[data-element-id].footer-btns>*{
  width:100%;
}

[data-element-id].btnlist {
  width:100%;
    top: auto;
    bottom: 0;
    right: 0;
    display: flex;
    height: 60px;
    transform: translateY(0);
    position:relative;
}

[data-element-id].ftb {
    width: auto;
    flex: 1;
    border-radius: 10px 10px 0 0px;
}

[data-element-id].ftb+.ftb {
    margin-top: 0px;
}

[data-element-id].ftb a {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 100%;
    padding: 0 60px 0 20px;
    position: relative;
}

[data-element-id].ftb .r,
[data-element-id].ftb .l,
[data-element-id].ftb .o {
    display: block;
    text-align: left;
    width: 100%;
    writing-mode: horizontal-tb;
    color: #fff;
    letter-spacing: 0em;
}

[data-element-id].ftb .r {
    font-size: 16px;
    margin-left: 0px;
}

[data-element-id].ftb .o {
    font-size: 16px;
}

[data-element-id].ftb .l {
    font-size: 12px;
}

[data-element-id].ftb.tel .l {
    font-size: 16px;
}

[data-element-id].ftb .c {
    margin-top: 0px;
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
}

[data-element-id].for-h1-txt{
  display:block;
}

[data-element-id] h1{
  display:none;
}


[data-element-id].nav-list{
  flex-wrap:wrap;
}

[data-element-id].nav-item01{
 flex:auto;
 flex-grow:1;
 border:2px dashed #fff;
 margin:-1px;
}

[data-element-id].nav-item01.up-d-none{
  display:block;
  border:2px solid green;
  position:relative;
  padding-top:20px;
}

[data-element-id].nav-item01.up-d-none::before{
  content:"PC時非表示";
  display:block;
  width:100%;
  position:absolute;
  top:0;
  left:0;
  text-align: center;
  font-size:14px;
  color:yellow;
  background-color:green;
}

[data-element-id].nav-item99.up-d-none{
  display:block;
  border:2px solid green;
  position:relative;
  padding:40px 0;
  width:200px;
}

[data-element-id].nav-item99.up-d-none::before{
  content:"PC時非表示";
  display:block;
  width:100%;
  position:absolute;
  top:0;
  left:0;
  text-align: center;
  font-size:14px;
  color:yellow;
  background-color:green;
}

[data-element-id].nav-det-area{
  display:block;
  max-width:300px;
    border:2px solid green;
  position:relative;
  padding-top:40px;
}

[data-element-id].nav-det-area::before{
  content:"PC時非表示";
  display:block;
  width:100%;
  position:absolute;
  top:0;
  left:0;
  text-align: center;
  font-size:14px;
  color:yellow;
  background-color:green;
}

[data-element-id].tr-flex{
  flex-wrap:wrap;
}

[data-element-id].tr-flex-img {
    width: 900px;
    position: relative;
    bottom:0;
    right: 0;
    margin-left:auto;
}

[data-element-id].dsi-slider{
  display:flex;
  align-items: center;
  justify-content: space-between;
  width:100%;
}

[data-element-id].dsi-slider-item{
 width:30%;
 position:relative;
 padding-top:30px;
 display:block;
 border:2px solid blue;
}

[data-element-id].dsi-slider-item::before{
  display:block;
  width:100%;
  position:absolute;
  top:0;
  left:0;
  text-align: center;
  font-size:14px;
  color:yellow;
  background-color:blue;
}

[data-element-id].dsi-slider-item:nth-child(1)::before{
content:"スライド1枚目";
}

[data-element-id].dsi-slider-item:nth-child(2)::before{
content:"スライド2枚目";
}

[data-element-id].dsi-slider-item:nth-child(3)::before{
content:"スライド3枚目";
}

[data-element-id].slide-box-item+.slide-box-item{
  margin-top:40px;
}

[data-element-id].slide-box-item{
   position:relative;
 padding-top:30px;
 display:block;
 border:2px solid blue;
}

[data-element-id].slide-box-item::before{
  display:block;
  width:100%;
  position:absolute;
  top:0;
  left:0;
  text-align: center;
  font-size:14px;
  color:yellow;
  background-color:blue;
}

[data-element-id].slide-box-item:nth-child(1)::before{
content:"スライド1枚目";
}

[data-element-id].slide-box-item:nth-child(2)::before{
content:"スライド2枚目";
}

[data-element-id].slide-box-item:nth-child(3)::before{
content:"スライド3枚目";
}

[data-element-id].slide-box-item:nth-child(4)::before{
content:"スライド4枚目";
}

[data-element-id].tab-cont-set li{
     position:relative;
 padding-top:30px;
 display:block;
 border:2px solid blue;
}

[data-element-id].tab-cont-set li+li{
     margin-top:40px;
}

[data-element-id].tab-cont-set li::before{
  display:block;
  width:100%;
  position:absolute;
  top:0;
  left:0;
  text-align: center;
  font-size:14px;
  color:yellow;
  background-color:blue;
}

[data-element-id].tab-cont-set li:nth-child(1)::before{
content:"『初めての神戸牛』の内容";
}

[data-element-id].tab-cont-set li:nth-child(2)::before{
content:"『神戸牛のおいしさの秘訣』の内容";
}

[data-element-id].tab-cont-set li:nth-child(3)::before{
content:"『神戸牛の部位』の内容";
}

[data-element-id].tab-cont-set li:nth-child(4)::before{
content:"『プロが教える神戸牛のおすすめの食べ方』の内容";
}

[data-element-id].gl-slide-item+.gl-slide-item{
  margin-top:40px;
}

[data-element-id].gl-slide-item{
   position:relative;
 padding-top:30px;
 display:block;
 border:2px solid blue;
}

[data-element-id].gl-slide-item::before{
  display:block;
  width:100%;
  position:absolute;
  top:0;
  left:0;
  text-align: center;
  font-size:14px;
  color:yellow;
  background-color:blue;
}

[data-element-id].gl-slide-item:nth-child(1)::before{
content:"スライド1枚目";
}

[data-element-id].gl-slide-item:nth-child(2)::before{
content:"スライド2枚目";
}

[data-element-id].gl-slide-item:nth-child(3)::before{
content:"スライド3枚目";
}

[data-element-id].gallery{
 display:none;
}

[data-element-id].choice-btn{
  display:flex;
  flex-wrap:wrap;
}

[data-element-id].choice-btn>li{
 width: calc(100% / 3);
}

[data-element-id].choice-btn li img {
    opacity: 1;
}

[data-element-id].ss .box::after{
  display:none;
}

[data-element-id].ssbox {
    padding: 3em 3em 3em 0%;
    margin-left:40%;
}

[data-element-id].filter-mk2{
  display:none;
}



    [data-element-id].page-box,
    [data-element-id].book-cont,
    [data-element-id]#flipbook {
        display: contents;
        position: relative;
    }

    [data-element-id].page-box::before,
    [data-element-id].page-box::after {
        display: none;
    }

    [data-element-id].page-box {
        width: 100%;
    }

    [data-element-id].page {
        filter: drop-shadow(0px 0px 5px #555);
    }


    [data-element-id].pages {
        filter: drop-shadow(0px 0px 5px #555);
    }

    [data-element-id].page.p01,
    [data-element-id].pages.p03,
    [data-element-id].pages.p05 {
        position: relative;
        width: 35%;
        margin-top: -30px;
        margin-right: -15px;
        z-index: 3;
    }

    [data-element-id].page.p01 .page-inner,
    [data-element-id].pages.p03 .page-inner,
    [data-element-id].pages.p05 .page-inner {
        padding: 5px;
    }

    [data-element-id].pages.p02,
    [data-element-id].pages.p04,
    [data-element-id].page.p06 {
        width: calc(65% + 15px);
        margin-bottom: 60px;
    }

    [data-element-id].page.p06 {
        margin-bottom: 0;
    }

    [data-element-id].page-arrow {
        display: none;
    }
    
[data-element-id] .up-d-none.up-d-block\@sp{
  display:block;
  width:100%;
  max-width:375px;
  border: 2px solid green;
  position: relative;
  padding-top: 20px;
}

[data-element-id] .up-d-none.up-d-block\@sp::before{
  content: "PC時非表示";
    display: block;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    text-align: center;
    font-size: 14px;
    color: yellow;
    background-color: green;
}
    
[data-element-id] span.up-d-none.up-d-block\@sp{
  display:none;
}

[data-element-id].vw-left{
  min-height:400px;
  max-width:500px;
}

[data-element-id].vw-right{
  min-height:400px;
   max-width:500px;
}

#map-container2{
  display:none;
}

[data-element-id]#map-container{
  display:none;
}

[data-element-id]#map-container2{
  display:block;
  position:relative;
  border:2px solid orange;
}


[data-element-id]#map-container2::before{
  content: "こちらで部位をご確認ください";
    display: block;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    text-align: center;
    font-size: 14px;
    color:black;
    background-color: orange;
}

[data-element-id].long-slider{
  display:flex;
  flex-wrap:wrap;
}

[data-element-id].long-slider>div{
 width: calc(100% / 8);
}

.b-type a{
  position:relative;
  overflow:hidden;
}

.b-type a::after {
    content: '';
    position: absolute;
    top: -10%;
    left: -20%;
    width: 40px;
    height: 100%;
    transform: scale(2) rotate(20deg);
    background-image: linear-gradient(100deg, rgba(255, 255, 255, 0) 10%, rgba(255, 255, 255, .5) 100%, rgba(255, 255, 255, 0) 0%);
    animation-name: shiny;
    animation-duration: 3s;
    animation-timing-function: ease-in-out;
    animation-iteration-count: infinite;
}

.scrolled .b-type a::after {
    animation-name: shiny2;
    animation-duration: 4s;
    width: 90px;
}



@keyframes shiny {
    0% { left: -200%; }
    10% { left: 200%; }
    100% { left: 200%; }
}

@keyframes shiny2 {
    0% { left: -100%; }
    10% { left: 100%; }
    100% { left: 100%; }
}











.cp_timeline01 li:nth-child(odd) .timeline_item .flag_cont:before,
.cp_timeline01 li:nth-child(even) .timeline_item .flag_cont:before,
.cp_timeline01 li:nth-child(odd) .timeline_item .flag_cont:after,
.cp_timeline01 li:nth-child(even) .timeline_item .flag_cont:after{
  display:none;
}

.markerA{
  width:24px;
  height:24px;
  background-image:url(/upload/tenant_1/marker.webp);
  background-size:100% 100%;
  position:absolute;
  top:0;
  left:calc(50% - 12px);
}

.mv .markerA{
  animation-name: timego;
  animation-duration: 20s;
  animation-timing-function: linear;
  animation-iteration-count: infinite;
}

@keyframes timego {
    0% { top:0;opacity:0; }
    10% { top:10%;opacity:1; }
    90% { top:90%;opacity:1; }
    100% { top:100%;opacity:0; }
}

.mv-txts-sub .bar{
  display:inline-block;
  width:2em;
  height:1px;
  background-color:#fff;
  margin-right:5px;
  margin-bottom:.3em;
}

@media(Max-width:599px){
  .mv-txts-sub .bar{
  margin-bottom:2.2em;
}
}






