@charset "utf-8";

/* ==============================================================
/*     Reset  
/* ============================================================== */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video { margin: 0; padding: 0; border: 0; font: inherit; font-size: 100%; vertical-align: baseline; }
article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary { display: block; }

/* ==============================================================
/*     BASE
/* ============================================================== */
html { font-size: 62.5%; }
body{
    background: #fff;
    color: #222;
    font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
    line-height: 1;
    opacity: 0; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=$n100)"; filter: alpha(opacity=0); -moz-opacity: 0;
}
body.loaded { opacity: 1; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=$n100)"; filter: alpha(opacity=100); -moz-opacity: 1; transition-property: all; transition-duration: 2s; transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1); }

/*
h1{ font-size: 18px}
h2{ font-size: 16px}
h3{ font-size: 14px}
h4{ font-size: 16px}
h1,h2,h3,h4,h5,h6,strong{ font-weight:bold}
*/

ol, ul { list-style: none; }
table { border-collapse: collapse; border-spacing: 0; }
caption, th, td { text-align: left; font-weight: normal; vertical-align: middle; }
q, blockquote { quotes: none; }
q::before, q::after, blockquote::before, blockquote::after { content: ""; content: none; }
a img { border: none; }

/* p, li, th, td, dt, dd, address{
    font-size: 13px;
    line-height: 1.4;
} */
input, select, button{
    vertical-align:middle;
    font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}

/* link
---------------------------------*/
a {text-decoration: none; color: #000;-webkit-transition: all .4s ease;transition: all .4s ease; }
a:hover { text-decoration: none; }
a:hover img { opacity: .6; }

/* clearfix
---------------------------------*/
.cf {zoom: 1;}
.cf::before {content: "";display: table;}
.cf::after {content: "";display: table;clear: both;}

/* ==============================================================
/*     HEADER
/* ============================================================== */
.header{
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100;
    background: #fff;
    width: 100%;
    height: 114px;
    opacity: 0; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=$n100)"; filter: alpha(opacity=0); -moz-opacity: 0;
    -webkit-transition: all 1.2s ease;transition: all 1.2s ease;
}
.header.loaded { opacity: 1; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=$n100)"; filter: alpha(opacity=100); -moz-opacity: 1; transition-property: all; transition-duration: 5.5s; transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1); }
.header.sc{
    box-shadow: 0px 1px 8px rgba(0,0,0,0.2);
}


.h_inner{
    position: relative;
    max-width: 1000px;
    margin:0 auto;
    padding: 60px 0 20px;
}
.h_inner .logo{
    float: left;
    margin-left: 10px;
}
.h_inner .logo img{
    width: 178px;
    height: 32.7px;
}
.h_pre{
    position: absolute;
    top: 66px;
    left: 212px;
    display: inline-block;
    padding: 4px 7px;
    border: 1px solid #bcbcbc;
    font-size: 14px;
    letter-spacing: 0.1em;
    color: #757575;
}

.h_inner .gnav{
    float: right;
    margin-top: 15px;
    margin-right: 5px;
}
.h_inner .gnav li{
    float: left;
    margin-left: 37px;
    font-size: 11px;
    font-weight: bold;
    letter-spacing: 0.2em;
    font-family:"TBGothic M","TBゴシック M",sans-serif;
}
.h_inner .gnav li a{
    position: relative;
    display: block;
}
.h_inner .gnav li a::before{
    content: "";
    position: absolute;
    bottom: -3px;
    left: -3%;
    background: #000;
    width: 0%;
    height: 1px;
    -webkit-transition: all .4s ease;transition: all .4s ease;
}
.concept .h_inner .gnav li:nth-child(1) a::before,
.shinkawa .h_inner .gnav li:nth-child(2) a::before,
.plans .h_inner .gnav li:nth-child(3) a::before,
.oto .h_inner .gnav li:nth-child(4) a::before,
.tsunagari .h_inner .gnav li:nth-child(5) a::before,
.sozai .h_inner .gnav li:nth-child(6) a::before,
.outline .h_inner .gnav li:nth-child(7) a::before{
    width: 105%;
}

.h_inner .gnav li a:hover::before{
    width: 105%;
}
.header .h_contact{
    position: absolute;
    top: 0;
    right: 0;
    padding: 10px;
}
.header .h_contact div{
    display: inline-block;
    margin-left: 40px;
    font-size: 11px;
    font-weight: bold;
    letter-spacing: 0.2em;
    font-family:"TBGothic M",sans-serif;
}
.header .h_contact div a{
    background: url('../../assets/img/cmn/icon_link.png') no-repeat center right;
    padding-right: 15px;
}
.header .h_contact div.comingsoon{
    color: #aaa;
}

.header .sp_menu{
    display: none;
}
.cont_wrap{
    margin-top: 114px;
}

@media screen and (max-width: 940px){
    .h_pre{
        top: 70px;
        left: 200px;
        font-size: 12px;
    }
    .pre .h_inner .gnav li{
        margin-left: 29px;
    }
}

