charset "utf-8";


/* //////////////////////////////////////////

  “FARNEST KORIMOTO”

 -----------------------------------------
  common.css
 -----------------------------------------

  1.リセット

  2.共通パーツ

  3.フレームワーク
  
  4.コンテンツ

////////////////////////////////////////// */

/* 1.リセット
////////////////////////////////////////// */
*{
    margin: 0;
    padding: 0;
    }

html{
    height: 100%;
    font-size: 1px;
    line-height: 24px;
    overflow: auto;
    }
@media print, screen and (min-width: 768px) {/*PC*/
html{
    font-size: 1px;
    line-height: 26px;
    min-width: 1050px;
    }
}

body{
    margin: 0;
    padding: 0;
    font-family:"TsukuGoPr5N-M", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif;
    font-size: 13rem;
    letter-spacing: 0.25rem;
    text-align: justify;
    word-break: break-all; 
    text-justify: nter-ideograph;
    text-justify: inter-character;
    word-wrap: break-word;
    overflow-wrap: break-word;
    color: #333333;
    background-color: #ffffff;
    -webkit-text-size-adjust: 100%;
    }
@media print, screen and (min-width: 768px) {/*PC*/
body{
    min-width: 1050px;
    letter-spacing: 0.5rem;
    }
}
@media print {/*Print*/
body{
    font-size: 13rem;
    -webkit-print-color-adjust: exact;
    zoom: 0.75;
    }
}

main{
    width: 100vw;
    overflow: hidden;
}
@media print, screen and (min-width: 768px) {/*PC*/
    main{
    width: 100%;
    }
}

div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin:0;
  padding:0;
  border:0;
  outline:0;
  vertical-align:baseline;
  background:transparent;
}

article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {
  display:block;
}

ul,dl,ol{
    list-style-type: none;
}

blockquote, q {
  quotes:none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content:'';
  content:none;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom:1px dotted;
  cursor:help;
}

table {
  border-collapse:collapse;
  border-spacing:0;
}

input, select {
  vertical-align:middle;
}

a{
    margin:0;
    padding:0;
    border: 0;
    outline: 0;
    color: #333;
    vertical-align:baseline;
    background:transparent;
    text-decoration: none;
    outline:none;
    transition: color 0.15s ease-in;
    }
@media print, screen and (min-width: 768px) {/*PC*/
a:hover{
    color: #387aad;
    transition: color 0.25s ease-in;
    }
}

img{
    width: 100%;
    margin: 0;
    font-size: 0;
    line-height: 0;
    vertical-align: top;
    border: 0;
    outline: 0;
    }
@supports (-webkit-hyphens:none){/*Safari*/
img { 
    image-rendering: auto;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    a[href*="tel:"] {
    pointer-events: none;
    cursor: default;
    text-decoration: none;
}
}

/*for Animation*/
h1,.title,h3.top,nav#top,nav#global,.dir,main>article{
    opacity: 0;
}


/* 2.共通パーツ
////////////////////////////////////////// */
@media print, screen and (min-width: 768px) {/*Tablet*/
.portrait{
    display: none !important;
    }
}
@media screen and (max-width: 896px) and (orientation: landscape) {/*Landscape*/
.portrait{
    display: none !important;
    }
}

@media screen and (max-width: 767px) {/*Phone*/
.tab{
    display: none !important;
    }
.pc{
    display: none !important;
    }
.sp{
    display: block !important;
    }
}

@media screen and (min-width: 768px) and (max-width: 1099px) {/*Tablet*/
.sp{
    display: none !important;
    }
.pc{
    display: none !important;
    }
.tab{
    display: block !important;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
.sp{
    display: none !important;
    }
.tab{
    display: none !important;
    }
.pc{
    display: block !important;
    }
}

body main{
    padding: 0 0 75px 0;
 }
@media print, screen and (min-width: 768px) {/*PC*/
body main{
        padding: 0 0 300px 0;
        position: relative;
        top: 140px;
    }
 }

body:not(#index, #design, #inner) article{
    margin: 0 23px;
}
@media print, screen and (min-width: 768px) {/*PC*/
    body:not(#index, #design, #inner) article{
    width: 1050px;
    margin: 0 auto 0;
}
}

nav#menu{
    width: 100%;
    max-width: 450px;
	margin:0 0 250px 0!important;
	position: fixed;
	overflow: auto;
    position: fixed;
    z-index: 99998;
    top: 0;
    right: 0;
    line-height: 20rem;
    background-color: #325b83;
    transform: translateX(100%);
    transition: all 0.6s;
}
@media print, screen and (min-width: 768px) {/*PC*/
nav#menu{
    display: none;
    }
}

nav#menu dl{
    width: 100%;
    height: 100vh;
    overflow: auto;
}

nav#menu dt{
    padding: 25px 0 10px 20px;
    font-family: "AvenirNextLTPro-Regular";
	font-size: 28rem;
    letter-spacing: 3rem;
    color: #ffffff;
    }

nav#menu dd{
	width: auto;
    margin: 0 20px 0 20px;
    background-image: url(../img/common_img/ic_arrow_line.png);
    background-size: 600px 7px;
    background-position: right 22px;
    background-repeat: no-repeat;
    display: block;
    position: relative;
    }
nav#menu dd:last-child{    
	padding: 0 0 150px 0;
	}

nav#menu dd.active ul::before{
    content: "　";
    width: 20px;
    height: 10px;
    position: absolute;
    top: 17px;
    left: 0;
    right: 0;
    margin: auto;
    background-image: url(../img/common_img/ic_tri_up.png);
    transition: background-image 0.5s;
    background-size: 20px 10px;
    background-position: center 0;
    background-repeat: no-repeat;
}
    
nav#menu dd a{
    padding: 8px 0 0 0;
    font-family: "TsukuGoPr5N-D";
    /* color: #548e8c; */
    color: #ffffff;
    font-size: 15rem;
    line-height: 20rem;
    letter-spacing: 1rem;
    display: block;
    background-size: 22px;
    background-repeat: no-repeat;
    }
nav#menu dd:nth-child(7)>a{/*NEWマーク*/
    /* background-image: url(../img/common_img/ic_new.png);
    background-position: 66px 4px; */
}


nav#menu dd span{
    margin: 0px 0 0 0;
    display: block;
    font-family: "AvenirNextLTPro-Demi";
    font-size: 11rem;
    color: rgba( 255, 255, 255, 0.40 );
}

nav#menu dd ul {
    margin: 0 0 24px 0;
    flex-wrap: wrap;
    height: 0;
    display: none;
}

nav#menu dd ul li{
    width: calc(60% - 16px);
    margin: 0px 0 6px 0;
    padding: 0 0 0 14px;
    background-image: url(../img/common_img/ic_circle.png);
    background-size: 12px 12px;
    background-position: 0 13px;
    background-repeat: no-repeat;
    letter-spacing: -0.1rem;
    line-height: 14rem;
}
nav#menu dd:nth-child(8) li:first-child{
    width: 100%;
}

nav#menu dd ul li:nth-child(2n){
    width: calc(40% - 12px);
}

nav#menu dd ul li a{
    letter-spacing: 0.5rem;
    white-space: nowrap;
}
nav#menu dd ul li:nth-of-type(7) a,
nav#menu dd ul li:nth-of-type(8) a{
    letter-spacing: 10rem;
}

/* このクラスを、jQueryで付与・削除する */
nav#menu.active{
    transform: translateY(0%);
}

/* ハンバーガーメニュー展開時、背面を固定 */
body.fix{
    position: fixed;
    left: 0;
    right: 0;
}

.down{
    display: block;
    width: 46px;
    height: 46px;
    cursor: pointer;
    text-align: center;
    border-radius: 0 0 3px 3px;
    position: relative;
}

@media print, screen and (min-width: 768px) {/*PC*/
.down{
    display: none;
    }
}

.down span{
    display: block;
    position: absolute;    /* .navToggleに対して */
    width: 30px;
    margin: auto;
    border-bottom: solid 4px #ffffff;
    -webkit-transition: .35s ease-in-out;
    -moz-transition: .35s ease-in-out;
    transition: .35s ease-in-out;
    left: 0;
    right: 0;
}

.down span:nth-child(1){
    top: 8px;
}

.down span:nth-child(2){
    top: 16px;
}

.down span:nth-child(3){
    top: 24px;
}

.down span:nth-child(4){
    border: none;
    top: 33px;
}

.down span:nth-child(4) img{
	width: 30px;
	height:8px;
}

.down.active{
    /*position: fixed;
    filter: brightness(200%);
    background-color: rgba( 255, 255, 255, 0.3 ) !important;*/
    /*filter: brightness(999%);
    opacity: 0.75;*/
}

/* 最初のspanをマイナス45度に */
.down.active span:nth-child(1){
    top: 16px;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    transform: rotate(-45deg);
    border-bottom: solid 3px #ffffff;
}

/* 2番目と3番目のspanを45度に */
.down.active span:nth-child(2),
.down.active span:nth-child(3){
    top: 16px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    transform: rotate(45deg);
    border-bottom: solid 3px #ffffff;
}

.down img.close{
    opacity: 0;
}

.down.active img.open{
    opacity: 0;
}
.down.active img.close{
    opacity: 1;
}

nav#phone{
    width: 100%;
    height: 68px;
    padding: 0 0 4px 0;
    position: fixed;
    bottom: 0;
    z-index: 99999;
    display: flex;
    justify-content: space-around;
    align-items: center;
    background-color: #386694;
    background-repeat: no-repeat;
}
@media print, screen and (min-width: 768px) {/*PC*/
nav#phone{
    display: none;
    }
}

nav#phone a{
    width: 20%;
    display: block;
    text-align: center;
    line-height: 0;
}

