@charset "utf-8";
/* CSS Document */



/* ========================================

mousecursor

======================================== */
.cursor_02 {
	/* position */
    position: fixed;
    top: 0;
    left: 0;
	/* display */
    opacity: 0;
    z-index: 400;
	/* box */
    width: 140px;
    height: 140px;
	/* font */
    color: #000;
	/* border */
    border-radius: 50%;
    border: solid 1px #fff;
	/* background */
    background-color: rgba( 255, 255, 255, 0.5);
	/* animation */
    transition: .1s;
	/* etc */
    pointer-events: none;
    mix-blend-mode: screen;
}
.cursor_02 .mouse__txt {
	/* position */
    position: absolute;
    top: 50%;
    left: 50%;
	/* display */
    transform: translate(-50%, -50%);
	/* box */
    width: 100%;
	/* font */
    font-family: "Murecho", sans-serif;
    font-size: 1.8rem;
    color: #fff;
    text-align: center;
	/* border */
	/* background */
	/* animation */
	/* etc */
}
.cursor_03 {
	/* position */
    position: fixed;
    top: 0;
    left: 0;
	/* display */
    opacity: 0;
    z-index: 400;
	/* box */
    width: 140px;
    height: 140px;
	/* font */
    color: #000;
	/* border */
    border-radius: 50%;
	/* background */
    background: linear-gradient( to bottom, rgba( 74, 169, 206, 0.5 ), rgba( 31, 58, 109, 0.5 ) );
	/* animation */
    transition: .1s;
	/* etc */
    pointer-events: none;
}
.cursor_03 .mouse__txt {
	/* position */
    position: absolute;
    top: 50%;
    left: 50%;
	/* display */
    transform: translate(-50%, -50%);
	/* box */
    width: 100%;
	/* font */
    font-family: "Murecho", sans-serif;
    font-size: 1.8rem;
    color: #fff;
    text-align: center;
	/* border */
	/* background */
	/* animation */
	/* etc */
}
.cursor_02.show, 
.cursor_03.show {
    opacity: 1;
}