@media screen and (max-width: 850px){
    .header{
        height: 50px;
        box-shadow: 0px 1px 8px rgba(0,0,0,0.2);
    }
    .h_inner{
        padding: 0 0 11px;
    }
    .header.active .h_inner{
        z-index: 101;
        box-shadow: 0px 1px 8px rgba(0,0,0,0.2);
    }
    .h_inner .logo{
        margin-top: 11px;
        margin-left: 15px;
    }
    .h_inner .logo img{
        width: 142px;
        height: 26px;
    }
    .h_inner nav,.header .h_contact{
        display: none;
    }
    .header.active .h_contact{
        display: table;
        top: 270px;
        width: 100%;
        padding: 0;
        z-index: 101;
        background: #000;
    }
    .header.active .h_contact div{
        display: table-cell;
        width: 50%;
        margin-left:0;
        text-align: center;
    }
    .header.active .h_contact div.comingsoon{
        color: #666;
    }
    .header.active .h_inner nav{
        position: absolute;
        top: 50px;
        left: 0;
        z-index: 100;
        background: rgba(256,256,256,0.9);
        width: 100%;
        height: auto;
    }
    .h_inner .gnav{
        float: none;
        margin-right: 0;
        opacity: 0;
    }
    .header.active .h_inner .gnav{
        opacity: 1;
    }
    .h_inner .gnav li{
        width: 50%;
        margin-left: 0;
        font-size: 14px;
        text-align: center;
    }
    .h_inner .gnav li:nth-child(odd){
        border-right: 1px solid #ccc;
        box-sizing: border-box;
    }
    .h_inner .gnav li a{
        height: 48px;
        line-height: 48px;
        text-decoration: underline;
    }
    .h_inner .gnav li a::before{
        content: none;
    }
    .header.active .h_contact div a{
        display: block;
        background: none;
        height: 40px;
        padding-right: 0;
        line-height: 40px;
        color: #fff;
    }
    .header.active .h_contact div:first-child a{
        border-right: 1px solid #fff;
    }
    .header .sp_menu{
        display: block;
        position: absolute;
        top: 2px;
        right: 4px;
        z-index: 200;
        width: 45px;
        height: 45px;
        cursor: pointer;
    }
    .header .sp_menu span{
        display: block;
        position: absolute;
        top: 50%;
        left: 10px;
        background: #000;
        width:25px;
        height: 1px;
        transition: all .4s;
    }
    .header .sp_menu span.line1{
        margin-top: -7px;
    }
    .header .sp_menu span.line3{
        margin-top: 7px;
    }
    .header.active .sp_menu span.line1{
        margin-top: 0;
        -moz-transform: rotate(45deg);
        -webkit-transform: rotate(45deg);
        -o-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        transform: rotate(45deg)
    }
    .header.active .sp_menu span.line2{
        opacity: 0;
    }
    .header.active .sp_menu span.line3{
        margin-top: 0;
        -moz-transform: rotate(-45deg);
        -webkit-transform: rotate(-45deg);
        -o-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        transform: rotate(-45deg)
    }
    .cont_wrap{
        margin-top: 50px;
    }

    /*-- 予告広告 --*/

    .h_pre{
        top: 14px;
        left: 168px;
        font-size: 12px;
    }
    .pre .h_inner .gnav li{
        margin-left: 0;
    }

}

/* ==============================================================
/*     FOOTER
/* ============================================================== */
.sec_contact{
    position: relative;
    background: #f0f0f0;
    padding: 80px 20px;
    text-align: center;
}
.sec_contact .btn_contact a{
    position: relative;
    display: block;
    max-width: 456px;
    margin: 0 auto;
    padding: 28px 0;
    border: 3px solid #000;
    color: #000;
    font-size: 19px;
    font-weight: bold;
    letter-spacing: 0.1em;
}
.sec_contact .btn_contact a::before,.sec_contact .btn_contact a::after{
    content: "";
    position: absolute;
    top: 50%;
    right: 40px;
    width: 10px;
    height: 10px;
    margin-top: -5px;
    border-top: 1px solid #000;
    border-right: 1px solid #000;
    -moz-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}
.sec_contact .btn_contact a::after{
    right: 50px;
}
.sec_contact .btn_contact a:hover{
    background: #000;
    color: #fff;
}
.sec_contact .btn_contact a:hover::before,.sec_contact .btn_contact a:hover::after{
    border-color: #fff;
}
.footer{
    background: #a9b1b4;
    padding: 21px 0 18px;
    color: #fff;
    font-size: 16px;
    line-height: 1.4;
    text-align: center;
}
.footer .tel{
    margin: 5px 0;
    font-size: 30px;
}
.footer .tel a{
    color: #fff;
    font-size: 40px;
    pointer-events: none;
    cursor: default;
}
.footer .detail{
     font-size: 15px;
}

/*---- 予告広告 ---*/

.previous{
    background: #f7f7f7;
    width: 100%;
    padding: 11px 14px;
    border-bottom: 1px solid #e9e9e9;
    box-sizing: border-box;
}
.previous dt{
    float: left;
    width: 85px;
    height: 52px;
    line-height: 52px;
    border: 1px solid #a6a6a6;
    font-size: 14.5px;
    letter-spacing: 0.1em;
    text-align: center;
}
.previous dd{
    padding-left: 100px;
    font-size: 14px;
    line-height: 1.3;
}

@media screen and (max-width: 850px){

    /*---- 予告広告 ---*/
    .previous{
        height: 97px;
        padding: 10px;
        box-sizing: border-box;
    }
    .previous dt{
        float: none;
        width: 75px;
        height: auto;
        line-height: 1.0;
        padding: 4px 0;
        font-size: 12px;
        letter-spacing: 0.1em;
        text-align: center;
    }
    .previous dd{
        padding-top: 7px;
        padding-left: 0;
        font-size: 10px;
        line-height: 1.6;
    }
    .previous dd br{
        display: none;
    }
}