nav#phone img{
    width: 55px;
    height: 55px;
}

nav#phone .down img{
    width: auto;
    height: 10px;
    margin: auto;
    position: absolute;
    bottom: -4px;
    left: 0;
    right: 0;
    transition: all 300ms 0s ease-in;
}

nav#top{
    display: none;
}
@media print, screen and (min-width: 768px) {/*PC*/
nav#top{
    position: absolute;
    top: 26px;
    right: 60px;
    display: flex;
    justify-content: flex-end;
    align-items: center;
}

nav#top ul.sub li{
    text-align: right;
}

nav#top ul.sub a{
    margin: 8px 2px 8px 0;
    padding: 1px 8px 0 0;
    font-size: 13rem;
    line-height: 13rem;
    letter-spacing: 1rem;
    text-align: right;
    white-space: nowrap;
    background-image: url(../img/common_img/ic_arrow_bl.png);
    background-size: auto 7px;
	background-position: right 4px;
    background-repeat: no-repeat;
    transition: all 200ms 0s ease;
    display: block;
}
}


nav#top ul.sub a:hover{
    color: #333333;
    opacity: 0.4;
    transition: all 300ms 0s ease;
}

nav#top ul.btn{
    display: flex;
    margin: 0;
}

nav#top ul.btn a{
     width: 210px;
     max-width: 210px;
     height: 30px;
     margin: 0 0 0 8px;
     padding: 8px 12px;
     letter-spacing: 4rem;
     text-align: right;
     color: #ffffff;
     background-image: url(../img/common_img/hr_linearrow.png);
     background-size: 208px 12px;
     background-position: 12px 30px;
     background-repeat: no-repeat;
     display: block;
    /*来場予約非表示*/
     width: 270px;
     max-width: 270px;
     padding: 8px 22px;
     background-size: 272px auto;
     background-position: 22px 30px;
}

nav#top ul.btn a span{
    font-family: "AvenirNextLTPro-Regular";
    font-size: 10rem;
    line-height: 10rem;
    letter-spacing: 0;
    text-align: left;
    color: rgba(255, 255, 255, 0.5);
    display: block;
}

nav#top ul.btn a strong{
    margin: -2px 8px 0 0;
    font-size: 16rem;
    line-height: 16rem;
    font-weight: normal;
    display: block;
}

nav#top a.request{
    background-color: #325270;
    transition: all 500ms 0s ease;
    
}
nav#top a.request:hover{
    opacity: 1;
    filter: saturate(250%);
    transition: all 250ms 0s ease;

    /*来場予約非表示*/
     background-size: 280px auto;
}

nav#top a.reserve{
    background-color: #9a4958;
    transition: all 500ms 0s ease;
}
nav#top a.reserve:hover{
    opacity: 1;
    filter: saturate(140%);
    transition: all 250ms 0s ease;
}

nav#global{
    display: none;
}
@media print, screen and (min-width: 768px) {/*PC*/
nav#global{
    display: block;
    width: 100%;
    height: 42px;
    padding: 6px 0 0 0;
    position: absolute;
    top: 96px;
    z-index: 999;
    /* background-color: rgba( 255, 255, 255, 0.85 ); */

}
nav.navi_fix{
    height: 42px;
    padding: 6px 0 0 0;
    position: fixed !important;
    top: 0 !important;
    background-color: rgba( 255, 255, 255, 0.75 );
    background-size: 100% 100%;
    background-repeat: no-repeat;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
nav#global>ul{
    width: calc(100% - 120px);
    min-width: 1050px;
    margin: 0 auto 0;
    display: flex;
    justify-content: space-between;

}

nav#global>ul>li{
    width: calc(100% / 9);
    height: 36px;
    border-left: solid 1px #e2e8ed;
    position: relative;
}
nav#global>ul>li:last-child{
    border-right: solid 1px #e2e8ed;
}


nav#global>ul>li:nth-child(8)::before {/*NEWマーク*/
    /* content: '';
    width: 20px;
    height: 12px;
    display: block;
    background-image: url(../img/common_img/ic_new.png);
    background-size: 100%;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: -1px;
    right: 3px; */
} 


#index nav#global>ul>li:nth-child(1)::after,
#concept nav#global>ul>li:nth-child(2)::after,
#design nav#global>ul>li:nth-child(3)::after,
#location nav#global>ul>li:nth-child(4)::after,
#landplan nav#global>ul>li:nth-child(5)::after,
#inner nav#global>ul>li:nth-child(6)::after,
#roomtype nav#global>ul>li:nth-child(7)::after,
#roomplan nav#global>ul>li:nth-child(7)::after,
#equipment nav#global>ul>li:nth-child(8)::after{
    content: '';
    height: 5px;
    margin: 0 -1px 0 0;
    background-color: #7f9dc3;
    display: block;
}

nav#global>ul>li>a{
    margin: 0 0 3px 0;
    padding: 16px 0 0 0;
    display: block;
    text-align: center;
    position: relative;
    font-family: "AvenirNextLTPro-Demi";
    font-size: 15rem;
    line-height: 15rem;
    letter-spacing: 0;
    color: #666666;
    transition: all 300ms 0s ease;
}

nav#global>ul>li>a:hover{
    color: #355d86;
    transform: scale(1.05);
    transition: all 300ms 0s ease;
}

nav#global>ul>li>a::before{
    content: '';
    margin: auto;
	position: absolute;
	left: 0%;
    right: 0;
	top: 12px;
	width: 10px;
	border-top: solid 1px #ffffff;/*開始時*/
	transition: all 300ms 0s ease;
}
nav#global>ul>li:not(.hide)>a:hover::before{
    content: '';
	top: 12px;
	width: 60%;/*下線横幅設定*/
	transform: translateX(0%);
	border-top: solid 1px #355d86;/*完了時*/
	transition: all 300ms 0s ease;
}

nav#global>ul>li>a small {
  display: flex;
  overflow: hidden;
  height: 15px;
  margin: auto;
  line-height: 15rem;
  font-size: 10rem;
  color: #355d86;
  justify-content: center;
  position: absolute;
  top: -1px;
  left: 0;
  right: 0;
}

nav#global>ul>li>a small span {
  display: block;
  transform: translate(-200%, 0);
  transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
  /*transition: opacity 0.5s 0s ease;*/
  opacity: 0;
}

nav#global li:not(.hide) a:hover small span {
  transform: translate(0, 0);
  opacity: 1;
}

nav#global a:hover small span:nth-child(2) {
  transition-delay: 0.08s;
}
nav#global a:hover small span:nth-child(3) {
  transition-delay: 0.16s;
}
nav#global a:hover small span:nth-child(4) {
  transition-delay: 0.24s;
}
nav#global a:hover small span:nth-child(5) {
  transition-delay: 0.32s;
}
nav#global a:hover small span:nth-child(6) {
  transition-delay: 0.40s;
}
nav#global a:hover small span:nth-child(7) {
  transition-delay: 0.48s;
}
nav#global a:hover small span:nth-child(8) {
  transition-delay: 0.56s;
}
}

/*サブメニュー*/
nav#global div{
    display: none;
}
@media print, screen and (min-width: 768px) {/*PC*/
nav#global div{
    display: block;
    text-align: right;
    overflow: hidden;
    /*background-color: rgba(24, 82, 140, 0.5);サブメニュー背景色*/
    background-image: url(../img/common_img/bg_globalnav.png);/*サブメニュー背景画像*/
    background-position: 0 6px;
    background-repeat: repeat-x;
    position: absolute;
    top: 42px;
    left: 0;
    right: 0;
    z-index: 999;
    width: 100%;
}
nav#global div{
    height: 0;
    padding: 0 0 0 12px;
    transition: all 0.25s;
    opacity: 0.5;
}
nav#global div.active{
    /*height: 0;サブメニュー非表示*/
    height: 40px;
    transition: all 0.5s;
    opacity: 0.9;z-index: 99999;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
nav#global div.side ul{
    margin: 0 50px 0 0;
    display: inline-flex;
}
nav#global div.side2 ul{
    margin: 0 calc((100% - 120px) / 9 + 60px - (216px - 100% / 9) / 2) 0 0;
    /*(1)左右余白を引いた値をボタン数で割り右余白分を追加してボタンと右揃えにする (2)さらにサブメニュー幅とボタン幅の差分を2で割り右側だけの差を算出、それを(1)から引いて中央揃えにする */
    /*(120px:左右余白合計値 216px:サブメニュー幅 9:ボタン数)*/
    display: inline-flex;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
nav#global div li a{
    width: auto;
    height: 24px;
    margin: 0 18px 0 0;
    padding: 16px 12px 0 0;/*サブメニュー余白*/
    font-size: 13rem;
    line-height: 13rem;
    color: #ffffff;
    background-image: url(../img/common_img/ic_arrow_wh.png);
    background-size: 10px 10px;
    background-position: right 18px;
    background-repeat: no-repeat;
    display: block;
}
}
@media print, screen and (min-width: 768px) {/*PC*/
nav#global div li a:hover{
    color: #79d0f0;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
    nav#global div.side li:nth-child(7) a::first-letter,
    nav#global div.side li:nth-child(8) a::first-letter{
        letter-spacing: 15rem;
    }
}

.title{
    width: 100%;
    height: 134px;
    padding: 10px 0 0 0;
    background-color: #325b83;
    overflow: hidden;
}
@media print, screen and (min-width: 768px) {/*PC*/
.title{
    height: 160px;
    padding: 0;
}
}


.title h2 img{
    width: auto;
    height: 130px;
    margin: auto;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
.title h2 img{
    height: 150px;
}
}


