@charset "utf-8";


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

  “Farnest Uearata”

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

  1.リセット

  2.共通パーツ

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

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

/* 1.リセット
////////////////////////////////////////// */
*{
    margin: 0;
    padding: 0;
    text-align: justify;
    text-justify: inter-ideograph;
    }

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

body{
    min-width: 1px;
    font-family: "NewCezanneProN-M", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif;
    font-size: 13rem;
    letter-spacing: 0.25rem;
    color: #333333;
    -webkit-text-size-adjust: 100%;
    overflow-x:hidden;
    }
@media print, screen and (min-width: 768px) {/*PC*/
body{
    letter-spacing: 0.5rem;
    }
}
@media print {/*Print*/
body{
    font-size: 13rem;
    -webkit-print-color-adjust: exact;
    zoom: 0.75;
    }
}

strong{
    /*-webkit-text-stroke-width: .5px;*/
}

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

a,img{
    border: 0;
    outline: 0;
    margin: 0;
    }

a{
    color: #333;
    text-decoration: none;
    outline:none;
    transition: color 0.15s ease-in;
    }
@media print, screen and (min-width: 768px) {/*PC*/
a:hover{
    color: #1959a6;
    transition: color 0.25s ease-in;
    }
}

img{
    height: 100%;
    font-size: 0;
    line-height: 0;
    vertical-align: top;
    }
@media screen and (-webkit-min-device-pixel-ratio: 0) and (min-resolution: .001dpcm) {
img{
	image-rendering: -webkit-optimize-contrast;
}
}

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


/* 2.共通パーツ
////////////////////////////////////////// */
nav#menu{
    width: 100%;
    max-width: 450px;
    min-height: 100vh;
	height: -webkit-fill-available;
    position: fixed;
    z-index: 99998;
    top: 0;
    right: 0;
    line-height: 20rem;
    color: #ffffff;
    background-color: rgba( 0, 35, 82, 0.95 );
    transform: translateX(100%);
    transition: all 0.6s;
}
@media print, screen and (min-width: 768px) {/*PC*/
nav#menu{
    display: none;
    }
}

nav#menu dt{
    padding: 25px 0 10px 20px;
	font-size: 22rem;
    letter-spacing: 5rem;
	font-family: "HelveticaNeueLTPro-BdCn";
    color: #95b8c2;
    }

nav#menu dd{
    width: calc(100% - 40px);
    margin: 8px 20px 0 20px;
    background-image: url(../img/common_img/ic_arrow_line.png);
    background-size: 600px 7px;
    background-position: right 14px;
    background-repeat: no-repeat;
    display: block;
    }

nav#menu dd.open{
    /*background-image: url(../img/common_img/ic_line.png);*/
    }
    
nav#menu dd.open a,
nav#menu dd.open2 a{
    background-image: url(../img/common_img/ic_angle_down.png);
    background-size: 18px 9px;
    background-position: center 24px;
    background-repeat: no-repeat;
    transition: background-image 0.25s;
}
nav#menu dd.open a.active,
nav#menu dd.open2 a.active{
    background-image: url(../img/common_img/ic_angle_up.png);
    transition: background-image 0.5s;
}
    
nav#menu dd a{
    color: #ffffff;
    font-size: 14rem;
    line-height: 20rem;
    letter-spacing: 2rem;
    display: block;
    }

nav#menu dd span{
    margin: 0px 0 0 0;
    display: block;
    font-size: 10rem;
	font-family: "HelveticaNeueLTPro-MdCn";
    color: #95b8c2;;
}

nav#menu dd ul {
    margin: 0 0 20px 0;
    flex-wrap: wrap;
    /*border-top: dotted 1px #81b4e5;
    border-bottom: dotted 1px #81b4e5;*/
    height: 0;
    display: none;
}
/*nav#menu dd ul.active {
    height: 100px;
    opacity: 1;
    transition: all 0.5s, opacity 1s;
    display: flex !important;
    flex-wrap: wrap;
    flex-direction: row;
}*/

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

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: 30rem;
}

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

.down{
    display: block;
    position: absolute;
    right: 10px;
    top: 10px;
    width: 46px;
    height: 46px;
    cursor: pointer;
    z-index: 99999;
    text-align: center;
    border-radius: 0 0 3px 3px;
}

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

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

.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{
    /*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;
    left: 8px;
    -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.active span:nth-child(4){
    filter: brightness(250%) saturate(20%);
}

nav#phone{
    width: 100%;
    height: 50px;
    position: absolute;
    bottom: 0;
    display: flex;
    justify-content: space-around;
    align-items: center;
    background-color: #002352;
}
@media print, screen and (min-width: 768px) {/*PC*/
nav#phone{
    display: none;
    }
}

nav#phone a{
    width: 25%;
    display: block;
    text-align: center;
    line-height: 0;
    /*background-image: url(../img/common_img/ln_phone.png);
    background-size: 1px 38px;
    background-repeat: no-repeat;*/
}
nav#phone a:first-child{
    background-image: none;
}

nav#phone img{
    height: 50px;
}

nav#sub{
    display: none;
}
@media print, screen and (min-width: 768px) {/*PC*/
nav#sub{
    display: block;
    height: 70px;
    position: absolute;
    top: 0;
    right: 30px;
    display: flex;
    align-items: flex-end;
}

nav#sub ul a{
    display: block;
    margin: 16px 18px -1px 0;
    padding: 0 0 0 10px;
    font-size: 12rem;
    line-height: 12rem;
    letter-spacing: 1rem;
	font-weight: normal;
	font-family: "NewCezannePro-DB";
    background-image: url(../img/common_img/ic_arrow_bl.png);
    background-size: 7px 9px;
	background-position: 0 2px;
    background-repeat: no-repeat;
}

nav#sub a.request{
    height: 70px;
    transition: all 500ms 0s ease;
}
nav#sub a.request:hover{
    opacity: 1;
    filter: contrast(180%);
    transition: all 250ms 0s ease;
}

nav#sub a.reserve{
    height: 70px;
    transition: all 500ms 0s ease;
    /*filter: contrast(10%) brightness(180%) saturate(200%) ;cursor: not-allowed;*/
}
nav#sub a.reserve:hover{
    opacity: 1;
    filter: contrast(150%);
    transition: all 250ms 0s ease;
}
}

nav#global{
    display: none;
}
@media print, screen and (min-width: 768px) {/*PC*/
nav#global{
    display: block;
    width: 100%;
    height: 43px;
    position: absolute;
    top: 87px;
    z-index: 9999;
    background-image: url(../img/common_img/bg_header.png);
    background-size: 120% 100%;
    background-position: center bottom;
    background-repeat: no-repeat;
}
nav.navi_fix{
    position: fixed !important;
    top: 0 !important;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
nav#global>ul{
    width: calc(100% - 60px);
    margin: auto;
    display: flex;
}

nav#global>ul>li{
    width: 12.5%;
    background-image: url(../img/common_img/bg_nav.png);
    background-position: left 20px;
    background-repeat: no-repeat;
}
nav#global>ul>li:first-child{
    background-image: none;
}
}
@media print, screen and (min-width: 768px) {/*PC*/
nav#global a{
    height: 34px;
    display: block;
    text-align: center;
    position: relative;
    font-size: 15rem;
    line-height: 15rem;
    font-family: "HelveticaLTPro-LightCond";
	-webkit-text-stroke: 0.5px #333333;
    text-stroke: 0.5px #333333;
}
nav#global a:hover{
    color: #333;
}

nav#global a::before{
    content: '';
	position: absolute;
	left: 50%;
	top: 13px;
	width: 0;
	transform: translateX(-50%);
	border-top: solid 1px #1980e5;
	transition: all 300ms 0s ease;
}
nav#global li:not(.hide) a:hover::before{
    content: '';
	position: absolute;
	left: 50%;
	top: 13px;
	width: 70%;/*下線横幅設定*/
	transform: translateX(-50%);
	border-top: solid 1px #124389;
	transition: all 300ms 0s ease;
}
}

nav#global a small {
  display: flex;
  overflow: hidden;
  height: 15px;
  margin: 4px 0 3px 0;
  line-height: 15rem;
  font-size: 10rem;
  color: #333;
  -webkit-text-stroke: 0;
  text-stroke: 0;
  justify-content: center;
  
}

nav#global a small span {
  display: block;
  transform: translate(0, 105%);
  transition: transform 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;
}

@media print, screen and (min-width: 768px) {/*PC*/
nav#global img{
    height: 14px;
}
/*nav#global a img.on{
    display: none;
    opacity: 0;
    transition: all 600ms 0s ease;
}
nav#global a img.off{
    opacity: 1;
    transition: all 600ms 0s ease;
}
nav#global a:hover img.on{
    opacity: 1;
}
nav#global a:hover img.off{
    opacity: 0;
}*/
}

/*サブメニュー*/
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(0, 35, 82, 0.9);
    position: absolute;
    top: 38px;
    left: 0;
    right: 0;
    width: calc(100% - 12px);
    height: 0;
    padding: 0 0 0 12px;
    transition: all 0.25s;
    opacity: 0.5;
}
nav#global div.active{
    width: calc(100% - 12px);
    height: 28px;
	padding: 16px 0 0 12px;/*サブメニュー余白設定*/
    transition: all 0.5s;
    overflow: hidden;
    opacity: 1;
}
nav#global div a::before{
    content: '';
	position: absolute;
	left: 50%;
	top: 16px;
	width: 0;
	transform: translateX(-50%);
	border-top: solid 1px #005169;
	transition: all 300ms 0s ease;
}
nav#global div li:not(.hide) a:hover::before{
    content: '';
	position: absolute;
	left: 50%;
	top: 16px;
	width: 100%;
	transform: translateX(-50%);
	border-top: solid 1px #abd8ff;/*サブメニュー下線設定*/
	transition: all 300ms 0s ease;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
nav#global div ul{
    margin: 0 50px 0 0;
    display: inline-flex;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
nav#global div li a{
    width: auto;
    margin: 0 18px 0 0;
    padding: 0 5px 0 10px;
    /*color: #333333;*/
    font-size: 13rem;
    line-height: 14rem;
    color: #ffffff;
    background-image: url(../img/common_img/ic_arrow_lbl.png);
    background-size: 7px 9px;
    background-position: left 1px;
    background-repeat: no-repeat;
    -webkit-text-stroke: 0;
    text-stroke: 0;
}
nav#global div.side li:nth-child(7) a:first-letter,
nav#global div.side li:nth-child(8) a:first-letter{
    letter-spacing: 13rem;
}
}
@media print, screen and (min-width: 768px) {/*PC*/
nav#global div li a:hover{
    /*color: #b2b2b2;*/
    color: #ffffff;
}
}

.title{
    width: 100%;
    height: 104px;
    margin: 110px auto 0;
    background-color: #d7dce3;
    display: flex;
    align-items: flex-end;
    justify-content: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
.title{
    height: 140px;
    margin: 0 auto 0;
}
}

.title h2{
    font-size: 48rem;
    line-height: 20rem;
    letter-spacing: 3rem;
    font-family: "HelveticaLTPro-LightCond";
    color: #ffffff;
    text-align: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
.title h2{
    width: 1050px;
    font-size: 66rem;
    line-height: 30rem;
    letter-spacing: 6rem;
    text-align: left;
}
}

.title strong{
    margin: 0 0 12px 0;
    font-size: 16rem;
    line-height: 36rem;
    font-weight: normal;
    font-family: "NewCezannePro-DB";
    letter-spacing: 6rem;
    color: #355273;
    text-align: center;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
.title h2 strong{
    margin: 0 0 12px 3px;
    font-family: "NewCezanneProN-M";
	line-height: 50rem;
    text-align: left;
}
}

body:not(#index) main h3{
    margin: 40px 0 10px;
    font-size: 18rem;
    line-height: 26rem;
    font-family: "MatissePro-M";
    text-align: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
body:not(#index) main h3{
    font-size: 24rem;
    line-height: 36rem;
    letter-spacing: 2rem;
    margin: 40px 0 40px;
}
}

h4{
    /*font-size: 1.384rem;
    font-weight: normal;
    font-family: "FrutigerNeueLTW1G-Medium", "DNPShueiGoKinStd-M", "秀英角ゴシック金 M", -apple-system, BlinkMacSystemFont, "游ゴシック体", YuGothic, YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    line-height: 1.5rem;
    color: #4d4d4d;*/
    }

@media print, screen and (min-width: 768px) {/*PC*/
h4{
    font-size: 1.846rem;
	
    }
}
@media all and (-ms-high-contrast: none) {
  *::-ms-backdrop, h4 {/*IE11*/
    font-weight: bold;
  }
}

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

article section h5{
    /*margin: 18px 0 15px;
    font-size: 1.384rem;
    font-weight: normal;
    font-family: "FrutigerNeueLTW1G-Medium", "DNPShueiGoKinStd-B", "秀英角ゴシック金 B", -apple-system, BlinkMacSystemFont, "游ゴシック体", YuGothic, YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    line-height: 1.75rem;
    color: #4d4d4d;*/
}
@media print, screen and (min-width: 768px) {/*PC*/
article section h5{
    /*margin: 0 0 20px;
    font-size: 1.384rem;*/
}
}

article section h6{
    /*margin: 18px 0 8px;
    font-size: 1.230rem;
    font-weight: normal;
    font-family: "FrutigerNeueLTW1G-Medium", "DNPShueiGoKinStd-B", "秀英角ゴシック金 B", -apple-system, BlinkMacSystemFont, "游ゴシック体", YuGothic, YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    line-height: 1.5rem;
    color: #4d4d4d;*/
}
@media print, screen and (min-width: 768px) {/*PC*/
article section h6{
    /*font-size: 1.384rem;*/
}
}

article section figure img{
    width: 100%;
    height: auto;
}

.dir{
    display: none;
}
@media print, screen and (min-width: 768px) {/*PC*/
.dir{
    width: 1050px;
    margin: auto;
    font-size: 10rem;
    line-height: 24rem;
	font-family: "NewCezannePro-DB";
    display: flex;
    justify-content: flex-end;
}

.dir li{
    border-bottom: solid 1px #c2c2c2;
}

.dir li a::after{
    content: "＞";
    margin: 0 6px;
}
}

.note{
    font-size: 10rem;
    line-height: 11rem;
}

.note_i{
    font-size: 10rem;
    line-height: 11rem;
    padding-left:10rem;
	text-indent:-10rem;
}
    
/* SCROLLボタン 
.scroll {
    display: none;
}
@media print, screen and (min-width: 768px) {PC
.scroll {
    width: 12px;
    height: 195px;
    margin: auto;
    padding: 7px 5px;
    border-radius: 3px 0 0 3px;
    position: fixed;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: 9998;
    background-color: rgba(255, 255, 255, 0.5);
    display: block;
}
}
*/

/*a.arrow{
    padding: 0 0 0 15px;
    color: #3a90cd;
    background-image: url(../img/common_img/ic_circle.png);
    background-size: 13px;
    background-position: 0 4px;
    background-repeat: no-repeat;
}
}*/

aside.ad{
    padding: 0 23px 10px;
}
@media print, screen and (min-width: 768px) {/*PC*/
aside.ad{
    padding: 0 0 5px 0;
    display: flex;
    justify-content: center;
    text-align: center;
    clear: both;
}
}

aside.ad strong{
    padding: 1px 3px 1px;
    font-size: 12rem;
    font-weight: normal;
    border: solid 1px #999999;
}
@media print, screen and (min-width: 768px) {/*PC*/
aside.ad strong{
	padding: 2px 3px 1px;
    line-height: 12rem;
}
}

aside.ad p{
    margin: -2px 0 0 0;
    font-size: 10rem;
    line-height: 14rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
aside.ad p{
    margin: 2px 0 0 10px;
    font-size: 12rem;
}
}

@media print {/*Print*/

}

.error{
	width: 100%;
	font-weight:bold;
	color:#fff;
	text-align:center;
	background-color:#ed1c24;
	position: absolute;
	z-index: 999999;
    }
    

@media print, screen and (min-width: 768px) {/*Tablet*/
.portrait{
    display: none;
    }
}
@media screen and (max-width: 896px) and (orientation: landscape) {/*Landscape*/
.portrait{
    display: none;
    }
}

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

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

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

@media print, screen and (min-width: 375px) {/*Small screen*/
.ssp{
    display: none;
    }
}

@media print, screen and (max-width: 374px) {/*Small screen*/
.notssp{
    display: none;
    }
}

.cap{
    /*position: relative;*/
}

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

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


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

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

.cap .right{
    position: absolute;
    bottom: 3px;
    right: 3px;
}

.cap .bk{
    font-size: 10rem;
    line-height: 10rem;
    color: #000000;
}

.cap .wh{
    font-size: 10rem;
    line-height: 10rem;
    color: #ffffff;
}

.hide h3,
.hide div,
.hide img,
.land .hide div,
footer dl .hide{
    opacity: 0.15 !important;
    filter: grayscale(80%);
    cursor: default !important;
}

#global .hide a,
.pages .hide div{
    opacity: 0.3 !important;
    filter: grayscale(80%);
    cursor: default !important;
}


.pages .hide a.more{
    filter: contrast(10%) brightness(200%) grayscale(50%);
}

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

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

nav#list dd.hide{
    background-image: none;
}

nav#sub a.hide{
    opacity:0.5 !important;
    filter: grayscale(0%);
    background-color: #124389;
    
}
nav#sub a.hide img{
    opacity: 0.1;
}

nav#sub a.hide:hover{
    filter: contrast(100%) !important;
}


#index .pages div.hide::after{
    content: "COMING SOON";
    font-family: "HelveticaNeueLTPro-MdCn";
    margin: auto;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    display: flex;
    justify-content: center;
    place-items:center;
    text-align: center;
}
/*#index .land figure::after{
    font-size: 24rem;
    color: #666666;
    text-shadow: -2px -2px 8px rgba(255,255,255,0.3),2px 2px 8px rgba(255,255,255,0.3),-2px -2px 8px rgba(255,255,255,0.3),2px 2px 8px rgba(255,255,255,0.3);
}*/
#index .pages div.hide::after{
    font-size: 18rem;
    line-height: 20rem;
    color: #666666;
    text-shadow: -2px -2px 8px #ffffff,2px 2px 8px #ffffff;
    padding: 35px 10px 0;
}

nav#contact a.hide {
    background-image: none !important;
}
@media print, screen and (min-width: 768px) {/*PC*/
nav#contact a.hide:hover{
    background-position: center 130px;
}
}

#roomtype .banner a.hide::after{
    content: "COMING SOON";
    font-family: "HelveticaNeueLTPro-MdCn";
    margin: 10px auto 0;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    display: flex;
    justify-content: center;
    place-items:center;
    text-align: center;
    font-size: 16rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
#roomtype .banner a.hide::after{
    margin: 0 auto 10px;
    font-size: 22rem;
}
}


/* 3.フレームワーク
////////////////////////////////////////// */
header{
    width: 100%;
    height: 110px;
    position: fixed;
    z-index: 2147483647;
    background-color: #ffffff;
    line-height: 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
header{
    height: 125px;
    position: inherit;
    overflow: hidden;
    background-color: rgba(255,255,255,0.95);
}
}


header h1{
    height: 46px;
    margin: 8px 0 0 18px;
}
@media print, screen and (min-width: 768px) {/*PC*/
header h1{
    height: 52px;
    margin: 20px 0 0 35px;
}
}


body:not(#index) main{
   padding: 0 0 75px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
body:not(#index) main{
    padding: 0 0 150px 0;
}
}

footer{
    padding: 0 0 23px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
footer{
    width: 100%;
    padding: 0;
    background-color: #f0f0f0;
    position: relative;
    clear: both;
}
}

nav#contact{
    padding: 0 23px 30px;
    background-color: #f0f0f0;
}
@media print, screen and (min-width: 768px) {/*PC*/
nav#contact{
    width: 1150px;
    margin: auto;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
}

nav#contact a{
    padding: 10px 0 20px;
    text-align: center;
    border-bottom: dotted 1px #b3b3b3;
    background-size: 20px 10px;
    background-position: center 100px;
    background-repeat: no-repeat;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
nav#contact a{
    width: 33.1%;
    padding: 40px 0 50px !important;
    border-bottom: none;
    background-size: 23px 12px;
    background-position: center 130px;
    transition: all 200ms 0s ease;
}
nav#contact a:hover{
    background-position: center 145px;
    transition: all 500ms 0s ease;
}
}

nav#contact a img{
    width: 100%;
    height: 100px;
    object-fit: cover;
}

nav#contact a.req{
    background-image: url(../img/common_img/ic_request.jpg);
}
nav#contact a.rev{
    background-image: url(../img/common_img/ic_reservation.jpg);
}
nav#contact a.gall{
    padding: 25px 0 0 0;
    border-bottom: none;
}
@media print, screen and (min-width: 768px) {/*PC*/
nav#contact a.rev{
    order: 2;
}
nav#contact a.gall{
    background-image:none;
}
}

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

nav#list dl{
    padding: 12px 23px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    
}

nav#list dt{
    width: 100%;
    margin: 0 0 -10px 0;
    color: #808080;
    font-size: 14rem;
    letter-spacing: 2rem;
    text-align: center;
}

nav#list dd{
    width: 47%;
    height: 50px;
    background-image: url(../img/common_img/ic_list.png);
    background-size: 10px 5px;
    background-position: center bottom;
    background-repeat: no-repeat;
    position: relative;
}

nav#list dd a{
    width: 100%;
    margin: 0 0 10px 0;
    text-align: center;
    border-bottom: solid 1px #b3b3b3;
    line-height: 15rem;
    display: block;
    position: absolute;
    bottom: 0px;
}

aside.line{
    padding: 5px 0 15px 0;
    background-color: #07b53b;
}
@media print, screen and (min-width: 768px) {/*PC*/
aside.line{
    width: 1150px;
    margin: auto;
    padding: 0;
    position: absolute;
    left: 0;
    right: 0;
    top: 201px;
}

aside.line a{
    width: 650px;
    position: absolute;
    right: 0;
}
}

aside.line img{
    width: 85%;
    margin: auto;
}
@media print, screen and (min-width: 768px) {/*PC*/
aside.line img{
    width: 100%;
}
}

footer #banner{
    border-bottom: solid 12px #e1e5ea;
}
@media print, screen and (min-width: 768px) {/*PC*/
footer #banner{
    width: 650px;
    margin: auto;
    padding: 0 0 0 500px;
    position: absolute;
    left: 0;
    right: 0;
    top: 325px;
    border: none;
}
}

footer #banner ul{
    margin: 20px 23px 12px 23px;
    display: flex;
    justify-content: space-around;
}
@media print, screen and (min-width: 768px) {/*PC*/
footer #banner ul{
    /*position: absolute;
    right: 0;
    bottom: 14px;
    margin: 0;*/
    margin: 0;
    justify-content: space-between;
}
}

footer #banner li:nth-child(2n){
    border-left: 3px solid #e1e5ea;
    border-right: 3px solid #e1e5ea;
    
}
@media print, screen and (min-width: 768px) {/*PC*/
footer #banner li:nth-child(2n){
    border: none;
}
}

footer #banner li img{
    height: 112px;
}
@media print, screen and (min-width: 768px) {/*PC*/
footer #banner li img{
    height: 42px;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
footer div{
    width: 100%;
    padding: 12px 0;
    
    background-color: #ffffff;
}
}

footer h4{
    margin: 12px 23px 2px;
    padding: 0;
    font-size: 11rem;
    line-height: 11rem;
    font-weight: normal;
    overflow: auto;
    font-weight: normal;
	font-family: "NewCezannePro-DB";
}
@media print, screen and (min-width: 768px) {/*PC*/
footer h4{
    width: 1150px;
    margin: 10px auto 7px;
}
}

footer h4 span{
    padding: 3px 5px 0;
	font-weight: normal;
	line-height: 15rem;
}

footer address{
    margin: 3px 23px 10px;
}
@media print, screen and (min-width: 768px) {/*PC*/
footer address{
    width: 1150px;
    margin: 3px auto 0;
    padding: 0 0 5px;
    border-bottom: solid 1px #808080;
    
}

footer address a{
    width: 470px;
    padding: 0 0 8px 0;
    display: block;
}
}

footer address img{
    width: 100%;
}
@media print, screen and (min-width: 768px) {/*PC*/
footer address img{
    width: 387px;
	height: auto;
}
}

footer p{
    margin: 0 23px;
    font-size: 10rem;
    line-height: 14rem;
    letter-spacing: 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
footer p{
    width: 470px;
    min-height: 60px;
    padding: 7px 680px 0 0;
    margin: auto;
    font-size: 9rem;
}
}

/* 4.コンテンツ
////////////////////////////////////////// */
/*/// トップページ ///*/
@media print, screen and (min-width: 768px) {/*PC*/
#index{
    overflow:hidden !important;
}
}

#index .mainimg{
    height: 115vw;
    margin: 110px auto 0;
    position: relative;
    opacity: 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#index .mainimg{
    height: inherit;
    margin: 0 auto 0;
}
}