.copyright p{
    float: left;
    padding: 15px;
    font-size: 12px;
}
.logo_tokyu{
    float: right;
    padding: 13px 10px;
}
main{
    position: relative;
}
.toTop{
    display: none;
    position: fixed;
    bottom: 10px;
    right: 10px;
    margin-bottom: -75px;
    padding-bottom: 10px;
    z-index:5;
    -webkit-transition: all 1s ease;transition: all 1s ease;
}
.toTop.in{
    margin-bottom: 0;
}
.toTop a{
    position: relative;
    display: block;
    width: 32px;
    height: 32px;
    border: 2px solid #272727;
    border-radius: 50%;
    opacity: 0.4;
    overflow: hidden;
    text-indent: 105%;
    white-space: nowrap;
}
.toTop a::before{
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 10px;
    height: 10px;
    margin: -1px 0 0 -5.5px;
    /* border-top: 2px solid #272727; */
    border-left: 2px solid #272727;
    -moz-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}
.toTop a::after{
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 10px;
    height: 10px;
    margin: -2px 0 0 -5px;
    border-top: 2px solid #272727;
    /* border-left: 2px solid #272727; */
    -moz-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}


.toTop a:hover{
    opacity: 0.8;
}



/* ==============================================================
/*     COMMON
/* ============================================================== */
.cont_ttl{
    position: relative;
    padding: 64px 0 60px;
    font-size: 20px;
    font-weight: bold;
    text-align: center;
    letter-spacing: 0.2em;
    font-family:"TBGothic M",sans-serif;
}
.cont_ttl span{
    position: relative;
    display: inline-block;
}
.cont_ttl span::after{
    content: "";
    position: absolute;
    bottom: -3px;
    left: 0;
    background: #000;
    width: 100%;
    height: 1px;
}

.mv {
    position: relative;
}
.mv iframe{ 
    width: 100%;
    height: auto;
}
.mv img{
    width: 100%;
}
.mv .mv_ttl{
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%,-50%);
    -ms-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
    background: #fff;
    width: 120px;
    height: 120px;
    line-height: 120px;
    border-radius: 50%;
    font-size: 20px;
    letter-spacing: 0.1em;
    text-align: center;
}
.mv .mv_ttl span{
    position: relative;
    display: inline-block;
}
.mv .mv_ttl span::after{
    content: "";
    position: absolute;
    top: 60%;
    left: 0;
    background: #000;
    width: 100%;
    height: 1px;
}
.mv .attention,.img .attention{
    margin: 4px 3px;
    color: #666;
    font-size: 10px;
    line-height: 1.4;
    text-align: right;
}
.sec_ttl{
    font-size: 19px;
    line-height: 1.9;
    text-align: center;
    font-weight: bold;
    letter-spacing: 0.2em;
    font-family:"TBGothic M",sans-serif;
}
.sec_lead{
    font-size: 18px;
    line-height: 2.1;
    font-weight: bold;   
}

.pra_ttl{
    margin-bottom: 55px;
    font-size: 19px;
    line-height: 1.9;
    font-weight: bold;
}
.suptxt{
    font-size: 70%;
    vertical-align: top;
    position: relative;
    top: -0.1em;
}
.lower .cont_wrap{
    padding-bottom: 80px;
}
.cont_inner{
    max-width: 1000px;
    padding: 0 20px;
    margin: 95px auto 0;
}
.cont_wrap .left{
    float: left;
    max-width: 460px;
}
.cont_wrap .right{
    float: right;
    max-width: 530px;
}

.cont_wrap .txt{
    font-size: 16px;
    line-height: 2.6;
}
.cont_wrap .notes{
    clear: both;
    font-size: 11px;
    line-height: 1.7;
    text-align: center;
}
.cont_wrap .left .notes{
    margin-bottom: 1em;    
    text-align: left;
}

.cont_wrap .img{
    margin-bottom: 45px;
    text-align: right;
}
.line{
    border: 1px solid #d5d5d5;
    box-sizing: border-box;    
}

.cont_wrap .img img{
    width: 100%;
    vertical-align: bottom;
}
.cont_wrap .img .cap{
    margin-top: 8px;
    font-size: 11px;
    line-height: 1.4;
}




/* ==============================================================
/*     CONTENTS
/* ============================================================== */
/* index
---------------------------------*/
.youtube-container {
    position: relative;
    padding-bottom: 56.25%;
    /* padding-top: 30px; */
    height: 0;
    overflow: hidden;
}

.youtube-container iframe {
  max-width: none;
  width: calc(100% + (45px * 1.78));
  height: calc(100% + 45px);
  -webkit-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
  position: absolute;
  z-index: 1;
  top: 0;
  left: 50%;
}

/* Vimeo */
.visual-movie {
  padding-bottom: 56.25%;
  position: relative;
  z-index: 1;
}
.visual-movie iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
}

