@charset "UTF-8";
/* facility ---------------------------------------*/

.facility {
    padding-bottom: 15.9vw;
}

.facilitymap {
    width: 69.79vw;
    margin: 0 auto;
    padding: 10vw 0 9.9vw;
}

.facilitymap-title {
    display: flex;
	justify-content: flex-start;
	align-items: center;
    flex-direction: column;
	flex-wrap: wrap;
	gap: 2.5vw;
    margin-bottom: 5vw;
}

.facilitymap-title span {
    font-size: max(2.188vw,26px);
    line-height: 1.1;
    letter-spacing: 0.1em;
}

.facilitymap-title small {
    font-size: max(1.15vw,16px);
    letter-spacing: 0.1em;
}

.facilitymap-image {
    width: 100%;
    margin-bottom: 5.8vw;
}

.facilitymap-image img {
    width: 100%;
}

.facilitymap-text {
    font-size: max(0.938vw,16px);
    text-align: center;
    line-height: 2.75;
    letter-spacing: 0.05em;
}

.facilityanker {
    width: 46.56vw;
    margin: 0 auto 16.6vw;
}

.facilityanker-list {
    display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
}

.facilityanker-list li {
    width: 15.66%;
}

.facilityanker-list-item {
    display: flex;
	justify-content: flex-start;
	align-items: center;
	flex-wrap: wrap;
    flex-direction: column;
    gap: 0.7vw;
    border-top: 1px solid #000;
    padding: 1vw 0 1.6vw;
    position: relative;
}

.facilityanker-list-item::after {
    display: block;   
	content: '';
	background: url('../img/facility/icon_arrow_btm.svg') no-repeat center center; 
	background-size: 100%;
	width: 13px;
	height: 7px;
	position: absolute;
	left: 50%;
    bottom: 0;
	transform: translate(-50%,0);
}

.facilityanker-list-item span {
    font-size: max(1.2vw,16px);
    letter-spacing: 0.1em;
}

.facilityanker-list-item small {
    font-size: max(0.781vw,12px);
    letter-spacing: 0.12em;
}

.facilitysection {
    width: 83.33vw;
    margin: 0 auto 10vw;
    padding-top: 5vw;
}

.facilitysection-amenity {
    margin-bottom: 11.6vw;
}

.facilitysection-title {
    display: flex;
	justify-content: flex-start;
	align-items: center;
    flex-direction: column;
	flex-wrap: wrap;
	gap: 2.5vw;
    margin-bottom: 10.7vw;
}

.facilitysection-title span {
    font-size: max(2.188vw,26px);
    line-height: 1.1;
    letter-spacing: 0.12em;
}

.facilitysection-title small {
    font-size: max(1.15vw,16px);
    letter-spacing: 0.12em;
}

.facilitysection-block {
    display: flex;
	justify-content: space-between;
	align-items: flex-start;
	flex-wrap: wrap;
    gap: 8%;
}

.is-bedroom-furniture.facilitysection-block {
    gap: 6%;
}

.facilitysection-block + .facilitysection-block {
    margin-top: 16.3vw;
}

.facilitysection-block-image {
    width: 50%;
    padding-top: 0.5vw;
}

.is-image-r .facilitysection-block-image {
    order: 1;
}

.facilitysection-block-image img {
    width: 100%;
}

.facilitysection-block-detail {
    flex: 1;
    padding-right: 8.125%;
}

.is-image-r .facilitysection-block-detail {
    padding-right: 0;
    padding-left: 8.125%;
}

.facilitysection-block-sholder {
    display: inline-block;
    font-size: max(0.833vw,14px);
    padding-right: 4vw;
    position: relative;
    line-height: 1;
    letter-spacing: 0.1em;
    margin-bottom: 2.2vw;
}

.facilitysection-block-sholder::after {
    display: block;   
	content: '';
	background: #000; 
	width: 2.5vw;
	height: 1px;
	position: absolute;
	right: 0;
	top: 35%;
	transform: translate(0,-50%);
}

.facilitysection-block-title {
    font-size: max(2.188vw,24px);
    line-height: 1.95;
    letter-spacing: 0.1em;
    margin-bottom: 8.2vw;
}

.facilitysection-block-text {
    font-size: max(0.72vw,13px);
    line-height: 3.1;
    letter-spacing: 0.11em;
}

.facilitygallary-wrapper {
    position: relative;
    overflow: hidden;
}

.facilitygallary-wrapper:not(:last-of-type) {
    margin-bottom: 29vw;
}

.facilitygallary-list-item figure img {
    width: 100%;
}

.facilitygallary-list-item figure figcaption {
    font-size: max(0.833vw,14px);
    text-align: center;
    letter-spacing: 0.02em;
    line-height: 1.6;
    margin-top: 1vw;
}

.facilitygallary-wrapper .swiper-button-prev {
    color: #fff;
}

.facilitygallary-wrapper .swiper-button-next {
    color: #fff;
}

.swiper-button-prev,
.swiper-container-rtl .swiper-button-next{
	background-image:url("../img/facility/icon_prev.svg");
	left:15.2vw;
	right:auto;
	outline: none;
}

.swiper-button-next,
.swiper-container-rtl .swiper-button-prev{
	background-image:url("../img/facility/icon_next.svg");
	right:15.2vw;
	left:auto;
	outline: none;
}

.swiper-button-next, .swiper-button-prev {
	position: absolute;
	top: 50%;
	width: 1.77vw;
	height: 3.541vw;
	z-index: 10;
	cursor: pointer;
	background-size: 100% 100%;
	background-position: center;
	background-repeat: no-repeat;
	transition: all .1s ease;
	outline: none;
    transform: translate(0,-50%);
}