.dir{
    display: none;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .dir{
        height: 25px;
        background-color: #f2f0ed;
        display: block;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    .dir ol{
        padding: 7px 60px 0;
        display: flex;
        /* background: linear-gradient(to right, rgba( 255, 255, 255, 0 ) 10%, rgba( 255, 255, 255, 0.1 ) 60%, rgba( 255, 255, 255, 0.8 )); */
        font-size: 11rem;
        line-height: 11rem;
        color: #666666;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
.dir li a::after{
    content: "＞";
    margin: 0 6px;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
    .inquiry{
        width: 770px;
        margin: auto;
        padding: 0;
        display: flex;
        justify-content: space-between;
        /*来場予約非表示*/
        justify-content: center;
    }
}

.inquiry a{
     height: 55px;
     margin: 0 23px 14px;
     padding: 15px 0 0;
     letter-spacing: 4rem;
     /* text-align: right; */
     color: #ffffff;
     background-image: url(../img/common_img/hr_linearrow.png);
     background-size: 280px 8px;
     background-position: center 33px;
     background-repeat: no-repeat;
     display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .inquiry a{
        width: 375px;
        height: 45px;
        padding: 10px 0 0;
        margin: 0;
        background-position: center 26px;
        /*来場予約非表示*/
        width: 480px;
    }
}

.inquiry strong{
    margin: 0 0 12px 0;
    padding: 0 0 0 8rem;
    font-size: 16rem;
    line-height: 16rem;
    font-weight: normal;
    text-align: center;
    /* background-image: url(../img/common_img/ic_arrow_wh.png);
    background-size: 11px 10px;
    background-position: right 7px;
    background-repeat: no-repeat; */
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .inquiry strong{
        margin: 0 0 9px 0;
        }
}
.inquiry span{
    font-family: "AvenirNextLTPro-Regular";
    font-size: 11rem;
    line-height: 11rem;
    letter-spacing: 0.5rem;
    text-align: center;
    color: rgba(255, 255, 255, 0.7);
    display: block;
}

.inquiry a b{
    font-size: 20rem;
    line-height: 20rem;
    font-weight: normal;
}

.inquiry a.request{
    background-color: #325270;
    transition: all 500ms 0s ease;
}
.inquiry a.request:hover{
    opacity: 1;
    filter: saturate(250%);
    transition: all 250ms 0s ease;

    background-size: 350px 8px;
}

.inquiry a.reserve{
    background-color: #9a4958;
    transition: all 500ms 0s ease;
}
.inquiry a.reserve:hover{
    opacity: 1;
    filter: saturate(140%);
    transition: all 250ms 0s ease;
}

.img_blt::before{
    margin: 0 0 -15rem 4rem;
    content: "image";
    font-size: 10rem;
    line-height: 10rem;
	font-family: "TsukuGoPr5N-M";
    color: #333333;
    text-align: left;
    display: block;
    position: relative;
    z-index: 999;
}

.img_bl::after{
    margin: -15rem 0 5rem 4rem;
    content: "image";
    font-size: 10rem;
    line-height: 10rem;
	font-family: "TsukuGoPr5N-M";
    color: #333333;
    text-align: left;
    display: block;
}

.img_br::after{
    margin: -15rem 4rem 5rem 0;
    content: "image";
    font-size: 10rem;
    line-height: 10rem;
	font-family: "TsukuGoPr5N-M";
    color: #333333;
    text-align: right;
    display: block;
}

.img_wl::after{
    margin: -15rem 0 5rem 4rem;
    content: "image";
    font-size: 10rem;
    line-height: 10rem;
	font-family: "TsukuGoPr5N-M";
    color: #ffffff;
    text-align: left;
    display: block;
}

.img_wr::after{
    margin: -15rem 4rem 5rem 0;
    content: "image";
    font-family: "TsukuGoPr5N-M";
    font-size: 10rem;
    line-height: 10rem;
    color: #ffffff;
    text-align: right;
    display: block;
}

aside.ad{
	margin: 28px 23px;
    display: flex;
    justify-content: space-between;
}
@media print, screen and (min-width: 768px) {/*PC*/
aside.ad{
    width: 1050px;
    margin: auto;
    padding: 0 0 22px;
    font-size: 12rem;
    color: #666666;
    display: flex;
    justify-content: center;
    position: absolute;
    top: -36px;
}
}

aside.ad strong{
    margin: 2px 6px 0 0;
    padding: 0 6px;
    font-size: 13rem;
    line-height: 12rem;
    font-weight: normal;
    text-align: center;
    display: flex;
    align-items: center;
    border: solid 1px #999999;
    white-space: nowrap;
    /*opacity: 0;for Animation*/
}
@media print, screen and (min-width: 768px) {/*PC*/
aside.ad strong{
    width: 60px;
    margin: 0;
	padding: 4px 4px 4px 13px;
    font-size: 12rem;
    line-height: 12rem;
    white-space: nowrap;
}
}

aside.ad p{
    font-size: 11rem;
    line-height: 13rem;
    letter-spacing: -0.25rem;
    /*opacity: 0;for Animation*/
}
@media print, screen and (min-width: 768px) {/*PC*/
aside.ad p{
    margin: 3px 0 -2px 10px;
    font-size: 12rem;
    line-height: 16rem;
}
}

aside.fade-ad strong,
aside.fade-ad p{
    opacity: 1 !important;
    transition: all cubic-bezier(0.23, 1, 0.32, 1) 2s;/*easeOutQuint*/
}

.fade-reset{
    transform: translate(0) scale(1) !important;
    opacity: 1 !important;
    transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 1.25s;/* easeOutCubic */
}
.fade-reset2{
    transform: translate(0) scale(1) !important;
    opacity: 1 !important;
    transition: all cubic-bezier(0.075, 0.82, 0.165, 1) 7s;/* easeOutCirc */
}
#design .fade-reset{
    background-position: right bottom !important;
}


/* 3.フレームワーク
////////////////////////////////////////// */
header{
    width: 100%;
    padding: 10px 0 8px;
}

@media print, screen and (min-width: 768px) {/*PC*/
header{
    min-width: 1050px;
    padding: 0;
    height: 190px;
    position: absolute;
    top: 0;
    z-index: 99999;
    overflow: hidden;
}
}

/*ヘッダー固定時位置*/
@media print, screen and (min-width: 768px) {/*PC*/
.navi_fix{
    position: fixed !important;
    top: 0 !important;
}
}

header h1{
    width: 312px;
    margin: auto;
    padding: 0 15px 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
header h1{
    width: 312px;
    height: auto;
    margin: 0;
    position: absolute;
    top: 26px;
    left: 60px;
}
}

header h1 img{
    margin: auto;
    display: block;
}

@media print, screen and (min-width: 768px) {/*PC*/
	header h1 img{
		image-rendering: auto;
	}
}

 footer{
    padding: 0 0 72px 0;
    /*opacity: 0;for Animation*/
}
.fade-footer{
    opacity: 1;
    transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 2s;/*easeOutQuint*/
}
@media print, screen and (min-width: 768px) {/*PC*/
footer{
    width: 100%;
    min-width: 1150px;
    padding: 0;
    position: relative;
    clear: both;
    opacity: 1;
}
}

footer .contact{
    padding: 14px 0 36px;
    background-color: #f2f0ed;
}
@media print, screen and (min-width: 768px) {/*PC*/
    footer .contact{
        padding: 26px 0 52px;
        background-color: ##f2f0ed;
    }
}

footer h3{
    width: 94px;
    margin: 0 auto 18px;
}
@media print, screen and (min-width: 768px) {/*PC*/
    footer h3{
        height: auto;
        background-image: none;
    }
}

footer h3 b{
    width: 49%;
    font-family: "DINNextLTPro-Condensed";
    font-size: 31rem;
    font-weight: normal;
    white-space: nowrap;
    text-align: right;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
    footer h3 b{
        width: 100%;
        font-size: 28rem;
        text-align: center;
        color: #818c92;
    }
}

footer h3 span{
    width: 50%;
    margin: 25px 0 0 0;
    white-space: nowrap;
    text-align: left;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
    footer h3 span{
        display: none;
    }
}

footer h3.fade-tt3{
    opacity: 1 !important;
    transition: all cubic-bezier(0.23, 1, 0.32, 1) 2s;/*easeOutQuint*/
}

footer p.invite{
    margin: 20px 0 12px;
    font-family: "TsukuMinPr6N-D";
    font-size: 14rem;
    line-height: 21rem;
    text-align: center;
    /*opacity: 0;for Animation*/
}
@media print, screen and (min-width: 768px) {/*PC*/
    footer p.invite{
        margin: 20px auto 18px;
        font-size: 15rem;
        line-height: 24rem;
        color: #666666;
    }
}
footer .fade-invite{
    opacity: 1 !important;
    transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 2s;/*easeOutCubic*/
}

footer .gallery{
    margin: 33px 33px 0;
    display: block;
    /*opacity: 0;for Animation*/
}
@media print, screen and (min-width: 768px) {/*PC*/
    footer .gallery{
        width: 320px;
        margin: 36px auto 0;
    }
}
footer .fade-gallery{
    opacity: 1 !important;
    transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 2s;/*easeOutCubic*/
}

footer .gallery h4{
    margin: 0 0 4px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    footer .gallery h4{
        margin: 0 auto 10px;
        padding: 4px 20px;
        border-top: solid 2px #9e9e9e;
        border-bottom: solid 2px #9e9e9e;
        line-height: 0;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    footer .credit{
        width: 1050px;
        margin: 0 auto;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    footer .links{
        width: 680px;
        margin: 0 auto 36px;
        display: flex;
        flex-direction: column;
    }
}

footer .banner{
    margin: 28px 23px 10px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
@media print, screen and (min-width: 768px) {/*PC*/
    footer .banner{
        margin: 0;
    }
}

footer .banner li{
    width: calc(50% - 6px);
    margin: 0 0 12px 0;
    /*opacity: 0;for Animation*/
}
@media print, screen and (min-width: 768px) {/*PC*/
    footer .banner li{
        width: 168px;
        margin: 0;
    }
}
footer .fade-banner{
    opacity: 1 !important;
    transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 2s;/*easeOutCubic*/
}


aside.line{
    margin: 0 40px;
    /*opacity: 0;for Animation*/
}
@media print, screen and (min-width: 768px) {/*PC*/
aside.line{
    width: 612px;
    height: 108px;
    margin: 30px 0 9px 0;
    padding: 0 34px;
    background-color: #07b43b;
    display: flex;
    justify-content: center;
    align-items: center;
    order: -1;
}
aside.line img{
}
}
aside.fade-line{
    opacity: 1 !important;
    transition: all cubic-bezier(0.23, 1, 0.32, 1) 2s;/*easeOutQuint*/
}

p.footnote{
    margin: 16px 23px 16px;
    font-size: 11rem;
    line-height: 14rem;
    clear: both;
    display: block;
    /*opacity: 0;for Animation*/
}
@media print, screen and (min-width: 768px) {/*PC*/
    p.footnote{
        width: 100%;
        margin: -15px 0 0 0;
        padding: 18px 0 24px;
        border-top: solid 1px #d4d9dc;
    }
}
p.fade-footnote{
    opacity: 1 !important;
    transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 2s;/*easeOutCubic*/
}


footer address{
    margin: 12px 23px 0;
    padding: 12px 0 0 0;
    border-top: solid 1px #cccccc;
    /*opacity: 0;for Animation*/
}
@media print, screen and (min-width: 768px) {/*PC*/
    footer address{
        width: 356px;
        margin: 18px 0 0 0;
        padding: 0;
        border: none;
        order: -1;
    }
}
footer .fade-address{
    opacity: 1 !important;
    transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 2s;/*easeOutCubic*/
}

footer address strong{
    font-size: 14rem;
    font-weight: normal;
    font-style: normal;
    display: block;
}

footer address a img{
    width: 266px;
    margin: 5px 0 13px;
}
@media print, screen and (min-width: 768px) {/*PC*/
    footer address a img{
        width: 256px;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    footer address>img{
        width: 337px;
    }
}

footer address .copyright{
    margin: 0 -23px 0;
    padding: 12px 23px;
    font-size: 11rem;
    line-height: 11rem;
    font-weight: normal;
    font-style: normal;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
    footer address .copyright{
        margin: 8px 0 0 0;
        padding: 0;
    }
}

.note{
    font-size: 10rem;
    line-height: 12rem;
    /* display: inline-block; */
}

.link{
    height: 38px;
    margin: 0 34px;
    padding: 0 22px 0 16px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    background-image: url(../img/common_img/bg_bt_gr.png);
    background-size: 100% 100%;
    background-repeat: repeat-y;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .link{
        width: 300px;
        height: 34px;
        margin: 0;
    }
    .link:hover{
        filter: saturate(140%);
        transition: all 250ms 0s ease;
    }
}

.link strong{
    font-family: "TsukuGoPr5N-D";
    font-size: 17rem;
    letter-spacing: 2rem;
    color: #ffffff;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .link strong{
        line-height:17rem;
    }
}

.link small{
    padding: 0 15px 0 0;
    font-family: "DINNextLTPro-Condensed";
    font-size: 11rem;
    letter-spacing: 1rem;
    color: rgba( 255, 255, 255, 0.75 );
    background-image: url(../img/common_img/ic_arrow_wh.png);
    background-size: 9px 10px;
    background-position: right center;
    background-repeat: no-repeat;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .link small{
        padding: 2px 15px 0 0;
    }
}

article:not(.feature) .hide{
    opacity: 0.25 !important;
    filter: grayscale(50%);
    cursor: default !important;
}

nav#phone .hide,
nav#global .hide,
nav#banner .hide,
footer .banner .hide{
    opacity: 0.2 !important;
    cursor: default !important;
}

nav#top a.hide b,
.btn a.hide b,
.btn a.hide small{
    opacity: 0.5;
}

.hide a,
a.hide{
    pointer-events: none !important;
    cursor: default !important;
}

.hide a:hover,
.hide a:hover img{
    opacity: 0 !important;
    display: none !important;
}

.btn a.hide,
.inquiry a.hide{
    position: relative;
    display: none !important;/*来場予約非表示*/
}

.btn a.hide::after,
.inquiry a.hide::after{
    content: "COMING SOON";
    margin: auto;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    display: flex;
    font-family: "DINNextLTPro-Condensed";
    font-size: 16rem;
    letter-spacing: 1rem;
    color: #888888;
    justify-content: center;
    place-items:center;
    align-items:center;
    text-align: center;
    z-index: 999;
    background-color: rgba( 241, 246, 245, 0.9 );
}
@media print, screen and (min-width: 768px) {/*PC*/
   .btn a.hide::after,
   .inquiry a.hide::after{
       padding:3px 0 0 0;
    }
}

footer dl .hide{
    opacity: 0.3 !important;
    cursor: default !important;
}



 /* 4.コンテンツ
////////////////////////////////////////// */
/*/// トップページ ///*/
#index #mainimg{
    height: 95vw;
    overflow: hidden;
    position: relative;
    opacity: 0;/*for Animation*/
}
@media print, screen and (min-width: 768px) {/*PC*/
    #index #mainimg{
        height: 56vw;
    }
}

/* #index #mainimg .swiper-slide:not(.first)>*{
    display: none;
} */

#index #mainimg picture>img{
    height: 95vw;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #index #mainimg picture>img{
        height: inherit;
    }
}

#index #mainimg .birdview .place{
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
}