.top .sec02{
    max-width: 1000px;
    margin: 0 auto;
    padding-bottom: 40px;
}
.top .sec02 h2{
    margin: 80px 0 70px;
    font-size: 19px;
    font-weight: bold;
    text-align: center;
    letter-spacing: 0.2em;
    font-family:"TBGothic M",sans-serif;
}
.top .sec02 ul li{
    float: left;
    width: 292px;
    height: 430px;
    margin: 0 20px;
}
.top .sec02 ul li a img{
    -webkit-transition: all .4s ease;
    transition: all .4s ease;
    width: 100%;
    /* border:1px solid #c9c9c9; */
}
.top .sec02 ul li a:hover img{
    opacity: 0.7;

}
.top .sec02 ul li .sec02_ttl{
    position: relative;
    display: inline-block;
    margin: 30px 0 20px;
    font-size: 16px;
    font-weight: bold;
    letter-spacing: 0.2em;
    font-family:"TBGothic M",sans-serif;
}
.top .sec02 ul li .sec02_ttl::after{
    content: "";
    position: absolute;
    bottom: -3px;
    left: 0;
    background: #000;
    width: 100%;
    height: 1px;
}
.top .sec02 ul li p{
    font-size: 13px;
    line-height: 1.8;
}
.top .sec02 .notes{
    margin-bottom: 1.5em;
    font-size: 11px;
    line-height: 1.8;
    text-align: center;
}

/* tsunagari
---------------------------------*/
.tsunagari .cont_wrap .left .img{
    max-width: 295px;
    margin: 0 auto;
}


/* oto
---------------------------------*/
.cont_wrap .smallbox .img{
    float: left;
    width: 256px;
    margin-left:18px;
    margin-bottom: 20px;
}
.cont_wrap .smallbox .img:first-child{
    margin-left: 0;
}
.cont_wrap .left ul.notes{
    margin: 15px 0 40px;
}
.cont_wrap .left ul.notes li{
    margin-bottom: 1em;
    font-size: 12px;
}

.credit{
    font-size: 18px;
}
.credit .powered{
    font-size: 16px;
}
.credit .link{
    font-size: 13px;
}
.credit a{
    color: #009999;
    text-decoration: underline;
}
.oto .notes{
    clear: both;
    padding-top: 90px;
}


/* outline
---------------------------------*/

.outline .cont_inner{
    max-width: 750px;
    margin: 0 auto;
    line-height: 2.0;
}
.outline table{
    width: 100%;
    border-bottom: 1px solid #d5d5d5;
}
.outline table td{
    padding: 15px;
    border-top:1px solid #d5d5d5;
    border-right:1px solid #d5d5d5;
    font-size: 12px;
    line-height: 2.2;
}
.outline table .hd{
    background: #f5f8fd;
    border-left:1px solid #d5d5d5; 
}
.outline .notes{
    max-width: 750px;
    margin: 0 auto;
    padding: 60px 20px 0;
    font-size: 14px;
    text-align: left;
}
.outline .notes.bottom{
    padding: 40px 0 30px;
    font-size: 12px;
}
.outline .date{
    font-size: 12px;
    text-align: right;
}
/* shinkawa
---------------------------------*/
.shinkawa.lower .cont_wrap{
    padding-bottom: 30px;
}
.shinkawa .cont_wrap .txt{
    padding: 15px 10px
}
.img_holder{
    clear: both;
    padding-top: 35px;
}
.img_holder .img{
    float: left;
    width: 485px;
    margin-left: 30px;
    margin-bottom: -14px;
}
.img_holder .img:first-child{
    margin-left: 0;
}
.shinkawa .cont_inner{
    margin-top: 50px;
}
.shinkawa .cont_inner.ls_parts{
    margin-bottom: 135px;
}
.shinkawa .sec_ttl{
    margin: 0 0 40px;
}
.shinkawa .access_list{
    margin: -8px 0 55px;
    padding-top: 5px;
}
.shinkawa .access_list li{
    font-size: 12px;
    letter-spacing: 0.1em;
    margin-bottom: 1.7em;
}
.shinkawa .access_list li.last{
    padding-left: 285px;
}
.shinkawa .access_list .des{
    display: inline-block;
    width: 170px;
    font-size: 18px;
    font-weight: bold;
    vertical-align: top;
}
.shinkawa .access_list .time{
    position: relative;
    display: inline-block;
    width: 65px;
    padding-left: 2em;
    font-size: 22px;
    line-height: 22px;
    font-weight: bold;
    text-align: right;
    vertical-align: top;
}
.shinkawa .access_list .time span{
    position: absolute;
    top: auto;
    left: 0;
    font-size: 16px;
    font-weight: normal;
    text-align: left;
}
.shinkawa .access_list .detail{
    display: inline-block;
    line-height: 2.0;
}
.shinkawa .map_holder{
    text-align: center;
}
.shinkawa .map_holder .cont_ttl{
    padding:0 0 35px;

}

.shinkawa #map{
    background: url('../../assets/img/shinkawa/map2.jpg') no-repeat center center;
    -webkit-background-size: cover;
    background-size: cover;
    width: 100%;
    height: 500px;
    margin-bottom: 30px;
}
.shinkawa .map_holder .to_map{
    margin-bottom: 80px;
}
.shinkawa .map_holder .to_map a{
    color: #00aeff;
    font-size: 20px;
    font-weight: bold;
    text-decoration: underline;
}

/* concept
---------------------------------*/
.concept .sec01{
    text-align: center;
}
.concept .logo_shinka{
    margin: 28px 0 64px;
}
.concept .sec_lead{
    margin-top: 50px;

}
.concept .sec02{
    position: relative;
    max-width: 1000px;
    margin: 0 auto 70px;
}
.concept .ess{
    font-size: 16px;
    text-align: left;
}
.concept .es1{
    margin-top: 60px;
    margin-left: 36px;
}
.concept .es2{
    margin-top: -287px;
    margin-left: 580px;
}
.concept .es3{
    margin-top: -12px;
    margin-left: 270px;
}

