.page-ctn {
}

.culture-back{
    margin-top: 2rem;
}

.ssp-content {
    padding: 18rem 0 10rem;
    left: 0;
    right: 0;
    margin: calc(25vh - 25vw + 8rem) auto calc(32vh - 32vw);
}

.ssp-pagination{
    display: flex;
    justify-content: center;
    margin-bottom: 3rem;
}

.ssp-pagination .swiper-pagination-bullet{
    width: .625rem;
    height: .625rem;
    background-color: #dedede;
    cursor: pointer;
    border-radius: 50%;
    margin: 0 .3rem;
}
.ssp-pagination .swiper-pagination-bullet-active{
    background-color: #1c1c1c;
}

.ssp-swiper-ctn {
    position: relative;
    /*
        1440 1920
        900 960

        960k = 540
    */
    width: calc(56.25vw + 360px);
    margin: 0 auto;
}


.shi {
    display: flex;
    justify-content: center;
    align-items: flex-end;
    margin-bottom: 3rem;
    /* height: calc(50% - 2.5rem); */
    height: auto;
}

.shi:last-child{
    align-items: flex-start;
    margin-bottom: 0;
}

.shi .half {
    width: 45%;
}

.shi .half img {
    display: inline-block;
    height: calc(320rem / 16);
}

.shi .half h2{
    /* font-size: 8.75rem; */
    font-size: 7.75rem;
    line-height: 1.125em;
    font-weight: lighter;
    writing-mode: vertical-rl;
    writing-mode: tb-rl;
    white-space: nowrap;
    color: #8b634b;
}

.ie-shi .half h2 { margin-right: 75px; }



.ssp-content .shi .half h3 {
    font-size: calc(25rem / 16);
    color: #666666;
    margin-bottom: .75em;
    letter-spacing: .15em;
}

.shi .half p {
    font-size: calc(18rem / 16);
    line-height: calc(33.72rem / 16);
    color: #4d4d4d;
    margin-bottom: .75rem;
    font-weight: 200;
    letter-spacing: .05em;
}

.shi .half.righttext h3 {
    text-align: left;
}

.shi .half.righttext p {
    text-align: left;
}

.half.title{
    display: flex;
    align-items: center;
}

.shi:first-child{
    flex-direction: row-reverse;
}
.shi:first-child .half.title{
    padding-left: 2.5rem;
}

.shi:nth-child(2){

}

.shi h2{
    margin-right: 1rem;
}

.shi h2+img{
    width: calc(55rem / 16);
}

.shi:nth-child(2) h2{
    margin-right: 0;
    margin-left: 1rem;
}

.shi:nth-child(2) .half.title{
    padding-right: 2.5em;
    justify-content: flex-start;
    flex-direction: row-reverse;
}

.shi:nth-child(2) .half.desc{
    text-align: left;
}

.shi .half.desc{
    text-align: right;
}

.mobilebottom {
    display: none;
}

.mobilebottom .container {
    padding: 5.625rem 4.5rem;
}

.mobilebottom .top img {
    width: 12.5rem;
}

.mobilebottom .bt {
    margin-top: 2rem;
}

.mobilebottom .bt h3 {
    font-size: 1.5rem;
    color: #666666;
}

.mobilebottom .bt p {
    font-size: 1.125rem;
    color: #333333;
    margin-top: 2rem;
    text-align: justify;
    line-height: 1.7;
    letter-spacing: 1px;
}
.ssp-swiper .swiper-slide{
    /* height: calc(1000vw / 19.2); */
}

.ssp-swiper .swiper-button-prev, .ssp-swiper .swiper-button-next{
    width: calc(74rem / 16);
    height: calc(74rem / 16);
    background-image: none;
    margin-top: -2.25rem;
}

.swiper-button-prev::after,
.swiper-button-next::after{
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: url("../images/btn_prev.svg") center/contain no-repeat;
}

.ssp-swiper .swiper-button-next.swiper-button-disabled,
.ssp-swiper .swiper-button-prev.swiper-button-disabled{
    opacity: 0;
}

.swiper-button-next::after{
    background-image: url("../images/btn_next.svg");
}

.swiper-button-prev:hover::after{
    background-image: url("../images/btn_prev_hover.svg");
}

.swiper-button-next:hover::after{
    background-image: url("../images/btn_next_hover.svg");
}

.ssp-list{
    display: none;
    padding-bottom: 10rem;
}

.ssp h2{
    font-size: 4.75rem;
    letter-spacing: .1rem;
    font-weight: lighter;
    color: #8b634b;
    writing-mode: vertical-lr;
    line-height: .875em;
    margin-right: .125em;
    white-space: nowrap;
    margin-left: -0.5rem;
}

.ssp img{
    width: 1.75rem;
    margin-left: .8rem;
    margin-bottom: .5rem;
}

.ssp{
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    padding-top: 2.83em;
    padding-bottom: 1.5rem;
}

.ssp-desc{
    flex: 0 0 100%;
    margin-top: 1.5rem;
    color: #666666;
}

.ssp-desc h3{
    font-weight: 500;
    font-size: calc(28rem / 24);
    margin-bottom: 0.75rem;
    letter-spacing: .1em;
}

.ssp-desc p{
    font-size: 1rem;
    letter-spacing: .15em;
    line-height: 1.6667em;
    font-weight: 300;
}

.ssp-list{
    padding-left: calc(72rem / 24);
    padding-right: calc(72rem / 24);
    position: relative;
    padding-top: calc(120rem / 24);
}

.ssp:nth-of-type(2n){
    justify-content: flex-end;
}

.ssp:nth-of-type(2n) h2{
    margin-left: 0;
    margin-right: -0.5rem;
}

.ssp:nth-of-type(2n) img{
    order: -1;
    margin-right: .8rem;
}

.ssp:nth-of-type(2n) .ssp-desc{
    text-align: right;
}


footer.site-footer{
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    opacity: 0;
    visibility: hidden;
    transition: .3s;
}


body.arrived-bottom .site-footer{
    opacity: 1;
    visibility: visible;
}

@media screen and (max-width: 1440px) {
	.banner-content{
	    left: 16rem;
	}

	.banner-content h1{
	    font-size: 4rem;
	}

	.banner-content p{
	    font-size: 1.05rem;
	    letter-spacing: .15rem;
	}
}

@media screen and (max-width: 750px) {
    .culture-header{
        height: calc(440rem / 24);
    }

    .page-ctn {
        padding-top: 0;
    }
    .ssp-content {
        display: none;
    }

    .ssp-list{
        display: block;
    }
    .culture-top{
        margin-top: 0;
        padding-top: calc(82rem / 24);
    }
    .ssp img {
        
        /* width: auto;
        height: 12rem; */

        width: 100vw;
        margin-left: calc(72rem / 24 * -1);
        height: auto;
    }
    .ssp:nth-of-type(2n) img {
        margin-right: calc(72rem / 24 * -1);
    }
}