#index picture{
    text-align: center;
    display: block;
}

#index picture img{
    width: 100%;
    height: auto;
    image-rendering:auto;
}

@media print, screen and (min-width: 768px) {/*PC*/
#index .mainimg .place{
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 35vw;
}
}

#index .mainimg .place img{
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
}

#index .mainimg h2.project{
    height: 32vw;
    position: absolute;
    top: 10vw;
    left: 6vw;
}
@media print, screen and (min-width: 768px) {/*PC*/
#index .mainimg h2.project{
    height: 254px;
    position: absolute;
    position: absolute;
    top: 35px;
    left: 58px;
}
}
#index .mainimg h2.exterior{
    width: 80vw;
	height: 4.5vw;
    margin: auto;
    position: absolute;
    top: 35vw;
    left: 0;
    right: 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#index .mainimg h2.exterior{
    width: 464px;
    height: 26px;
    top: 13vw;
}
}

/*220713追加分*/
#index .mainimg h2.roomplan{
    width: 100%;
	height: 10.5vw;
    margin: auto;
    position: absolute;
    top: 26vw;
    left: 0;
    /*right: 0;*/
	filter: drop-shadow(0px 0px 2px #fff) drop-shadow(0px 0px 2px #fff) drop-shadow(0px 0px 3px #fff);
}



@media print, screen and (min-width: 768px) {/*PC*/
#index .mainimg h2.roomplan{
    width: 640px;
    height: 73px;
    top: 8%;
	left: 8%;
}
}


.bx-wrapper {
    background-color: transparent !important;
    margin: 0 !important;
    border: none !important;
    box-shadow: none !important;
    
}
.bx-wrapper img {
    display: block !important;
    margin: 0px auto !important;
}


#index .feature{
    margin: 0;
    padding: 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#index .feature{
    position: relative;
    margin: -2px 0 0 0;
}
}

#index .feature .lead{
    padding: 0 18px;
    background-color: #f2f2f2;
    overflow: hidden;
}
@media print, screen and (min-width: 768px) {/*PC*/
#index .feature .lead{
    width: 1150px;
    margin: auto;
    padding: 16px 0 11px;
    position: absolute;
    top: -27px;
    left: 0;
    right: 0;
    display: flex;
    justify-content: center;
    align-items: center;
}
}

#index .feature .lead strong{
    width: 60%;
    margin: 10px auto 6px;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
#index .feature .lead strong{
    width: 200px;
    margin: 1px 20px 0 0;
    padding: 3px 14px 4px;
    line-height: 0;
    border-top: solid 1px #4d4d4d;
    border-bottom: solid 1px #4d4d4d;
    display: block;
}
}

#index .feature .lead img{
    width: 100%;
    height: auto;
}

#index .feature .lead a{
    padding: 12px 0 12px;
    text-align: center;
    display: block;
    line-height: 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#index .feature .lead a{
    padding: 0;
    border: none;
}
}

#index .feature .lead a img{
	image-rendering: -webkit-optimize-contrast;
}
@media print, screen and (min-width: 768px) {/*PC*/
#index .feature .lead a img{
    width: 1050px;
}
}

#index .feature .point{
    padding: 0 23px 0px;
    background-color: #002352;
}
@media print, screen and (min-width: 768px) {/*PC*/
#index .feature .point{
    height: 90px;
    padding: 113px 0 0 0;
    background-color: #002352;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#index .feature .point ul{
    width: 1150px;
    margin: auto;
    display: flex;
    
}
}

#index .feature .point li{
    padding: 7px 0 7px 0;
    border-bottom: solid 1px #666666;
}
#index .feature .point li:nth-child(3){
    padding: 7px 0 0 0;
    border: none;
}
#index .feature .point li:nth-child(4){
    padding: 0 0 7px 0;
}
#index .feature .point li:last-child{
    padding: 7px 0 20px 0;
    border: none;
}
@media print, screen and (min-width: 768px) {/*PC*/
#index .feature .point li{
    padding: 0 !important;
    border: none;
}
}

#index .feature .point img{
    width: 100%;
    height: auto;
}
@media print, screen and (min-width: 768px) {/*PC*/
#index .feature .point img{
    height: 76px;
}
}

#index .subsidy{
    margin: 40px 23px 35px;
    border-top: solid 2px #b50046;
    border-bottom: solid 2px #b50046;
    position: relative;
    overflow: hidden;
}
@media print, screen and (min-width: 768px) {/*PC*/
#index .subsidy{
    width: 1100px;
    margin: 50px auto 0;
	padding: 0 25px;
    border-top: solid 1px #b50046;
    border-bottom: solid 1px #b50046;
}
}

#index .subsidy::before,
#index .subsidy h3::before,
#index .subsidy::after,
#index .subsidy p::after{
    content: '';
    position: absolute;
    width: 2px;
    height: 10px;
    background-color: #b50046;
}
@media print, screen and (min-width: 768px) {/*PC*/
#index .subsidy::before,
#index .subsidy h3::before,
#index .subsidy::after,
#index .subsidy p::after{
    display: none;
}
}

#index .subsidy::before{
    top: 0;
    left: 0;
}
#index .subsidy h3::before{
    top: 0;
    left: inherit;
    right: 0;
}

#index .subsidy::after{
    bottom: 0;
    left: 0;
}
#index .subsidy p::after{
    bottom: 0;
    left: inherit;
    right: 0;
}

#index .subsidy h3{
    height: 73px;
    margin: 0 15px 10px 15px;
    padding: 17px 0 8px;
    text-align: center;
    border-bottom: solid 2px #999999;
}
@media print, screen and (min-width: 768px) {/*PC*/
#index .subsidy h3{
    height: 98px;
    margin: 24px 0 18px 0;
    padding: 0;
    text-align: center;
    border-bottom: none;
    float: left;
}
}

#index .subsidy p{
    padding: 0 15px 5px 15px;
    font-size: 12rem;
    line-height: 22rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
#index .subsidy p{
    width: 770px;
    padding: 13px 0 6px 35px;
    font-size: 13rem;
    line-height: 24rem;
	letter-spacing: 0rem;
    float: right;
    display: block;
}
}

#index .subsidy p small{
    vertical-align: 3px;
}

#index .subsidy ul{
    padding: 0 15px 18px 15px;
}
@media print, screen and (min-width: 768px) {/*PC*/
#index .subsidy ul{
    width: 764px;
    float: right;
    display: flex;
    flex-wrap: wrap;
}
}
#index .subsidy li{
    display: block;
    margin: 8px 0 0 11rem;
    font-size: 11rem;
    line-height: 13rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
#index .subsidy li{
    display: block;
    margin: 0 0 0 10px;
    padding: 0;
    font-size: 10rem;
    line-height: 18rem;
}
/*#index .subsidy li:last-child{
    width: 100%;
}*/
}

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

#index .copy{
    width: 100%;
    margin: 0;
    padding: 36px 0 32px 0;
    text-align: center;
    background-color: #eaeff8;
    overflow: hidden;
}
@media print, screen and (min-width: 768px) {/*PC*/
#index .copy{
    padding: 46px 0 40px 0;
}
}

#index .copy h3{
    width: 180px;
    margin: 0 auto 12px;
}
@media print, screen and (min-width: 768px) {/*PC*/
#index .copy h3{
    width: 251px;
    margin: 0 auto 12px;
}
}

#index .copy p{
    font-size: 14rem;
    text-align: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
#index .copy p{
    font-size: 15rem;
    line-height: 30rem;
	font-family: "NewCezanneProN-M";
}
}

#index .copy img{
    width: 100%;
}

#index .news{
    /*position: relative;*/
    padding: 0 23px 60px;
}
@media print, screen and (min-width: 768px) {/*PC*/
#index .news{
    width: 1150px;
    margin: 70px auto;
    padding: 0;
    display: flex;
	justify-content: space-between;
}
}

#index .news h3{
    margin: 30px 0 5px 0;
    font-size: 16rem;
    font-family: "HelveticaNeueLTPro-BdCn";
    color: #808080;
    letter-spacing: 2rem;
    text-align: center;
    opacity: 1 !important;
}
@media print, screen and (min-width: 768px) {/*PC*/
#index .news h3{
    width: 175px;
    margin: 50px 0 0 0;
}
}

#index .news dl{
    height: 166px;/*指定値以上でスクロール*/
}
@media print, screen and (min-width: 768px) {/*PC*/
#index .news dl{
    width: calc(100% - 200px);
    height: 130px;/*指定値以上でスクロール*/
    padding: 0 0 0 25px;;
    border-left: double 5px #cccccc;
}
}

#index .news dt{
    padding: 10px 0 0 0;
    font-size: 13rem;
    line-height: 14rem;
	font-family: "HelveticaNeueLTPro-BdCn";
	font-weight: bold;
}
@media print, screen and (min-width: 768px) {/*PC*/
#index .news dt{
    width: 80px;
    margin: 0 0 12px 0;
    padding:0 0 2px 5px;
    line-height: 14rem;
    border-bottom: solid 1px #dcdcdc;
    display: inline-block;
}
}

#index .news dt:first-child{
    border-top: solid 1px #dcdcdc;
}
@media print, screen and (min-width: 768px) {/*PC*/
#index .news dt:first-child{
    border-top: none;
}
}

#index .news dd{
    padding: 5px 0 10px 0;
    font-size: 12rem;
    line-height: 14rem;
    border-bottom: solid 1px #dcdcdc;
}
@media print, screen and (min-width: 768px) {/*PC*/
#index .news dd{
    width: calc(100% - 100px);
    margin: 0 0 12px 0;
    padding: 0 0 2px 0;
    font-size: 13rem;
    line-height: 18rem;
    display: inline-block;
}
}

/*#index .news::before,
#index .news h3::before,
#index .news::after,
#index .news h3::after{
    content: '';
    position: absolute;
    width: 13px;
    height: 1px;
    background-color: #b3b3b3;
}
#index .news::before{
    top: 0;
    left: 0;
}
#index .news h3::before{
    top: 0;
    left: inherit;
    right: 0;
}
#index .news::after{
    bottom: 0;
    left: 0;
}
#index .news h3::after{
    bottom: 0;
    left: inherit;
    right: 0;
}*/

#index .location,
#index .land,
#index .room{
    margin: 0 23px 60px 23px;
    position: relative;
}
@media print, screen and (min-width: 768px) {/*PC*/
#index .location,
#index .land,
#index .room{
    width: 1150px;
    margin: 0 auto 110px;
}
#index .location{
    height: 480px;
}
#index .land{
    height: 446px;
}
#index .room{
    height: 436px;
}
}

#index .location h3,
#index .land h3,
#index .room h3{
    margin: 0 0 6px 0;
    font-size: 24rem;
    font-family: "HelveticaNeueLTPro-MdCn";
    color: #002352;
    letter-spacing: 1.5rem;
    border-top: solid 1px #002352;
}
@media print, screen and (min-width: 768px) {/*PC*/
#index .location h3,
#index .land h3,
#index .room h3{
    padding: 0 0 18px 0;
    font-size: 32rem;
    position: absolute;
    border-top: none;
    border-bottom: solid 1px #002352;
    display: block;
}
#index .location h3{
    top: 155px;
    left: 660px;
    z-index: 999;
}
#index .land h3{
    top: 151px;
    left: 50px;
    z-index: 999;
}
#index .room h3{
    top: 181px;
    left: 615px;
    z-index: 999;
}
#index .room h3{
    top: 181px;
    left: 615px;
    z-index: 999;
}
}

#index .location h3::before,
#index .land h3::before,
#index .room h3::before{
    content: " ";
    width: 26px;
    height: 26px;
    margin: 0 4px 0 0;
    background-color: #002352;
    display: inline-block;
    vertical-align: -1px;
}
@media print, screen and (min-width: 768px) {/*PC*/
#index .location h3::before,
#index .land h3::before,
#index .room h3::before{
    display: none;
}
}

#index .location figure,
#index .land figure,
#index .room figure{
    display: grid;
    grid-gap: 1px;
}

#index .location figure{
    grid-template: 35vw 35vw / 33% 34% 33%;
    overflow: hidden;
}
@media print, screen and (min-width: 768px) {/*PC*/
#index .location figure{
    width: 694px;
    height: 442px;
    grid-template: 220px 220px / 230px 230px 230px;
}
}

#index .location figure .ph1{
    grid-row: 1 / 2;
	grid-column: 1 / 2;
}

#index .location figure .ph2{
    grid-row: 1 / 2;
	grid-column: 2 / 3;
}

#index .location figure .ph3{
    grid-row: 1 / 2;
	grid-column: 3 / 4;
}

#index .location figure .ph4{
    grid-row: 2 / 3;
	grid-column: 1 / 2;
}

#index .location figure .ph5{
    grid-row: 2 / 3;
	grid-column: 2 / 4;
}

#index .land figure{
    grid-template: 30vw 35vw / 64% 36%;
    overflow: hidden;
}
@media print, screen and (min-width: 768px) {/*PC*/
#index .land figure{
    width: 696px;
    height: 410px;
    grid-template: 198px 210px / 456px 238px;
    position: absolute;
    right: 0;
}
}

#index .land figure .ph1{
    grid-row: 1 / 2;
	grid-column: 1 / 2;
}

#index .land figure .ph2{
    grid-row: 1 / 2;
	grid-column: 2 / 3;
}

#index .land figure .ph3{
    grid-row: 2 / 3;
	grid-column: 1 / 3;
}

@media print, screen and (min-width: 768px) {/*PC*/
#index .room figure{
    width: 760px;
    height: 410px;
}
}

#index .location figure img,
#index .land figure img,
#index .room figure img{
    width: 100%;
    object-fit: cover;
}
#index .location figure .ph1 img{
    object-position: 80% 100%
}

#index .location div,
#index .land div,
#index .room div{
    padding: 14px 10px 0 0;
    font-family: "MatissePro-M";
    background-color: #ebeef1;
}
@media print, screen and (min-width: 768px) {/*PC*/
#index .location div,
#index .land div,
#index .room div{
    padding: 0;
    position: relative;
    bottom: 0;
    background-color: #ebeef1;
    position: absolute;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}
#index .location div{
    width: 525px;
    height: 360px;
    right: 0;
}
#index .land div{
    width: 540px;
    height: 330px;
    left: 0;
}
#index .room div{
    width: 570px;
    height: 290px;
    right: 0;
}
}

#index .location h4,
#index .land h4,
#index .room h4{
    margin: 0 0 10px 16px;
    font-size: 18rem;
    color: #333333;
}
@media print, screen and (min-width: 768px) {/*PC*/
#index .location h4,
#index .room h4{
    margin: 0 0 8px 35px;
    font-size: 21rem;
    letter-spacing: 2rem;
}
#index .land h4{
    margin: 0 0 8px 50px;
    font-size: 21rem;
    letter-spacing: 3rem;
}
}

#index .location h4 b,
#index .land h4 b,
#index .room b{
    font-size: 28rem;
}

#index .location p,
#index .land p,
#index .room p{
    margin: 0 0 16px 16px;
    font-size: 12.5rem;
    line-height: 20rem;
    letter-spacing: -0.5rem;
    color: #333333;
    text-align: left;
}
@media print, screen and (min-width: 768px) {/*PC*/
#index .location p,
#index .room p{
    margin: 0 0 28px 35px;
    font-size: 13rem;
    line-height: 30rem;
	letter-spacing: 0.5rem;
}
#index .land p{
    margin: 0 0 28px 50px;
    font-size: 13rem;
    line-height: 30rem;
	letter-spacing: 0.5rem;
}
}

#index .location .button,
#index .land .button,
#index .room .button{
    width: 84px;
    height: 10px;
    padding: 6px 16px 6px 16px;
    background-color: #002352;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
#index .location .button,
#index .land .button,
#index .room .button{
    width: 26px;
    height: 116px;
    padding: calc(100% - 116px) 0 0 0;
    position: absolute;
    bottom: 0;
    right: 0;
    border-top: none;
    background-color: inherit;
	cursor: pointer;
    transition: all 200ms 0s ease;
}
/*#index .location .button:hover,
#index .land .button:hover,
#index .room .button:hover{
	cursor: pointer;
    filter: saturate(250%);
    transition: all 300ms 0s ease-in;
}*/
#index .location .button{
    padding: calc(360px - 116px - 18px) 0 0 0;;
    right: 0;
    border-left: solid 1px #7588a1;
}
#index .land .button{
    padding: calc(330px - 116px - 18px) 0 0 0;;
    left: 0;
    border-right: solid 1px #7588a1;
}
#index .room .button{
    padding: calc(290px - 116px - 18px) 0 0 0;;
    right: 0;
    border-left: solid 1px #7588a1;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
/*ホバー処理*/
#index .location div:hover .button,
#index .land div:hover .button,
#index .room div:hover .button{
    cursor: pointer;
    filter: saturate(250%);
    transition: all 300ms 0s ease-in;
}
#index .location h3:hover ~ a .button,
#index .land h3:hover ~ a .button,
#index .room h3:hover ~ a .button{
    cursor: pointer;
    filter: saturate(250%);
    transition: all 300ms 0s ease-in;
}
}

#index .pages {
    margin: 0 23px 50px 23px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
@media print, screen and (min-width: 768px) {/*PC*/
#index .pages{
    width: 1150px;
    margin: 0 auto 80px;
}
}

#index .pages div{
    width: calc(50% - 12px);
    margin: 0 0 45px 0;
    position: relative;
}
@media print, screen and (min-width: 768px) {/*PC*/
#index .pages div{
    width: 260px;
    position: relative;
}
}

#index .pages h3{
    font-size: 20rem;
    line-height: 22rem;
    font-family: "HelveticaNeueLTPro-MdCn";
    color: #002352;
}
@media print, screen and (min-width: 768px) {/*PC*/
#index .pages h3{
    font-size: 26rem;
    line-height: 28rem;
}
}

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

#index .pages a.more{
    width: 84px;
    height: 10px;
    padding: 5px 11px 5px 12px;
    background-color: #002352;
    display: block;
    position: absolute;
    bottom: -10px;
}
@media print, screen and (min-width: 768px) {/*PC*/
#index .pages a.more{
    padding: 8px 23px 8px 23px;
    bottom: -13px;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
/*ホバー処理*/
#index .pages div:not(.hide):hover .more{
    cursor: pointer;
    filter: saturate(250%);
    transition: all 300ms 0s ease-in;
}
}


/*/// コンセプト ///*/
#concept .next{
    margin: 40px auto 0;
    position: relative;
}
@media print, screen and (min-width: 768px) {/*PC*/
#concept .next{
    width: 100%;
    height: inherit;
    margin: 35px auto 0;
}
}

#concept .next div{
    height: 100vw;
    position: relative;
}
@media print, screen and (min-width: 768px) {/*PC*/
#concept .next div{
    height: 44vw;
}
}

#concept .next picture.pict img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 50% 100%;
}

#concept .next picture.place img{
    width: 100%;
    height: auto;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
}

#concept .next h3{
    width: 80%;
    margin: 0;
    position: absolute;
    top: 7vw;
    left: 23px;
    z-index: 999;
    filter: contrast(0%) brightness(999%);
}
@media print, screen and (min-width: 768px) {/*PC*/
#concept .next h3{
    width: 475px;
    margin: 0 0 35px 0;;
    position: inherit;
    top: inherit;
    left: calc(50% - 525px);
    filter: contrast(100%) brightness(100%);
}
}

#concept .next h3 img{
    width: 100%;
}

#concept .next p{
    padding: 22px 0 22px;
    font-size: 14rem;
    text-align: center;
    background-color: #eaeff8;
}
@media print, screen and (min-width: 768px) {/*PC*/
#concept .next p{
    font-size: 16rem;
    line-height: 55rem;
    letter-spacing: 1.5rem;
    text-align: left;
    background-color: inherit;
    position: absolute;
    top: 48px;
    left: calc(50% + 20px);
}
}

#concept .stage{
    margin: 40px auto 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#concept .stage{
    width: 100%;
    margin: 45px 0 0;
}
}

#concept .stage .fig img{
    width: 70%;
    margin: auto;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
#concept .stage .fig img{
    width: 307px;
}
}

#concept .stage h3{
    margin: 36px 0 10px 20rem;
    font-size: 21rem;
    line-height: 26rem;
    letter-spacing: 2rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
#concept .stage h3{
    margin: 40px 0 16px 30rem;
    font-size: 24rem;
    line-height: 26rem;
    letter-spacing: 2rem;
}
}

#concept .stage h3::first-letter{
    margin: 0 0 0 -30rem;
}

#concept .stage p{
    padding: 0 23px 23px 23px;
    text-align: center;
	letter-spacing: -0.2rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
#concept .stage p{
    padding: 0 0 35px 0;
    font-size: 14rem;
    line-height: 34rem;
	letter-spacing: 0;
}
}

#concept .stage .ph img{
    width: 100%;
}


/*/// 現地・マンションギャラリー案内図 ///*/
#guide article.map{
    margin: 45px 0 0;
    position: relative;
}
@media print, screen and (min-width: 768px) {/*PC*/
#guide article.map{
    margin: 50px auto;
    border: solid 1px #b3b3b3;
}
}

#guide .gallery{
    margin: 70px 0 0;
    padding: 18px 0 30px 0;
    background-color: #eaeff8;
}
@media print, screen and (min-width: 768px) {/*PC*/
#guide .gallery{
    width: calc(1050px - 476px - 120px);
    height: 230px;
    margin: auto;
    padding: 30px 566px 30px 30px;
    position: relative;
    /*border-top: solid 1px #b3b3b3;
    border-bottom: solid 1px #b3b3b3;*/
}
}

#guide .gallery h3{
    margin: 0;
    font-size: 10rem;
    line-height: 14rem;
    font-family: "HelveticaNeueLTPro-BdCn";
    color: #627994;
    text-align: center;
    /*border-bottom: solid 1px #333333;*/
}
@media print, screen and (min-width: 768px) {/*PC*/
#guide .gallery h3{
    margin: 12px 0 0 0;
}
}

#guide .gallery h3 strong{
    display: none;
}
@media print, screen and (min-width: 768px) {/*PC*/
#guide .gallery h3 strong{

    font-size: 21rem;
    line-height: 30rem;
    font-family: "MatissePro-M";
    text-align: center;
    display: block;
}
}

#guide .gallery figure{
    margin: 12px 0 26px;
}
@media print, screen and (min-width: 768px) {/*PC*/
#guide .gallery figure{
    width: 476px;
    height: 230px;
    margin: 0;
    position: absolute;
    right: 30px;
    top: 30px;
}
}

#guide .gallery h4{
    margin: 0 23px;
    padding: 3px 0;
    line-height: 14rem;
    color: #ffffff;
    text-align: center;
    background-color: #627994;
    border-radius: 13px;
}
@media print, screen and (min-width: 768px) {/*PC*/
#guide .gallery h4{
    margin: 20px 0 0 0;
    font-size: 13rem;
    font-weight: normal;
	letter-spacing: 2rem;
}
}

#guide .gallery p{
    width: 280px;
    margin: 14px auto;
}

#guide .gallery div{
    margin: 0 23px;
    padding: 8px 0;
    display: flex;
    justify-content: space-between;
    border-top: solid 1px #355273;
    border-bottom: solid 1px #355273;
}
@media print, screen and (min-width: 768px) {/*PC*/
#guide .gallery div{
    margin: 0;
    padding: 4px 0;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#guide .gallery div dl{
    display: flex;
}
}

#guide .gallery div dt{
    margin: 0 0 4px -6rem;
    font-size: 12rem;
    line-height: 12rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
#guide .gallery div dt{
    margin: 0 10px 0 0;
    font-size: 12rem;
    line-height: 40rem;
    white-space: nowrap;
}
}

#guide .gallery div dd{
    font-size: 20rem;
    line-height: 20rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
#guide .gallery div dd{
    font-size: 20rem;
    line-height: 40rem;
}
}

#guide .gallery div img{
    width: 68px;
    height: 36px;
}
@media print, screen and (min-width: 768px) {/*PC*/
#guide .gallery div img{
    width: 76px;
    height: 40px;
}
}

#guide .gallery img{
    width: 100%;
}


/*/// 生活環境 ///*/
#location article.map{
    margin: 0;
    position: relative;
}
@media print, screen and (min-width: 768px) {/*PC*/
#location article.map{
    margin: auto;
    border: solid 1px #b3b3b3;
}
}

.map picture img{
    width: 100%;
}

#map_canvas{
    width: 100%;
    height: 110vw;
    position: absolute;
    top: 0;
	display: none;
}
@media print, screen and (min-width: 768px) {/*PC*/
#map_canvas{
    width: 1050px;
    height: 800px;
}
}

.map a.open,
.map a.close{
    width: calc(100% - 12px);
	height:26px;
    padding: 0 12px 0 0;
    color: #ffffff;
    text-align: right;
    background-size: auto 100%;
    background-repeat: no-repeat;
    display: block;
    position: absolute;
    bottom: -26px;
    z-index: 999;
}
@media print, screen and (min-width: 768px) {/*PC*/
.map a.open,
.map a.close{
    width: 274px;
    height: 28px;
    padding: 0x 23px 0 0;
    background-size: auto 100%;
    bottom: 0;
    left: 0;
}
}