#index h2{
    width: 80%;
    margin: auto;
    position: absolute;
    top: 15vw;
    left: 0;
    right: 0;
    z-index: 999;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #index h2{
    width: 40%;
    top: 3.4vw;
    }
}

#index h2 img{
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
}
#index h2 .tt1,
#index h2 .tt2{
    opacity: 0;/*for Animation*/
    transform: translateY(0px) scale(1.2);/*for Animation*/
}
#index h2 .tt3{
    opacity: 0;/*for Animation*/
    transform: translateY(10px) scale(1.0);/*for Animation*/
}

#index h2 .fade-main-tt{
    transform: translate(0) scale(1) !important;
    opacity: 1 !important;
    transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 1.2s;/* easeOutCubic */
}

#index h2 .fade-main-tt2{
    transform: translate(0) scale(1) !important;
    opacity: 1 !important;
    transition: all cubic-bezier(0.19, 1, 0.22, 1) 3s;/* easeOutExpo */
}


#index .point{
    text-align: center;
    background-color: #325b83;
    opacity: 0;for Animation*/
}
@media print, screen and (min-width: 768px) {/*PC*/
    #index .point{
        opacity: 1;for Animation*/
    }
}

#index .point ul {
    padding: 0 13px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-end;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #index .point ul{
        width: calc(100% - 100px);
        margin: auto;
        padding: 0;
    }
}

#index .point ul li{
    padding: 10px 10px 10px;
    border-bottom: solid 1px rgba( 255, 255, 255, 0.6 );
}
#index .point ul li.point1{
    padding: 25px 43px 10px;
}
#index .point ul li.point3{
    padding: 12px 10px 10px;
}
/* #index .point ul li.point2,
#index .point ul li.point3{
    width: 50%;
} */
@media print, screen and (min-width: 768px) {/*PC*/
    #index .point ul li{
        padding: 14px 0 12px 0;
        border-bottom: none;
    }
    #index .point ul li img{
        width: auto;
        height: 72px;
    }
    #index .point ul li.point1{
        width: 1036px;
        min-width: 1036px;
        padding: 20px calc((100% - 1050px) / 2) 10px;
        border-bottom: solid 5px rgba( 255, 255, 255, 0.10 );
        display: flex;
        justify-content: space-between;
    }
     #index .point ul li.point3{
        padding: 14px 0 12px 42px;
     }
}

#index .point ul li:last-child{
    border: none;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #index .point ul li:last-child{
    }
}

#index .price{
    padding: 20px 23px 18px;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #index .price{
        width: 920px;
        margin: auto;
        padding: 50px 0 0;
    }
}

#index .action{
    margin: 4px 0 45px 0;
    padding: 33px 23px 35px;
    background-color: #f2f0ed;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #index .action {
        margin: 5px 0 58px 0;
        padding: 30px 0 40px;
    }
    #index .action img {
        width: 595px;
        margin: auto;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    #index a.zeh{
        width: 770px;
        margin: 65px auto 0px;
        display: block;
    }
}

#index main .inquiry{
}
@media print, screen and (min-width: 768px) {/*PC*/
    #index main .inquiry{
    }
}

#index .news{
    margin: 50px 0 0;
    padding: 0 23px;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #index .news{
        width: 840px;
        min-height: 130px;
        margin: 75px auto 20px;
        padding: 0;
        display: flex;
        justify-content: center;
        align-items: center;
        background-color: inherit;
        background-image: url(../img/index_img/bg_news_lt.png),url(../img/index_img/bg_news_rt.png),url(../img/index_img/bg_news_lb.png),url(../img/index_img/bg_news_rb.png);
        background-size: 25px 20px;
        background-position: left top,right top,left bottom,right bottom;
        background-repeat: no-repeat;
    }
}

#index .news h3{
    margin: 0;
    font-family: "AvenirNextLTPro-Demi";
    font-size: 20rem;
    font-weight: normal;
    color: #325B82;
    text-align: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #index .news h3{
        width: 130px;
        height: 100%;
        min-height: 130px;
        margin: 0;
        font-size: 14rem;
        line-height: 14rem;
        text-align: left;
        display: flex;
        align-items: center;
        border-right: double 3px #c2cfda;
    }
}