.concept .ess .cont_ttl{
    display: inline-block;
    padding: 0 0 20px;
    margin-right: 20px;
    font-size: 50px;
    text-align: left;
    letter-spacing: 0.2em;
    font-family:"TBGothic M",sans-serif;
}
.concept .ess .cont_ttl span::after{
    bottom: -12px;
    height: 3px;
}

.concept .ess .es_lead,.concept .ess p{
    margin-left: 30px;
    line-height: 2.6;
}
.concept .ess.es2 .es_lead,.concept .ess.es2 p{
    margin-left: 60px;
}
.concept .ess .es_lead{
    margin-bottom: 10px;
    font-size: 18px;
    font-weight: bold;
}
.concept .sec03{
    text-align: center;
}
.concept .mv .cap{
    margin: 10px 3px 65px;
    font-size: 11px;
    line-height: 1.4;
    text-align: right;
}

/* plans
---------------------------------*/
.plans h1.cont_ttl{
    padding: 48px 0 48px;

}
.plans .cont_inner{
    position: relative;
    margin-top: 80px;
    text-align: center;
}
.plans .ceter_line{
    position: absolute;
    top: 0;
    left: 50%;
    z-index: 2;
    background: #b0b0b0;
    width: 1px;
    height: 82%;
}
.plans .cont_inner .cont_ttl{
    padding:0 0 110px;
}
.plans .col_plan{
    float: left;
    width: 50%;
    box-sizing: border-box;
}
.plans .col_plan .btn_scale{
    display: inline-block;
    width: 71px;
}
.plans .col_plan dl{
    margin-bottom: 80px;
}
.plans .col_plan img{
    width: 100%;
    height: auto;
}

.plans .type{
    font-size: 22px;
    margin-bottom: 18px;
    padding-top: 5px;
}
.plans .floor{
    font-size: 18px;
    margin-bottom: 26px;
}