.map a.open{
    background-image: url(../img/location_img/ic_arrow_open.png);
    background-color: #124389;
}
.map a.close{
    display: none;
    background-image: url(../img/location_img/ic_arrow_close.png);
    background-color: #666666;
}

#location .access{
    padding: 55px 0 20px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#location .access{
    padding: 76px 0 0 0;
    display: flex;
    justify-content: space-between;
    position: relative;
}
}

#location .access h4,
#location .list h4{
    margin: 0 0 8px 0;
	padding: 6px 0 0 0;
    font-size: 21rem;
    line-height: 21rem;
    font-family: "HelveticaNeueLTPro-MdCn";
    text-align: center;
    /*border-top: solid 1px #b3b3b3;
    border-bottom: solid 1px #b3b3b3;*/
}
@media print, screen and (min-width: 768px) {/*PC*/
#location .access h4{
    width: 201px;
    height: 201px;
    padding: 86px 0 0 0;
    box-sizing: border-box;
    border: none;
    background-image: url(../img/location_img/bg_access.png);
    background-size: 100% 100%;
    background-repeat: no-repeat;
}
#location .list h4{
    width: 100%;
    margin: 0;
    padding: 0 0 0 0px;
    font-size: 22rem;
    text-align: left;
    border-top: none;
    border-bottom: none;
}
}

#location .access figure img{
    width: 60%;
    margin: auto;
}
@media print, screen and (min-width: 768px) {/*PC*/
#location .access figure img{
    width: 839px;
    height: auto;
}
}

#location .access .note{
    margin: 20px 0 0 0;
    padding: 3px 0 10px 0;
    border-top: solid 1px #b3b3b3;
    border-bottom: solid 1px #b3b3b3;
}
@media print, screen and (min-width: 768px) {/*PC*/
#location .access .note{
    width: 190px;
    border: none;
    letter-spacing: -0.7rem;
    position: absolute;
    top: 91px;
    right: 0;
}
}

#location .access .note li{
    margin: 5px 0 0 10rem;
}

#location .access .note li::first-letter{
    margin: 0 0 0 -10rem;
}

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

@media print, screen and (min-width: 768px) {/*PC*/
#location .mainphoto h3{
    width: 100%;
}
}

#location .mainphoto dl{
    margin: 0 0 20px 0;
    line-height: 15rem;
    letter-spacing: -0.5rem;
    text-align: left;
}
@media print, screen and (min-width: 768px) {/*PC*/
#location .mainphoto dl{
    width: 502px;
    margin: 0 0 35px 0;
    letter-spacing: 0;
}
}

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

#location .photo h5{
    width: 42vw;
    height: 25vw;
    margin: 0 0 20px 0;
    font-weight: normal;
    line-height: 18rem;
    color: #355273;
    background-color: #d7dce3;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    flex-direction: column;
}
@media print, screen and (min-width: 768px) {/*PC*/
#location .photo h5{
    width: 100%;
    height: auto;
    margin: 0 0 10px 0;
    padding: 2px 16px;
    font-size: 14rem;
    line-height: 14rem;
    color: #333333;
    background-color: #d7dce3;
    justify-content: flex-start;
    flex-direction: row;
}
}

#location .photo h5 span{
    border-bottom: solid 1px #355273;
    font-family: "HelveticaNeueLTPro-MdCn";
    font-size: 14rem;
    text-align: center;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
#location .photo h5 span{
    margin: 5px 14px 0 0;
	padding: 0;
	font-size: 15rem;
	line-height: 14rem;
    border-bottom: none;
    display: inline;
}
}

#location .photo dl{
    width: calc(50% - 5px);
    width: 42vw;
    margin: 0 0 12px 0;
    font-size: 12rem;
    line-height: 14rem;
    letter-spacing: -0.5rem;
    text-align: left;
}
@media print, screen and (min-width: 768px) {/*PC*/
#location .photo dl{
    width: 320px;
    margin: 0 0 35px 0;
    letter-spacing: 0;
}
}

#location .mainphoto dd.ph img,
#location .photo dd.ph img{
    width: 100%;
}

#location .mainphoto dt,
#location .photo dt{
    margin: 3px 0 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#location .mainphoto dt,
#location .photo dt{
	font-weight: normal;
	font-family: "NewCezannePro-DB";
}
}

#location .mainphoto dt strong{
    margin: 0 12px 0 0;
	font-weight: normal;
	font-family: "NewCezannePro-DB";
}

#location .photo dt strong{
    display: block;
	font-weight: normal;
	font-family: "NewCezannePro-DB";
}
@media print, screen and (min-width: 768px) {/*PC*/
#location .mainphoto dt strong,
#location .photo dt strong{
    display: inline;
    margin: 0 12px 0 0;
}
}



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

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

#location .list h5{
    margin: 15px 0 5px 0;
    padding: 3px 10px;
    font-weight: normal;
    font-size: 13rem;
    line-height: 13rem;
    color: #355273;
    background-color: #d7dce3;
}
@media print, screen and (min-width: 768px) {/*PC*/
#location .list h5{
    color: #333333;
}
}

#location .list dl{
	width: 100%;
    font-size:  13rem;
    line-height: 13rem;
    display: inline-block;
}
@media print, screen and (min-width: 768px) {/*PC*/
#location .list dl{
    font-size:  13rem;
    line-height: 14rem;
}
}

#location .list dt{
    width: calc(80% - 5px);
    height: 20rem;
    margin: 5px 0 0 0;
    padding: 0 5px 0 0;
    line-height: 19rem;
	font-family: "NewCezannePro-DB";
    float: left;
    clear: right;
}
@media print, screen and (min-width: 768px) {/*PC*/
#location .list dt{
    width: calc(80% - 13px);
    padding: 0 5px 0 8px;
    letter-spacing: 0;
}
}

#location .list dl dt small{
    letter-spacing: -1rem;
}

@media print, screen and (min-width: 414px) {/*PC*/
#location .list dl dt br.small{
    display: none;
}
}


#location .list dd{
    width: 20%;
    height: 20rem;
    line-height: 19rem;
    float: right;
    text-align: right;
}
@media print, screen and (min-width: 768px) {/*PC*/
#location .list dd{
    width: calc(20% - 8px);
    height: 13rem;
    padding: 0 8px 0 0;
	font-weight: normal;
	font-family: "NewCezannePro-DB";
}
}

#location .list dd.time{
	height: 20rem;
    margin: 5px 0 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#location .list dd.time{
    font-weight: normal;
}
}

#location .list dd.distance{
    font-size:  10rem;
    line-height: 15rem;
	margin: 0 -5rem 0 0;
}

#location .list dl dt,
#location .list dl dd.time{
    background-position: left 19rem;
    background-repeat: repeat-x;
	background-image: url(../img/common_img/hr_dot.png);
}


/*/// 設備・仕様 ///*/
#equipment .equip_nav{
    margin: 10px -23px 0;
    display: flex;
    flex-wrap: wrap;
    align-content: space-between;
    background-size: 100% 1px;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .equip_nav{
    margin: 20px -50px 0;
    padding: 0 50px 0px;
    background-image: url(../img/equipment_img/bg_nav_equip.png);
}
}

#equipment .equip_nav a{
    width: 25%;
    height: 25px;
    padding: 20px 0 17px 0;
    font-size: 11rem;
    line-height: 11rem;
    letter-spacing: -1rem;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #f2f2f2;
    background-position: right center;
    background-repeat: no-repeat;
    box-sizing: border-box;
    border-bottom: dotted 1px #ffffff;
    border-right: dotted 1px #ffffff;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .equip_nav a{
    width: 12.25%;
    margin: 0 !important;
    padding: 18px 0 17px 0;
    font-size: 12rem;
    letter-spacing: 0;
    flex-direction: column;
    background-color: inherit;
    background-image: none !important;
    position: relative;
}
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .equip_nav a:nth-child(5){
    width: 14%;
}
}
/*equipment .equip_nav a:nth-child(5),
#equipment .equip_nav a:nth-child(6),
#equipment .equip_nav a:nth-child(7),
#equipment .equip_nav a:nth-child(8){
}*/
#equipment .equip_nav a:nth-child(4),
#equipment .equip_nav a:nth-child(8){
    border-right: none;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .equip_nav a:nth-child(4){
    
}
#equipment .equip_nav a:nth-child(7),
#equipment .equip_nav a:nth-child(8){
    padding: 18px 0 17px 11rem;
    letter-spacing: 10rem;
}
}

#equipment .equip_nav a:nth-child(7),
#equipment .equip_nav a:nth-child(8){
    padding-left: 11rem;
    letter-spacing: 11rem;
}

#equipment .equip_nav small{
    display: none;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .equip_nav small{
    display: block;
    margin: 0 0 2px 0;
    font-family: "HelveticaNeueLTPro-MdCn";
    font-size: 10rem;
    letter-spacing: 1rem;
    color: #808080;
    transform: scale(0.77);
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .equip_nav a:nth-child(7) small,
#equipment .equip_nav a:nth-child(8) small{
    margin: 0 0 0 -11rem;
    letter-spacing: 0;
}
}

#equipment .kitchen .equip_nav a:nth-child(1){
    background-color: #eaeaea;
    background-image: url(../img/common_img/ic_select.png);
    background-size: 10px 6px;
    background-position: center 30px;
}
#equipment .bath .equip_nav a:nth-child(2){
    background-color: #eaeaea;
    background-image: url(../img/common_img/ic_select.png);
    background-size: 10px 6px;
    background-position: center 30px;
}
#equipment .powder .equip_nav a:nth-child(3){
    background-color: #eaeaea;
    background-image: url(../img/common_img/ic_select.png);
    background-size: 10px 6px;
    background-position: center 30px;
}
#equipment .toilet .equip_nav a:nth-child(4){
    background-color: #eaeaea;
    background-image: url(../img/common_img/ic_select.png);
    background-size: 10px 6px;
    background-position: center 30px;
}
#equipment .eco .equip_nav a:nth-child(5){
    background-color: #eaeaea;
    background-image: url(../img/common_img/ic_select.png);
    background-size: 10px 6px;
    background-position: center 30px;
}
#equipment .security .equip_nav a:nth-child(6){
    background-color: #eaeaea;
    background-image: url(../img/common_img/ic_select.png);
    background-size: 10px 6px;
    background-position: center 30px;
}
#equipment .equipments .equip_nav a:nth-child(7){
    background-color: #eaeaea;
    background-image: url(../img/common_img/ic_select.png);
    background-size: 10px 6px;
    background-position: center 30px;
}
#equipment .structure .equip_nav a:nth-child(8){
    background-color: #eaeaea;
    background-image: url(../img/common_img/ic_select.png);
    background-size: 10px 6px;
    background-position: center 30px;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .kitchen .equip_nav a:nth-child(1)::after{
    content: url(../img/common_img/ic_select_wh.png);
    position: absolute;
    bottom: -22px;
    transform: scale(0.5,0.5);
}
#equipment .bath .equip_nav a:nth-child(2)::after{
    content: url(../img/common_img/ic_select_wh.png);
    position: absolute;
    bottom: -22px;
    transform: scale(0.5,0.5);
}
#equipment .powder .equip_nav a:nth-child(3)::after{
    content: url(../img/common_img/ic_select_wh.png);
    position: absolute;
    bottom: -22px;
    transform: scale(0.5,0.5);
}
#equipment .toilet .equip_nav a:nth-child(4)::after{
    content: url(../img/common_img/ic_select_wh.png);
    position: absolute;
    bottom: -22px;
    transform: scale(0.5,0.5);
}
#equipment .eco .equip_nav a:nth-child(5)::after{
    content: url(../img/common_img/ic_select_wh.png);
    position: absolute;
    bottom: -22px;
    transform: scale(0.5,0.5);
}
#equipment .security .equip_nav a:nth-child(6)::after{
    content: url(../img/common_img/ic_select_wh.png);
    position: absolute;
    bottom: -22px;
    transform: scale(0.5,0.5);
}
#equipment .equipments .equip_nav a:nth-child(7)::after{
    content: url(../img/common_img/ic_select_wh.png);
    position: absolute;
    bottom: -22px;
    transform: scale(0.5,0.5);
}
#equipment .structure .equip_nav a:nth-child(8)::after{
    content: url(../img/common_img/ic_select_wh.png);
    position: absolute;
    bottom: -22px;
    transform: scale(0.5,0.5);
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .title2{
    height: 190px;
    
}
}

#equipment .title2 h3{
    margin: 28px 0 20px;
	padding: 5px 0 0 0;
    font-size: 42rem;
    line-height: 40rem;
    font-family: "HelveticaNeueLTPro-Roman";
    color: #002352;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .title2 h3{
    margin: 33px 0 0;
	padding: 15px 0 0 0;
    font-size: 42rem;
    line-height: 50rem;
    text-align: left;
    
}
}

#equipment .title2 h4{
    font-size: 15rem;
    font-weight: normal;
    text-align: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .title2 h4{
    font-size: 18rem;
    line-height: 30rem;
    color: #333333;
    text-align: left;
}
}

#equipment .security h5,
#equipment .structure h5,
#equipment .equipments h5{
    margin: 55px -23px 0px;
    padding: 8px 0 8px;
    font-family: "NewCezanneProN-M";
    font-size: 15rem;
    line-height: 18rem;
    font-weight: normal;
    color: #ffffff;
    text-align: center;
    background-color: #5d758f;
}
#equipment .security h5{
    margin: 55px -23px -35px;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .structure h5,
#equipment .equipments h5{
    margin: 0 0 25px 0;
    padding: 6px 18px;
    text-align: left;
}
#equipment .security h5{
    margin: 0 0 -12px 0;
    padding: 6px 18px;
    text-align: left;
}
}

#equipment .top figure.ph{
    margin: 25px -23px 60px;
    position: relative;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .top figure.ph{
    margin: 0;
}
}

#equipment .top figure.ph figcaption{
    position: absolute;
    left: 2px;
    bottom: 2px;
    display: flex;
    flex-wrap: wrap;
    align-content: flex-start;
    
}

#equipment .top figure.ph .op,
.powder .std .image .op{
    margin: 0 0 6px 6px;
    padding: 2px 8px;
    font-size: 12rem;
    line-height: 12rem;
    letter-spacing: 0;
    color: #ffffff;
    border: solid 1px rgba(255, 255, 255, 0.8);
}

#equipment .equip .op,
.bath .std .op{
    margin: 5px 0 0 0;
    padding: 2px 8px;
    font-size: 12rem;
    line-height: 12rem;
    letter-spacing: 0;
    border: solid 1px rgba(0, 0, 0, 0.8);
    display: inline-block;
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .powder>.box{
    position: relative;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment article>.equip,
#equipment article>.box>.equip{
    margin: 40px 0 0 0;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    border-top: dotted 1px #a7a7a7;
    position: relative;
}
#equipment article>.top>.box>.equip{
    margin: 30px 0 0 0;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    border-top: dotted 1px #a7a7a7;
}
#equipment article>.top>.box>.equip:first-child{
    margin: 0;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    border-top: none;
}
}

#equipment .equip dl{
    margin: 60px 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .equip dl{
    width: 231px;
    margin: 40px 0 0;
    padding: 0;
}
#equipment article>.top>.box>.equip dl{
    width: 231px;
    margin: 35px 0 0;
    padding: 0;
}
}

#equipment .equip dt,
#equipment .security .catalog dt,
#equipment .structure div dt{
    margin: 16px 0 8px 0;
    font-family: "NewCezannePro-DB";
    font-size: 16rem;
    line-height: 18rem;
    letter-spacing: 0;
}

#equipment .equip .txt,
#equipment .security .catalog .txt,
#equipment .structure div .txt{
    
}

#equipment .equip dt small{
    font-size: 14rem;
}

#equipment .equip dt small span{
    font-family: "NewCezanneProN-M";
    font-size: 11rem;
}

#equipment .equip dt small.ss{
    font-family: "NewCezanneProN-M";
    font-size: 10rem;
    line-height: 10rem;
    white-space: nowrap;
}

#equipment .equip dd.txt small{
    font-size: 10rem;
    line-height: 10rem;
    white-space: nowrap;
}

#equipment .equip .ph{
    position: relative;
}

#equipment .equip .ph img,
#equipment .structure .ph img,
#equipment .equipment .ph img{
    width: 100%;
}

#equipment .std{
    padding: 15px;
    border: solid 1px #008fd3;
    position: relative;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .std{
    padding: 42px 46px 36px;
    border: solid 1px #008fd3;
}
}

#equipment .std .ic{
    width: 60px;
    height: 60px;
    display: block;
    position: absolute;
    top: -30px;
    left: 5px;
    z-index: 99;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .std .ic{
    width: 80px;
    height: 80px;
    top: -40px;
    left: 10px;
}
}

#equipment .std figure{
    position: relative;
}

#equipment .std img{
    width: 100%;
}

#equipment .note{
    margin: 4px 0 0 0;
    font-size: 10rem;
    line-height: 14rem;
	color: #505050;
    display: block;
}

#equipment .note_i{
    margin: 4px 0 0 0;
    padding-left:10rem;
	text-indent:-10rem;
    font-size: 10rem;
    line-height: 14rem;
    display: block;
}

#equipment .eco .note,
#equipment .eco .note_i{
    zoom: 0.9;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .note,
#equipment .note_i{
    zoom: 1;
}
}
@-moz-document url-prefix(){/*FireFox*/
#equipment #wash .note,
#equipment #shower .note{
    transform-origin: 0 0;
    transform: scale(0.92);
  }
}

#equipment .powder .pan .ph,
#equipment .toilet .auto .ph,
#equipment .toilet .deo .ph,
#equipment .toilet .wash .ph,
#equipment .equipments .box1 dl:nth-child(4) .ph,
#equipment .equipments .box2 dl:nth-child(4) .ph,
#equipment .equipments .box3 dl:nth-child(4) .ph{
    border: solid 1px #c2c2c2;
    box-sizing: border-box;
    overflow: hidden;
}

#equipment .mv {
     position: relative;
     padding-bottom: 56.25%; /*アスペクト比 16:9の場合の縦幅*/
     height: 0;
     overflow: hidden;
}

#equipment .mv iframe {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
}

#equipment a.readmore{
    width: 93px;
    height: 18px;
    margin: 5px 0 0 0;
    padding: 5px 0 0 15px;
    font-size: 12rem;
    line-height: 12rem;
	letter-spacing: 0.5rem;
    color: #ffffff;
    display: inline-block;
    background-image: url(../img/common_img/bg_readmore.png);
    background-size: auto 18px;
    background-position: right center;
    background-repeat: no-repeat;
}

#equipment .readmore img{
    width: 100%;
    height: 100%;
}

/*
.underline{
    text-decoration: underline #a63141;
}
*/

@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .top,
.bath .top,
.powder .top,
.toilet .top{
    position: relative;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .top>figure{
    width: 600px;
}
.bath .top>figure{
    width: 630px;
}
.toilet .top>figure,
.powder .top>figure{
    width: 504px;
}
}

.kitchen .top figure img,
.bath .top figure img,
.powder .top figure img,
.toilet .top figure img{
    width: 100%;
}

/*キッチン*/
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .kitchen .top .mv{
    position: absolute;
    top: 0;
    right: 0;
    width: 380px;
    height: 214px;
    margin: 0;
    padding: 0;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .top .mv iframe{
    width: 380px;
    height: 214px;
}
}

#equipment .kitchen .top .note{
    text-align: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .kitchen .top .note{
    position: absolute;
    top: 214px;
    right: 0;
    width: 380px;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .top .equip{
    width: 380px;
    position: absolute;
    right: 0;
    bottom: -6px;
}
}

.kitchen .top .equip dl{
    margin: 25px 0 0 0 !important;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .kitchen .top .equip dl{
    width: 100%;
    margin: 25px 0 0 0 !important;
}
}

.kitchen .top .equip dl:nth-child(2) dt {
    padding: 45px 0 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .top .equip dl:nth-child(2) dt {
    padding: 72px 0 0 0;
}
}

.kitchen .top .equip dl:nth-child(2) .ph{
    width: 40vw;
    margin: 0 0 0 20px;
    float: right;
}
@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .top .equip dl:nth-child(2) .ph{
    width: 146px;
    margin: 0 0 0 20px;
    float: right;
}
}

.kitchen .hood .sub{
    width: 70px !important;
    height: 92px;
    position: absolute;
    top: -10px;
    left: -10px;
}
@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .hood .sub{
    width: 58px !important;
    height: 76px;
}
}

.kitchen .std {
    margin: 60px 0 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .std {
    margin: 70px 0 0 0;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .std figure {
    width: 466px;
    margin: 0px 30px 25px 0;
    float: left;
}
.kitchen .std figure.sub {
    width: 220px;
    height: 96px;
    margin: 0;
}
}


.kitchen .std figcaption h5{
    width: 100%;
    padding: 4px 0;
    font-size: 12rem;
    line-height: 12rem;
    color: #ffffff;
    text-align: center;
    background-color: #66aee0;
}
@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .std figcaption h5{
    padding: 5px 0;
    font-size: 18rem;
    line-height: 18rem;
    top: -12px;
}
}


.kitchen .std figcaption p{
    margin: auto;
    display: flex;
    justify-content: center;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 4px;
}
@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .std figcaption p{
    bottom: 10px;
}
}


.kitchen .std figcaption span{
    margin: 0 2px;
    padding: 2px 4px;
    font-size: 11rem;
    line-height: 11rem;
    letter-spacing: 0;
    border: solid 1px rgba(0, 0, 0, 0.8);
    background-color: #ffffff;
}
@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .std figcaption span{
    padding: 2px 8px;
    font-size: 12rem;
    line-height: 12rem;
}
}


.kitchen .std h6{
    margin: 25px 0 0;
    font-family: "NewCezannePro-DB";
    font-size: 16rem;
    line-height: 20rem;
    color: #008fd3;
}
@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .std h6{
    margin: -3px 0 0 0;
    font-size: 18rem;
    line-height: 23rem;
}
}

.kitchen .std>p{
    margin: 10px 0 22px;
}
@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .std>p{
    margin: 10px 0 16px;
    letter-spacing: 0;
}
}


.kitchen .std ul{
    margin: 25px 0 0 0;
    padding: 15px 0 0 0;
    border-top: solid 1px #008fd3;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
}
@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .std ul{
    padding: 25px 0 0 0;
    clear: both;
}
}

.kitchen .std li{
    width: 38vw;
    margin: 10px 0 15px 0;
    line-height: 15rem;
    letter-spacing: 0;
    text-align: left;
}
@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .std li{
    width: 220px;
    margin: 0;
    line-height: 15rem;
}
}


.kitchen .std li img{
    height: 34vw;
    margin: 0 0 4px 0;
    object-fit: cover;
}
@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .std li img{
    height: 128px;
}
}

.kitchen .stove{
    margin: 45px 0 0 0;
    padding: 15px;
    border: solid 1px #c44c5c;
    position: relative;
}
@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .stove{
    margin: 50px 0 0 0;
    padding: 46px;
    overflow: hidden;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .stove div{
    margin: 0 0 0 32px;
    float: left;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .stove figure{
    width: 307px;
    float: left;
}
.kitchen .stove figure.sub{
    width: 270px;
    position: absolute;
    top: 55px;
    right: 46px;
}
}

.kitchen .stove img{
    width: 100%;
}

.kitchen .stove h5{
    margin: 25px 0 0;
    font-family: "NewCezannePro-DB";
    font-size: 18rem;
    line-height: 23rem;
    color: #c44c5c;
    opacity: 1 !important;
}
@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .stove h5{
    margin: -5px 0 0 0;
}
}

.kitchen .stove h5 small{
    margin: 0 0 0 -6rem;
    font-family: "NewCezanneProN-M";
    font-size: 13rem;
    line-height: 13rem;
    color: #333333;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .stove h5 small{
    margin: 0;
    display: inline;
}
}

.kitchen .stove p{
    margin: 11px 0 6px;
}
@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .stove p{
    width: 310px;
    margin: 8px 0 0;
    letter-spacing: -0.1rem;
}
}

.kitchen .stove .op{
    width: 100%;
    padding: 3px 8px;
    font-size: 12rem;
    line-height: 12rem;
    letter-spacing: 0;
    text-align: center;
    border: solid 1px rgba(0, 0, 0, 0.8);
    display: inline-block;
    box-sizing: border-box;
}
@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .stove .op{
    width: 310px;
    margin: 0 0 40px 0;
}
}

.kitchen .stove h6{
    margin: 25px 0 0 0;
    padding: 4px 0;
    font-family: "NewCezanneProN-M";
    font-size: 16rem;
    line-height: 16rem;
    text-align: center;
    color: #ffffff;
    background-color: #c44c5c; 
}