#index .news table{
    /* background-image: url(../img/index_img/bg_news_l.png),url(../img/index_img/bg_news_r.png);
    background-size: 61px 59px;
    background-position: left top,right bottom;
    background-repeat: no-repeat; */
}
@media print, screen and (min-width: 768px) {/*PC*/
    #index .news table{
        width: auto;
        max-width: 710px;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    #index .news table tr{
        margin: 14px 0;
        display: flex;
    }
}

#index .news table tbody{
    padding: 19px 0;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #index .news table tbody{
        height: auto;
        padding: 0 0 0 20px;
        display: block;
    }
}

#index .news th{
    display:block;
    font-family: "TsukuMinPr6N-D";
    font-weight: normal;
    font-size: 15rem;
    line-height: 15rem;
    text-align: left;
    color: #4D4D4D;
    white-space: nowrap;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #index .news th{
        padding: 0px 12px 0 0;
    }
}

#index .news td{
    padding: 2px 0 16px 0;
    display:block;
    font-family: "TsukuMinPr6N-LB";
    line-height: 18rem;
}
#index .news tr:last-child td{
    padding: 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #index .news td{
        font-size: 14rem;
        line-height: 15rem;
        padding: 0 0 0px 0;
        display: inline-block;
    }
}

.mCS-dark-3.mCSB_scrollTools .mCSB_dragger .mCSB_dragger_bar {
    background-color: rgba(0, 0, 0, 0.3) !important;
}

#index .concept{
    padding: calc(100px + 30vw) 0 0;
    position: relative;
    background-image: url(../img/index_img/bg_sky.jpg);
    background-size: 350vw auto;
    background-position: -80vw 0;
    background-repeat: no-repeat;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #index .concept{
        padding: 0 0 0 calc(5vw + 50px);
        padding: 0 170px;
        display: flex;
        justify-content: center;
        align-items: flex-end;
        background-size: 100% 100%;
        background-position: center bottom;
    }
}

#index .concept figure{
    background-image: url(../img/index_img/bg_bldg.png);
    background-size: 100% auto;
    background-repeat: no-repeat;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #index .concept figure{
        width: 43vw;
        min-width: 430px;
        order: 1;
    }
}

#index .concept figure img{
    mix-blend-mode: multiply;
}

#index .concept div{
    /* width: fit-content;
    margin: auto; */
}
@media print, screen and (min-width: 768px) {/*PC*/
    #index .concept div{
        width: 40vw;
        min-width: 470px;
        margin: 0;
        padding: 14vw 0 0 0;
        white-space: nowrap;
        position: relative;
    }
}

#index .concept h3{
    width: 90%;
    margin: auto;
    padding: 0 0 0 5vw;
    position: absolute;
    top: 100px;
    left: 0;
    right: 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #index .concept h3{
        padding: 0;
        top: 0;
    }
}

#index .concept p{
    margin: 20px 0;
    font-family: "TsukuMinPr6N-LB";
    font-size: 15rem;
    line-height: 32rem;
    text-align: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #index .concept p{
        margin: 0 0 20px 0;
        color: #4d4d4d;
    }
}

#index a.link {
    width: 300px;
    height: 26px;
    margin: auto;
    padding: 5px 0;
    text-align: center;
    background-color: #C0A881;
    background-image: url(../img/common_img/ic_linearrow.png);
    background-size: 16px 11px;
    background-position: calc(100% - 10px) center;
    background-repeat: no-repeat;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #index a.link{
        height: 36px;
        margin: 0;
        padding: 0;
        position: relative;
        transition: all 500ms 0s ease;
    }
    #index a.link:hover{
        width: 330px;
        opacity: 1;
        /* background-position: calc(100% - 4px) center; */
        filter: saturate(150%);
        transition: all 250ms 0s ease;
    }
    #index .concept a.link{
        margin: auto;
    }
}

#index a.link b {
    margin: 0 0 0 15px;
    font-family: "TsukuGoPr5N-D";
    font-size: 18rem;
    line-height: 18rem;
    color: #ffffff;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #index a.link b{
        margin: 0 0 0 15px;
        font-family: "TsukuGoPr5N-D";
        font-size: 16rem;
        line-height: 16rem;
        color: #ffffff;
        display: block;
    }
}

#index a.link span{
    margin: 0 28px 0 0;
    font-family: "AvenirNextLTPro-Demi";
    font-size: 9rem;
    color: #ffffff;
        transition: all 500ms 0s ease;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #index a.link:hover span{
        /* transform: translateX(6px);
        transition: all 250ms 0s ease; */
    }
}

#index .concept div>img{
    width: 180px;
    margin: 40px auto;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #index .concept div>img{
        width: 270px;
        margin: 37px 0 -30px -20px;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    #index .concept picture{
        margin: 0 -3vw -1vw 0;
    }
}

#index .location,
#index .room{
    margin: 100px 0 75px 0;
    padding: 28vw 0 0 0;
    position: relative;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #index .location,
    #index .room{
        padding: 0;
        display: flex;
        }
    #index .location{
        margin: 13vw 0 0 0;
    }
    #index .room{
        margin: -3vw 0 0 0;
    }
}

#index .location figure,
#index .room figure{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #index .location figure,
    #index .room figure{
        width: calc(100% - 510px);
        height: calc(44vw + 6px);
        display: block;
        position: relative;
        }
}

#index .location figure img,
#index .room figure img{
    height: 100%;
    object-fit: cover;
}
@media print,screen and (min-width: 768px) {/*PC*/
    #index .location figure img,
    #index .room figure img {
        width: 100%;
    }
}

#index .location figure .ph1{
    height: 51vw;
    margin: 0 0 6px 0;
}
#index .location figure .ph2{
    width: calc(39vw - 3px);
    height: 38vw;
}
#index .location figure .ph3{
    width: calc(61vw - 3px);
    height: 38vw;
}
#index .room figure .ph1{
    width: calc(60vw - 3px);
    height: 45vw;
    margin: 0 0 6px 0;
}
#index .room figure .ph2{
    width: calc(40vw - 3px);
    height: 45vw;
    margin: 0 0 6px 0;
}
#index .room figure .ph3{
    height: 45vw;
    margin: 0 0 6px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #index .location figure picture,
    #index .room figure picture{
        margin: 0 !important;
        display: block;
        position: absolute;
    }
    #index .location figure .ph1{
        width: calc(56% - 3px);
        height: 28vw;
        position: absolute;
        top: 0;
        right: 0;
        z-index: 99;
        border-bottom: solid 6px #ffffff;
        border-left: solid 6px #ffffff;
    }
    #index .location figure .ph2{
        width: calc(44% - 3px);
        height: 20vw;
    }
    #index .location figure .ph3{
        width: 40vw;
        height: 24vw;
        position: absolute;
        bottom: 0;
    }
    #index .room figure .ph1{
        width: 63%;
        height: 24vw;
        position: absolute;
        top: 0;
        right: 0;
        z-index: 99;
        border-bottom: solid 6px #ffffff;
        border-left: solid 6px #ffffff;
    }
    #index .room figure .ph2{
        width: calc(46% - 3px);
        height: 20vw;
        right: 0;
        bottom: 0;
    }
    #index .room figure .ph3{
        width: calc(54% - 3px);
        height: 30vw;
        left: 0;
        bottom: 0;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    #index .location div{
        width: 440px;
        padding: 0 0 0 70px;
        }
    #index .room div{
        width: 370px;
        padding: 14vw 0 40px 140px;
        order: -1;/* 
        display: flex;
        flex-wrap: wrap;
        align-content: flex-end; */
        }
}

#index .location h3,
#index .room h3{
    padding: 0 20px;
    position: absolute;
    top: 0;
    mix-blend-mode: multiply;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #index .location h3,
    #index .room h3{
        width: 355px;
        margin: 0 0 0 -18px;
        padding: 0;
        position: inherit;
        }
}


#index .location p,
#index .room p{
    padding: 20px 0 18px;
    font-family: "TsukuMinPr6N-LB";
    font-size: 15rem;
    line-height: 30rem;
    text-align: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #index .location p,
    #index .room p{
        text-align: left;
    }
}


/*/// 生活環境 ///*/
#location .access h3{
    margin: 50px -10px 55px;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #location .access h3{
        width: 821px;
        margin: 80px auto 65px;
    }
}

#location .access div{
    margin: 70px auto 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #location .access div{
        width: 340px;
        padding: 0 0 0 710px;
        position: relative;
    }
}

#location .access figure{
    margin: 0 0 30px 0;
    position: relative;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #location .access figure:not(.amu){
        width: 340px;
        margin: 0 0 15px 0;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    #location .access figure:not(.amu)>img{
        width: 340px;
        height: 210px;
        object-fit: cover;
    }
}

#location .access figcaption:not(.ic){
    width: 100%;
    padding: 6px 15px 3px;
    box-sizing: border-box;
    font-family: "TsukuMinPr6N-LB";
    font-size: 17rem;
    color: #ffffff;
    background-color: rgba( 0, 0, 0, 0.70 );
    display: block !important;
    position: absolute;
    bottom: 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #location .access figcaption:not(.ic){
    padding: 6px 15px 3px;
    }
}

#location .access figcaption b{
    font-size: 23rem;
}

#location .access figcaption.ic{
    width: 80px;
    position: absolute;
    top: -15px;
    right: -15px;
}
@media print, screen and (min-width: 768px) {/*PC*/
	#location .access figcaption.ic{
		width: 100px;
		top: -10px;
        right: -30px;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    #location .access .amu{
        width: 680px;
        position: absolute;
        top: 0;
        left: 0;
    }
}