.swiper-button-next::after, .swiper-button-prev::after {
    display: none;
}

.facilityamenity-title {
    font-size: max(0.833vw,14px);
    line-height: 2.1;
    letter-spacing: 0.11em;
}

.facilityamenity-title:not(:first-of-type) {
    margin-top: 1.5vw;
}

.facilityamenity-list li {
    font-size: max(0.833vw,14px);
    line-height: 2.1;
    letter-spacing: 0.11em;
    padding-left: 1em;
    position: relative;
}

.facilityamenity-list li::before {
	display: inline-block;
	content: '・';
	width: 1em;
	height: 1em;
    position: absolute;
    left: 0;
    top: 1.5vw;
    transform: translate(0,-50%);
    line-height: 0;
}

/* pc only */
@media screen and (min-width: 768px){
}


/* sp only */
@media screen and (max-width: 767px){

    /* facility ---------------------------------------*/

    .facility {
        padding-bottom: 29.6vw;
    }

    .facilitymap {
        width: 100vw;
        padding: 22.5vw 0 36.5vw;
    }

    .facilitymap-title {
        display: flex;
        justify-content: flex-start;
        align-items: center;
        flex-direction: column;
        flex-wrap: wrap;
        gap: 5.5vw;
        margin-bottom: 16vw;
    }

    .facilitymap-title span {
        font-size: 4.615vw;
        line-height: 1.1;
        letter-spacing: 0.15em;
    }

    .facilitymap-title small {
        font-size: 2.564vw;
        letter-spacing: 0.1em;
    }

    .facilitymap-image {
        width: 100%;
        margin-bottom: 8.4vw;
    }

    .facilitymap-text {
        font-size: 3.077vw;
        text-align: center;
        line-height: 2.4;
        letter-spacing: 0.05em;
    }

    .facilityanker {
        width: 74.35vw;
        margin: 0 auto 30.5vw;
    }

    .facilityanker-list {
        display: block;
    }

    .facilityanker-list li {
        width: 100%;
    }

    .facilityanker-list-item {
        align-items: flex-start;
        gap: 1.7vw;
        padding: 3.5vw 9vw 5vw 4.5vw;
    }

    .facilityanker-list-item::after {
        left: auto;
        right: 9vw;
        top: 50%;
        bottom: auto;
        transform: translate(0,-50%);
    }

    .facilityanker-list-item span {
        font-size: 4.103vw;
        letter-spacing: 0.15em;
    }

    .facilityanker-list-item small {
        font-size: 2.564vw;
        letter-spacing: 0.12em;
    }

    .facilitysection {
        width: 74.35vw;
        margin: 0 auto 25.5vw;
        padding-top: 15vw;
    }

    .facilitysection-amenity {
        margin-bottom: 25.5vw;
    }

    .facilitysection-title {
        gap: 5.5vw;
        margin-bottom: 18.7vw;
    }

    .facilitysection-title span {
        font-size: 4.615vw;
        line-height: 1.1;
        letter-spacing: 0.12em;
    }

    .facilitysection-title small {
        font-size: 2.564vw;
        letter-spacing: 0.12em;
    }

    .facilitysection-block {
        display: block;
    }

    .facilitysection-block + .facilitysection-block {
        margin-top: 23vw;
    }

    .facilitysection-block-image {
        width: 100%;
        padding-top: 0.5vw;
        margin-bottom: 14vw;
    }

    .facilitysection-block-detail {
        flex: 1;
        padding-right: 0;
    }

    .is-image-r .facilitysection-block-detail {
        padding-left: 0;
    }

    .facilitysection-block-sholder {
        font-size: 2.31vw;
        padding-right: 9.5vw;
        letter-spacing: 0.1em;
        margin-bottom: 9.5vw;
    }

    .facilitysection-amenity .facilitysection-block-sholder {
        margin-bottom: 4vw;
    }

    .facilitysection-block-sholder::after {
        width: 6.5vw;
        height: 0.5px;
    }

    .facilitysection-block-title {
        font-size: 4.615vw;
        line-height: 2.35;
        letter-spacing: 0.1em;
        margin-bottom: 13.8vw;
    }

    .facilitysection-block-text {
        font-size: 3.077vw;
        line-height: 2.95;
        letter-spacing: 0.11em;
    }

    .facilitygallary-wrapper {
        position: relative;
        overflow: hidden;
    }

    .facilitygallary-wrapper:not(:last-of-type) {
        margin-bottom: 37vw;
    }

    .facilitygallary-list-item figure figcaption {
        font-size: 2.564vw;
        letter-spacing: 0.02em;
        line-height: 1.6;
        margin-top: 1vw;
    }

    .swiper-button-prev,
    .swiper-container-rtl .swiper-button-next{
        left:5vw;
    }

    .swiper-button-next,
    .swiper-container-rtl .swiper-button-prev{
        right:5vw;
    }

    .swiper-button-next, .swiper-button-prev {
        top: 56.5%;
        width: 3.718vw;
        height: 7.435vw;
        z-index: 10;
    }

    .facilityamenity-title {
        font-size: 3.077vw;
        line-height: 2.5;
        letter-spacing: 0.11em;
    }

    .facilityamenity-title:not(:first-of-type) {
        margin-top: 6.6vw;
    }

    .facilityamenity-list li {
        font-size: 3.077vw;
        line-height: 2.5;
        letter-spacing: 0.09em;
    }
    .facilityamenity-list li::before{line-height: 2.5;}
}


/* iphone5 iphoneSE用 */
@media screen and (max-width: 370px){

}