.kitchen .stove h6:nth-child(3){
    margin: 25px 0 10px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .stove h6:nth-child(3){
    margin: 55px 0 10px 0;
}
}

/*バスルーム*/
.bath .std{
    background-image: url(../img/equipment_img/ph_bath_01.jpg);
    background-size: 100% auto;
    background-repeat: no-repeat;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .bath .std{
    width: 290px;
    padding: 0 30px 27px 30px;
    position: absolute;
    top: 0;
    right: 0;
}
}

.bath .std .image{
    height: calc(44vw - 15px);
    overflow: hidden;
}
@media print, screen and (min-width: 768px) {/*PC*/
.bath .std .image{
    height: 175px;
}
}

.bath .std h4{
    margin: 25px 0 5px;
    font-family: "NewCezannePro-DB";
    font-size: 17rem;
    line-height: 25rem;
    color: #008fd3;
}
@media print, screen and (min-width: 768px) {/*PC*/
.bath .std h4{
    margin: 50px 0 10px;
    font-family: "NewCezannePro-DB";
    font-size: 17rem;
    line-height: 25rem;
    color: #008fd3;
}
}

.bath .std h5{
    margin: 16px 0 8px 0;
    font-family: "NewCezannePro-DB";
    font-size: 15rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
.bath .std h5{
    margin: 12px 0 4px 0;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
.bath .std p{
    letter-spacing: 0;
}
}

.bath .std figure img{
    padding: 12px 0;
}

.bath .std figure figcaption{
    margin: -5px -6rem 0 0;
    font-family: "NewCezannePro-DB";
    font-size: 15rem;
    text-align: center;
}

.bath .std dl{
    margin: 6px 0 0 0;
    display: flex;
    justify-content: space-between;
}

.bath .std dt{
    width: calc(100% - 160px);
}

.bath .std dt img{
    height: auto;
}

.bath .std dd{
    width: 153px;
    font-size: 10rem;
    line-height: 11rem;
    letter-spacing: 0;
}
.bath .std dd span{
	letter-spacing: 0.5rem;
}

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

@media print, screen and (min-width: 768px) {/*PC*/
.bath .drain{
    width: 504px !important;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
.bath .drain .ph{
    width: 224px;
    height: 156px;
    float: left;
}
}

.bath .drain .movie{
    margin: 15px 0 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
.bath .drain .movie{
    width: 277px;
    margin: 0 0 16px 0;
    float: right;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
.bath .drain dt{
    clear: both;
}
}

.bath .drain .sub{
    width: 100px !important;
    height: 100px;
    position: absolute;
    bottom: -10px;
    right: -5px;
    z-index: 99;
}
@media print, screen and (min-width: 768px) {/*PC*/
.bath .drain .sub{
    width: 88px !important;
    height: 88px;
}
}

.bath .drain .sub{
    width: 100px !important;
    height: 100px;
    position: absolute;
    bottom: -10px;
    right: -5px;
    z-index: 99;
}
@media print, screen and (min-width: 768px) {/*PC*/
.bath .drain .sub{
    width: 88px !important;
    height: 88px;
}
}

.bath .hwss .sub{
    width: 118px !important;
    height: 80px;
    position: absolute;
    bottom: -20px;
    right: -8px;
    z-index: 99;
}

@media print, screen and (min-width: 768px) {/*PC*/
.bath .bathtab1 {
    width: 420px !important;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
.bath .bathtab2 {
    width: 600px !important;
}

.bath .bathtab2 .ph {
    width: 360px;
    margin: 0 5px 0;
    float: left;
}
}

/*パウダールーム*/
#equipment .powder .top figure.ph figcaption {
    position: absolute;
    width: calc(100% - 7px);
    height: auto;
    display: block;
    text-align: right;
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .powder .std{
    width: 175px;
    padding: 28px 28px 0 28px;
    position: absolute;
    top: 0;
    right: 0;
    letter-spacing: 0;
}
}

.powder .std .image{
    position: relative;
}

.powder .std .image .op{
    position: absolute;
    right: 7px;
    bottom: 0;
}

.powder .std .image img{
    height: 56vw;
    object-fit: cover;
    object-position: 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
.powder .std .image img{
    height: 161px;
}
}

.powder .std h4{
    margin: 25px 0 5px;
    font-family: "NewCezannePro-DB";
    font-size: 17rem;
    line-height: 25rem;
    color: #008fd3;
}
@media print, screen and (min-width: 768px) {/*PC*/
.powder .std h4{
    margin: 25px 0 10px;
    font-size: 16rem;
    line-height: 23rem;
}
}

.powder .std .fig{
    width: 75%;
    margin: 25px auto 0;
}

@media print, screen and (min-width: 768px) {/*PC*/
.powder .std p{
    margin: 12px 0 0 0;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
.powder .std .fig{
    width: 100%;
    margin: 42px auto 0;
}
}

.powder .std h5{
    width: 80%;
    margin: 0 auto -15px;
    padding: 20px 0 5px;
    font-family: "NewCezanneProN-M";
    font-size: 15rem;
    line-height: 35rem;
    color: #ffffff;
    text-align: center;
    background-image: url(../img/equipment_img/bg_powder_kireist.png);
    background-size: 100% auto;
    background-repeat: no-repeat;
}
@media print, screen and (min-width: 768px) {/*PC*/
.powder .std h5{
    width: 100%;
    margin: 0;
    padding: 30px 0 15px;
}
}

.powder .std h5 strong{
    font-size: 21rem;
    text-align: center;
    display: block;
}

.powder .std h5 strong b{
    font-size: 42rem;
}

@media print, screen and (min-width: 768px) {/*PC*/
.powder .top .equip {
    width: 231px;
    position: absolute;
    top: -40px;
    left: 546px;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .powder .top .equip .mirror .txt{
    letter-spacing: -0.2rem;
	zoom: 0.98;
}
}

#equipment .powder .mirror .op{
    width: calc(100% - 16px);
    text-align: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .powder .mirror .op{
    width: calc(100% - 4px);
    padding: 2px 2px;
    letter-spacing: -0.5rem;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .powder .mirror {
    padding: 0 0 40px 0;
    border-bottom: dotted 1px #666666;
}
}

#equipment .powder .mirror .txt{
    margin: 0 0 10px 0;
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .powder>.box>.equip{
    width: 777px;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .powder>.box>.closet{
    width: 231px;
    padding: 0 0 0 42px;
    position: absolute;
    top: -40px;
    right: 0;
}
}
#equipment .powder .closet .ph{
    width: 33vw;
    margin: auto;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .powder .closet .ph{
    width: 128px;
    height: 537px;
}
}


/*トイレ*/
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .toilet .top .box{
    width: 504px;
    position: absolute;
    top: 0;
    right: 0;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .toilet .lift{
    width: 504px !important;
    margin: 0 !important;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .toilet .lift .ph{
    width: 220px;
    height: 156px;
    float: left;
}
#equipment .toilet .lift .ph img{
    object-fit: cover;
}
}

#equipment .toilet .movie{
    margin: 12px 0 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .toilet .lift .movie{
    width: 277px;
    margin: 0 0 16px 0;
    float: right;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .toilet .lift dt{
    clear: both;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .toilet .top .lift .txt{
    letter-spacing: 0rem;
}
#equipment .toilet .top .txt{
    font-size: 12.6rem;
    letter-spacing: -0.5rem;
}
}

#equipment .toilet .counter,
#equipment .toilet .rail{
    width: 41vw;
    margin: 0 0 55px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .toilet .counter,
#equipment .toilet .rail{
    width: 231px;
    float: inherit;
}
}

#equipment .toilet .counter{
    float: left;
}
#equipment .toilet .rail{
    float: right;
}

#equipment .toilet .counter dt{
    white-space: nowrap;
}
#equipment .toilet .rail dt{
    letter-spacing: 16rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .toilet .counter dt,
#equipment .toilet .rail dt{
    margin: 38px 0 8px 0;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .toilet .counter .ph,
#equipment .toilet .rail .ph{
    width: 130px;
    margin: 40px 10px -50px 0;
    float: left;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .toilet .counter .txt,
#equipment .toilet .rail .txt{
    text-align: left;
}
}

/*エコロジー＆エコノミー*/
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .eco .title2{
    height: auto;
}
}

#equipment .eco .title2 h4{
    font-family: "MatissePro-M";
    font-size: 18rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .eco .title2 h4{
    margin: 4px 0 0 0;
    font-size: 24rem;
}
}

#equipment .eco .title2 p{
    margin: 16px 0 -5px 0;
    text-align: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .eco .title2 p{
    margin: 9px 0 0 0;
    text-align: left;
}
}

#equipment .eco section{
    margin: -50px 0 0 0;
    padding: 110px 0 0 0;
    position: relative;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .eco section{
    margin: 0;
    padding: 70px 0 0 0;
}
}

#equipment .eco section h4{
    margin: 0 -23px 25px;
    padding: 0 0 8px;
    font-family: "NewCezanneProN-M";
    font-size: 15rem;
    line-height: 18rem;
    color: #ffffff;
    text-align: center;
    background-color: #92ac4f;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .eco section h4{
    width: 100%;
    margin: 0 0 22px 0;
    padding: 5px 0;
    color: #779723;
    line-height: 15rem;
    text-align: left;
    background-color: inherit;
    border-top: solid 1px #779723;
    border-bottom: solid 1px #779723;
}
}

#equipment .eco section h4 strong{
    margin: 0 -23px 8px;
    padding: 6px 0;
    font-family: "NewCezannePro-DB";
    font-size: 17rem;
    line-height: 17rem;
    color: #ffffff;
    text-align: center;
    background-color: #779723;
    border-bottom: solid 1px #ffffff;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .eco section h4 strong{
    margin: -5px 15px -5px 0;
    padding: 5px 22px;
    font-family: "NewCezanneProN-M";
    font-size: 15rem;
    line-height: 15rem;
    text-align: left;
    border-bottom: none;
    display: inline-block;
}
}


#equipment .eco section h5{
    margin: 0 0 18px;
    font-family: "NewCezanneProN-M";
    font-size: 18rem;
    letter-spacing: 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .eco section h5{
    margin: 0 0 15px;
    line-height: 26rem;
}
}

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

#equipment .eco #share h6{
    margin: 0 0 5px 0;
    font-family: "NewCezanneProN-M";
    font-size: 13rem;
    line-height: 13rem;
    font-weight: normal;
}

#equipment .eco section p{
    margin: 0 0 25px 0;
}

#equipment .eco #share .ic{
    width: 60%;
    margin: -8px auto 12px;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .eco #share .ic{
    width: 195px;
    height: auto;
    position: absolute;
    top: 118px;
    right: 0;
}
}

#equipment .eco #share figcaption{
    line-height: 18rem;
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .eco #share figure span:nth-child(1){
    width: 493px;
}
#equipment .eco #share figure span:nth-child(2){
    width: 518px;
    margin: 0;
}
}

#equipment .eco #share figure span:nth-child(2) img{
    margin: 28px 0 10px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .eco #share figure span:nth-child(2) img{
    margin: 0;
}
}

#equipment .eco #share small{
    font-size: 10rem;
    line-height: 12rem;
}

#equipment .eco #share .smartmeter{
    margin: 45px 0 0 0;
    background-color: #eeeeef;
    overflow: hidden;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .eco #share .smartmeter{
    margin: 20px 0 0 0;
}
}

#equipment .eco #share .smartmeter div{
    padding: 0 20px 30px 20px;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .eco #share .smartmeter div{
    display: flex;
    justify-content: space-between;
    padding: 0 40px 30px 40px;
}
}

#equipment .eco #share .smartmeter h5{
    margin: 18px 0 0 0;
    padding: 10px 0 8px 20px;
    font-family: "NewCezannePro-DB";
    font-weight: normal;
    font-size: 15rem;
    line-height: 18rem;
    color: #ffffff;
    background-color: #a2b35f;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .eco #share .smartmeter h5{
    width: auto;
    padding: 5px 20px 4px 40px;
    display: inline-block;
}
}

#equipment .eco #share .smartmeter dl{
    margin: 25px 0 5px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .eco #share .smartmeter dl{
    margin: 20px 0 0 0;
    letter-spacing: 0;
}
#equipment .eco #share .smartmeter dl:nth-child(1){
    width: 425px;
}
#equipment .eco #share .smartmeter dl:nth-child(2){
    width: 295px;
}
}

#equipment .eco #share .smartmeter dt{
    margin: 0 0 15px 0;
    padding: 0 0 0 5px;
    font-family: "NewCezannePro-DB";
    font-size: 14rem;
    line-height: 20rem;
    border-left: solid 5px #9e9e9f;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .eco #share .smartmeter dt{
    min-height: 40rem;
    margin: 0 0 12px 0;
}
}

#equipment .eco #share .smartmeter figure{
    width: 52vw;
    margin: auto;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .eco #share .smartmeter figure{
    width: 195px;
    height: auto;
    margin: -12px 0 12px 0;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .eco #toilet figure span:nth-child(1){
    width: 514px;
}
#equipment .eco #toilet figure span:nth-child(2){
    width: 500px;
    margin: 100px 0 0 0;
}
}

#equipment .eco #toilet .graph{
    width: 85%;
    margin: 5px auto 10px;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .eco #toilet .graph{
    width: 369px;
    margin: 0 0 12px 0;
}
}

#equipment .eco #eco .ic{
    width: 42%;
    margin: -12px auto 14px;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .eco #eco .ic{
    width: 168px;
    height: auto;
    position: absolute;
    top: 138px;
    right: 0;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .eco #eco figure span:nth-child(1){
    width: 504px;
}
#equipment .eco #eco figure span:nth-child(2){
    width: 490px;
    margin: 3px 0 0 0;
}
}

#equipment .eco #eco figure span:nth-child(2) img{
    margin: 15px 0 10px
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .eco #eco figure span:nth-child(2) img{
    margin: 0 0 15px
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .eco #wash figure{
    width: 288px;
    height: auto;
    position: absolute;
    top: 120px;
    right: 0;
}
}

#equipment .eco #wash small{
    margin: 15px 0 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .eco #wash small{
    width: 810px;
    margin: -12px 0 0 0;
}
}

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

#equipment .eco #dry div:nth-child(2){
    margin: 0 0 45px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .eco #dry div:nth-child(2){
    width: 380px;
    margin: 0 0 45px 0;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .eco #dry div:nth-child(3){
    width: 620px;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .eco #dry div:nth-child(3) figure{
    width: 430px;
    margin: -70px 0 0 0;
    float: right;
}
}

#equipment .eco #dry div:nth-child(3) p{
    margin: 0 0 5px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .eco #dry div:nth-child(3) p{
    width: 185px;
    float: left;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .eco #bathtab p{
    width: 330px;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .eco #bathtab figure:nth-child(4){
    width: 370px;
    height: auto;
    flex-wrap: wrap;
    position: absolute;
    top: 138px;
    left: 380px;
}
#equipment .eco #bathtab figure:nth-child(4) img{
    width: 339px;
}
}

#equipment .eco #bathtab figure:nth-child(5){
    margin: 25px 0 15px;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .eco #bathtab figure:nth-child(5){
    width: 296px;
    margin: 0;
    position: absolute;
    top: 105px;
    right: 0;
}
}

#equipment .eco #bathtab figure:nth-child(6) img{
    margin: 0 0 10px;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .eco #bathtab figure:nth-child(6) img{
    margin: -5px 0 5px 0;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .eco #bathtab figure:nth-child(6){
    width: 342px;
    height: auto;
    flex-wrap: wrap;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .eco #shower figure{
    margin: -123px 0 0 0;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}
}

#equipment .eco #shower figure img{
    margin: 0 0 20px 0;
}
#equipment .eco #shower figure img:nth-child(3){
    margin: 0 0 15px 0;
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .eco #shower figure img{
    margin: 0;
}
#equipment .eco #shower figure img:nth-child(2){
    width: 517px;
}
#equipment .eco #shower figure img:nth-child(4){
    width: 168px;
}
#equipment .eco #shower figure small{
    width: 360px;
    order: -1;
}
}

/*セキュリティ*/
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .catalog{
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
}

#equipment .catalog dl{
    margin: 60px 0 0 0;
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .catalog dl{
    width: 260px;
    margin: 20px 0 35px 0;
}
}

#equipment .catalog dt{
    margin: 8px 0 4px;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .catalog dt{
}
}

#equipment .catalog dt span{
}

#equipment .catalog .ph{
    position: relative;
}

#equipment .catalog .ph img{
    width: 100%;
}

#equipment .catalog .ph .label{
    width: auto;
    height: 15px;
    position: absolute;
    bottom: 8px;
    left: 8px;
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .security .tv{
    margin: 0 0 25px 0;
    border-top: dotted 1px #a7a7a7;
}
}

#equipment .security .system dl:first-child,
#equipment .security .door dl:first-child{
    background-image: none;
}

#equipment .security .catalog dd.txt{
    margin: 0 0 15px 0;
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .security .system dl:first-child{
    width: 740px;
}
}

#equipment .security .system dl:nth-child(2) .ph{
    width: 260px;
    margin: auto;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .security .system dl:nth-child(2) .ph{
    width: 250px;
    margin: 30px auto 0;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .security .tv dl:nth-child(1){
    width: 740px;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .security .tv dl:nth-child(1) .ph{
    border: solid 1px #999999;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .security .tv dl:nth-child(2){
    width: 260px;
    margin: 2px 0;
}
}


#equipment .security .tv dl:nth-child(2) .ph{
    width: 35vw;
    margin: auto;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .security .tv dl:nth-child(2) .ph{
    width: 137px;
    margin: auto;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .security .door dl:first-child{
    width: 100%;
    margin: 20px 0 0 0;
    padding: 0 0 30px 0;
    border-bottom: dotted 1px #a7a7a7;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .security .door dl:first-child .txt{
    width: 410px;
    float: left;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .security .door dl:first-child .ph{
    margin: -24px 0 0 0;
    float: right;
}
}

#equipment .security .door dl:first-child .ph img{
    width: auto;
    height: 60vw;
}
#equipment .security .door dl:first-child .ph img:first-child{
    margin: 0 0 10px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .security .door dl:first-child .ph img{
    width: auto;
    height: 249px;
    margin: 0 0 0 15px;
    float: left;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .security .door dl:nth-child(2){
    width: 410px;
}
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .security .door dl:nth-child(2) .ph{
    margin: 40px 0 0 0;
}
}

#equipment .security .door dl:nth-child(3) .ph,
#equipment .security .door dl:nth-child(4) .ph{
    width: 75%;
    margin: auto;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .security .door dl:nth-child(3) .ph,
#equipment .security .door dl:nth-child(4) .ph{
    width: 100%;
    margin: 0;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .security .key>dl{
    width: 100%;
}
}

#equipment .security .key .point{
    margin: 35px 0 35px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .security .key .point{
    width: 100%;
    margin: -20px 0 0 0;
    display: flex;
    justify-content: space-between;
}
}

#equipment .security .key .point li{
    margin: 0 0 8px 0;
    padding: 0 0 30px 0;
    background-image: url(../img/equipment_img/ic_tri_down.png);
    background-size: 58px 19px;
    background-position: center bottom;
    background-repeat: no-repeat;
}
#equipment .security .key .point li:nth-child(3){
    padding: 0 0 10px 0;
    background-image: none;
}
#equipment .security .key .point li:last-child{
    margin: 0;
    padding: 0;
    background-image: none;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .security .key .point li{
    margin: 0;
    padding: 0 35px 0 0;
    background-image: url(../img/equipment_img/ic_tri_right.png);
    background-size: 19px 57px;
    background-position: right 90px;
    background-repeat: no-repeat;
}
#equipment .security .key .point li:nth-child(3){
    padding: 0 15px 0 0;
    background-image: none;
}
}

#equipment .security .key .point dl{
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .security .key .point dl{
    flex-direction: column;
}
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .security .key .point li:first-child dl{
    width: 275px;
}
#equipment .security .key .point li:nth-child(2) dl{
    width: 268px;
}
#equipment .security .key .point li:nth-child(3) dl{
    width: 193px;
}
#equipment .security .key .point li:last-child dl{
    width: 192px;
}
}

#equipment .security .key .point dt{
    width: 100%;
    margin: 0 0 4px 0;
    font-size: 14rem;
    line-height: 14rem;
    clear: both;
}
#equipment .security .key li:first-child dt{
    margin: 0 0 10px 0;
}

#equipment .security .key .point dt em{
    width: 18px;
    height: 18px;
    margin: 0 4px 0 0;
    font-size: 15rem;
    line-height: 22rem;
    font-family: "HelveticaNeueLTPro-MdCn";
    font-style: normal;
    color: #ffffff;
    text-align: center;
    vertical-align: 1px;
    border-radius: 9px;
    background-color: #d70c18;
    display: inline-block;
}

#equipment .security .key .point .fig{
    width: 190px;
    margin: 5px 0 0 0;
}
#equipment .security .key .point li:first-child .fig{
    margin: -7px 0 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .security .key .point .fig{
    width: 100%;
    margin: 9px 0 0 0;
}
}

#equipment .security .key .point .fig img{
    width: 100%;
}

#equipment .security .key .point .txt{
    width: calc(100% - 200px);
    line-height: 21rem;
    letter-spacing: 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .security .key .point .txt{
    width: auto;
    margin: 5px 0 0 0;
    font-size: 12rem;
    line-height: 18rem;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .security .key div{
    width: 100%;
    margin: 15px 0 60px 0;
    padding: 10px 0 0 0;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    border-top: dotted 1px #a7a7a7;
}
}

#equipment .security .key div dl{
    margin: 20px 0 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .security .key div dl{
    margin: 40px 0 0 55px;
}
}

#equipment .security .key div .ph1{
    width: 100%;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .security .key div .ph1{
    width: 445px;
}
}

#equipment .security .key div .ph2{
    width: 80%;
    margin: auto;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .security .key div .ph2{
    width: 258px;
}
}

#equipment .security .key div img{
    width: 100%;
    height: auto;
    display: block;
}

/*構造*/
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .structure .title2{
    height: 150px;
}
}

#equipment .structure .title2 h4{
	letter-spacing: 1rem;
	}

#equipment .structure h6{
    margin: 16px 0 10px;
    font-size: 16rem;
    line-height: 22rem;
}

#equipment .structure>div dl{
    margin: 0 0 60px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .structure>div dl{
    margin: 0 0 0 0;
}
#equipment .structure .top dl{
    margin: 0 0 60px 0;
}
}

#equipment .structure>div dd.txt{
    margin: 0 0 15px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .structure>div dd.txt{
    margin: 0 0 35px 0;
}
}

#equipment .structure>div dd.ph{
    margin: auto;
    display: block;
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .structure .top{
    position: relative;
}
}

#equipment .structure .top figure{
    margin: 15px 0 40px;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .structure .top figure{
    width: 640px;
    margin: 40px 0 40px;
}
}

#equipment .structure figure img{
    width: 100%;
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .structure .top div{
    width: 340px;
    position: absolute;
    top: 20px;
    right: 0;
    letter-spacing: 0;
}
}

#equipment .structure .top dt em{
    width: 25px;
    height: 25px;
    margin: 0 4px 0 0;
    font-size: 26rem;
    line-height: 32rem;
    font-family: "HelveticaNeueLTPro-MdCn";
    font-style: normal;
    color: #ffffff;
    text-align: center;
    vertical-align: -2px;
    background-color: #002352;
    display: inline-block;
}

#equipment .structure .top div dl:nth-child(2) .ph{
    width: 80%;
}

#equipment .structure .top div dl:nth-child(3) .ph{
    width: 55%;
    padding: 0 0 0 10%;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .structure .top div dl:nth-child(3) .ph{
    width: 50%;
    padding: 8px 0 0 0;
    float: right;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .structure .top div dl:nth-child(3) .txt{
    width: 45%;
    float: left;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .structure .box3,
#equipment .structure .box4{
    width: 500px;
    margin: -15px 0 60px 0;
    padding: 0 550px 0 0;
    border: none;
    flex-wrap: wrap;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .structure .box1 dl{
    width: 321px;
    margin: 25px 0 0 0;
}
#equipment .structure .box2 dl{
    width: 500px;
    margin: 25px 0 40px 0;
}
#equipment .structure .box3 dl{
    width: 500px;
}
#equipment .structure .box3 dl:nth-child(3){
    position: absolute;
    top: 0px;
    right: 0;
}
}

#equipment .structure .box1 dl:nth-child(1) .ph{
    width: 90%;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .structure .box1 dl:nth-child(1) .ph{
    width: 100%;
}
}

#equipment .structure .box1 dl:nth-child(2) .ph{
    width: 65%;
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .structure .box2 dl:nth-child(1) .ph{
    width: 282px;
    float: right;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .structure .box2 dl:nth-child(1) .txt{
    width: 202px;
    float: left;
}
}