@media screen and (max-width: 1060px){
    .img_holder .img{
        width: 48%;
        margin-left: 4%;
    }

}
@media screen and (max-width: 1040px){
    .cont_wrap .right{
        max-width: 480px;
    }
    .cont_wrap .smallbox .img{
        width: 48%;
        margin-left: 4%;
    }
    .top .sec02 ul{
        max-width: 664px;
        margin: 0 auto;
    }

}
@media screen and (max-width: 970px){
    .cont_wrap .right{
        max-width: 390px;
    }
    .concept .ess.es1,
    .concept .ess.es2,
    .concept .ess.es3{
        display: block;
        width: 390px;
        margin-top: 60px;
        margin-left: auto;
        margin-right: auto;
    }
    .concept .ess.es1{
        padding-right: 13%;
    }
    .concept .ess.es2{
        padding-left: 15%;
    }
    .concept .ess.es3{
        padding-right: 4%;
    }
    .spbreak_970{
        display: block;
    }
    .shinkawa .access_list li.last{
        margin-top: -10px;
        padding-left: 270px;
    }
}
@media screen and (max-width: 870px){
    .cont_wrap .left{
        max-width: 370px;
    }
}
@media screen and (max-width: 850px){
    .h_copy{
        display: none;
    }
    .cont_inner{
        margin-top: 45px;
    }
    .pra_ttl{
        margin-bottom: 25px;
    }
    .cont_wrap .left,.cont_wrap .right{
        float: none;
        max-width: 480px;
        margin: 0 auto 40px;
    }
    .oto .notes{
        padding-top: 40px;
    }
    .shinkawa .access_list .detail{
        display: block;
    }
    .shinkawa .access_list li.last{
        padding-left: 0;
    }
    .shinkawa .spbreak_970{
        display: inline;
    }
    .shinkawa .cont_wrap .right{
        margin-bottom: 0;
    }
    .shinkawa #map{
        height: 400px;
    }
}
@media screen and (max-width: 750px){
    .sec_ttl{
        font-size: 17px;
    }
    .mv .mv_ttl{
        width: 100px;
        height: 100px;
        line-height: 100px;
        font-size: 16px;
    }
    .footer .br1{
        display: block;
    }
    .concept .logo_shinka{
        max-width: 320px;
        margin-left: auto;
        margin-right: auto;
    }
    .concept .logo_shinka img{
        width: 100%;
        height: auto;
    }
    .concept .sec_lead{
        font-size: 15px;
    }
}
@media screen and (max-width: 700px){
    .top .sec02 h2{
        margin: 40px 0 35px;
        font-size: 17px;
        line-height: 1.4;
    }
    .top .sec02 ul li{
        width: 46%;
        height: 400px;
        margin: 0 2%;
    }
    .top .sec02 .notes{
        margin-left: 20px;
        margin-right: 20px;
    }
    .spbreak_700{
        display: block;
    }
    .plans .cont_inner .cont_ttl{
        font-size: 17px;
    }
}
@media screen and (max-width: 600px){
    .sec_contact{
        padding: 20px 50px;
    }
    .sec_contact .btn_contact a{
        padding: 18px 0;
        border-width: 2px;
        font-size: 17px;
    }
    .footer{
        font-size: 12px;
    }
    .footer .tel{
        font-size: 17px;
    }
    .footer .tel a{
        font-size: 28px;
        pointer-events: auto;
        cursor: pointer;
    }
    .footer .detail{
        font-size: 11px;
    }
    .concept .ess .cont_ttl{
        font-size: 38px;
    }
    .concept .ess .es_lead, .concept .ess p{
        line-height: 2.0;
    }
    .concept .ess{
        font-size: 14px;
    }
    .top .sec02 .notes{
        text-align: left;
    }
    .plans .ceter_line{
        display: none;
    }
    .plans .col_plan{
        float: none;
        width: auto;
    }
    .plans .cont_inner .cont_ttl{
        padding: 0 0 50px;
    }
    .shinkawa #map{
        height: 300px;
    }
    .shinkawa .map_holder .to_map{
        margin-bottom: 40px;
    }
    .shinkawa .cont_wrap .notes{
        padding: 0 20px;
        text-align: left;
    }
}
@media screen and (max-width: 500px){
    .cont_ttl{
        padding: 34px 0 30px;
        font-size: 18px;
    }
    .pra_ttl{
        font-size: 17px;
    }
    .cont_wrap .txt{
        font-size: 14px;
    }
    .cont_wrap .notes{
        text-align: left;
    }
    .logo_tokyu,.copyright p{
        float: none;        
        text-align: center;
    }
    .logo_tokyu{
        padding: 10px;
    }
    .copyright p{
        font-size: 10px;
        padding: 0 5px 10px;
    }
    .outline table td{
        padding: 10px;
    }
    .oto .notes{
        padding-top: 20px;
    }
    .credit{
        font-size: 15px;
    }
    .concept .ess.es1,
    .concept .ess.es2,
    .concept .ess.es3{
        display: inline-block;
        width: auto;
        padding-left: 0;
        padding-right: 0;
        margin-left: 20%;
    }
    .concept .ess.es2 .es_lead, .concept .ess.es2 p{
        margin-left: 30px;
    }
    .spbreak_500{
        display: block;
    }
    .concept .mv .cap{
       margin: 15px 0 35px;
    }
    .plans .sec_ttl{
        font-size: 15px;
    }
    .plans .type{
        font-size: 18px;
        margin-bottom: 14px;
    }
    .plans .floor{
        font-size: 15px;
        margin-bottom: 16px;
    }
    .top .sec02 ul{
        padding: 0 7px;
    }
    .shinkawa .cont_inner{
        margin-top: 20px;
    }
    .shinkawa .sec_ttl{
        margin-bottom: 20px;
        font-size: 15px;
    }
    .shinkawa .access_list .des{
        font-size: 16px;
    }
    .shinkawa .access_list .time{
        font-size: 18px;
    }
    .shinkawa .access_list .detail{
        margin-top: 5px;
        line-height: 1.7;
    }
    .shinkawa .cont_wrap .right .img{
        margin-bottom: 5px;
    }
    .shinkawa .cont_inner.ls_parts{
        margin-bottom: 75px;
    }
    .outline .notes{
        padding: 30px 20px 10px;
        font-size: 12px;
    }
}
@media screen and (max-width: 400px){
    .cont_ttl,.plans h1.cont_ttl{
        padding: 26px 0 22px;
        font-size: 16px;
    }
    .cont_inner{
        margin-top: 25px;
    }
    .lower .cont_wrap{
        padding-bottom: 50px;
    }
    .pra_ttl{
        margin-bottom: 12px;
    }
    .pra_ttl br{
        display: none;
    }
    .mv .mv_ttl{
        width: 90px;
        height: 90px;
        line-height: 90px;
        font-size: 15px;
    }
    .footer{
        font-size: 11px;
    }
    .footer .tel{
        margin:3px 0;
    }
    .footer .tel a{
        font-size: 24px;
    }
    .footer .br2{
        display: block;
    }
    .oto .notes{
        padding-top: 0px;
    }
    .sec_ttl{
        margin-top: 10px;
        font-size: 15px;
    }
    .concept .logo_shinka{
        margin: 20px auto 34px;
        max-width: 240px;
    }
    .concept .sec_lead{
        font-size: 14px;
    }
    .concept .ess .es_lead{
        font-size: 16px;        
    }
    .concept .ess.es1, .concept .ess.es2, .concept .ess.es3{
        margin-left: 20px;
        margin-right: 20px;
    }
    .concept .ess .cont_ttl{
        font-size: 30px;
    }
    .concept .ess a img{
        width: 60px;
    }
    .concept .ess .es_lead,.concept .ess .es_lead, .concept .ess p{
        margin-left: 15px !important;
    }
    .concept .cont_wrap .notes{
        margin: 0 20px;
    }
    .top .sec02 h2{
        font-size: 16px;
    }
    .top .sec02 ul li{
        height: 300px;
    }
    .top .sec02 ul li .sec02_ttl{
        margin: 15px 0 13px;
        font-size: 14px;
    }
    .top .sec02 ul li p{
        font-size: 12px;
    }
    .plans .sec_ttl{
        text-align: left;
        padding: 0 20px;
        font-size: 14px;
    }
    .plans .sec_ttl br,.plans .sec_ttl .spbreak_700{
        display: none;
    }
    .plans .cont_wrap .img{
        margin-bottom: 25px;
    }
    .shinkawa .cont_wrap .txt{
        font-size: 13px;
    }
    .spbreak_400{
        display: block;
    }

}
@media screen and (max-width: 370px){
    .sec_contact .btn_contact a{
        padding-right: 10px;
        font-size: 16px;
    }
    .sec_contact .btn_contact a::before{
        right: 20px;
    }
    .sec_contact .btn_contact a::after{
        right: 30px;
    }
    .outline .cont_inner{
        padding: 0 10px;
    }
    .cont_wrap .txt br{
        display: none;
    }
    .concept .ess.es1, .concept .ess.es2, .concept .ess.es3{
        font-size: 12px;
    }
    .concept .logo_shinka{
        max-width: 210px;
    }
    .top .sec02 h2{
        margin: 24px 0 20px;
        font-size: 15px;
    }
    .top .sec02 ul li{
        height: 270px;
    }
    .shinkawa .access_list li{
        font-size: 10px;
    }
    .plans .cont_wrap .img{
        margin-bottom: 15px;
    }
    .footer{
        padding: 15px 0 13px;
        font-size: 10px;
    }
    .spbreak_370{
        display: block;
    }




}