#location .access .amu figcaption{
    padding: 2px 10px;
    font-size: 15rem;
    line-height: 15rem;
    text-align: center;
    background-color: #333333;
    position: relative;
}
#location .access .amu figcaption b{
    font-size: 20rem;
    line-height: 20rem;
}
#location .access .amu figcaption strong{
    font-size: 47rem;
    line-height: 47rem;
    vertical-align: -7rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #location .access .amu figcaption{
        padding: 10px 0 0 0;
        position: absolute;
        font-size: 28rem;
        line-height: 28rem;
        text-align: center;
        background-color: inherit;
        background: linear-gradient(0deg, rgb(0, 0, 0, 0.8) 0%, rgb(0, 0, 0, 0.8) 40%, rgb(0, 0, 0, 0) 100%);
    }
    #location .access .amu figcaption b{
        font-size: 36rem;
        line-height: 36rem;
    }
    #location .access .amu figcaption strong{
        font-size: 86rem;
        line-height: 86rem;
        vertical-align: -12rem;
    }
}


#location .life{
    padding: 60px 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #location .life{
        padding: 80px 0 0;
    }
}

#location .map{
    margin: 0 -23px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #location .map{
        margin: 0 0 80px 0;
        position: relative;
    }
}

.map a.gmap{
    width: calc(100% - 12px);
	height:23px;
    padding: 9px 12px 0 0;
    color: #ffffff;
    line-height: 13rem;
    text-align: right;
    background-image: url(../img/common_img/ic_arrow_gmap.png);
    background-size: auto 26px;
    background-position: 8px center;
    background-repeat: no-repeat;
    background-color: #485157;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
.map a.gmap{
    width: 350px;
    position: absolute;
    z-index: 999;
    bottom: 0;
    left: 0;
    opacity: 0.9;
    transition: all 0.15s ease-in;
}
.map a.gmap:hover{
    opacity: 1;
    transition: all 0.25s ease-in;
}
}

#location .life section{
    margin: 60px 0 10px 0;
}

@media print, screen and (min-width: 768px) {/*PC*/
    #location .life section{
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }
}

#location .life :not(.list) h3{
    margin: 0 0 10px 0;
    font-family: "AvenirNextLTPro-Regular";
    font-size: 28rem;
    color: #808080;
    font-weight: normal;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #location .life :not(.list) h3{
        width: 100%;
        margin: 0 0 8px 0;
    }
}


#location .life figure{
    margin: 0 0 20px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #location .life figure{
        width: 320px;
        margin: 0;
    }
}

#location .life figure figcaption{
    font-size: 15rem;
    line-height: 30rem;
    letter-spacing: 1rem;
    text-align: left;
    white-space: nowrap;
}

#location .life figure figcaption b{
    margin: 8px 0 0 0;
    font-size: 16rem;
	line-height: 14rem;
	font-weight: normal;
    letter-spacing: 0.25rem;
    display: block;
}

#location .life figure figcaption strong{
    font-size: 24rem;
	font-weight: normal;
	vertical-align: -2rem;
}

#location .life figure figcaption small{
    font-size: 13rem;
}

#location section.list{
    margin: 85px 0 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #location section.list{
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: flex-start;
    }
}

#location .list h3{
    margin: 0 auto 5px;
    width: 100%;
    text-align: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #location .list h3{
        margin: 0 auto 15px;
    }
    #location .list h3 img{
        width: 307px;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    #location .list div{
        width: 490px;
}
}

#location .list h5{
    padding: 6px 12px 6px;
    font-family: "AvenirNextLTPro-Regular";
    font-size: 18rem;
    line-height: 18rem;
    font-weight: normal;
    color: #ffffff;
    display: flex;
    justify-content: space-between;
    background-color: #c5ad6e;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #location.win .list h5{
      padding: 8px 12px 4px;
    }
}

#location .list h5 strong{
    font-family: "TsukuGoPr5N-M";
    font-size: 16rem;
    line-height: 18rem;
    font-weight: normal;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #location.win .list h5 strong{
    line-height: 14rem;
    }
}

#location .list dl{
    width: 100%;
    margin: 0 0 30px 0;
    font-size:  13rem;
    line-height: 16rem;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
}
@media print, screen and (min-width: 768px) {/*PC*/
#location .list dl{
    margin: 0 0 40px 0;
	}
}

#location .list dt{
    width: 20%;
    margin: 16px 0 0 0;
    letter-spacing: 0;
    white-space: nowrap;
}
@media print, screen and (min-width: 768px) {/*PC*/
#location .list dt{
    padding: 0 0 0 3px;
    letter-spacing: 0;
}
}
#location .list dt.w{
   padding: 0 0 20px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #location .list dt.w{
        padding: 0;
     }
}

#location .list dd{
    width: 80%;
    margin: 16px 0 0 0;
    letter-spacing: 0;
    text-align: right;

    
}
@media print, screen and (min-width: 768px) {/*PC*/
#location .list dd{
    padding: 0 6px 0 0;
    font-size: 13rem;
}
}

#location .list dd span{
    margin: 0 -2rem 0 0;
    font-size: 10rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #location .list dd span{
        font-size: 13rem;
    }
}

#location .list small{
    font-size: 11rem;
    display: inline-block;
    transform: scale(0.8);
}

#location .list dl dt{
    padding: 0 0 3px 0;
    border-bottom: solid 1px rgba( 129, 140, 146, 0.3 );
}

#location .list dl dd{
    padding: 0 0 1px 0;
    border-bottom: solid 1px rgba( 129, 140, 146, 0.3 );
}
@media print, screen and (min-width: 768px) {/*PC*/
    #location .list dl dd{
        padding: 0 0 3px 0;
    }
}

#location .list ul.note{
    margin: -24px 0 28px 0;
    line-height: 16rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #location .list ul.note{
        margin: -30px 0 30px 0;
    }
}



/*/// マンションギャラリー・現地案内図 ///*/
#map .title h2{
    text-align: center;
}

#map .map{
    margin: 40px -23px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #map .map{
        margin: 80px 0 0;
        position: relative;
    }
}

/* #map .mansiongallery{
    margin: 40px -23px 25px;
    padding: 30px 0 30px 0;
    background-color: #ededed;
    overflow: hidden;
}
@media print, screen and (min-width: 768px) {
    #map .mansiongallery{
        width: calc(1050px - 427px);
        height: 402px;
        margin: 90px auto 0;
        padding: 0 427px 0 0;
        position: relative;
    }
}

#map .mansiongallery h3{
    margin: 0 0 15px 0;
    font-family: "TsukuMinPr6N-D";
    font-size: 22rem;
    line-height: 22rem;
    font-weight: normal;
    text-align: center;
}
@media print, screen and (min-width: 768px) {
    #map .mansiongallery h3{
        margin: 50px 0 0 0;
        font-size: 24rem;
        line-height: 26rem;
    }
}

#map .mansiongallery h3 span{
    font-family: "DINNextLTPro-Condensed";
    font-size: 16rem;
    line-height: 30rem;
    letter-spacing: 2rem;
    text-align: center;
    zoom: 85%;
    display: block;
}
@media print, screen and (min-width: 768px) {
    #map .mansiongallery h3 span{
        letter-spacing: 4rem;
    }
}

#map .mansiongallery figure{
    margin: 0 23px;
}
@media print, screen and (min-width: 768px) {
    #map .mansiongallery figure{
        width: 426px;
        height: 400px;
        margin: 0;
        position: absolute;
        top: 1px;
        right: 1px;
    }
}
#map .mansiongallery figure img{
    width: 100%;
}

#map .mansiongallery address{
    margin: 0 23px;
    padding: 5px 0 12px;
    font-family: "TsukuMinPr6N-D";
    font-size: 24rem;
    font-style: normal;
    letter-spacing: 2rem;
    color: #ffffff;
    background-color: #6a8ba1;
    display: flex;
    
}
@media print, screen and (min-width: 768px) {
    #map .mansiongallery address{
        width: 624px;
        margin: 0;
        padding: 12px 0 10px;
        position: absolute;
        bottom: 135px;
    }
}

#map .mansiongallery b{
    margin: 20px 23px -5px;
    padding: 5px 0px 5px 5px;
    font-family: "TsukuGoPr5N-D";
    font-size: 22rem;
    letter-spacing: 10rem;
    text-align: center;
    color: #608197;
    border-top: solid 1px #6a8ba1;
    border-bottom: solid 1px #6a8ba1;
    display: block;
}
@media print, screen and (min-width: 768px) {
    #map .mansiongallery b{
        width: 420px;
        margin: 10px auto;
    }
}

#map .mansiongallery address strong{
    margin: 0;
    font-size: 11rem;
    letter-spacing: 0;
    display: block;
}
@media print, screen and (min-width: 768px) {
    #map .mansiongallery address strong{
        margin: 0 10px 0 0;
        vertical-align: 4px;
        display: inline;
    }
}

#map .mansiongallery address p{
    margin: auto;
}

#map .mansiongallery a{
    color: #608197;
    font-size: 12rem;
    text-align: center;
    display: block;
}
@media print, screen and (min-width: 768px) {
    #map .mansiongallery a{
        margin: 122px 0 0 0;
        font-size: 13rem;
    }
}

#map .mansiongallery a em{
    font-family: "TsukuGoPr5N-D";
    font-size: 17rem;
    line-height: 56rem;
    font-style: normal;
}

#map .mansiongallery a strong{
    font-family: "DINNextLTPro-Condensed";
    font-size: 56rem;
    line-height: 30rem;
    font-weight: normal;
    display: block;
    text-align: center;
}
@media print, screen and (min-width: 768px) {
    #map .mansiongallery a strong{
    }
}

#map .mansiongallery a span{
    font-family: "DINNextLTPro-Condensed";
    font-size: 14rem;
} */