#equipment .structure .box2 dl:nth-child(2) .ph{
    width: 85%;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .structure .box2 dl:nth-child(2) .ph{
    width: 290px;
    float: right;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .structure .box2 dl:nth-child(2) .txt{
    width: 194px;
    float: left;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .structure .box3 dl .txt{
    margin: 0 0 20px 0;
}
}

#equipment .structure .box3 dl:nth-child(1) .ph{
    width: 80%;
    padding: 0 0 0 10%;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .structure .box3 dl:nth-child(1) .ph{
    width: 243px;
    margin: -30px 0 20px 0;
    padding: 0;
     float: right;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .structure .box3 dl:nth-child(1) .txt{
    width: 230px;
    float: left;
}
}

#equipment .structure .box3 dl:nth-child(3) .ph{
    padding: 12px 10px 12px 10px;
    font-size: 14rem;
    line-height: 19rem;
    background-color: #eeeeef;
}
#equipment .structure .box3 dl:nth-child(3) .ph img{
    margin: 15px 0 0 0;
}
#equipment .structure .box3 dl:nth-child(3) .ph strong{
    font-size: 18rem;
    font-weight: normal;
    color: #c6000b
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .structure .box3 dl:nth-child(3) .ph{
    padding: 20px;
    line-height: 22rem;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .structure .box3 dl:nth-child(2) .ph img{
    width: 330px;
    float: left;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .structure .box3 dl:nth-child(2) .ph small{
    width: 150px;
    margin: 90px 0 0 0;
    float: right;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .structure .box3 dl:nth-child(3) small{
    letter-spacing: -0.2rem;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .structure .box4 dl{
    width: 500px;
    
}
}

#equipment .structure .box4 figure{
    margin: -40px 0 60px;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .structure .box4 figure{
    width: 500px;
    position: absolute;
    top: 50px;
    right: 0;
    
}
}

#equipment .structure .flat35{
    margin: 50px 0 60px 0;
    padding: 0 0 8px 0;
    border-top: solid 3px #999999;
    border-bottom: solid 3px #b3b3b3;
    font-family: "NewCezanneProN-M", sans-serif;
	color: #505050;
    line-height: 23rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .structure .flat35{
    margin: -40px 0 55px 0;
    padding: 0;
    border-top: solid 1px #999999;
    border-bottom: solid 1px #b3b3b3;
    display: flex;
}
}

#equipment .structure .flat35 dt{
    margin: 0 0 10px 0;
    padding: 8px 0 10px;
    border-bottom: solid 1px #b3b3b3;
    text-align: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .structure .flat35 dt{
    margin: 0;
    border: none;
}
}

#equipment .structure .flat35 dt img{
    width: 90%;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .structure .flat35 dt img{
    width: 350px;
    height: auto;
    padding: 5px 25px 5px 20px;
    border-right: solid 6px #dedede;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .structure .flat35 dd{
    padding: 5px 15px 5px 15px;
    line-height: 23rem;
    letter-spacing: 0;
}
}

#equipment .structure .guarantee,
#equipment .structure .maintenance{
    margin: 25px 0 0 0;
    padding: 25px 15px 25px 15px;
    background-color: #f7f7f0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .structure .guarantee,
#equipment .structure .maintenance{
    margin: 40px 0 0 0;
    padding: 30px 35px 25px 35px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
}
}

#equipment .structure .guarantee h5,
#equipment .structure .maintenance h5{
    margin: 0;
    padding: 0;
    font-family: "MatissePro-M";
    font-size: 21rem;
    line-height: 26rem;
    letter-spacing: 0;
    color: #333333;
    background-color: inherit;
    text-align: left;
}

#equipment .structure .guarantee h5 small,
#equipment .structure .maintenance h5 small{
    font-size: 14rem;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .structure .guarantee h5,
#equipment .structure .maintenance h5,
#equipment .structure .guarantee h5 small,
#equipment .structure .maintenance h5 small{
    width: 100%;
    line-height: 20rem;
    text-align: left;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .structure .guarantee h5 .pc,
#equipment .structure .maintenance h5 .pc{
    display: inline;
    font-size: 36rem;
    vertical-align: -1rem;
    color: #485157;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .structure .guarantee dl{
    width: 650px;
}
}

#equipment .structure .guarantee dt{
    margin: 20px 0 5px 0;
    font-family: "NewCezannePro-DB";
    font-size: 16rem;
    border-bottom: dotted 1px #666666;
}

#equipment .structure .guarantee dd,
#equipment .structure .maintenance dd{
    margin: 0 0 25px 0;
    font-family: "NewCezanneProN-M", sans-serif;
    line-height: 23rem;
    letter-spacing: -0.25rem;
}

#equipment .structure .guarantee ul{
    margin: 15px 0 20px 0;
    display: flex;
    justify-content: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .structure .guarantee ul{
    width: 134px;
    display: block;
    margin: 45px 0 0 0;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .structure .guarantee figure{
    width: 280px;
    margin: -40px 0 0 0;
}
}

#equipment .structure .guarantee li{
    text-align: center;
}

#equipment .structure .guarantee li img{
    width: 90%;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .structure .guarantee li img{
    width: 100%;
    margin: 0 0 18px 0;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .structure .maintenance figure{
    width: 300px;
    margin: 70px 0 0 0;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
.structure .maintenance div{
    width: 650px;
}
}

#equipment .structure .maintenance h6{
    margin: 20px 0 5px 0;
    font-family: "NewCezannePro-DB";
    font-weight: normal;
    font-size: 16rem;
    line-height: 20rem;
    text-align: left;
}

#equipment .structure .maintenance p{
    font-family: "NewCezanneProN-M", sans-serif;
    line-height: 23rem;
    letter-spacing: -0.25rem;
}

#equipment .structure .maintenance dl{
    padding: 10px 0 10px 0;
    border-bottom: dotted 1px #666666;
}

#equipment .structure .maintenance dt{
    margin: 10px 0 0 0;
    padding: 12px 0 0 0;
    font-size: 15rem;
    letter-spacing: -0.75rem;
    border-top: dotted 1px #666666;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .structure .maintenance dt{
    margin: 8px 0 0 0;
    line-height: 16rem;
}
}

#equipment .structure .maintenance figure img{
    width: 100%;
    margin: 20px 0 10px;
}

#equipment .equipments .box1{
    margin: -30px 0 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .equipments .box1{
    border: none;
    margin: -40px 0 0 0;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .equipments .equip .ph img{
    width: 231px;
    height: 181px;
    object-fit: cover;
}
#equipment .equipments .box5 dl:nth-child(1) .ph img{
    object-position: 0 100%;
}
}

#equipment .equipments .strage,
#equipment .equipments .net{
    padding: 25px 15px 40px;
    background-color: #f7f7f0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
#equipment .equipments .strage{
    margin: 60px 0 0 0;
}
#equipment .equipments .net{
    margin: 25px 0 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .equipments .strage,
#equipment .equipments .net{
    padding: 30px 30px 30px;
    background-color: #f7f7f0;
    display: flex;
    justify-content: space-between;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .equipments .strage div{
    width: 474px;
    margin: 0 20px 0 0;
}
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .equipments .net div{
    width: 380px;
}
}

#equipment .equipments .strage h6,
#equipment .equipments .net h6{
	font-family: "NewCezannePro-DB";
    margin: 0 0 16px 0;
    font-size: 16rem;
    letter-spacing: 0.3rem;
}

#equipment .equipments .strage figure{
    margin: 20px 0 0 0;
}
#equipment .equipments .strage figure:nth-child(2),
#equipment .equipments .strage figure:nth-child(3){
    height: 53vw;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .equipments .strage figure{
    height: 200px !important;
    margin: 0;
}
#equipment .equipments .strage figure:nth-child(4){
    width: 159px !important;
}
#equipment .equipments .strage figure:nth-child(3){
    order: 1;
}
}

#equipment .equipments .net figure img{
    width: 100%;
    height: auto;
}

#equipment .equipments .strage figure:nth-child(4) img{
    width: 100%;
}


#equipment .equipments .net figure:nth-child(2) {
    width: 75%;
    height: auto;
    margin: 15px auto 20px;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .equipments .net figure:nth-child(2){
    width: 220px;
    margin: 7px 0 0 0;
}
}


@media print, screen and (min-width: 768px) {/*PC*/
#equipment .equipments .net figure:nth-child(3){
    width: 350px;
}
}

#equipment .equipments .strage figcaption{
    font-size: 12rem;
    line-height: 18rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .equipments .strage figcaption{
    text-align: center;
}
}









































































/*/// 間取り ///*/
#roomtype h3{
    font-size: 13rem !important;
}
@media print, screen and (min-width: 768px) {/*PC*/
#roomtype h3{
    font-size: 18rem !important;
}
}

#roomtype .banner{
    padding: 15px 0 60px 0;
}

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

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

#roomtype .banner li{
    position: relative;
}

#roomtype .banner a{
    margin: 0 0 10px 0;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
#roomtype .banner a{
    width: 520px;
}
}

#roomtype .banner img{
    width: 100%;
}

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

#roomtype .fig div{
    position: relative;
    padding: 35px 0 33px 0;
    border-top: dotted 1px #999999;
}
@media print, screen and (min-width: 768px) {/*PC*/
#roomtype .fig div{
    width: 50%;
    border-top: none;
    box-sizing: border-box;
}
#roomtype .fig div:nth-child(1){
    padding: 0 45px 40px 0;
    border-right: dotted 1px #999999;
    border-bottom: dotted 1px #999999;
}
#roomtype .fig div:nth-child(2){
    padding: 0 0 40px 45px;
    border-bottom: dotted 1px #999999;
}
#roomtype .fig div:nth-child(3){
    padding: 40px 45px 40px 0;
    border-right: dotted 1px #999999;
    border-bottom: dotted 1px #999999;
}
#roomtype .fig div:nth-child(4){
    padding: 40px 0 40px 45px;
    border-bottom: dotted 1px #999999;
}
#roomtype .fig div:nth-child(5){
    padding: 40px 45px 0 0;
    border-right: dotted 1px #999999;
}
#roomtype .fig div:nth-child(6){
    padding: 40px 0 0 45px;
}
}

#roomtype .fig h4{
    font-size: 26rem;
    font-family: "HelveticaNeueLTPro-BdCn";
    color: #002352;
    display: inline;
    position: absolute;
}

#roomtype .fig h4 strong{
    font-size: 78rem;
    letter-spacing: 2rem;
    vertical-align: -37rem;
    background-color: #ffffff;
}

#roomtype .fig h5{
    width: calc(100% - 60px);
    font-size: 26rem;
    font-family: "HelveticaNeueLTPro-BdCn";
    color: #002352;
    text-align: right;
    float: right;
}

#roomtype .fig dl{
    width: calc(100% - 50px);
    margin: 0 0 12px 0;
    padding: 8px 0 0 0;
    font-size: 14rem;
    line-height: 14rem;
    border-top: solid 1px #002352;
    float: right;
}
@media print, screen and (min-width: 768px) {/*PC*/
#roomtype .fig dl{
    padding: 4px 0 0 0;
}
}

#roomtype .fig dt{
	padding: 2px 0 0 65px;
    /*font-weight: bold;*/
	font-weight: normal;
	font-family: "NewCezannePro-DB";
    float: left;
}
@media print, screen and (min-width: 768px) {/*PC*/
#roomtype .fig dt{
	padding: 6px 0 0 220px;
}
}

#roomtype .fig dd{
	padding: 4px 0 0 0;
	font-size: 19rem;
    font-family: "HelveticaNeueLTPro-MdCn";
	font-weight: bold;
    text-align: right;
}
@media print, screen and (min-width: 768px) {/*PC*/
#roomtype .fig dd{
	padding: 8px 0 0 0;
}
}

#roomtype .fig dd small{
    font-size: 12rem;
}

#roomtype .fig dd b{
    font-size: 24rem;
}

#roomtype .fig figure img{
    width: 100%;
}
@media print, screen and (min-width: 768px) {/*PC*/
#roomtype .fig figure img{
    width: 420px;
    margin: auto;
    display: block;
}
#roomtype .fig div:nth-child(2) figure img{
    padding: 48px 0 0 0;
}
#roomtype .fig div:nth-child(3) figure img{
    padding: 36px 0 0 0;
}
#roomtype .fig div:nth-child(6) figure img{
    padding: 24px 0 0 0;
}
}

#roomtype .fig  ul.point{
    margin: 26px 0 0 0;
}

#roomtype .fig .point li{
    margin: 8px 0 0 13rem;
    line-height: 18rem;
}

#roomtype .fig .point li::first-letter{
    margin: 0 0 0 -13rem;

}

#roomtype .all .notice{
    padding: 6px 0 0 0;
    border-top: dotted 1px #999999;
    line-height: 13rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
#roomtype .all .notice{
    width: 100%;
    margin: 10px 0 0 0;
    display: flex;
    border-top: dotted 1px #919fb0;
    border-bottom: dotted 1px #919fb0;
}
}

#roomtype .all .notice li{
    margin: 4px 0 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#roomtype .all .notice li{
    margin: 0 20px 5px 0;
}
}

#roomtype .all .notice img{
    height: 14px;
    margin: 0 6px 0 0;
}

#roomtype .image{
    margin: 30px auto 0;
    position: relative;
}
@media print, screen and (min-width: 768px) {/*PC*/
#roomtype .image{
    width: 1050px;
    margin: 60px auto 0;
}
}


#roomtype .image img{
    width: 100%;
}

#roomtype .image p{
    position: absolute;
    bottom: 3px;
    right: 7px;
    font-family: "HelveticaNeueLTPro-MdCn";
    font-size: 16rem;
    color: #ffffff;
    text-align: right;
}
@media print, screen and (min-width: 768px) {/*PC*/
#roomtype .image p{
    bottom: 10px;
    right: 15px;
    font-size: 24rem;
}
}


#roomtype .bbiq{
    margin: 40px 23px 0;
    border-top: solid 4px #b3b3b3;
    border-bottom: solid 4px #b3b3b3;
}
@media print, screen and (min-width: 768px) {/*PC*/
#roomtype .bbiq{
    margin: 60px auto 0;
    display: flex;
    flex-direction: column;
    position: relative;
}
}

#roomtype .bbiq .logo{
    width: 242px;
    margin: 15px auto 5px;
}
@media print, screen and (min-width: 768px) {/*PC*/
#roomtype .bbiq .logo{
    width: 277px;
    position: absolute;
    left: 430px;
    bottom: 10px;
}
}

#roomtype .bbiq h4{
    margin: 0 0 8px 0;
    font-size: 18rem;
    color: #f29600;
    text-align: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
#roomtype .bbiq h4,
#roomtype .bbiq p,
#roomtype .bbiq .point{
    width: 420px;
    text-align: left;
}
#roomtype .bbiq h4{
    margin: 12px 0 6px 0;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#roomtype .bbiq p{
    line-height: 20rem;
}
}

#roomtype .bbiq .point{
    margin: 6px 0 20px;
    display: flex;
    justify-content: space-between;
}
@media print, screen and (min-width: 768px) {/*PC*/
#roomtype .bbiq .point{
    margin: 6px 0 18px;
    order: 1;
}
}

#roomtype .bbiq .point li{
    width: 49%;
    letter-spacing: -1rem;
    color: #ffffff;
    text-align: center;
    background-color: #f29600;
    border-radius: 2px;
}

@media print, screen and (min-width: 768px) {/*PC*/
#roomtype .bbiq .net{
    width: 331px;
    position: absolute;
    right: 0;
    bottom: 20px;
}
}

#roomtype .bbiq .notice{
    margin: 15px 0 10px 10rem;
    font-size: 10rem;
    line-height: 12rem;
    letter-spacing: -1rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
#roomtype .bbiq .notice{
    width: calc(420px - 10rem);
    margin: 8px 0 0px 10rem;
    font-size: 10rem;
    line-height: 12rem;
}
}

#roomtype .bbiq .notice li{
    margin: 0 0 5px 0;
}

#roomtype .bbiq .notice li:first-letter{
    margin: 0 0 0 -10rem;
}

#roomtype .bbiq img{
    width: 100%;
}


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


#roomtype .all>a>dl{
    margin: 0 0 18px 0;
    /*border: solid 2px #005169;
    outline: 2px solid #005169;
    outline-offset: -2px;*/
    background-color: #ededed;
}
@media print, screen and (min-width: 768px) {/*PC*/
#roomtype .all>a>dl{
    width: 342px;
    margin: 0 0 13px 0;
}
#roomtype .all dd.space{
    height: 120px!important;
}
}

#roomtype .all .sold{
    display: none;
}
@media print, screen and (min-width: 768px) {/*PC*/
#roomtype .all .sold{
    width: 342px;
    margin: 0 0 13px 0;
    /*border: solid 2px #b2cad2;*/
    outline: 2px solid #005169;
    outline-offset: -2px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    font-size: 30rem;
    letter-spacing: 1rem;
    color: #7fa8b4;
}
}

#roomtype .all dt.type{
    width: 70px;
    height: 68px;
    margin: 0 8px 0 0;
    font-size: 11rem;
    line-height: 11rem;
    font-family: "HelveticaNeueLTPro-BdCn";
    font-style: normal;
    color: #ffffff;
    text-align: center;
    vertical-align: -2px;
    display: inline-block;
    background-color: #919fb0;
    float: left;
}

#roomtype .all dt.type b{
    margin: 8rem 0 -12rem 0;
    font-family: "HelveticaNeueLTPro-MdCn";
    font-size: 54rem;
    line-height: 58rem;
    text-align: center;
    display: block;
}


#roomtype .all dt.layout{
    height: 60px;
    font-family: "HelveticaLTPro-LightCond";
    font-size: 33rem;
    color: #4d4d4d;
    display: table-cell;
    vertical-align: bottom;
}
@media print, screen and (min-width: 768px) {/*PC*/
#roomtype .all dt.layout{
    height: 40px;
	padding: 30px 0 0 0;
    font-size: 40rem;
}
}

#roomtype .all dd.space dl{
    margin: 20px 29px 20px;
    padding: 10px 0 1px 0;
    font-family: "NewCezannePro-DB";
    font-size: 13rem;
    line-height: 22rem;
    border-top: solid 1px #919fb0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#roomtype .all dd.space dl{
    margin: 20px 29px 0;
}
}

#roomtype .all dd.space dt{
	padding: 1px 0 0 0;
    font-weight: bold;
    float: left;
}


#roomtype .all dd.space dd{
	padding: 2px 0 0 0;
	font-size: 16rem;
    font-family: "HelveticaNeueLTPro-MdCn";
    text-align: right;
}


#roomtype .all dd.space dd small{
    font-size: 12rem;
}


#roomtype .all dd.space dd b{
    font-size: 24rem;
}

#roomtype .all dd.link{
    height: 22px;
    margin: 0 auto;
    text-align: center;
    clear: both;
}

#roomtype .all dd.link img{
    
}

#roomtype .all .note{
    width: 100%;
    margin: -5px 0 20px 0;
    font-size: 10rem;
    line-height: 10rem;
}

#roomtype .all a dl{
    color: #333333;
}
#roomtype .banner ul li:hover,
#roomtype .all a dl:hover{
    color: #333333;
    opacity: 0.6;
    transition: all 300ms 0s ease-in-out;
}


#roomplan .plan{
    margin: 35px 23px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#roomplan .plan{
    width: 1050px;
    margin: auto;
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
}

#roomplan .plan dt.type{
    width: 62px;
    height: 60px;
    margin: 0 12px 0 0;
    font-size: 11rem;
    line-height: 11rem;
    font-family: "HelveticaNeueLTPro-BdCn";
    font-style: normal;
    color: #ffffff;
    text-align: center;
    vertical-align: -2px;
    display: inline-block;
    background-color: #002352;
    float: left;
}
@media print, screen and (min-width: 768px) {/*PC*/
#roomplan .plan dt.type{
    width: 70px;
    height: 68px;
    margin: 0 12px 0 0;
    font-size: 11rem;
    line-height: 11rem;
}
}

#roomplan .plan dt.type b{
    margin: 8rem 0 -12rem 0;
    font-family: "HelveticaNeueLTPro-MdCn";
    font-size: 50rem;
    line-height: 52rem;
    text-align: center;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
#roomplan .plan dt.type b{
    font-size: 54rem;
    line-height: 58rem;
}
}

#roomplan .plan dt.layout{
    height: 30px;
    padding: 34px 0 0 0;
    font-family: "HelveticaLTPro-LightCond";
    font-size: 58rem;
    color: #002352;
    display: table-cell;
}
@media print, screen and (min-width: 768px) {/*PC*/
#roomplan .plan dt.layout{
    height: 50px;
	padding: 23px 0 0 0;
    font-family: "HelveticaLTPro-LightCond";
    font-size: 60rem;
    color: #002352;
    display: table-cell;
    vertical-align: bottom;
}
}

#roomplan .plan dt.layout span{
    font-size: 30rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
#roomplan .plan dt.layout span{
    font-size: 36rem;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#roomplan .plan dl{
    width: 480px;
    margin: 36px 0 0 0;
}
#roomplan .plan dl.small,
#roomplan .plan dl.small dl{
    width: 440px;
    margin: 36px 0 0 0;
}
}

#roomplan .plan dd.space dl{
    margin: 10px auto 0;
    padding: 8px 0 1px 0;
    font-size: 12rem;
    line-height: 18rem;
    border-top: dotted 1px #005169;
    border-bottom: dotted 1px #005169;
    /*position: absolute;
    left: 0;
    right: 0;
    bottom: 12px;*/
}
@media print, screen and (min-width: 768px) {/*PC*/
#roomplan .plan dd.space dl{
    margin: 15px auto 0;
    padding: 10px 0 3px 0;
    font-size: 13rem;
    line-height: 21rem;
}
}

#roomplan .plan dd.space dt{
	padding: 1px 0 0 0;
    font-family: "NewCezannePro-DB";
    font-weight: bold;
    float: left;
}
#roomplan .plan dd.space dt:nth-last-of-type(1){
    padding: 7px 0 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#roomplan .plan dd.space dt:nth-last-of-type(1){
	padding: 10px 0 0 0;
}
}

#roomplan .plan dd.space dd{
	padding: 2px 0 0 0;
	font-size: 16rem;
    font-family: "HelveticaNeueLTPro-MdCn";
    text-align: right;
}
@media print, screen and (min-width: 768px) {/*PC*/
#roomplan .plan dd.space dd{
	font-size: 18rem;
}
}

#roomplan .plan dd.space dd small{
    font-size: 12rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
#roomplan .plan dd.space dd small{
    font-size: 13rem;
}
}

#roomplan .plan dd.space dd b{
    font-size: 24rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
#roomplan .plan dd.space dd b{
    font-size: 28rem;
}
}

#roomplan .plan dd.space dd:nth-last-of-type(1){
    padding: 6px 0 0 0;
    border-top: dotted 1px #005169;
}
@media print, screen and (min-width: 768px) {/*PC*/
#roomplan .plan dd.space dd:nth-last-of-type(1){
    margin: 2px 0 0 0;
}
}

#roomplan .plan dd.note{
    margin: 5px 0 0 0;
    font-size: 10rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
#roomplan .plan dd.note{
    margin: 3px 0 0 0;
    text-align: right;
}
}

#roomplan .plan figure{
    margin: 40px 0 35px 0;
    padding: 0 0 10px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#roomplan .plan figure{
    width: 550px;
}
}

#roomplan .plan figure img{
    width: 100%;
}


@media print, screen and (min-width: 768px) {/*PC*/
#roomplan .plan ul.feature{
    width: 480px;
    margin: 0 0 5px 0;
}
#roomplan .plan .small ul.feature{
    width: 440px;
}
}

#roomplan .plan ul.feature li{
    margin: 8px 0 0 11px;
    padding: 0 0 0 2px;
    line-height: 18rem;
    /*letter-spacing: -0.5rem;*/
    position: relative;
}
@media print, screen and (min-width: 768px) {/*PC*/
#roomplan .plan ul.feature li{
    margin: 10px 0 0 11px;
    font-size: 14rem;
    line-height: 20rem;
}
}

#roomplan .plan ul.feature li:before{
    content: url(../img/common_img/ic_sq.png);
    position: absolute;
    top: 0px;
    left: -10px;
}
@media print, screen and (min-width: 768px) {/*PC*/
#roomplan .plan ul.feature li:before{
    content: url(../img/common_img/ic_sq.png);
    position: absolute;
    top: 0px;
    left: -10px;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#roomplan .plan div{
    width: 480px;
    position: absolute;
    top: 255px;
}
#roomplan .plan div.small{
    width: 380px;
    position: absolute;
    top: 280px;
}
}

#roomplan .plan ul.point{
    margin: 20px 0 0 0;
}

#roomplan .plan ul.point li{
    width: 100%;
    margin: 9px 0 0 0;
    padding: 5px 0 0;
    background-color: #d9e5e9;
    font-size: 15rem;
    line-height: 18rem;
    letter-spacing: 3rem;
    color: #005169;
    text-align: center;
}

#roomplan .plan aside.link{
    width: 100%;
    margin: 30px 0 0 0;
    display: flex;
    justify-content: space-between;
    border-top: solid #919fb0 1px;
}
@media print, screen and (min-width: 768px) {/*PC*/
#roomplan .plan aside.link{
    margin: 0 0 0 0;
}
}