/* ========================================

floorplan/index
floorplan

======================================== */
.floorplan {
	/* position */
    position: relative;
	/* display */
    z-index: 100;
	/* box */
    width: 100%;
    margin: 0 0 150px 0;
    padding: 0;
	/* font */
	/* border */
	/* background */
	/* animation */
	/* etc */
}
@media screen and ( max-width: 768px ){
    .floorplan {
        margin: 0 0 65px 0;
    }
}
/*
floorplan_bg_line
*/
.floorplan .floorplan_bg_line {
	/* position */
    position: absolute;
    top: 45%;
    top: 70%;
    left: calc( 50% - 960px );
	/* display */
    z-index: 1;
    overflow: hidden;
	/* box */
    width: 100%;
    max-width: 1920px;
    margin: 0 auto;
	/* font */
	/* border */
	/* background */
	/* animation */
	/* etc */
}
.floorplan .floorplan_bg_line svg {
	/* position */
	/* display */
	/* box */
    width: 1920px;
    height: 443.41px;
	/* font */
	/* border */
	/* background */
	/* animation */
	/* etc */
}
.floorplan .floorplan_bg_line .svg_path_line_01 {
	/* position */
	/* display */
	/* box */
	/* font */
	/* border */
	/* background */
	/* animation */
	/* etc */
    stroke-dasharray: 2100px;
    stroke-dashoffset: 2100px;
}
.floorplan .floorplan_bg_line .svg_path_line_01.active {
	/* position */
	/* display */
	/* box */
	/* font */
	/* border */
	/* background */
	/* animation */
    animation: move_line_01 5s;
    animation-fill-mode: forwards;
	/* etc */
    stroke-dasharray: 2100px;
}
@keyframes move_line_01 {
    0% {
        stroke-dashoffset: 2100px;
    }
    to {
        stroke-dashoffset: 0px;
    }
}
@media screen and ( max-width: 1920px ){
    .floorplan .floorplan_bg_line {
        left: 0;
    }
}
@media screen and ( max-width: 768px ){
    .floorplan .floorplan_bg_line {
        display: none;
    }
}
.floorplan .floorplan_bg_line_bottom_sp {
	/* position */
    position: absolute;
    top: 103%;
    left: 0;
	/* display */
    display: none;
	/* box */
	/* font */
	/* border */
	/* background */
	/* animation */
	/* etc */
}
@media screen and ( max-width: 768px ){
    .floorplan .floorplan_bg_line_bottom_sp {
        display: block;
    }
}
/*
floorplan_container
*/
.floorplan .floorplan_container {
	/* position */
    position: relative;
	/* display */
    z-index: 200;
	/* box */
    width: 100%;
    max-width: 1950px;
    margin: 0 auto 0 auto;
    padding: 0 15px;
	/* font */
	/* border */
	/* background */
	/* animation */
	/* etc */
}
@media screen and ( max-width: 768px ){
    .floorplan .floorplan_container {
        margin: 0 0 0 0;
    }
}
/*
lead
*/
.floorplan .floorplan_container .lead {
	/* position */
	/* display */
	/* box */
    width: 100%;
    max-width: 1200px;
    margin: 0 auto 0 auto;
    padding: 0 0 50px 0;
	/* font */
    text-align: center;
	/* border */
	/* background */
	/* animation */
	/* etc */
}
.floorplan .floorplan_container .lead h2 {
	/* position */
	/* display */
    display: inline-block;
	/* box */
    padding: 0;
	/* font */
    font-family: "Murecho", sans-serif;
    font-size: 3.2rem;
    line-height: 1.5em;
    text-align: center;
	/* border */
	/* background */
    background: linear-gradient( to right ,#1f3a6d , #4babd0 );
    background: -webkit-linear-gradient( to right ,#1f3a6d , #4babd0 );
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
	/* animation */
	/* etc */
}
@media screen and ( max-width: 768px ){
    .floorplan .floorplan_container .lead {
        margin: 0 auto 0 auto;
        padding: 0 0 25px 0;
    }
    .floorplan .floorplan_container .lead h2 {
        font-size: 2.0rem;
    }
}
/*
caption
*/
.floorplan .floorplan_container .caption {
	/* position */
	/* display */
	/* box */
    margin: 0 auto;
    padding: 0 0 2.0em 0;
	/* font */
    text-align: center;
	/* border */
	/* background */
	/* animation */
	/* etc */
}
.floorplan .floorplan_container .caption p {
	/* position */
	/* display */
    display: inline-block;
	/* box */
    padding: 0;
	/* font */
    font-family: "Murecho", sans-serif;
    font-size: 2.0rem;
    color: #1f3a6d;
    line-height: 1.5em;
    text-align: center;
	/* border */
	/* background */
	/* animation */
	/* etc */
}
@media screen and ( max-width: 768px ){
    .floorplan .floorplan_container .caption {
        padding: 0 0 1.5em 0;
    }
    .floorplan .floorplan_container .caption p {
        font-size: 1.8rem;
        line-height: 1.5em;
    }
}
/*
text
*/
.floorplan .floorplan_container .text {
	/* position */
	/* display */
	/* box */
    width: 100%;
    max-width: 560px;
    margin: 0 auto 0 auto;
    padding: 0 0 40px 0;
	/* font */
    text-align: center;
	/* border */
	/* background */
	/* animation */
	/* etc */
}
.floorplan .floorplan_container .text p {
	/* position */
	/* display */
    display: block;
	/* box */
    margin: 0 0 0 0;
    padding: 0 0 40px 0;
	/* font */
    font-family: "Murecho", sans-serif;
    font-size: 1.6rem;
    line-height: 1.5em;
    text-align: left;
	/* border */
	/* background */
	/* animation */
	/* etc */
}
@media screen and ( max-width: 768px ){
    .floorplan .floorplan_container .text {
        padding: 0 0 0 0;
    }
    .floorplan .floorplan_container .text p {
        padding: 0 0 30px 0;
        font-size: 1.5rem;
        line-height: 1.5em;
    }
}
/*
image_container
*/
.floorplan .floorplan_container .image_container {
	/* position */
	/* display */
	/* box */
    width: 100%;
    max-width: 833px;
    margin: 0 auto 90px auto;
    padding: 0 0 0 0;
	/* font */
	/* border */
	/* background */
    background-color: #fff;
	/* animation */
	/* etc */
}
.floorplan .floorplan_container .image_container .floor_image {
	/* position */
	/* display */
	/* box */
    width: 100%;
    max-width: 803px;
    margin: 0 auto 0 auto;
	/* font */
	/* border */
	/* background */
	/* animation */
	/* etc */
}
.floorplan .floorplan_container .image_container .floor_image::before {
    display: none;
}
.floorplan .floorplan_container .image_container .floor_image img {
	/* position */
	/* display */
    display: block;
	/* box */
    margin: 0 0 15px 0;
    width: 100%;
	/* font */
	/* border */
	/* background */
	/* animation */
	/* etc */
}
.floorplan .floorplan_container .image_container .floor_image .annotation {
	/* position */
	/* display */
	/* box */
    margin: 0 auto 0 auto;
    padding: 0;
	/* font */
    font-size: 1.2rem;
    color: #999;
	/* border */
	/* background */
	/* animation */
	/* etc */
}
@media screen and ( max-width: 768px ){
    .floorplan .floorplan_container .image_container {
        margin: 0 auto 30px auto;
    }
    .floorplan .floorplan_container .image_container .floor_image {
        padding: 0 0 15px 0;
    }
    .floorplan .floorplan_container .image_container .floor_image::before {
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        content: '';
        width: 100%;
        height: 100%;
        background-image: url( '../img/common/icon_zoom.png' );
        background-repeat: no-repeat;
        background-position: center;
        opacity: 1;
        transition: opacity 1s;
    }
    .floorplan .floorplan_container .image_container .floor_image.active::before {
        opacity: 0;
    }
    .floorplan .floorplan_container .image_container .floor_image .annotation {
        font-size: 1.0rem;
    }
}
/*
air_conditioning_flexbox
*/
.floorplan .floorplan_container .air_conditioning_flexbox {
	/* position */
	/* display */
    display: flex;
    justify-content: space-between;
    flex-wrap: nowrap;
	/* box */
    width: 100%;
    max-width: 1200px;
    margin: 0 auto 0 auto;
    padding: 0 0 40px 0;
	/* font */
	/* border */
	/* background */
    background-color: #fff;
	/* animation */
	/* etc */
}
.floorplan .floorplan_container .air_conditioning_flexbox .flexitem_text {
	/* position */
	/* display */
	/* box */
    width: 44%;
    max-width: 529px;
    margin: 0 auto 0 auto;
    padding: 0 20px 40px 0;
	/* font */
	/* border */
	/* background */
	/* animation */
	/* etc */
}
.floorplan .floorplan_container .air_conditioning_flexbox .flexitem_text .textbox {
	/* position */
    position: relative;
	/* display */
	/* box */
    margin: 0 0 50px 0;
	/* font */
	/* border */
	/* background */
	/* animation */
	/* etc */
}
.floorplan .floorplan_container .air_conditioning_flexbox .flexitem_text .textbox .title {
	/* position */
	/* display */
	/* box */
    margin: 0 0 15px 0;
	/* font */
    font-family: "Murecho", sans-serif;
    font-size: 2.4rem;
    color: #1f3a6d;
	/* border */
    border-bottom: solid #000 1px;
	/* background */
	/* animation */
	/* etc */
}
.floorplan .floorplan_container .air_conditioning_flexbox .flexitem_text .textbox p {
	/* position */
	/* display */
	/* box */
	/* font */
    line-height: 1.5em;
    font-family: "Murecho", sans-serif;
    text-align: justify;
	/* border */
	/* background */
	/* animation */
	/* etc */
}
.floorplan .floorplan_container .air_conditioning_flexbox .flexitem_image {
	/* position */
	/* display */
	/* box */
    width: 56%;
    max-width: 671px;
    margin: 0 auto 40px auto;
    padding: 0 0 0 0;
	/* font */
	/* border */
	/* background */
	/* animation */
	/* etc */
}
.floorplan .floorplan_container .air_conditioning_flexbox .flexitem_image::before {
    display: none;
}
.floorplan .floorplan_container .air_conditioning_flexbox .flexitem_image img {
	/* position */
	/* display */
    display: block;
	/* box */
    width: 100%;
    margin: 0 0 10px 0;
	/* font */
	/* border */
	/* background */
	/* animation */
	/* etc */
}
.floorplan .floorplan_container .air_conditioning_flexbox .flexitem_image .annotation {
	/* position */
	/* display */
	/* box */
	/* font */
    font-size: 1.2rem;
    text-align: right;
	/* border */
	/* background */
	/* animation */
	/* etc */
}
@media screen and ( max-width: 768px ){
    .floorplan .floorplan_container .air_conditioning_flexbox {
        flex-wrap: wrap;
        padding: 0 0 20px 0;
        background-color: transparent;
    }
    .floorplan .floorplan_container .air_conditioning_flexbox .flexitem_text {
        width: 100%;
        max-width: none;
        margin: 0 auto 0 auto;
        padding: 0 0 0 0;
    }
    .floorplan .floorplan_container .air_conditioning_flexbox .flexitem_text .textbox {
        margin: 0 0 30px 0;
    }
    .floorplan .floorplan_container .air_conditioning_flexbox .flexitem_text .textbox .title {
        font-size: 1.8rem;
    }
    .floorplan .floorplan_container .air_conditioning_flexbox .flexitem_text .textbox p {
        font-size: 1.6rem;
    }
    .floorplan .floorplan_container .air_conditioning_flexbox .flexitem_image {
        width: 100%;
    }
    .floorplan .floorplan_container .air_conditioning_flexbox .flexitem_image::before {
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        content: '';
        width: 100%;
        height: 100%;
        background-image: url( '../img/common/icon_zoom.png' );
        background-repeat: no-repeat;
        background-position: center;
        opacity: 1;
        transition: opacity 1s;
    }
    .floorplan .floorplan_container .air_conditioning_flexbox .flexitem_image.active::before {
        opacity: 0;
    }
    .floorplan .floorplan_container .air_conditioning_flexbox .flexitem_image .annotation {
        font-size: 1.0rem;
    }
}
/*
elevator_flexbox
*/
.floorplan .floorplan_container .elevator_flexbox {
	/* position */
	/* display */
    display: flex;
    justify-content: space-between;
    flex-wrap: nowrap;
	/* box */
    width: 100%;
    max-width: 1200px;
    margin: 0 auto 0 auto;
    padding: 0 0 0 0;
	/* font */
	/* border */
	/* background */
    background-color: #fff;
	/* animation */
	/* etc */
}
.floorplan .floorplan_container .elevator_flexbox .flexitem_text {
	/* position */
	/* display */
	/* box */
    width: 44%;
    max-width: 529px;
    margin: 0 auto 0 auto;
    padding: 0 20px 40px 0;
	/* font */
	/* border */
	/* background */
	/* animation */
	/* etc */
}
.floorplan .floorplan_container .elevator_flexbox .flexitem_text .title {
	/* position */
	/* display */
	/* box */
    margin: 0 0 15px 0;
	/* font */
    font-family: "Murecho", sans-serif;
    font-size: 2.4rem;
    color: #1f3a6d;
	/* border */
    border-bottom: solid #000 1px;
	/* background */
	/* animation */
	/* etc */
}
.floorplan .floorplan_container .elevator_flexbox .flexitem_text p {
	/* position */
	/* display */
	/* box */
	/* font */
    line-height: 1.5em;
    font-family: "Murecho", sans-serif;
    text-align: justify;
	/* border */
	/* background */
	/* animation */
	/* etc */
}
.floorplan .floorplan_container .elevator_flexbox .flexitem_image {
	/* position */
	/* display */
	/* box */
    width: 56%;
    max-width: 671px;
    margin: 0 auto 0 auto;
    padding: 0 0 0 0;
	/* font */
	/* border */
	/* background */
	/* animation */
	/* etc */
}
.floorplan .floorplan_container .elevator_flexbox .flexitem_image .image_flexbox {
	/* position */
	/* display */
    display: flex;
    justify-content: space-between;
    flex-wrap: nowrap;
	/* box */
    width: 100%;
	/* font */
	/* border */
	/* background */
	/* animation */
	/* etc */
}
.floorplan .floorplan_container .elevator_flexbox .flexitem_image .image_flexbox .flexitem {
	/* position */
    position: relative;
	/* display */
	/* box */
    width: 47.7%;
    max-width: 320px;
	/* font */
	/* border */
	/* background */
	/* animation */
	/* etc */
}
.floorplan .floorplan_container .elevator_flexbox .flexitem_image .image_flexbox .flexitem img {
    width: 100%;
}
.floorplan .floorplan_container .elevator_flexbox .flexitem_image .image_flexbox .flexitem .annotation {
	/* position */
    position: absolute;
    bottom: 10px;
    right: 10px;
	/* display */
	/* box */
	/* font */
    color: #fff;
    font-size: 1.2rem;
	/* border */
	/* background */
	/* animation */
	/* etc */
}
@media screen and ( max-width: 768px ){
    .floorplan .floorplan_container .elevator_flexbox {
        flex-wrap: wrap;
        background-color: transparent;
    }
    .floorplan .floorplan_container .elevator_flexbox .flexitem_text {
        width: 100%;
        max-width: none;
        margin: 0 auto 0 auto;
        padding: 0 0 30px 0;
        background-color: #fff;
    }
    .floorplan .floorplan_container .elevator_flexbox .flexitem_text .title {
        font-size: 1.8rem;
        margin: 0 0 20px 0;
    }
    .floorplan .floorplan_container .elevator_flexbox .flexitem_text p {
        font-size: 1.6rem;
    }
    .floorplan .floorplan_container .elevator_flexbox .flexitem_image {
        width: 100%;
    }
    .floorplan .floorplan_container .elevator_flexbox .flexitem_image .image_flexbox .flexitem .annotation {
        bottom: 5px;
        right: 5px;
        font-size: 1.0rem;
    }
}





.view_photo {
	/* position */
    position: relative;
	/* display */
    z-index: 100;
	/* box */
    width: 100%;
    margin: 0 0 120px 0;
    padding: 0;
	/* font */
	/* border */
	/* background */
	/* animation */
	/* etc */
}
.view_photo .title_view_photo {
	/* position */
    position: relative;
	/* display */
    z-index: 100;
	/* box */
    width: 100%;
    margin: 0 0 60px 0;
    padding: 60px 0 0 0;
	/* font */
	/* border */
	/* background */
	/* animation */
	/* etc */
}
.view_photo .title_view_photo .title {
	/* position */
    position: relative;
	/* display */
	/* box */
    margin: 0 0 30px 0;
    padding: 0;
	/* font */
    text-align: center;
    font-family: "Murecho", sans-serif;
    font-size: 2.4rem;
    color: #22396c;
    line-height: 1;
    letter-spacing: 0.05em;
	/* border */
	/* background */
	/* animation */
	/* etc */
}
.view_photo .title_view_photo .annotation {
	/* position */
    position: relative;
	/* display */
	/* box */
    margin: 0;
    padding: 0;
	/* font */
    text-align: center;
    font-family: "Murecho", sans-serif;
    font-size: 1.6rem;
    color: #333;
    line-height: 1.5;
    letter-spacing: 0.075em;
	/* border */
	/* background */
	/* animation */
	/* etc */
}
.view_photo .img_container {
	/* position */
	/* display */
	/* box */
    width: 100%;
    margin: 0 0 30px 0;
	/* font */
	/* border */
	/* background */
	/* animation */
	/* etc */
}
.view_photo .img_container .image_box {
	/* position */
	/* display */
    display: block;
	/* box */
    width: 100%;
    /* padding: 19.59% 0 0 0; */
    padding: 40% 0 0 0;
	/* font */
	/* border */
	/* background */
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
	/* animation */
	/* etc */
}
.view_photo .img_container .image_box.day {
    background-image: url( '../img/floorplan/index/view_photo__img_container__day.jpg' );
}
.view_photo .img_container .image_box.night {
    background-image: url( '../img/floorplan/index/view_photo__img_container__night.jpg' );
}
.view_photo .btn_container {
	/* position */
	/* display */
	/* box */
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 0 0 0;
	/* font */
	/* border */
	/* background */
	/* animation */
	/* etc */
}
.view_photo .btn_container .btn_flexbox {
	/* position */
	/* display */
    display: flex;
    justify-content: space-between;
    flex-wrap: nowrap;
    align-items: center;
	/* box */
    width: 100%;
    max-width: 500px;
    margin: 0 auto;
    padding: 0 0 60px 0;
	/* font */
	/* border */
	/* background */
	/* animation */
	/* etc */
}
.view_photo .btn_container .btn_flexbox .flexitem {
	/* position */
	/* display */
	/* box */
    width: 46%;
    max-width: 230px;
    height: 48px;
	/* font */
	/* border */
	/* background */
	/* animation */
	/* etc */
}
.view_photo .btn_container .btn_flexbox .flexitem a {
	/* position */
	/* display */
    display: block;
	/* box */
    width: 100%;
    height: 48px;
    margin: 0;
    padding: 12px 0 0 0;
	/* font */
    font-family: "Murecho", sans-serif;
    font-size: 1.8rem;
    text-align: center;
    color: #fff;
	/* border */
    border: solid 1px #FFF;
	/* background */
    background: linear-gradient( to right, #0086d1 0%, #003686 50%, #0086d1 100% );
    background-size: 200% auto;
    background-position: 100% 50%;
	/* animation */
    transition: all 0.3s ease-out;
	/* etc */
}
.view_photo .btn_container .btn_flexbox .flexitem a:hover {
    background-position: 0% 50%;
}
.view_photo .btn_container .btn_flexbox .flexitem a.active {
	/* position */
	/* display */
	/* box */
	/* font */
    color: #003686;
	/* border */
    border: solid 1px #003686;
	/* background */
    background: #fff;
	/* animation */
    transition: all 0.3s linear;
	/* etc */
    cursor: default;
}
.view_photo .btn_container .btn_flexbox .flexitem a {
}
.view_photo .btn_container .annotation {
	/* position */
	/* display */
	/* box */
	/* font */
    font-size: 1.2rem;
    color: #999;
	/* border */
	/* background */
	/* animation */
	/* etc */
}
@media screen and ( max-width: 768px ){
    .view_photo {
        margin: 0 0 50px 0;
    }
    .view_photo .title_view_photo {
        margin: 0 0 30px 0;
        padding: 30px 0 0 0;
    }
    .view_photo .title_view_photo .title {
        margin: 0 0 15px 0;
        font-size: 1.8rem;
    }
    .view_photo .title_view_photo .annotation {
        font-size: 1.0rem;
        line-height: 1.5;
    }
    .view_photo .img_container {
        margin: 0 0 10px 0;
    }
    .view_photo .btn_container {
        padding: 0 15px;
    }
    .view_photo .btn_container .btn_flexbox {
        max-width: 250px;
        padding: 0 0 25px 0;
    }
}