/****************************************************************************************
*****************************************************************************************
## fadein.css ##
/****************************************************************************************
****************************************************************************************/
.style-box{
  overflow: hidden;
}

.fade-in {
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=$n100)";
  filter: alpha(opacity=0);
  -moz-opacity: 0;
}
.fade-in.in {
  -webkit-transition-property: all;
  -moz-transition-property: all;
  -ms-transition-property: all;
  -o-transition-property: all;
  transition-property: all;
  -webkit-transition-duration: 1s;
  -moz-transition-duration: 1s;
  -ms-transition-duration: 1s;
  -o-transition-duration: 1s;
  transition-duration: 1s;
  -webkit-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  -moz-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  -ms-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  -o-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  opacity: 1;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=$n100)";
  filter: alpha(opacity=100);
  -moz-opacity: 1;
}

.fade-in-up {
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=$n100)";
  filter: alpha(opacity=0);
  -moz-opacity: 0;
  -webkit-transform: translate(0, 10%);
  -moz-transform: translate(0, 10%);
  -ms-transform: translate(0, 10%);
  -o-transform: translate(0, 10%);
  transform: translate(0, 10%);
}
.fade-in-up.in {
  -webkit-transition-property: all;
  -moz-transition-property: all;
  -ms-transition-property: all;
  -o-transition-property: all;
  transition-property: all;
  -webkit-transition-duration: 1s;
  -moz-transition-duration: 1s;
  -ms-transition-duration: 1s;
  -o-transition-duration: 1s;
  transition-duration: 1s;
  -webkit-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  -moz-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  -ms-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  -o-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  opacity: 1;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=$n100)";
  filter: alpha(opacity=100);
  -moz-opacity: 1;
  -webkit-transform: translate(0, 0%);
  -moz-transform: translate(0, 0%);
  -ms-transform: translate(0, 0%);
  -o-transform: translate(0, 0%);
  transform: translate(0, 0%);
}

.fade-in-down {
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=$n100)";
  filter: alpha(opacity=0);
  -moz-opacity: 0;
  -webkit-transform: translate(0, -10%);
  -moz-transform: translate(0, -10%);
  -ms-transform: translate(0, -10%);
  -o-transform: translate(0, -10%);
  transform: translate(0, -10%);
}
.fade-in-down.in {
  -webkit-transition-property: all;
  -moz-transition-property: all;
  -ms-transition-property: all;
  -o-transition-property: all;
  transition-property: all;
  -webkit-transition-duration: 1s;
  -moz-transition-duration: 1s;
  -ms-transition-duration: 1s;
  -o-transition-duration: 1s;
  transition-duration: 1s;
  -webkit-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  -moz-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  -ms-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  -o-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  opacity: 1;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=$n100)";
  filter: alpha(opacity=100);
  -moz-opacity: 1;
  -webkit-transform: translate(0, 0%);
  -moz-transform: translate(0, 0%);
  -ms-transform: translate(0, 0%);
  -o-transform: translate(0, 0%);
  transform: translate(0, 0%);
}

.fade-in-left {
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=$n100)";
  filter: alpha(opacity=0);
  -moz-opacity: 0;
  -webkit-transform: translate(-10%, 0);
  -moz-transform: translate(-10%, 0);
  -ms-transform: translate(-10%, 0);
  -o-transform: translate(-10%, 0);
  transform: translate(-10%, 0);
}
.fade-in-left.in {
  -webkit-transition-property: all;
  -moz-transition-property: all;
  -ms-transition-property: all;
  -o-transition-property: all;
  transition-property: all;
  -webkit-transition-duration: 1s;
  -moz-transition-duration: 1s;
  -ms-transition-duration: 1s;
  -o-transition-duration: 1s;
  transition-duration: 1s;
  -webkit-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  -moz-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  -ms-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  -o-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  opacity: 1;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=$n100)";
  filter: alpha(opacity=100);
  -moz-opacity: 1;
  -webkit-transform: translate(0, 0%);
  -moz-transform: translate(0, 0%);
  -ms-transform: translate(0, 0%);
  -o-transform: translate(0, 0%);
  transform: translate(0, 0%);
}
.fade-in-right {
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=$n100)";
  filter: alpha(opacity=0);
  -moz-opacity: 0;
  -webkit-transform: translate(10%, 0);
  -moz-transform: translate(10%, 0);
  -ms-transform: translate(10%, 0);
  -o-transform: translate(10%, 0);
  transform: translate(10%, 0);
}
.fade-in-right.in {
  -webkit-transition-property: all;
  -moz-transition-property: all;
  -ms-transition-property: all;
  -o-transition-property: all;
  transition-property: all;
  -webkit-transition-duration: 1s;
  -moz-transition-duration: 1s;
  -ms-transition-duration: 1s;
  -o-transition-duration: 1s;
  transition-duration: 1s;
  -webkit-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  -moz-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  -ms-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  -o-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  opacity: 1;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=$n100)";
  filter: alpha(opacity=100);
  -moz-opacity: 1;
  -webkit-transform: translate(0, 0%);
  -moz-transform: translate(0, 0%);
  -ms-transform: translate(0, 0%);
  -o-transform: translate(0, 0%);
  transform: translate(0, 0%);
}