#roomplan .plan aside.link a{
    color: #002352;
}

#roomplan .plan aside.link .prev,
#roomplan .plan aside.link .next{
    font-family: "HelveticaNeueLTPro-BdCn";
    font-size: 11rem;
    background-size: 12.5px 22px;
    background-repeat: no-repeat;
}

#roomplan .plan aside.link .prev b,
#roomplan .plan aside.link .next b{
    font-size: 15rem;
}

#roomplan .plan aside.link .prev{
    padding: 10px 0 0 15px;
    background-image: url(../img/common_img/ic_prev.png);
    background-position: left 9px;
}

#roomplan .plan aside.link .next{
    padding: 10px 14px 0 0;
    background-image: url(../img/common_img/ic_next.png);
    background-position: right 9px;
}

#roomplan .plan aside.link .back{
    padding: 10px 0 10px 0;
    background-image: url(../img/common_img/ic_back.png);
    background-size: 22px 12.5px;
    background-position: center bottom;
    background-repeat: no-repeat;
}


/*/// 物件概要 ///*/
#outline article dl{
    margin: 35px 0 0 0;
    }
@media print, screen and (min-width: 768px) {/*PC*/
#outline article dl{
    margin: 80px 0 0 0;
    display: flex;
    flex-wrap: wrap;
    }
}

#outline article dt{
    padding: 0 0 5px 0;
    font-weight: bold;
    line-height: 18rem;
    background-image: url(../img/common_img/hr_table.png);
    background-position: -148px bottom;
    background-size: auto 2px;
    background-repeat: no-repeat;
    }
@media print, screen and (min-width: 768px) {/*PC*/
#outline article dt{
    width: 140px;
    margin: 0 0 25px 0;
    padding: 0 0 5px 10px;
	background-size: auto 4px;
    background-position: 0 bottom;
	font-weight: normal;
	font-family: "NewCezannePro-DB";
    }
}

#outline article dd{
    padding: 2px 0 20px 0px;
    line-height: 18rem;
    }
    
@media print, screen and (min-width: 768px) {/*PC*/
#outline article dd{
    width: calc(100% - 164px);
    margin: 0 0 25px 0;
    padding: 0 0 3px 14px;
    background-image: url(../img/common_img/hr_table.png);
    background-position: right bottom;
    background-size: 200% 1px;
    background-repeat: repeat-x;
    }
}


/*/// 敷地計画 ///*/
@media print, screen and (min-width: 768px) {/*PC*/
#landplan main{
    position: relative;
}
}

#landplan main h3{
    font-size: 26rem !important;
    letter-spacing: 2rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
#landplan main h3{
    font-size: 34rem !important;
    text-align: left !important;
    position: absolute;
    top: 220px;
    left: calc(50% - 475px);
    z-index: 99;
}
}

#landplan main h3 strong{
    margin: 12px auto 17px;
    font-size: 30rem;
    text-align: center;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
#landplan main h3 strong{
    margin: 18px auto 17px;
    font-size: 40rem;
    text-align: left !important;
}
}

#landplan p.lead{
    margin: 0 23px;
    padding: 12px 0 0 0;
    font-size: 16rem;
    letter-spacing: 2rem;
    text-align: center;
    font-family: "MatissePro-M";
    border-top: solid 1px #002352;
}
@media print, screen and (min-width: 768px) {/*PC*/
#landplan p.lead{
    width: 340px;
    margin: 0;
    font-size: 20rem;
    line-height: 38rem;
    text-align: left;
    white-space: nowrap;
    position: absolute;
    top: 368px;
    left: calc(50% - 475px);
    z-index: 99;
}
}

#landplan main h3.lead{
    margin: 0 23px;
    padding: 40px 0 12px 0;
    font-size: 16rem !important;
    letter-spacing: 1rem;
    text-align: center;
    font-family: "MatissePro-M";
}
@media print, screen and (min-width: 768px) {/*PC*/
#landplan main h3.lead{
    width: 340px;
    margin: 0;
    padding: 0;
    font-size: 20rem !important;
    line-height: 38rem !important;
    text-align: left;
    white-space: nowrap;
    position: absolute;
    top: 230px;
    left: calc(50% - 475px);
    z-index: 99;
}
}

#landplan figure.top {
    position: relative;
}
@media print, screen and (min-width: 768px) {/*PC*/
#landplan figure.top {
    width: 1050px;
    margin: 20px auto 0;
}
}

#landplan figure img,
#landplan .ph img{
    width: 100%;
}

#landplan figure .ic{
    position: absolute;
    width: 28vw;
    top: 9vw;
    left: 12vw;
    
}
@media print, screen and (min-width: 768px) {/*PC*/
#landplan figure .ic{
    width: 208px;
    top: 220px;
    left: 50px;
}
}

#landplan ul.point{
    margin: 18px 23px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#landplan ul.point{
    width: 355px;
    margin: 0;
    position: absolute;
    top: 600px;
    left: calc(50% - 475px);
}
}

#landplan ul.point li{
    margin: 8px 0 0;
    padding: 4px 0;
    font-size: 16rem;
    color: #ffffff;
    text-align: center;
    border-radius: 3px;
    background-color: #5f98c1;
}
@media print, screen and (min-width: 768px) {/*PC*/
#landplan ul.point li{
    margin: 15px 0 0;
    height: 35px;
    padding: 13px 0 0 20px;
    font-size: 22rem;
    line-height: 22rem;
    text-align: left;
    background-image: url(../img/landplan_img/bg_blue.jpg);
    background-size: 100% auto;
    background-repeat: repeat-y;
}
}
#landplan ul.point li.note{
    margin: 2px 0 0 0;
    font-size: 10rem;
    letter-spacing: -1rem;
    white-space: nowrap;
    color: #5f98c1;
    background-color: inherit;
}
@media print, screen and (min-width: 768px) {/*PC*/
#landplan ul.point li.note{
    background-image: none;
    margin: -3px 0 0 0;
    padding: 0 0 0 18px;
    left: 0;
    letter-spacing: 0rem;
}
}

#landplan ul.point li small{
    font-size: 10rem;
    line-height: 10rem;
    vertical-align: super;
}

#landplan .feature {
    margin: 18px 23px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#landplan .feature {
    width: 570px;
    margin: 0 auto;
    padding: 0 0 0 480px;
    position: relative;
}
}

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

#landplan .feature dt{
    margin: 50px 0 6px;
    padding: 5px 0;
    font-size: 15rem;
    line-height: 15rem;
    color: #ffffff;
    text-align: center;
    border-radius: 2px;
    background-color: #002352;
}
@media print, screen and (min-width: 768px) {/*PC*/
#landplan .feature dt{
    width: 100%;
    padding: 5px 0;
    
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#landplan .feature .txt{
    width: 270px;
    margin: 9px 0 0 0;
}
#landplan .feature .road .txt{
    width: 100%;
}
#landplan .pet .txt{
    width: 200px;
}
}


#landplan .feature .ph{
    margin: 9px 0 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#landplan .feature .ph{
    width: 277px;
    margin: 15px 0 0 0;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#landplan .feature .road{
    width: 400px;
    position: absolute;
    top: 0;
    left: 0;
}
}

#landplan .feature .road .ph{
    width: 95%;
    padding: 0 0 0 5%;
}

#landplan .feature .parking .txt{
    font-size: 15rem;
}

#landplan .feature .parking .txt strong{
    margin: 5px 0 0 0;
    color: ##002352;
    display: block;
}

#landplan .feature .pet .txt{
    letter-spacing: 0.75rem;
}

#landplan .feature .pet .ph{
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}
@media print, screen and (min-width: 768px) {/*PC*/
#landplan .feature .pet .ph{
    width: 367px;
    margin: 15px 0 0 0;
}
}

#landplan .feature .pet .ph figure.image{
    width: 54%;
}

#landplan .feature .pet .ph figure.foot{
    width: 43%;
}

@media print, screen and (min-width: 768px) {/*PC*/
#landplan .feature .pet .ph figure.image figcaption{
    letter-spacing: 0;
}
}

#landplan .feature .pet .ph figure.foot figcaption{
    padding: 5px 5px 4px;
    line-height: 13rem;
    letter-spacing: 0;
    text-align: center;
    color: #ffffff;
    background-color: #000000;
}

#landplan .feature .pet .ph figure.foot figcaption small{
    font-size: 10rem;
    line-height: 12rem;
    text-align: center;
    display: block;
}


/*/// デザイン ///*/
#design article{
    margin: 30px 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#design article{
    margin: 35px auto 0 !important;
}
}

#design article figure img{
    width: 100%;
    margin: 10px 0 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#design article figure{
    margin: 45px 0 0 0;
}
}

#design article section div{
    width: 330px;
    margin: auto;
}
@media print, screen and (min-width: 768px) {/*PC*/
#design article section div{
    display: flex;
    flex-direction: column;
}
#design article section.view div{
    width: 530px;
    display: block;
    position: absolute;
    right: 0;
    bottom: -230px;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#design article .exterior h4,
#design article .exterior h5,
#design article .exterior p,
#design article .entrance h4,
#design article .entrance h5,
#design article .entrance p{
    text-align: right;
}
#design article .approach h4,
#design article .approach h5,
#design article .approach p{
    text-align: left;
}
}

#design article h4{
    padding: 70px 0 8px 0;
    font-family: "HelveticaNeueLTPro-Roman";
    font-size: 30rem;
    color: #002352;
    /*text-align: center;*/
    border-bottom: solid 1px #002352;
}
#design article .exterior h4{
    padding: 45px 0 8px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#design article h4{
    width: 100%;
    margin: 40px 0 0 0;
    padding: 0 0 15px 0;
    font-size: 42rem;
    border-bottom: solid 2px #002352;
    order: 1;
}
}

#design article h5{
    width: 100%;
    padding: 15px 0 10px;
    font-family: "MatissePro-M";
    font-size: 15rem;
    line-height: 24rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
#design article h5{
    padding: 0 0 12px 0;
    font-size: 22rem;
    line-height: 24rem;
}
}

#design article .view h5{
    font-size: 19rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
#design article .view h5{
    font-size: 22rem;
}
}

#design article p{
    width: 100%;
    padding: 0 0 20px;
    font-family: "MatissePro-M";
    font-size: 12rem;
    line-height: 22rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
#design article p{
    font-size: 13rem;
    line-height: 26rem;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#design article section{
    padding: 80px 0 0 0;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    flex-wrap: wrap;
    position: relative;
}
#design article section.view{
    padding: 0;
    display: block;
}
#design article section.exterior{
    padding: 60px 0 0 0;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#design article .exterior div{
    width: 610px;
    margin: 0;
}
}

#design article .exterior figure{
    width: 75%;
    margin: auto;
    padding: 25px 0 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#design article .exterior figure{
    width: 410px;
    margin: -10px 0 0 0;
    order: -1;
}
}

#design article .exterior dl{
    margin: 23px 23px 0;
    background-image: url(../img/design_img/ph_designer.jpg);
    background-size: 84px;
    background-position: right 33px;
    background-repeat: no-repeat;
}
@media print, screen and (min-width: 768px) {/*PC*/
#design article .exterior dl{
    width: 400px;
    margin: 0 60px 0 0;
    padding: 0 0 0 130px;
    background-image: url(../img/design_img/ph_designer.jpg);
    background-size: 120px;
    background-position: left 8px;
    background-repeat: no-repeat;
    position: absolute;
    right: 0;
    bottom: 100px;
}
}

#design article .exterior dt{
    font-family: "HelveticaNeueLTPro-Roman";
    font-size: 18rem;
    line-height: 30rem;
}

#design article .exterior dd{
    font-size: 11rem;
    line-height: 18rem;
    letter-spacing: -1rem;
}

#design article .exterior dd.txt{
    width: calc(100% - 92px);
}
@media print, screen and (min-width: 768px) {/*PC*/
#design article .exterior dd.txt{
    width: auto;
}
}

#design article .exterior dd.name{
    margin: 10px 0 0 0;
}

#design article .exterior dd.name strong{
    font-family: "MatissePro-M";
    font-size: 16rem;
}

@media print, screen and (min-width: 768px) {/*PC*/
#design article .approach div{
    width: 410px;
    margin: 0;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#design article .approach figure.sub{
    width: 610px
    
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#design article .entrance div{
    width: 500px;
    margin: 0;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#design article .entrance figure.sub{
    width: 520px;
    order: -1;
    
}
}

#design article .entrance img{
    height: 57vw;
    object-fit: cover;
}
@media print, screen and (min-width: 768px) {/*PC*/
#design article .entrance img{
    height: auto;
}
}


/*/// 居住空間 ///*/
#inner main figure{
    position: relative;
}

#inner main figcaption{
    position: absolute;
    font-family: "HelveticaNeueLTPro-BdCn";
    color: #ffffff;
}
#inner .top figcaption{
    right: 7px;
    bottom: 2px;
}
@media print, screen and (min-width: 768px) {/*PC*/
#inner .top .atype figcaption{
    right: 7px;
    top: 2px;
}
}
#inner .inner figcaption{
    left: 7px;
    bottom: 2px;
}
#inner .inner .bal figcaption,
#inner .inner .kid figcaption,
#inner .inner .ent figcaption{
    left: 7px;
    top: 2px;
}

#inner .inner .ent figcaption.op{
    margin: auto;
    padding: 2px 1px;
    position: absolute;
    top: inherit;
    bottom: 4px;
	font-family: "NewCezanneProN-M";
    font-size: 12rem;
    line-height: 12rem;
    letter-spacing: 0;
    text-align: center;
    border: solid 1px rgba(255, 255, 255, 0.8);
    box-sizing: border-box;
}
@media print, screen and (min-width: 768px) {/*PC*/
#inner .inner .ent figcaption.op{
    padding: 2px 8px;
    bottom: 6px;
}
}

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

#inner .top figure{
    margin: 0 -23px;
}
@media print, screen and (min-width: 768px) {/*PC*/
#inner .top figure{
    margin: 0 0 70px;;
}
#inner .top figure.atype{
    width: 824px;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#inner .top figure.etype img{
    height: 680px;
    object-fit: cover;
}
}

#inner .top .txt_e{
    margin: 7px 0 40px -7px;
}
@media print, screen and (min-width: 768px) {/*PC*/
#inner .top .txt_e{
    margin: 0;
    position: absolute;
    top: 570px;
    left: 28px;
    z-index: 999;
    color: #ffffff;
}
}

#inner .top .txt_a{
    margin: 7px -7px 40px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#inner .top .txt_a{
    margin: 0;
    position: absolute;
    top: 1150px;
    left: 360px;
    z-index: 999;
    color: #ffffff;
}
}

#inner .top h4{
    font-family: "HelveticaNeueLTStd-Lt";
    font-size: 24rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
#inner .top h4{
    font-family: "HelveticaNeueLTPro-Roman";
    font-size: 42rem;
	line-height: 44rem;
    margin: 0 0 5px 0;
}
}

#inner .top p{
    font-family: "MatissePro-M";
    line-height: 18rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
#inner .top p{
    font-size: 14rem;
    line-height: 20rem;
}
}

#inner .top .txt_a h4{
    text-align: right;
}

#inner .top .txt_a p{
    margin: 0 -8rem 0 0;
    text-align: right;
}

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

@media print, screen and (min-width: 768px) {/*PC*/
#inner .living div{
    order: -2;
}
}

#inner .living figure{
    margin: 60px -23px 20px;
}
@media print, screen and (min-width: 768px) {/*PC*/
#inner .living figure{
    height: 700px;
    margin: 0 0 135px;
}
#inner .living figure img{
    height: 700px;
}
}

#inner .living h3,
#inner .inner h3{
    width: 100%;
    margin: 22px 0 5px 0;
    font-family: "HelveticaNeueLTPro-Roman";
    font-size: 30rem;
    line-height: 30rem;
    color: #002352;
    border-bottom: solid 1px #002352;
}
@media print, screen and (min-width: 768px) {/*PC*/
#inner .living h3{
    width: auto;
    margin: 0 0 25px 0;
    padding: 0 0 5px 0;
    font-size: 42rem;
	line-height: 44rem;
    text-align: left;
    display: inline-block;
}
#inner .inner h3{
    margin: 0 0 25px 0;
    padding: 0 0 5px 0;
    font-size: 42rem;
	line-height: 44rem;
    text-align: left;
}
}

#inner .living h4,
#inner .inner h4{
    margin: 0 0 7px 0;
    font-family: "MatissePro-M";
    font-size: 16rem;
    line-height: 16rem;
    text-align: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
#inner .living h4{
    width: auto;
    margin: 0 0 20px 0;
    font-size: 22rem;
    text-align: left;
}
#inner .inner h4{
    width: 100%;
    margin: 0 0 20px 0;
    font-size: 22rem;
    text-align: left;
}
}

#inner .living p{
    font-family: "MatissePro-M";
    line-height: 24rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
#inner .living p{
    line-height: 28rem;
}
}

#inner .living dl{
    margin: 30px 0 70px;
}
@media print, screen and (min-width: 768px) {/*PC*/
#inner .living dl{
    width: 440px;
    margin: 0 0 20px 0;
    order: -1;
}
}

#inner .living dt{
    font-family: "NewCezannePro-DB";
    font-size: 14rem;
}

#inner .living dd.txt{
    font-size: 12rem;
    line-height: 20rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
#inner .living dd.txt{
    letter-spacing: 0;
}
}

#inner .living dd.ph img{
    width: 100%;
}

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

#inner .inner figure{
    margin: 0 0 10px 0;
}

@media print, screen and (min-width: 768px) {/*PC*/
#inner .inner figure.bal,
#inner .inner figure.kid{
    width: 400px;
    height: 370px;
    margin: 0;
}
}

#inner .inner figure.bal img,
#inner .inner figure.kid img{
    width: calc(100vw - 46px);
    height: 66vw;
    object-fit: cover;
}
@media print, screen and (min-width: 768px) {/*PC*/
#inner .inner figure.bal img,
#inner .inner figure.kid img{
    width: 100%;
    height: auto;
    margin: 0;
}
}

#inner .inner figure.ent{
    width: 50%;
    margin: 15px 0 30px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#inner .inner figure.ent{
    width: 210px;
    height: 370px;
    margin: 0;
}
}

#inner .inner figure.dre,
#inner .inner figure.bed{
    margin: 10px -23px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#inner .inner figure.bed{
    margin: 0;
}
#inner .inner figure.dre{
    width: 726px;
    margin: 70px 0 30px;
}
}

#inner .inner p{
    width: calc(50% - 20px);
    margin: 10px 20px 0 0;
    font-family: "MatissePro-M";
}
@media print, screen and (min-width: 768px) {/*PC*/
#inner .inner p{
    width: 100%;
    margin: 0 0 25px 0;
    order: -1;
}
}


/*/// メニュープラン ///*/
#menuplan main>.title h2 strong{
    position: relative;
}
#menuplan main>.title h2 strong em{
    width: 150px;
    display: flex;
    position: absolute;
    top: -9px;
    left: 0;
    right: 0;
    margin: auto;
}
@media print, screen and (min-width: 768px) {/*PC*/
#menuplan main>.title h2 strong em{
    width: 198px;
    margin: 0;
    top: 16px;
    left: 145px;
}
}

#menuplan main>.title h2 strong em span{
    font-size: 11rem;
    line-height: 11rem;
    font-style: normal;
    color: #ffffff;
    text-align: center;
}
#menuplan main>.title h2 strong em span:nth-child(1){
    width: 50%;
    padding: 3px 0 2px;
    letter-spacing: 2rem;
    background-color: #666666;
}
#menuplan main>.title h2 strong em span:nth-child(2){
    width: calc(48% - 10rem);
    padding: 3px 0 2px 10rem;
    letter-spacing: 10rem;
    background-color: #b8452a;
}

#menuplan .lead{
    margin: 0 0 -30px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#menuplan .lead{
    position: relative;
}
}
#menuplan .lead h3{
    margin: 35px 0 0 0;
    text-align: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
#menuplan .lead h3{
    font-size: 24rem;
    letter-spacing: 2rem;
    text-align: left;
}
}

#menuplan .lead p{
    margin: 18px 0 28px 0;
    letter-spacing: -1rem;
}

@media print, screen and (min-width: 768px) {/*PC*/
#menuplan .lead p{
    margin: 16px 0 50px 0;
    font-size: 14rem;
    line-height: 28rem;
}
}

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

#menuplan .lead .step dl{
    margin: 0 0 20px 0;
    display: flex;
    flex-wrap: wrap;
    position: relative;
    background-color: #f3f3f3;
}
@media print, screen and (min-width: 768px) {/*PC*/
#menuplan .lead .step dl{
    width: 230px;
    margin: 0;
}
}

#menuplan .lead .step dl::after{
    content: '';
    position: absolute;
    bottom: -20px;
    left: 0;
    right: 0;
    width: 30px;
    height: 20px;
    margin: auto;
    background-image: url(../img/common_img/bg_tri_sp.png);
    background-size: 19px 15px;
    background-position: center top;
    background-repeat: no-repeat;
}
@media print, screen and (min-width: 768px) {/*PC*/
#menuplan .lead .step dl::after{
    content: '';
    position: absolute;
    bottom: 100px;
    right: -252px;
    width: 22px;
    height: 28px;
    background-image: url(../img/common_img/bg_tri_pc.png);
    background-size: 22px 28px;
    background-position: left center;
}
}

#menuplan .lead .step dl:last-child::after{
    content: none;
}

#menuplan .lead .step dt.tt{
    padding: 20px 0 0 115px;
    font-size: 16rem;
    line-height: 16rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
#menuplan .lead .step dt.tt{
    height: 18rem;
    margin: 0;
    padding: 20px 10px 10px 19px;
    font-size: 17rem;

}
}

#menuplan .lead .step dt.num{
    font-family: "HelveticaNeueLTPro-MdCn";
    font-size: 24rem;
    line-height: 90rem;
    color: #999999;
    position: absolute;
    top: 18px;
    left: 10px;
}
@media print, screen and (min-width: 768px) {/*PC*/
#menuplan .lead .step dt.num{
	font-family: "HelveticaNeueLTPro-Roman";
	ont-size: 18rem;
    line-height: 82rem;
    top: inherit;
    left: inherit;
    bottom: 12px;
    right: 10px;
}
}

#menuplan .lead .step dt.num b{
    font-family: "HelveticaLTPro-LightCond";
    font-size: 100rem;
    vertical-align: -28px;
}
@media print, screen and (min-width: 768px) {/*PC*/
#menuplan .lead .step dt.num b{
	font-family: "HelveticaNeueLTPro-Roman";
    vertical-align: -25px;
}
}

#menuplan .lead .step dd.txt{
    min-height: 75px;
    padding: 6px 5px 0 115px;
    line-height: 20rem;
    letter-spacing: 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#menuplan .lead .step dd.txt{
    width: calc(100% - 18px);
    min-height: 150px;
    padding: 0 0 0 18px;
    line-height: 23rem;
}
}

#menuplan .lead .step dd.fee{
    width: 100%;
    height: 28px;
    background-color: #999999;
}
@media print, screen and (min-width: 768px) {/*PC*/
#menuplan .lead .step dd.fee{
    order: 2;
}
}

#menuplan .lead .step dd.fee span{ 
    padding: 2px 0 0px 0;
    color: #ffffff;
    font-size: 10rem;
    line-height: 24rem;
    text-align: center;
    display: block;
}

#menuplan .lead .step dd.fee span strong{
    margin: 0 0 0 5rem;
    font-size: 18rem;
    letter-spacing: 12rem;
    vertical-align: top;
}
#menuplan .lead .step dl:nth-child(3) dd.fee span strong{
	padding: 0 0 0 8rem;
}

#menuplan .lead .step .last{
    margin: 0;
}

#menuplan .lead .step .last dd{
    width: 100%;
    padding: 40px 0 36px;
    font-size: 16rem;
    line-height: 28rem;
    text-align: center;
    color: #ffffff;
    background-color: #99a7ba;
}
@media print, screen and (min-width: 768px) {/*PC*/
#menuplan .lead .step .last dd{
    width: 230px;
    padding: 90px 0 0 0;
}
}

#menuplan .lead .note{
    margin: 5px 0 0 10rem;
}

#menuplan .lead .note li{
    margin: 0 0 5px 0;
}

#menuplan .lead .note li::first-letter{
    margin: 0 0 0 -10rem;
}

#menuplan main section{
    margin: 80px 0 0;
}
#menuplan main section.fig_e{
    margin: 58px 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#menuplan main section{
    margin: 55px 0 0;
    overflow: hidden;
}
#menuplan main section.fig_e{
    margin: 30px 0 0;
}
}

#menuplan .type .tt{
    padding: 0 0 2px 0;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    background-image: url(../img/common_img/ln_dot.png);
    background-size: auto 1px;
    background-position: center bottom;
    background-repeat: repeat-x;
}
@media print, screen and (min-width: 768px) {/*PC*/
#menuplan .type .tt{
    margin: 50px 0 15px;
    justify-content: flex-start;
    border-bottom: solid 1px #002352;
    background-image: none;
}
}