/*/// 敷地計画 ///*/
#landplan .landplan{
    padding: 55px 0 0 0;
    position: relative;
}
@media print, screen and (min-width: 768px) {/*PC*/ 
   #landplan .landplan {
        padding: 75px 0 0 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }
}

#landplan .landplan h3{
    width: 100%;
    margin: 0 0 50px 0;
    font-family: "TsukuMinPr6N-LB";
    font-size: 19rem;
	line-height: 29rem;
	letter-spacing: 1rem;
    text-align: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #landplan .landplan h3{
        width: auto;
        margin: 0 0 70px 0;
        font-size: 24rem;
        line-height: 36rem;
		letter-spacing: 1.5rem;
        text-align: left;
    }
}

#landplan .landplan>figure{
    margin: 30px -23px 70px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #landplan .landplan>figure{
        margin: 0 calc(((100vw - 1050px) / 2) * -1) 0 -1vw;
        position: relative;
    }
    #landplan .landplan>figure img{
        max-width: 1200px;
    }
}

#landplan .landplan>figure figcaption{
    width: 30vw;
    position: absolute;
    bottom: 5px;
    right: 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #landplan .landplan>figure figcaption{
       width: 252px;
       bottom: 3vw;
       left: calc(1050px - 252px + 1vw + 7px);
       right: inherit;
    }
}



#landplan .landplan aside{
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #landplan .landplan aside{
        width: 536px;
        height: 170px;
        margin: 6px 0 60px 0;
        display: block;
        border-top: solid 2px #325b83;
        border-bottom: solid 2px #325b83;
        position: relative;
    }
}

#landplan .landplan aside .top{
    width: 100%;
    padding: 3px 0 4px;
    font-size: 14rem;
    text-align: center;
    border-top: solid 1px #c1c1c1;
    border-bottom: solid 1px #c1c1c1;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #landplan .landplan aside .top{
        width: 380px;
        padding: 12px 0 0;
        border: none;
    }
}

#landplan .landplan aside strong{
    margin: 0 8px 0 -2px;
    font-family: "TsukuMinPr6N-LB";
    font-size: 34rem;
    line-height: 33rem;
    text-align: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #landplan .landplan aside strong{
        width: 380px;
        margin: 0 0 12px 0;
        white-space: nowrap;
        display: block;
    }
}

#landplan .landplan aside strong b{
    font-size: 56rem;
	line-height: 56rem;
    color: #b93948;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #landplan .landplan aside strong b{
        font-size: 48rem;
        line-height: 48rem;
        vertical-align: -3rem;
        display: inline;
    }
}

#landplan .landplan aside strong b span{
    font-size: 37rem;
    color: #333333;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #landplan .landplan aside strong b span{
        font-size: 34rem;
    }
}

#landplan .landplan aside strong b span i{
	margin: 0 0 0 -6rem;
	display: inline-block;
    color: #b93948;
}

#landplan .landplan aside strong em{
    font-size: 15rem;
    line-height: 8rem;
    font-style: normal;
    display: block;
}

#landplan .landplan aside figure{
    margin: 12px 0;
}
#landplan .landplan aside figure img{
    width: auto;
    height: 108px;
    object-fit: cover;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #landplan .landplan aside figure{
        margin: 0;
        position: absolute;
        top: 18px;
        right: 0;
    }
    #landplan .landplan aside figure img{
    height: 135px;
}
}

#landplan .landplan aside .sub{
    width: 100%;
    padding: 20px 0 0 0;
    font-size: 14rem;
    text-align: center;
    border-top: solid 1px #c1c1c1;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #landplan .landplan aside .sub{
        width: 380px;
        padding: 6px 0 0 0;
        line-height: 18rem;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    #landplan .equip{
        padding: 50px 0 0 0 !important;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        border-bottom: solid 2px #325b83;
    }
}

#landplan .equip h4{
    font-family: "AvenirNextLTPro-Regular";
    font-size: 32rem;
    line-height: 32rem;
    font-weight: normal;
    color: #325b82;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #landplan .equip h4{
        width: 100%;
        height: 36px;
        margin: 0 0 0 0;
        display: flex;
        background-color: #e5e5e6;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    #landplan .equip h4 b{
        width: 180px;
        height: 100%;
        font-size: 19rem;
        line-height: 38rem;
        text-align: center;
        color: #ffffff;
        background-color: #325b82;
	}
	#landplan.win .equip h4 b{
        line-height: 40rem;
    }
}

#landplan h4 span{
    margin: 0 -23px;
    padding: 10px 23px;
    font-family: "TsukuMinPr6N-LB";
    font-size: 16rem;
    line-height: 16rem;
    color: #333333;
    background-color: #e5e5e6;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #landplan .equip h4 span{
        margin: 0;
        padding: 0 0 0 15px;
        font-size: 18rem;
        line-height: 35rem;
        border-top: none;
    }
}

#landplan .equip dl{
    margin: 6px 0 36px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #landplan .equip dl{
        margin: 0;
    }
}

#landplan .equip dt{
    width: 100%;
    margin: 15px 0 10px 0;
    font-family: "TsukuGoPr5N-D";
    font-size: 16rem;
    line-height: 20rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #landplan .equip dt{
        margin: 30px 0 15px 0;
        font-size: 18rem;
    }
}

#landplan .equip .key img{
    margin: 28px auto 0;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #landplan .equip .key img{
        width: 416px;
        margin: -46px 0 20px 0;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    #landplan .equip .key .txt{
        width: 580px;
        letter-spacing: 0;
    }
}


/*/// 間取り ///*/
#roomtype .fig{
    padding: 55px 0 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/ 
    #roomtype .fig {
        padding: 75px 0 0 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: flex-start;
    }
}

#roomtype .fig h3{
    width: 100%;
    margin: 0 0 50px 0;
    font-family: "TsukuMinPr6N-LB";
    font-size: 19rem;
	line-height: 29rem;
	letter-spacing: 1rem;
    text-align: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .fig h3{
        margin: 0 0 70px 0;
        font-size: 24rem;
		line-height: 36rem;
		letter-spacing: 1.5rem;
    }
}

#roomtype .fig>div {
    margin: 0 0 80px 0;
    padding: 0 0 15px 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-end;
}

 @media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .fig>div {
        width: 470px;
        margin: 0;
        padding: 0 0 20px 0;
        position: relative;
    }
}

#roomtype .fig h4 {
    margin: 0 0 -34rem 0;
    font-family: "AvenirNextLTPro-Demi";
    font-size: 18rem;
    font-weight: normal;
	text-align: center;
	color: #325b83;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .fig h4 {
        margin: 0 0 -10rem 0;
        font-size: 24rem;
    }
}

#roomtype .fig h4 strong {
    font-family: "AvenirNextLTPro-Regular";
    font-size: 72rem;
    line-height: 72rem;
    font-weight: normal;
    display: block;
}

 @media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .fig h4 strong {
        font-size: 80rem;
        line-height: 80rem;
        display: inline;
    }
}

#roomtype .fig h5 {
    font-family: "AvenirNextLTPro-Regular";
    font-size: 36rem;
    font-weight: normal;
    letter-spacing: 1rem;
    text-align: right;
}

 @media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .fig h5 {
        
    }
}

#roomtype .fig .size {
    width: 210px;
    margin: 6px 0 0 0;
    padding: 10px 0 0 calc(100% - 210px);
    border-top: solid 2px #325b82;
}

 @media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .fig .size {
        width: 230px;
        padding: 5px 0 0 calc(100% - 230px);
    }
}

#roomtype .fig .size dl {
    margin: 8px 0 0 0;
    display: flex;
    justify-content: space-between;
    font-size: 14rem;
    line-height: 20rem;
    border-bottom: solid 1px #c4c4c4;
}
#roomtype .fig .size dl:last-child{
    border: none;
}

#roomtype .fig .size dl strong {
    margin: 0 0 0 3px;
    font-family: "AvenirNextLTPro-Regular";
    font-size: 34rem;
    font-weight: normal;
}

#roomtype .fig .size dl b {
    margin: 0 0 0 3px;
    font-family: "AvenirNextLTPro-Regular";
    font-size: 24rem;
    font-weight: normal;
}

#roomtype .fig figure {
    width: 100%;
    display: block;
}
#roomtype .fig .b_type figure {
        margin: 15px auto 15px;
}
#roomtype .fig .e_type figure {
        margin: 30px auto 15px;
}

 @media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .fig figure {
        width: 400px;
        height: 780px;
        margin: -10px auto 48px !important;
        display: flex;
        align-items: flex-end;
    }
}

#roomtype .fig figure .north{
    width: 42px;
    float: right;
}
#roomtype .fig .b_type figure .north{
    margin: 10px 0 0 0;
}
#roomtype .fig .e_type figure .north{
    margin: -10px 0 0 0;
}


#roomtype .fig .point{
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

#roomtype .fig .point li {
    width: calc(50% - 5px);
    margin: 3px 0;
    padding: 8px 0 7px;
    color: #325b82;
    font-size: 14rem;
    line-height: 14rem;
    letter-spacing: -0.25rem;
    text-align: center;
    border: solid 1px #325b82;
    border-radius: 4px;
}

#roomtype .fig .notice {
    margin: -65px 0 0 0;
    font-size: 12rem;
    line-height: 13rem;
    letter-spacing: -0.25rem;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}

 @media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .fig .notice {
        width: 100%;
        margin: 12px 0 0 0;
        border-bottom: none;
    }
}

#roomtype .fig .notice li {
    margin: 6px 6px 0px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .fig .notice li {
        margin: 0 15px 0 0;
    }
}