.fade-in-zoom-in {
  overflow: hidden;
}
.fade-in-zoom-in img {
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=$n100)";
  filter: alpha(opacity=0);
  -moz-opacity: 0;
  -webkit-transform: scale(0.5, 0.5);
  -moz-transform: scale(0.5, 0.5);
  -ms-transform: scale(0.5, 0.5);
  -o-transform: scale(0.5, 0.5);
  transform: scale(0.5, 0.5);
}
.fade-in-zoom-in.in img {
  -webkit-transition-property: all;
  -moz-transition-property: all;
  -ms-transition-property: all;
  -o-transition-property: all;
  transition-property: all;
  -webkit-transition-duration: 0.6s;
  -moz-transition-duration: 0.6s;
  -ms-transition-duration: 0.6s;
  -o-transition-duration: 0.6s;
  transition-duration: 0.6s;
  -webkit-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  -moz-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  -ms-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  -o-transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  opacity: 1;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=$n100)";
  filter: alpha(opacity=100);
  -moz-opacity: 1;
  -webkit-transform: scale(1, 1);
  -moz-transform: scale(1, 1);
  -ms-transform: scale(1, 1);
  -o-transform: scale(1, 1);
  transform: scale(1, 1);
}
/*colorbox
--------------------------------------------------*/
#colorbox, #cboxOverlay, #cboxWrapper{position:absolute; top:0; left:0; z-index:9999; overflow:hidden; -webkit-transform: translate3d(0,0,0);}
#cboxWrapper {max-width:none;}
#cboxOverlay{position:fixed; width:100%; height:100%;}
#cboxMiddleLeft, #cboxBottomLeft{clear:left;}
#cboxContent{position:relative;}
#cboxLoadedContent{overflow:auto; -webkit-overflow-scrolling: touch;}
#cboxTitle{margin:0;}
#cboxLoadingOverlay, #cboxLoadingGraphic{position:absolute; top:0; left:0; width:100%; height:100%;}
#cboxPrevious, #cboxNext, #cboxClose, #cboxSlideshow{cursor:pointer;}
.cboxPhoto{float:left; margin:auto; border:0; display:block; max-width:none; -ms-interpolation-mode:bicubic;}
.cboxIframe{width:100%; height:100%; display:block; border:0; padding:0; margin:0;}
#colorbox, #cboxContent, #cboxLoadedContent{box-sizing:content-box; -moz-box-sizing:content-box; -webkit-box-sizing:content-box;}

/* 
    User Style:
    Change the following styles to modify the appearance of Colorbox.  They are
    ordered & tabbed in a way that represents the nesting of the generated HTML.
*/
#cboxOverlay{background:#000; opacity: 0.7; filter: alpha(opacity = 70);}
#colorbox{outline:0;}
#cboxContent{margin-top:40px; overflow:visible; /*background:#000;*/}
.cboxIframe{background:#fff;}
#cboxError{padding:50px; border:1px solid #ccc;}
#cboxLoadedContent{padding:1px;}
#cboxLoadedContent::-webkit-scrollbar{overflow:hidden;width:10px;background:#fafafa;-webkit-border-radius:8px;border-radius:8px;}
#cboxLoadedContent::-webkit-scrollbar:horizontal{height:5px;}
#cboxLoadedContent::-webkit-scrollbar-button{display:none;}
#cboxLoadedContent::-webkit-scrollbar-piece{background:#333;}
#cboxLoadedContent::-webkit-scrollbar-piece:start{background:#333;}
#cboxLoadedContent::-webkit-scrollbar-thumb{overflow:hidden;-webkit-border-radius:8px;border-radius:8px;background:#888;}
#cboxLoadedContent::-webkit-scrollbar-corner{overflow:hidden;-webkit-border-radius:8px;border-radius:8px;background:#eee;}
#cboxLoadingGraphic{background:url("../../assets/img/cmn/loading.gif") no-repeat center center;}
#cboxLoadingOverlay{background:#000;}
#cboxTitle{position:absolute; top:-22px; left:0; color:#000;}
#cboxCurrent{position:absolute; top:-22px; right:205px; text-indent:-9999px;}
/* these elements are buttons, and may need to have additional styles reset to avoid unwanted base styles */
#cboxPrevious, #cboxNext, #cboxSlideshow{ display: none;}
#cboxClose{position:absolute; top:-40px; right:0; overflow:hidden; text-indent: 105%; white-space: nowrap; background:url("../../assets/img/cmn/lb_close_sp.png") no-repeat 0 0; -webkit-background-size: cover;
background-size: cover; width:28px; height:28px;padding:0; margin:0;border:0;}
/* avoid outlines on :active (mouseclick), but preserve outlines on :focus (tabbed navigating) */
#cboxPrevious:active, #cboxNext:active, #cboxSlideshow:active, #cboxClose:active {outline:0;}

@media only screen and (max-width:600px){
#cboxClose{background-image:url("../../assets/img/cmn/lb_close_sp.png"); background-size:28px auto;}
}