#menuplan .tt h4{
    font-size: 84rem;
    line-height: 24rem;
    font-family: "HelveticaNeueLTPro-BdCn";
    color: #002352;
}

@media print, screen and (min-width: 768px) {/*PC*/
#menuplan .tt h4{
    line-height: 18rem;
}
#menuplan .tt h4 b{
    background-color: #ffffff;
    padding: 0 8px 0 0;
    vertical-align: -6rem;
}
#menuplan .fig_e1 .tt h4 b{
    padding: 0;
}
}

#menuplan .tt h4 small{
    font-size: 32rem;
    margin: 0 0 0 2px;
}
#menuplan .fig_c1 .tt h4 small,
#menuplan .fig_d1 .tt h4 small{
    font-size: 17rem;
    margin: 0;
}

#menuplan .tt .space{
    margin: 0 0 0 0;
    min-width: 145px;
    font-size: 11rem;
    line-height: 16rem;
    color: #1a1a1a;
}
#menuplan .fig_e .tt .space{
    min-width: 177px;
}
@media print, screen and (min-width: 768px) {/*PC*/
#menuplan .tt .space{
    margin: 0 0 -3px 37px;
    min-width: 172px;
    font-size: 14rem;
    line-height: 16rem;
}
#menuplan .fig_e .tt .space{
    min-width: 215px;
}
}



#menuplan .tt .space dt{
	padding: 2px 0 0 0;
    float: left;
}
#menuplan .fig_e .tt .space dt:nth-child(3){
    padding: 3px 0 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#menuplan .fig_e .tt .space dt:nth-child(3){
    padding: 3px 0 0 0;
}
}

#menuplan .tt .space dt.tp{
	padding: 10px 0 0 0;
}


#menuplan .tt .space dd{
	padding: 4px 0 0 0;
	font-size: 18rem;
    font-family: "HelveticaNeueLTPro-MdCn";
    text-align: right;
}


#menuplan .tt .space dd small{
	margin: 0 0 0 2px;
    font-size: 12rem;
	font-weight: bold;
}


#menuplan .tt .space dd b{
    font-size: 24rem;
    line-height: 24rem;
}

#menuplan .type .ic{
    display: none;
    
}
@media print, screen and (min-width: 768px) {/*PC*/
#menuplan .type{
    position: relative;
}
#menuplan .type .ic{
    width: 54px;
    height: 65px;
    position: absolute;
    top: 440px;
    left: 318px;
    display: block;
}
#menuplan .fig_e .ic,
#menuplan .fig_e1 .ic{
    top: 480px;
    left: 498px;
}
}

#menuplan .type ul.fig{
}
@media print, screen and (min-width: 768px) {/*PC*/
#menuplan .type ul.fig{
    display: flex;
    justify-content: space-between;
}
}

#menuplan .type .fig>li{
    width: 100%;
    padding: 0 0 10px 0;
    display: block;
}

@media print, screen and (min-width: 768px) {/*PC*/
#menuplan .type .fig>li{
    width: 330px;
    padding: 20px 0 18px;
    background-size: 54px 73px;
    background-position: 15px 22px;
    background-repeat: no-repeat;
    position: relative;
}
#menuplan .fig_e .fig>li,
#menuplan .fig_e1 .fig>li{
    width: 510px;
}
}
#menuplan .type .fig>li:nth-child(1){
    background-color: #f3f3f3;
}
#menuplan .type .fig>li:nth-child(2),
#menuplan .type .fig>li:nth-child(3){
    background-color: #e0e4ea;
}
@media print, screen and (min-width: 768px) {/*PC*/
#menuplan .type .fig>li:nth-child(1){
    background-image: url(../img/menu_img/tt_basic.png);

}
#menuplan .type .fig>li:nth-child(2){
    background-image: url(../img/menu_img/tt_menu1.png);
	background-color: #e8e8e8;
}
#menuplan .type .fig>li:nth-child(3){
    background-image: url(../img/menu_img/tt_menu2.png);
	background-color: #e8e8e8;
}
#menuplan .fig_c .fig>li:nth-child(3),
#menuplan .fig_e .fig>li:nth-child(3),
#menuplan .fig_e1 .fig>li:nth-child(3){
    background-image: none;
    background-color: #f0f4f9;
}
}

#menuplan .type .fig>li img{
    width: 100%;
    height: auto;
}
@media print, screen and (min-width: 768px) {/*PC*/
#menuplan .fig_e .fig>li img,
#menuplan .fig_e1 .fig>li img{
    width: calc(100% - 70px);
    margin: 0 35px;
}
#menuplan .type .fig>li img.logo{
    width: 70px;
    margin: auto;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    opacity: 0.4;
}
}


#menuplan .type .fig>li h5{
    margin: 0 15px 10px;
    padding: 15px 0 3px 0;
    font-family: "HelveticaLTPro-LightCond";
    font-size: 40rem;
    line-height: 40rem;
    color: #4d4d4d;
    text-align: center;
    background-image: url(../img/common_img/ln_dot.png);
    background-size: auto 1px;
    background-position: center bottom;
    background-repeat: repeat-x;
}
@media print, screen and (min-width: 768px) {/*PC*/
#menuplan .type .fig>li h5{
    width: calc(100% - 90px);
    margin: 0 15px 30px 75px;
    padding: 0 0 1px 3px;
    font-size: 39rem;
    line-height: 39rem;
	letter-spacing: 1rem;
    font-weight: normal;
    color: #002352;
    text-align: left;
    border-bottom: solid 1px #99a7ba;
    background-image: none;
}
#menuplan .type .fig>li:first-child h5{
    color: #4d4d4d;
    border-bottom: solid 1px #b3b3b3;
}
}

#menuplan .type .fig>li h5 strong{
    display: none;
}
@media print, screen and (min-width: 768px) {/*PC*/
#menuplan .type .fig>li h5 strong{
    display: block;
    margin: 0 0 13px 0;
    padding: 3px 0 2px 3px;
    font-family: "NewCezanneProN-M";
    font-size: 15rem;
    line-height: 15rem;
    border-bottom: solid 1px #99a7ba;
}
#menuplan .type .fig>li:first-child h5 strong{
    border-bottom: solid 1px #b3b3b3;
}
}

#menuplan .type .fig>li ul{
    margin: 15px 15px 0;
    border-top: solid 1px #002352;
}
@media print, screen and (min-width: 768px) {/*PC*/
#menuplan .type .fig>li ul{
    margin: 20px 15px 2px;
}
}

#menuplan .type .fig>li dt{
    font-family: "HelveticaNeueLTPro-BdCn";
    font-size: 14rem;
    line-height: 16rem;
    color: #002352;
    text-align: center;
    border-bottom: solid 1px #002352;
}

#menuplan .type .fig>li li{
    margin: 5px 0 0 15rem;
    line-height: 15rem;
    letter-spacing: 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#menuplan .type .fig>li li{
    margin: 7px 0 0 15rem;
}
}

#menuplan .type .fig>li li::first-letter{
    margin: 0 2rem 0 -15rem;
    color: #99a7ba;
}

#menuplan .note{
    line-height: 10rem;
    font-size: 10rem !important;
}


#menuplan .type .button{
    display: flex;
    justify-content: space-between;
    margin: 6px 0 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#menuplan .type .button{
    display: none;
}
}

#menuplan .type .button li{
    width: 33%;
}
#menuplan .fig_c .button li:nth-child(3) a,
#menuplan .fig_e .button li:nth-child(3) a,
#menuplan .fig_e1 .button li:nth-child(3) a{
    display: none;
}

#menuplan .type .button a{
    padding: 6px 0 4px;
    display: block;
}
#menuplan .type .button .btn0{
    background-color: #cccccc;
}
#menuplan .type .button .btn1,
#menuplan .type .button .btn2{
    background-color: #002352;
}

#menuplan .type .button .basic .active{
    background-color: #f3f3f3;
}
#menuplan .type .button .basic img{
    filter: none;
}
/*#menuplan .type .button .btn0 img{
    filter: brightness(1000%);
}*/
#menuplan .type .button .menu img{
    filter: brightness(10000%) saturate(0%) contrast(200%);
}
#menuplan .type .button .menu .active{
    background-color: #e0e4ea;
}
#menuplan .type .button .menu .active img{
    filter: none;
}

#menuplan .type .button li img{
    width: 84px;
    height: 52px;
    margin: auto;
    display: block;
}

#menuplan .type p{
    display: block;
    width: 200px;
    margin: 1px auto;
    font-size: 11rem !important;
    line-height: 16rem;
    color: #ffffff;
    text-align: center;
    background-color: #99a7ba;
}
#menuplan .type p::before{
    content: "";
    display: block;
    height: 11px;
    line-height: 0;
    background-color: #e0e4ea;
    background-image: url(../img/menu_img/bg_tri_pop.png);
    background-size: 14px 11px;
    background-position: center top;
    background-repeat: no-repeat;
}
#menuplan .type li:first-child p::before{
    background-color: #f3f3f3;
}
@media print, screen and (min-width: 768px) {/*PC*/
#menuplan .type p{
    display: none;
}
}

#menuplan .notice2{
    margin: 30px 0 0 0;
    border-top: solid 1px #999999;
    border-bottom: solid 1px #999999;
    line-height: 14rem;
}
#menuplan .notice2 li{
    margin: 8px 0 8px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#menuplan .notice2{
    width: 100%;
    margin: 30px 0 0 0;
    display: flex;
}
#menuplan .notice2 li{
    margin: 4px 12px 4px 0;
}
}

/*/// セレクトプラン ///*/
#select main>.title h2 strong{
    position: relative;
}
#select main>.title h2 strong em{
    width: 150px;
    display: flex;
    position: absolute;
    top: -9px;
    left: 0;
    right: 0;
    margin: auto;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select main>.title h2 strong em{
    width: 198px;
    margin: 0;
    top: 16px;
    left: 145px;
}
}

#select main>.title h2 strong em span{
    font-size: 11rem;
    line-height: 11rem;
    font-style: normal;
    color: #ffffff;
    text-align: center;
}
#select main>.title h2 strong em span:nth-child(1){
    width: 50%;
    padding: 3px 0 2px;
    letter-spacing: 2rem;
    background-color: #666666;
}
#select main>.title h2 strong em span:nth-child(2){
    width: calc(48% - 10rem);
    padding: 3px 0 2px 10rem;
    letter-spacing: 10rem;
    background-color: #b8452a;
}

#select main h4{
    margin: 70px 0 5px 0;
    font-family: "MatissePro-M";
    font-size: 24rem;
}
#select main .bath h4{
    letter-spacing: 20rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select main h4{
    margin: 65px 0 11px 0;
    font-size: 30rem;
}
#select main .bath h4{
    letter-spacing: 24rem;
}
}

#select main p.top{
    padding: 4px 0 10px 0;
    font-family: "MatissePro-M";
    font-size: 13rem;
    line-height: 16rem;
    border-top: solid 2px #b3b3b3;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select main p.top{
    padding: 5px 0 33px 0;
    font-size: 14rem;
    border-top: solid 4px #e6e6e6;
}
}

#select main h5{
    width: calc(100% - 50px);
    margin: 0 0 20px 0;
    font-size: 13rem;
    line-height: 15rem;
    font-weight: normal;
}
#select .knob h5 strong,
#select .cock h5 strong,
#select .height h5 strong,
#select .cock2 h5 strong,
#select .tab h5 strong{
    letter-spacing: 16rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select main h5{
    width: calc(100% - 54px);
    margin: 0 0 35px 0;
    font-size: 14rem;
}
#select .knob h5 strong,
#select .cock h5 strong,
#select .height h5 strong,
#select .cock2 h5 strong,
#select .tab h5 strong{
    letter-spacing: 18rem;
}
}

#select main h5 strong{
    margin: 2px 0 6px 0;
    padding: 0 0 8px 0;
    font-size: 20rem;
    border-bottom: solid 1px #002352;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select main h5 strong{
    margin: 10px 0 5px 0;
    padding: 0;
    border-bottom: none;
}
}

#select main section em{
    width: 44px;
    height: 48px;
    margin: 0 6px 0 0;
    padding: 13px 0 0 0;
    font-size: 44rem;
    line-height: 46rem;
    font-family: "HelveticaNeueLTPro-MdCn";
    font-style: normal;
    color: #ffffff;
    text-align: center;
    background-color: #002352;
    display: inline-block;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select main section em{
    height: 40px;
    margin: 0 10px 0 0;
	padding: 5px 0 0 0;
	letter-spacing: -1rem;
}
}

#select main section b{
    font-family: "NewCezannePro-DB";
    font-weight: normal;
    font-size: 14rem;
    line-height: 16rem;
    letter-spacing: 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select main section b{
    font-size: 12rem;
    line-height: 13rem;
}
}

#select main section b span{
    font-family: "NewCezanneProN-M";
}

#select ul.basic,
#select ul.select{
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
}

#select p.or{
    width: 100%;
    height: 30px;
    margin: 0vw 0 2.5vw;
    display: block;
    background-image: url(../img/select_img/hr_or.png);
    background-size: auto 30px;
    background-position: center center;
    background-repeat: no-repeat;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select p.or{
    width: 30px;
    margin: 0;
    position: absolute;
    z-index: 999;
    background-image: url(../img/select_img/vt_or.png);
    background-size: 30px auto;
    background-position: left center;
}
}

#select section li{
    font-size: 10rem;
    line-height: 11rem;
    letter-spacing: -0.5rem;
    text-align: center;
    position: relative;
}

#select li.tt{
    width: 20vw;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select li.tt{
    width: 82px;
}
}

#select li img.model{
    position: absolute;
    width: 40px !important;
    height: 40px !important;
}
#select li img.tl{
    top: -10px;
    left: -7px;
}
#select li img.tr{
    top: -10px;
    right: -7px;
}


#select  section.knob,
#select  section.board,
#select  section.thumb,
#select  section.cock,
#select  section.sink,
#select  section.stove,
#select  section.hood,
#select  section.height,
#select  section.cock2,
#select  section.mirror,
#select  section.counter,
#select  section.accent,
#select  section.tab,
#select  section.shower{
    margin: 50px 0 0 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    position: relative;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select  section.thumb,
#select  section.accent{
    padding: 0 17px 25px 32px;
    background-color: #f2f2f2;
}
#select  section.knob,
#select  section.board,
#select  section.cock,
#select  section.sink,
#select  section.stove,
#select  section.hood,
#select  section.height,
#select  section.cock2,
#select  section.mirror,
#select  section.counter,
#select  section.tab,
#select  section.shower{
    padding: 0 32px 25px 32px;
    background-color: #f2f2f2;
}
}

#select  main section img{
    width: 100%;
}

#select  main section li img.bd{
    border: solid 1px #c2c2c2;
    box-sizing: border-box;
}

#select .thumb ul.basic{
    margin: 0 0 -15px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .thumb ul.basic{
    width: 194px;
    margin: 0;
}
#select .thumb ul.select{
    width: 776px;
}
}

#select .thumb li{
    width: 20vw;
    min-height: 28vw;
    margin: 0 2.5vw 0 0;
}
#select .thumb li:nth-child(4n){
    margin: 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .thumb li{
    width: 84px;
    min-height: inherit;
    margin: 0 13px 6px 0;
}
#select .thumb li:nth-child(4n){
    margin: 0 15px 0 0;
}
#select .thumb li:nth-child(8n){
    margin: 0;
}
}

#select .thumb li img{
    margin: 0 0 2px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .thumb li img{
    margin: 0 1px 2px 1px;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .thumb p.or{
    height: 192px;
    top: 79px;
    left: 220px;
}
}

/*キッチン*/
#select .kitchen figure{
    background-color: #dbe6ed;
    overflow: hidden;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .kitchen figure{
    position: relative;
    overflow: inherit;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .kitchen .ph{
    width: 444px;
    height: 340px;
}
}

#select .kitchen figure .fig{
    width: 95%;
    margin: 18px auto;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .kitchen figure .fig{
    width: 450px;
    margin: 0;
    position: absolute;
    right: 44px;
    bottom: 8px;
    z-index: 999;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .knob{
    width: 412px;
    margin: 50px 0 !important;
    float: left;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .knob h5{
    letter-spacing: -0.5rem;
}
}

#select .knob ul.basic,
#select .knob ul.select{
    width: 100%;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .knob ul.basic,
#select .knob ul.select{
    width: 176px;
    height: 145px;
}
}

#select .knob ul.basic .ph,
#select .knob ul.select .ph{
    width: calc(100% - 23vw);
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .knob ul.basic .ph,
#select .knob ul.select .ph{
    width: 166px;
    margin: -35px 0 0 0;
    padding: 0;
}
}

#select .knob ul.basic .ph span,
#select .knob ul.select .ph span{
    margin: -10px auto 10px;
    text-align: center;
    display: block;
}

#select .knob .model{
    top: 7vw;
    left: 1vw;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .knob .model{
    top: -25px;
    left: 120px;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .knob p.or{
    height: 140px;
    top: 79px;
    left: 212px;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .board{
    width: 486px;
    margin: 50px 0 !important;
    float: right;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .board .tt img{
    width: 137px;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .board ul.basic{
    width: 140px;
    height: 145px;
}
#select .board ul.select,
#select .board ul.select .tt{
    width: 295px;
}
}

#select .board ul.basic .ph,
#select .board ul.select .ph{
    width: 31.2vw;
    margin: 0 0 2.5vw 2.5vw;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .board ul.basic .ph,
#select .board ul.select .ph{
    width: 140px;
    margin: 0 15px 0 0;
}
#select .board ul.select .ph:last-child{
    margin: 0 0 0 0;
}
}

#select .board ul.basic .ph img,
#select .board ul.select .ph img{
    margin: 0 0 2px 0;
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .board .model{
    top: -24px;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .board p.or{
    height: 130px;
    top: 79px;
    left: 175px;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .pannel{
    clear: both;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .pannel p.or{
    height: 84px;
    top: 79px;
    left: 220px;
}
}

#select .pannel ul{
    justify-content: flex-end;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .pannel ul{
    justify-content: flex-start;
}
}
#select .pannel li:last-child{
    margin: 0;
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .cock{
    padding: 0 32px 40px 32px !important;
}
}

#select .cock ul{
    align-items: flex-end;
}

#select .cock .tt{
    width: 37.3vw;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .cock .tt{
    width: 82px;
    margin: 0 0 90px 0;
}
#select .cock .select .tt{
    width: 82px;
    margin: 0 8px 90px 0;
}
}

#select .cock .ph1,
#select .cock .ph3{
    width: 67%;
    margin: 5px 0 10px 0;
    position: relative;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .cock .ph1,
#select .cock .ph3{
    width: 220px;
    margin: 0 10px;
    padding: 5px 5px 0 0;
    background-color: #ffffff;
}
}

#select .cock .ph1 b{
    position: absolute;
    left: 0;
    bottom: 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .cock .ph1 b{
    left: 5px;
    bottom: 5px;
}
}

#select .cock .ph3 b{
    position: absolute;
    left: 0;
    bottom: 20px;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .cock .ph3 b{
    left: 5px;
    bottom: 5px;
}
}

#select .cock .ph2,
#select .cock .ph4{
    width: 33%;
    margin: 0 0 10px 0;
    font-size: 11rem;
    line-height: 13rem;
    letter-spacing: 0.5rem;
    text-align: left;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .cock .ph2,
#select .cock .ph4{
    width: 140px;
    margin: 0;
}
#select .cock .ph2 img,
#select .cock .ph4 img{
    margin: 2px 0 0 0;
}
}

#select .cock .note{
    letter-spacing: 0.5rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .cock .note{
    position: absolute;
    left: 643px;
    bottom: 26px;
}
}

#select .cock .model{
    top: 30px;
    right: 10px;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .cock .model{
    top: -10px;
    left: -7px;
    right: inherit;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .cock p.or{
    height: 170px;
    top: 79px;
    left: 510px;
}
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .sink{
    align-items: flex-start;
}
}
#select .sink ul.basic,
#select .sink ul.select{
    align-items: flex-end;
    justify-content: space-between;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .sink ul.basic{
    width: 550px;
    align-items: flex-start;
}
#select .sink ul.select{
    width: 395px;
    align-items: flex-start;
}
}

#select .sink .tt{
    margin: 0 0 -19.5vw 0;
    padding: 0 calc(100% - 20vw) 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .sink .tt{
    margin: 0;
    padding: 0;
}
#select .sink .basic .tt{
    margin: 0 4px 0 0;
    padding: 0;
}
#select .sink .select .tt{
    margin: 0 10px 0 0;
    padding: 0;
}
}

#select .sink .ph1{
    width: 30%;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .sink .ph1{
    height: auto;
    position: absolute;
    left: 307px;
    display: flex;
}
#select .sink .ph1 img{
    width: 88px;
    margin: 0 3px 0 0;
}
}

#select .sink .ph3{
    width: 35%;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .sink .ph3{
    width: 106px;
    order: 1;
}
}

#select .sink .ph2,
#select .sink .ph4{
    width: 64%;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .sink .ph2,
#select .sink .ph4{
    width: 178px;
}
}

#select .sink .ph1 span,
#select .sink .ph2 span{
    height: 25px;
    line-height: 13rem;
    text-align: center;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .sink .ph1 span,
#select .sink .ph2 span{
    height: auto;
    line-height: 20rem;
}
}

#select .sink .ph3 span,
#select .sink .ph4 span{
    height: 65px;
    line-height: 20rem;
    text-align: center;
    display: block;
}
#select .sink .ph3 span{
    margin: 5px 0 0 0;
    line-height: 13rem;
    text-align: left;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .sink .ph3 span,
#select .sink .ph4 span{
    height: auto;
}
}

#select .sink .sub{
    padding: 10px 0 10px;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .sink .sub{
    width: 275px;
    margin: 68px 0 0 0;
    padding: 0;
    display: flex;
    flex-direction: column;
}
}

#select .sink .sub ul{
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .sink .sub ul{
    padding: 0 5px;
    order: -1;
    background-color: #ffffff;
}
}

#select .sink .sub li{
    width: 33%;
    position: relative;
}

#select .sink .sub b{
    font-size: 12rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .sink .sub b{
    line-height: 20rem;
    text-align: center;
}
}

#select .sink .sub span{
    margin: -2.5vw 0 0 -4vw;
    text-align: center;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .sink .sub span{
    margin: 0;
}
}

#select .sink .sub li:nth-child(1) span{
    margin: -2.5vw 0 0 -10vw;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .sink .sub li:nth-child(1) span{
    margin: 0;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .sink p.or{
    height: 145px;
    top: 79px;
    left: 590px;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .sink .model{
    left: 55px;
    z-index: 999;
}
}

#select .stove ul{
    justify-content: space-between;
    position: relative;
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .stove .select li{
    margin: 0 0 0 12px;
}
}

#select .stove .ph{
    width: calc(100% - 23vw);
    margin: 0 0 8px 0;
    font-size: 12rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .stove .ph{
    width: 244px;
}
#select .stove .basic .ph{
    margin: 0 0 8px 8px;
}
}

#select .stove .ph b{
    font-size: 12rem;
    line-height: 20rem;
    letter-spacing: -0.5rem;
}

#select .stove figure,
#select .stove dl{
    width: calc(100% - 23vw);
    margin: 10px 0 0 26%;
    display: flex;
    align-items: flex-start;
    flex-wrap: wrap;
    justify-content: space-between;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .stove figure,
#select .stove dl{
    width: 240px;
    margin: 0 0 6px 0;
}
}

#select .stove figure img{
    width: 40%;
    margin: 0;
}

#select .stove figcaption{
    width: 58%;
    margin: 0;
    font-size: 11rem;
    line-height: 14rem;
    letter-spacing: -0.1rem;
}

#select .stove dt{
    width: 100%;
    padding: 1px 0 2px;
    font-size: 12rem;
    line-height: 12rem;
    letter-spacing: 0.5rem;
    color: #ffffff;
    text-align: center;
    background-color: #888888;
}

#select .stove dd{
    width: 100%;
    margin: 4px 0 0 0;
    font-size: 11rem;
	text-align: left;
	/*display: list-item;
	list-style-position: inside;
	list-style-type: disc;*/
}
@media print, screen and (min-width: 321px) {/*iPhone6以上*/
#select .stove dd:nth-child(odd){
	width: 47%;
}
#select .stove dd:nth-child(even){
	width:53%;
	white-space: nowrap;
}
}
#select .stove dd:first-letter{
	margin: 0 0 0 -0.5rem;
}

#select .stove dd.note{
    width: 100%;
    margin: 8px 0 0 0;
	white-space: normal;
	display: block;
    zoom: 0.9;
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .stove .fig{
    margin: 3px 0 0 0;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .stove p.or{
    height: 165px;
    top: 79px;
    left: 378px;
}
}

#select .hood ul{
    justify-content: space-between;
    position: relative;
}