#roomtype .fig .notice li:first-child {
    width: 100%;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .fig .notice li:first-child {
        width: auto;
        margin: 0 18px 0 0;
    }
}

#roomtype .fig .notice img {
    width: 28px;
    height: 10px;
    margin: 0 2px 0 0;
}

#roomtype .fig figure {
    clear: both;
}

#roomtype .fig .banner{
    margin: 50px 0 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .fig .banner{
        width: 100%;
        margin: 110px 0 0 0;
        display: flex;
        justify-content: space-between;
        flex-direction: row-reverse;
    }
}

#roomtype .fig .banner li{
    margin: 0 0 23px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .fig .banner li{
        margin: 0 0 0 0;
    }

    #roomtype .fig .banner li img{
        height: 120px;
    }
}


@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .select,
    #roomtype .equip{
        padding: 70px 0 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }
    #roomtype .equip div{
        
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .select dl,
    #roomtype .equip dl{
        width: 490px;
    }
}

#roomtype .select h4,
#roomtype .equip h4{
    margin: 85px 0 0;
    font-family: "AvenirNextLTPro-Regular";
    font-size: 32rem;
    line-height: 32rem;
    font-weight: normal;
    color: #325b82;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;align-items: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .select h4,
    #roomtype .equip h4{
        width: 100%;
        height: 36px;
        margin: 0 0 0 0;
        justify-content: flex-start;
        background-color: #e5e5e6;
    }
}


@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .select h4 b,
    #roomtype .equip h4 b{
        width: 180px;
        height: 100%;
        font-size: 19rem;
        line-height: 38rem;
        text-align: center;
        color: #ffffff;
        background-color: #325b82;
	}
	#roomtype.win .select h4 b,
    #roomtype.win .equip h4 b{
        line-height: 40rem;
    }
}

#roomtype .select h4 em,
#roomtype .equip h4 em{
    width: 100%;
    margin: 0 -23px;
    padding: 10px 23px;
    font-family: "TsukuMinPr6N-LB";
    font-style: normal;
    font-size: 16rem;
    line-height: 16rem;
    color: #333333;
    background-color: #e5e5e6;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .select h4 em,
    #roomtype .equip h4 em{
        width: auto;
        margin: 0;
        padding: 0 0 0 15px;
        font-size: 18rem;
        line-height: 35rem;
        border-top: none
        ;flex-grow: 1;
    }
}

#roomtype .select .ic{
    width: 120px;
    height: 20px;
    margin: 3px 0 0 0;
    display: flex;
    flex-wrap: wrap;
    font-weight: normal;
    border: solid 1px #b83948;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .select .ic{
        margin: 0 7px 0 0;
        order: 1;
    }
}

#roomtype .select .ic span{
    width: 50%;
    padding: 3px 0 3px;
    font-family: "TsukuGoPr5N-M";
    font-size: 13rem;
    line-height: 13rem;
    text-align: center;
    white-space: nowrap;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .select .ic span{
        padding: 4px 0 1px;
    }
}

#roomtype .select .ic span:first-child{
    color: #ffffff;
    background-color: #b83948;
}

#roomtype .select .ic span:last-child{
    color: #b83948;
    background-color: #ffffff;
}

#roomtype .select dt{
    margin: 18px 0 8px 0;
    font-family: "AvenirNextLTPro-Regular";
    font-size: 20rem;
    line-height: 16rem;
    color: #325b82;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .select dt{
        font-size: 24rem;
        margin: 18px 0 6px 0;
    }
}

#roomtype .select h5{
    width: 100%;
    padding: 2px 4px;
    font-family: "TsukuGoPr5N-D";
    font-size: 14rem;
    font-weight: normal;
    letter-spacing: 0;
    color: #ffffff;
    background-color: #b83948;
    display: flex;
    align-items: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .select h5{
        padding: 4px 4px;
        font-size: 17rem;
        justify-content: center;
    }
}

#roomtype .select h5 .ex{
    width: 20px;
    height: 20px;
    margin: 0 2px 0 0;
    line-height: 20rem;
    color: #b83948;
    text-align: center;
    background-color: #ffffff;
    border-radius: 10px;
    display: inline-block;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .select h5 .ex{
        width: 24px;
        height: 24px;
        line-height: 24rem;
        border-radius: 12px;
    }
}

#roomtype .select .gas_ih{
    margin: 0 0 50px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .select .gas_ih{
        margin: 0 0 15px 0;
    }
}

#roomtype .select .gas_ih dd{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    position: relative;
}

#roomtype .select .gas_ih dd .or{
    width: 12px;
    margin: auto;
    position: absolute;
    top: 20vw;
    left: 0;
    right: 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .select .gas_ih dd .or{
        width: 19px;
        top: 92px;
    }
}

#roomtype .select .gas_ih figure{
    width: calc(50% - 9px);
    margin: 12px 0 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .select .gas_ih figure{
        width: 220px;
        margin: 12px 0 0 0;
    }
}

#roomtype .select .gas_ih figcaption{
    font-size: 14rem;
    line-height: 16rem;
    text-align: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .select .gas_ih figcaption{
        margin: 10px 0 0 0;
        font-size: 15rem;
        line-height: 18rem;
        text-align: left;
        display: flex;
        align-items: center;
    }
}

#roomtype .select .gas_ih figcaption strong{
    margin: 8px 0;
    padding: 3px 0;
    line-height: 13rem;
    font-weight: normal;
    text-align: center;
    background-color: #c6d3da;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .select .gas_ih figcaption strong{
        margin: -2px 8px 0 0;
        padding: 2px 0 0 0;
        width: 52px;
        height: 46px;
        line-height: 16rem;
        letter-spacing: -0.25rem;
        white-space: nowrap;
        display: flex;
        align-items: center;
        justify-content: center;
    }
}

#roomtype .select .color{
    margin: 0 0 22px 0;
}

#roomtype .select .color dd{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

#roomtype .select .color figure{
    width: calc(50% - 5px);
    
    margin: 0 0 10px;
    position: relative;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .select .color figure{
        width: calc(50% - 7px);
        margin: 0 0 14px;
    }
}

#roomtype .select .color figure img{
    height: 64px;
    object-fit: cover;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .select .color figure img{
    height: 80px;
}
}

#roomtype .select .color figcaption{
    margin: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    display: flex;
    flex-direction: column;
    align-content: center;
    justify-content: center;
    text-align: center;
    font-family: "AvenirNextLTPro-Regular";
    font-size: 11rem;
    line-height: 11rem;
    color: #ffffff;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .select .color figcaption{
        font-size: 13rem;
    }
}

#roomtype .select .color figcaption b{
    margin: 3px 0 4px 0;
    font-family: "AvenirNextLTPro-Regular";
    font-size: 14rem;
    font-weight: normal;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .select .color figcaption b{
        margin: 6px 0 8px 0;
        font-size: 16rem;
    }
}

#roomtype .select .color dd strong{
    margin: auto;
    font-size: 14rem;
    line-height: 22rem;
    font-weight: normal;
    letter-spacing: 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .select .color dd strong{
        font-size: 16rem;
    }
}

#roomtype .select .color .img_wr::after{
    transform: scale(0.8);
    transform-origin: 100%;
}

#roomtype .select .notice{
    margin: 0 0 0 11rem;
    font-size: 11rem;
    line-height: 14rem;
    letter-spacing: 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .select .notice{
        display: flex;
        margin: 0 0 0 -11rem;
    }
}

#roomtype .select .notice li::first-letter{
    margin: 0 0 0 -11rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .select .notice li::first-letter{
        margin: 0 0 0 11rem;
    }
}

#roomtype .equip dl{
    margin: 6px 0 36px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .equip dl{
        margin: 0;
        display: flex;
        align-content: space-between;
    }
}

#roomtype .equip dt{
    width: 100%;
    margin: 15px 0 10px 0;
    font-family: "TsukuGoPr5N-D";
    font-size: 16rem;
    line-height: 20rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .equip dt{
        margin: 20px 0 15px 0;
        font-size: 18rem;
    }
}

#roomtype .equip dd.ph{
    margin: 25px auto 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .equip dd.ph{
        height: 187px;
        margin: 15px auto 0;
        display: flex;
        align-items: flex-end;
    }
}

#roomtype .equip dd.txt{
        letter-spacing: 0;
    }
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .equip dd.txt{
        min-height: 80px;
        letter-spacing: 0.5rem;
    }
}


/*/// 物件概要 ///*/
#outline article table{
    margin: 45px 0 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #outline article table{
        width: 1050px;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    #outline article tr{
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }
}

#outline article th{
    width: 14px;
    white-space: nowrap;
    display:inline-block;
    padding: 0 0 2px 0;
    line-height: 18rem;
	font-family: "TsukuGoPr5N-D";
    border-bottom: solid 2px #325b82;
    }
@media print, screen and (min-width: 768px) {/*PC*/
#outline article th{
    width: 210px;
    margin: 0 0 20px 0;
    padding: 0 0 3px 6px;
    font-size: 14rem;
	background-image: none;
	border-bottom: solid 1px #325b82;
    }
}

#outline article td{
    width: 100%;
    margin: -2px 0 0 0;
    display:block;
    padding: 4px 0 12px 0px;
    line-height: 18rem;
    border-top: solid 1px #999999;
    }
    
@media print, screen and (min-width: 768px) {/*PC*/
#outline article td{
    width: calc(100% - 230px);
    margin: 0 0 20px 0;
    padding: 0 0 3px 10px;
    font-size: 14rem;
    border-top: none;
    border-bottom: solid 1px #999999;
    }
}

#outline article .note{
    line-height: 14rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
#outline article .note{
    font-size: 13rem;
    margin: -8px 0 0 8px;
}
}