#select .hood .ph{
    width: calc(100% - 23vw);
    margin: 0 0 8px 0;
    font-size: 10rem;
    position: relative;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .hood .basic .ph{
    width: 200px;
    margin: 0 0 0 8px
}
#select .hood .select .ph{
    width: 200px;
    margin: 0 0 0 11px
}
}

#select .hood .ph .sub{
    width: 58px;
    height: 80px;
    position: absolute;
    top: 3px;
    left: -10px;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .hood .ph .sub{
    width: 45px;
    height: 62px;
    top: 3px;
    left: inherit;
    right: -10px;
}
}

#select .hood .ph b{
    font-size: 13rem;
    line-height: 18rem;
    letter-spacing: 0;
    white-space: nowrap;
}

#select .hood .ph small{
    letter-spacing: -1rem;
    font-weight: normal;
}

#select .hood .ph span{
    white-space: nowrap;
}

#select .hood .ph2{
    width: 20vw;
    line-height: 15rem;
    position: absolute;
    top: 26vw
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .hood .ph2{
    width: 90px;
    margin: 54px 0 0 9px;
    position: inherit;
    top: inherit;
}
}

#select .hood .fig{
    margin: 15px 0 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .hood .fig{
    width: 242px;
    margin: -37px 0 0 16px;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .hood p.or{
    height: 180px;
    top: 79px;
    left: 330px;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .hood .model{
    left: -7px;
    z-index: 999;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .height ul{
    width: 100%;
    margin: -60px 0 0 0;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}
}

#select .height .txt{
    font-size: 13rem;
    line-height: 18rem;
    letter-spacing: 0;
    text-align: left;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .height .txt{
    width: 335px;
    margin: 0 0 11px 0;
    line-height: 21rem;
}
}

#select .height .fig1{
    width: 70vw;
    margin: 5px auto;
    
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .height .fig1{
    width: 266px;
    margin: -10px -5px 10px 5px;
    
}
#select .height .fig2{
    width: 366px;
    margin: 0;
    
}
}

/*洗面化粧台*/
#select .powder figure{
    background-color: #dbe6ed;
    overflow: hidden;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .powder figure{
    position: relative;
    overflow: inherit;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .powder .ph{
    width: 632px;
    height: 340px;
}
}

#select .powder figure .fig{
    width: 95%;
    margin: 18px auto;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .powder figure .fig{
    width: 418px;
    margin: 0;
    position: absolute;
    right: 4px;
    bottom: 0;
    z-index: 999;
}
}

#select .cock2 ul{
    justify-content: space-between;
    position: relative;
}

#select .cock2 .ph1{
    width: calc(100% - 23vw);
    margin: -4vw 0 8px 0;
    font-size: 10rem;
    position: relative;
}
#select .cock2 .ph2{
    width: calc(100% - 23vw);
    margin: -19.5vw 0 8px 0;
    padding: 0 0 0 23vw;
    font-size: 11rem;
    line-height: 13rem;
    position: relative;
}
#select .cock2 .ph3{
    width: calc(100% - 23vw);
    margin: 0 0 8px 0;
    padding: 0 0 0 23vw;
    font-size: 11rem;
    line-height: 13rem;
    position: relative;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .cock2 .ph1{
    width: 206px;
    margin: 0 0 0 15px
}
#select .cock2 .ph2{
    width: 288px;
    margin: 0 0 0 12px;
    padding: 0;
}
#select .cock2 .ph3{
    width: 241px;
    margin: 0 0 0 12px;
    padding: 0;
}
}

#select .cock2 .ph1 b{
    margin: -4vw 0 0 0;
    text-align: center;
    display: inline-block;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .cock2 .ph1 b{
    margin: 3px 0 0 0;
}
}

#select .cock2 .ph2 b{
    margin: 3px 0 0 0;
    text-align: center;
    display: inline-block;
}

#select .cock2 .ph1 span,
#select .cock2 .ph2 span{
    margin: 3px 0 3px 0;
    padding: 3px 12px 4px 3px;
    border: solid 1px #999999;
    line-height: 12rem;
    text-align: center;
    display: inline-block;
}

#select .cock2 .ph3 span{
    margin: 3px 0 0 -2px;
    display: block;
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .cock2 p.or{
    height: 200px;
    top: 79px;
    left: 345px;
}
}

#select .cock2 .model{
    left: 51vw;
    top: -10px;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .cock2 .model{
    left: 132px;
    top: -10px;
}
}

#select .mirror .basic{
    margin: 5px 0 10px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .mirror .basic{
    margin: 0;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .mirror .ph{
    width: 365px;
    height: 185px;
    display: flex;
    flex-direction: column;
}
#select .mirror .basic .ph{
    margin: 0 0 0 15px
}
#select .mirror .select .ph{
    margin: 0 0 0 22px
}
#select .mirror .ph img{
    width: 365px;
    height: 140px;
    object-fit: cover;
}
}

#select .mirror .ph span{
    width: calc(100% - 23vw);
    min-height: 17vw;
    margin: -20vw 0 5px 23vw;
    font-size: 12rem;
    line-height: 16rem;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .mirror .ph span{
    width: 100%;
    min-height: inherit;
    margin: 0;
    font-size: 11rem;
    line-height: 13rem;
    text-align: center;
    order: 1;
}
}

#select .mirror span b{
    margin: 0 0 5px 0;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .mirror span b{
    margin: 3px 0 3px 0;
    font-size: 12rem;
    text-align: center;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .mirror p.or{
    height: 189px;
    top: 79px;
    left: 506px;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .toilet{
    position: relative;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .toilet .ph{
    width: 424px;
}
}

#select .toilet .thumb{
    padding: 25px 0 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .toilet .thumb{
    width: 530px;
    padding: 47px 27px 8px 42px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    background-color: #f2f2f2;
    position: absolute;
    right: 0;
    bottom: 0;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .toilet .select{
    width: 291px !important;
}
}

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

#select .toilet .note_i{
    margin: -5px 0 5px 0;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .toilet .note_i{
    margin: 5px 0 5px 0;
    letter-spacing: 0;
    white-space: nowrap;
    display: block;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .toilet p.or{
    height: 82px;
    top: 47px;
    left: 237px;
}
}

figure.no img{
    width: 70vw;
    margin: 50px auto 0;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
figure.no img{
    width: 300px;
    margin: 50px 0;
    float: right;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .counter{
    width: 665px;
    height: 300px;
    padding: 0 32px 0 32px !important;
}
}

#select .counter ul{
    width: 100%;
    justify-content: space-between;
}
#select .counter ul.basic{
    margin: 0 0 5px 0;
}
#select .counter ul.select{
    margin: 5px 0 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .counter ul.basic{
    width: 304px;
    margin: -10px 0 10px 0;
}
#select .counter ul.select{
    width: 304px;
    margin: -10px 0 10px 0;
}
}

#select .counter .ph{
    width: 56vw;
    font-size: 11rem;
    position: relative;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .counter .ph{
    width: 210px;
}
}
#select .counter .ph img{
    margin: 0 0 2px 0;
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .counter p.or{
    height: 190px;
    top: 79px;
    left: 350px;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .accent .basic{
    width: 290px !important;
}
#select .accent .select{
    width: 676px !important;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .accent  .ph{
    width: 178px;
}
#select .accent .basic .ph{
    margin: 0 0 0 -3px;
}
}

#select .accent .ph img{
    height: 20vw;
    object-fit: cover;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .accent .ph img{
    height: 80px;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .accent p.or{
    height: 82px;
    top: 79px;
    left: 316px;
}
}

#select .tab ul{
    justify-content: space-between;
    position: relative;
}

#select .tab .basic{
    margin: 0 0 15px 0
}

#select .tab .tt{
    margin: 0 0 -20vw 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .tab .tt{
    height: 80px;
    margin: 0;
}
}

#select .tab .ph{
    font-size: 13rem;
    line-height: 18rem;
    text-align: left;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .tab .ph{
    width: 230px;min-height: 320px;
    font-size: 12rem;
}
}

#select .tab .ph img{
    width: calc(100% - 23vw);
    margin: 0 0 -3vw 23vw;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .tab .ph img{
    width: 100%;
    height: 204px;
    margin: 0;
}
}

#select .tab .ph b{
    font-size: 15rem;
    line-height: 26rem;
    display: block;
}

#select .tab .select li:last-child{
    margin: 15px 0 0 0;
    background-image: url(../img/common_img/hr_dot2.png);
    background-position: center top;
    background-repeat: no-repeat;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .tab .select li:last-child{
    margin: 0 20px 0 25px;
    padding: 0 0 0 25px;
    background-image: url(../img/common_img/vt_dot.png);
    background-position: left center;
    background-repeat: no-repeat;
}
}

#select .tab .model{
    right: 0;
    top: 17vw;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .tab .model{
    left: 132px;
    top: -10px;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .tab .model{
    top: 55px;
    left: 200px;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .tab p.or{
    height: 320px;
    top: 79px;
    left: 360px;
}
}

#select .shower ul{
    margin: 5px 0 0 0;
    justify-content: space-between;
    position: relative;
}

#select .shower .ph{
    width: 50vw;
    margin: 0 25px 8px 0;
    position: relative;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .shower .ph{
    width: 170px;
    margin: 0 18px 0 0;
}
#select .shower .select .ph{
    margin: 0 18px 0 10px;
}
}

#select .shower .ic{
    width: 80px;
    height: 80px;
    position: absolute;
    right: -25px;
    bottom: -5px;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .shower .ic{
    right: -10px;
    top: -15px;
    bottom: inherit;
}
}

#select .shower .txt{
    margin: 0 0 10px 0;
    font-size: 13rem;
    line-height: 18rem;
    text-align: left;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .shower .txt{
    width: 192px;
    font-size: 12rem;
}
#select .shower .basic .txt{
    margin: 26px 0 0 0;
}
#select .shower .select .txt{
    margin: 26px 0 0 0;
}
}

#select .shower .txt b{
    font-size: 15rem;
    line-height: 26rem;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .shower .txt b{
    margin: 0 0 10px 0;
    font-size: 13rem;
    line-height: 15rem;
    display: block;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .shower .note{
    width: 100%;
    margin: 10px 0 0 0;
    text-align: right;
    display: block;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .shower .model{
    top: inherit;
    left: 7px;
    bottom: 7px;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .shower p.or{
    height: 190px;
    top: 79px;
    left: 502px;
}
}

#select .shoes p{
    margin: 0 0 15px 0;
    line-height: 18rem;
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .shoes div{
    margin: -20px 0 0 0;
    padding: 25px 32px 10px 32px;
    background-color: #f2f2f2;
    display: flex;
    justify-content: space-between;
    position: relative;
}
}

#select .shoes .basic .tt{
    margin: 7vw 0 0 0;
}
#select .shoes .select .tt{
    margin: 4vw 0 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .shoes .basic .tt,
#select .shoes .select .tt{
    margin: 0;
}
}

#select .shoes .ph{
    width: calc(100% - 20vw);
    margin: 0 0 15px 0;
    position: relative;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .shoes .ph{
    width: 397px;
}
}

#select .shoes .ph span{
    margin: 0 0 3px 0;
    font-size: 11rem;
    line-height: 13rem;
    text-align: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .shoes .ph span{
    height: 26rem;
    display: block;
}
}

#select .shoes .ph span b{
    font-size: 13rem;
    text-align: center;
    display: block;
}

#select .shoes .model{
    width: 40px;
    height: 40px;
    position: absolute;
    top: 18px;
    left: 9vw;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .shoes .model{
    top: 18px;
    left: 80px;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .shoes p.or{
    height: 495px;
    top: 25px;
    left: calc(50% - 15px);
}
}






@media print, screen and (min-width: 768px) {/*PC*/
#select .lead{
    margin: 0 0 100px 0;
    position: relative;
}
}

#select .lead h3{
    margin: 35px 0 0 0;
    text-align: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .lead h3{
    font-size: 24rem;
    letter-spacing: 2rem;
    text-align: left;
}
}

#select .lead p{
    margin: 18px 0 28px 0;
    letter-spacing: 0;
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .lead p{
    margin: 16px 0 50px 0;
    font-size: 14rem;
    line-height: 28rem;
}
}

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

#select .lead .step dl{
    width: 100%;
    margin: 0 0 20px 0;
    display: flex;
    position: relative;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .lead .step dl{
    width: 150px;
    margin: 0;
    flex-direction: column;
}
}

#select .lead .step dl::after{
    content: '';
    position: absolute;
    bottom: -20px;
    left: 0;
    right: 0;
    width: 30px;
    height: 20px;
    margin: auto;
    background-image: url(../img/common_img/bg_tri2_sp.png);
    background-size: 19px 15px;
    background-position: center top;
    background-repeat: no-repeat;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .lead .step dl::after{
    content: '';
    position: absolute;
    bottom: 60px;
    right: -171px;
    width: 22px;
    height: 28px;
    background-image: url(../img/common_img/bg_tri_pc.png);
    background-size: 22px 28px;
    background-position: left center;
}
}

#select .lead .step dl:last-child::after{
    content: none;
}

#select .lead .step dt{
    padding: 9px 6px 1px 10px;
    font-family: "HelveticaNeueLTPro-MdCn";
    font-size: 11rem;
    line-height: 11rem;
    color: #ffffff;
    background-color: #355273;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .lead .step dt{
    padding: 45px 6px 0 0;
	font-family: "HelveticaNeueLTPro-Roman";
	font-size: 24rem;
    color: #7f91a8;
    background-color: #f3f3f3;
    text-align: right;
}
}

#select .lead .step dt b{
    margin: 0 0 0 3px;
    font-family: "HelveticaLTPro-LightCond";
    font-size: 24rem;
    line-height: 26rem;
    vertical-align: -5px;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .lead .step dt b{
	font-size: 75rem;
    line-height: 50rem;
}
}

#select .lead .step dd{
    padding: 6px 5px 6px 15px;
    font-family: "NewCezannePro-DB";
    font-size: 16rem;
    line-height: 24rem;
    letter-spacing: 0;
    color: #ffffff;
    background-color: #7f91a8;
    flex-grow: 1;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .lead .step dd{
    height: 50px;
    padding: 10px 0 0 10px;
    font-size: 15rem;
    line-height: 20rem;
    order: -1;
}
}


/*床・建具・玄関シミュレーション*/
#select .floor .simulator{
    padding: 0 0 6px 0;
    border-bottom: dotted 1px #a5a5a5;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .floor .simulator{
    padding: 0 0 12px 0;
}
}

#select .floor .simulator .slider img{
    width: 100%;
    height: auto;
}

#select .floor .button{
    display: flex;
}

#select .floor .button li{
    width: 25%;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .floor .button li{
    background-size: 1px auto;
    background-position: left 60px;
    background-repeat: no-repeat;
    background-image: url(../img/common_img/vt_dot.png);
}
#select .floor .button li.bw{
    background-image: none;
}
}

#select .floor .button a{
    color: #333333;
    opacity: 0.3;
    display: block;
}
#select .floor .button a.active{
    opacity: 1;
    position: relative;
}

#select .floor .button a img.model{
    width: 36px;
    height: 36px;
    position: absolute;
    top: -26px;
    left: 3px;
    z-index: 9999;
    opacity: 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .floor .button a img.model{
    width: 40px;
    height: 40px;
    top: -30px;
    left: 3px;
}
}
#select .floor .button a.active img.model{
    opacity: 1;
}

#select .floor .button a>dl>dt.sp{
    position: relative;
    padding: 14px 0 10px;
    font-size: 11rem;
    line-height: 14rem;
    letter-spacing: -0.75rem;
    color: #ffffff;
    text-align: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .floor .button a>dl>dt.pc{
    position: relative;
    padding: 9px 0 6px;
    font-family: "MatissePro-M";
    font-size: 12rem;
    line-height: 12rem;
	letter-spacing: 1rem;
    color: #ffffff;
    text-align: center;
}
}

#select .floor .button a>dl>dt>b{
    font-family: "HelveticaNeueLTPro-MdCn";
    font-size: 18rem;
	letter-spacing: 0.25rem;
}

#select .floor .button .bw>a>dl>dt{
    background-color: #d3c69e;
}
#select .floor .button .ln>a>dl>dt{
    background-color: #d7b46f;
}
#select .floor .button .cm>a>dl>dt{
    background-color: #a6876b;
}
#select .floor .button .ad>a>dl>dt{
    background-color: #6e5b4d;
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .floor .button dt b{
    display: block;
    text-align: center;
}
}

#select .floor .button dt.sp::after{
    content: "";
    width: 100%;
    height: 12px;
    background-size: 24px 12px;
    background-position: center top;
    background-repeat: no-repeat;
    margin: auto;
    display: block;
    position: absolute;
    bottom: -12px;
    z-index: 999;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .floor .button dt.pc::after{
    content: "";
    width: 100%;
    height: 20px;
    background-size: 36px 20px;
    background-position: center top;
    background-repeat: no-repeat;
    margin: auto;
    display: block;
    position: absolute;
    bottom: -20px;
    z-index: 999;
}
}
#select .floor .button li.bw dt::after{
    background-image: url("../img/select_img/ic_tri_bw.png");
}
#select .floor .button li.ln dt::after{
    background-image: url(../img/select_img/ic_tri_ln.png);
}
#select .floor .button li.cm dt::after{
    background-image: url(../img/select_img/ic_tri_cm.png);
}
#select .floor .button li.ad dt::after{
    background-image: url(../img/select_img/ic_tri_ad.png);
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .floor .button dt.sp,
#select .floor .thumb_sp{
    display: none;
}
}

#select .floor .thumb_sp li{
    padding: 13px 0 0 0;
    display: flex !important;
    justify-content: center;
    background-size: 25% 12px;
    background-repeat: no-repeat;
    background-color: #ffffff;
}

#select .floor .thumb_sp dl{
    width: 24vw;
}
#select .floor .thumb_sp dd{
    width: 20vw;
    margin: 2px auto 2px;
}

#select .floor .button dd.thumb_pc{
    display: none;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .floor .button dd.thumb_pc{
    padding: 22px 5px 0;
    display: flex;
    text-align: center;
    justify-content: space-between;

}
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .floor .button dd.thumb_pc dl{
    width: 84px;
}
#select .floor .button dd.thumb_pc dd{
    width: 66px;
    margin: 2px auto 2px;
}
#select .floor .button dd.thumb_pc dd img{
    width: 66px;
}
}

#select .floor .thumb_sp dt.part{
    font-family: "NewCezannePro-DB";
    font-size: 11rem;
    line-height: 11rem;
    letter-spacing: 0;
    text-align: center;
    white-space: nowrap;
}
#select .floor .thumb_sp dt.name{
    font-size: 10rem;
    line-height: 11rem;
    text-align: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .floor .button dt.part{
    font-family: "NewCezannePro-DB";
    font-size: 11rem;
    line-height: 11rem;
    letter-spacing: 0;
    text-align: center;
    white-space: nowrap;
}
#select .floor .button dt.name{
    font-size: 10rem;
    line-height: 11rem;
    letter-spacing: -0.3rem;
    text-align: center;
}
}

/*浴室シミュレーション*/
#select .bath .simulator2{
    padding: 0 0 6px 0;
    border-bottom: dotted 1px #a5a5a5;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .bath .simulator2{
    padding: 0 0 12px 0;
    position: relative;
    border-bottom: none;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .bath .simulator2 .bx-viewport,
#select .bath .simulator2 .slider2,
#select .bath .simulator2 .slider2 li{
    width: 670px !important;
}
}

#select .bath .simulator2 .slider2 img{
    width: 100%;
    height: auto;
}

#select .bath .button2{
    display: flex;
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .bath .button2{
    flex-direction: column;
    width: 372px;
	padding: 0 0 3px 0;
    position: absolute;
    top: 0;
    right: 0;
    border-bottom: dotted 1px #a5a5a5;
}
}

#select .bath .button2 li{
    width: 25%;
    display: block;
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .bath .button2 li{
    width: 100%;
    display: block;
}
}

#select .bath .button2 a{
    color: #333333;
    opacity: 0.3;
	display: block;
}
#select .bath .button2 a.active{
    opacity: 1;
    position: relative;
}

#select .bath .button2 a img.model{
    width: 36px;
    height: 36px;
    position: absolute;
    top: -26px;
    left: 3px;
    z-index: 9999;
    opacity: 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .bath .button2 a img.model{
    width: 40px;
    height: 40px;
    top: -15px;
    left: inherit;
    right: 3px;
}
}
#select .bath .button2 a.active img.model{
    opacity: 1;
}

#select .bath .button2 a>dl>dt.sp{
    position: relative;
    padding: 14px 0 10px;
    font-size: 11rem;
    line-height: 14rem;
    letter-spacing: -0.75rem;
    color: #ffffff;
    text-align: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .bath .button2 a>dl>dt.pc{
    position: relative;
    padding: 6px 0 5px 15px;
    font-family: "MatissePro-M";
    font-size: 12rem;
    line-height: 16rem;
	letter-spacing: 0.5rem;
    color: #ffffff;
}
}

#select .bath .button2 a>dl>dt>b{
    font-family: "HelveticaNeueLTPro-MdCn";
    font-size: 18rem;
	margin: 0 6px 0 0;
	letter-spacing: 0.25rem;
}

#select .bath .button2 .bw>a>dl>dt{
    background-color: #d3c69e;
}
#select .bath .button2 .ln>a>dl>dt{
    background-color: #d7b46f;
}
#select .bath .button2 .cm>a>dl>dt{
    background-color: #a6876b;
}
#select .bath .button2 .ad>a>dl>dt{
    background-color: #6e5b4d;
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .bath .button2 dt b{
    vertical-align: -2px;
}
}

#select .bath .button2 dt.sp::after{
    content: "";
    width: 100%;
    height: 12px;
    background-size: 24px 12px;
    background-position: center top;
    background-repeat: no-repeat;
    margin: auto;
    display: block;
    position: absolute;
    bottom: -12px;
    z-index: 999;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .bath .button2 dt.pc::after{
    content: "";
    width: 36px;
    height: 20px;
    background-size: 36px 20px;
    background-position: left center;
    background-repeat: no-repeat;
    margin: auto;
    display: block;
    position: absolute;
    left: -16px;
    top: 75px;
    z-index: 999;
    transform:rotate(-90deg);
}
}
#select .bath .button2 li.bw dt::after{
    background-image: url("../img/select_img/ic_tri_bw.png");
}
#select .bath .button2 li.ln dt::after{
    background-image: url(../img/select_img/ic_tri_ln.png);
}
#select .bath .button2 li.cm dt::after{
    background-image: url(../img/select_img/ic_tri_cm.png);
}
#select .bath .button2 li.ad dt::after{
    background-image: url(../img/select_img/ic_tri_ad.png);
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .bath .button2 dt.sp,
#select .bath .thumb_sp{
    display: none;
}
}

#select .bath .thumb_sp{
   
}

#select .bath .thumb_sp li{
    padding: 13px 0 0 0;
    display: flex !important;
    justify-content: center;
    background-size: 25% 12px;
    background-repeat: no-repeat;
    background-color: #ffffff;
}

#select .bath .thumb_sp dl{
    width: 25%;
    margin: 0 0px;  
}
#select .bath .thumb_sp dd{
    width: 20vw;
    margin: 2px auto 2px;
}

#select .bath .button2 dd.thumb_pc{
    display: none;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .bath .button2 dd.thumb_pc{
    padding: 8px 5px 15px;/*セレクトボタン高さ設定*/
    display: flex;
    font-family: "NewCezannePro-DB";
    text-align: center;
    justify-content: space-between;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#select .bath .button2 dd.thumb_pc dl{
    width: 93px;
}
#select .bath .button2 dd.thumb_pc dd{
    width: 72px;
    margin: 2px auto 2px;
}
#select .bath .button2 dd.thumb_pc dd img{
    width: 72px;
}
}

#select .bath .thumb_sp dt.part{
    font-family: "NewCezannePro-DB";
    font-size: 10rem;
    line-height: 11rem;
    letter-spacing: -0.5rem;
    text-align: center;
    white-space: nowrap;
}
#select .bath .thumb_sp dl:nth-child(1) dt.part{
    margin: 0 0 0 -5px;
}
#select .bath .thumb_sp dl:nth-child(2) dt.part{
    letter-spacing: 1rem;
}
#select .bath .thumb_sp dl:nth-child(4) dt.part{
    margin: 0 0 0 -7px;
}
#select .bath .thumb_sp dt.name{
    font-size: 10rem;
    line-height: 11rem;
    text-align: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
#select .bath .button2 dt.part{
    margin: 0 0 0 -6px;
    font-family: "NewCezannePro-DB";
    font-size: 11rem;
    line-height: 11rem;
    letter-spacing: -0.5rem;
    text-align: center;
    white-space: nowrap;
}
#select .bath .button2 dl:nth-child(2) dt.part{
    letter-spacing: 1rem;
}
#select .bath .button2 dt.name{
    font-size: 10rem;
    line-height: 11rem;
    letter-spacing: -0.3rem;
    text-align: center;
}
}