charset "utf-8";


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

  “FARNEST OHASHI HIGASHI”

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

  1.リセット

  2.共通パーツ

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

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

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

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

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

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

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

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

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

blockquote, q {
  quotes:none;
}

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

del {
  text-decoration: line-through;
}

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

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

input, select {
  vertical-align:middle;
}

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

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

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

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


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

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

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

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

main{
    padding: 0;
}

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

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

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

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

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

nav#menu dd.active ul::before{
    content: "　";
    width: 20px;
    height: 10px;
    position: absolute;
    top: 17px;
    left: 0;
    right: 0;
    margin: auto;
    background-image: url(../img/common_img/ic_tri_up.png);
    transition: background-image 0.5s;
    background-size: 20px 10px;
    background-position: center 0;
    background-repeat: no-repeat;
}
    
nav#menu dd a{
    padding: 8px 0 0 0;
    font-family: "NewCezannePro-DB";
    font-family: "Hiragino Kaku Gothic ProN"; font-weight: bold;
    /* color: #548e8c; */
    color: #ffffff;
    font-size: 15rem;
    line-height: 20rem;
    letter-spacing: 1rem;
    display: block;
    background-size: 22px;
    background-repeat: no-repeat;
    }


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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.down img.close{
    opacity: 0;
}

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

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

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

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

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

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

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

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


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

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

nav#top ul.btn a{
     width: 214px;
     max-width: 214px;
     height: 28px;
     margin: 0 0 0 8px;
     padding: 8px 10px;
     letter-spacing: 4rem;
     text-align: right;
     color: #ffffff;
     background-image: url(../img/common_img/bg_slash.png);
     background-size: 18px 32px;
     background-position: 55px center;
     background-repeat: no-repeat;
     display: block;
}

nav#top ul.btn a span{
    font-family: "DINNextLTPro-Condensed";
    font-size: 12rem;
    line-height: 9rem;
    letter-spacing: 0;
    text-align: left;
    color: rgba(255, 255, 255, 0.7);
    display: block;
}

nav#top ul.btn a strong{
    padding: 0 10px 1px 0;
    font-size: 16rem;
    line-height: 16rem;
    font-weight: normal;
    background-image: url(../img/common_img/ic_arrow_wh.png);
    background-size: 11px 10px;
    background-position: right center;
    background-repeat: no-repeat;
}

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

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

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

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

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

}

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

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


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

nav#global>ul>li>a{
    margin: 0 0 3px 0;
    padding: 16px 0 0 0;
    display: block;
    text-align: center;
    position: relative;
    font-family: "DINNextLTPro-Condensed";
    font-size: 19rem;
    line-height: 19rem;
    transition: all 300ms 0s ease;
}

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

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

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

nav#global>ul>li>a small span {
  display: block;
  transform: translate(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;
}
}

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

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

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

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

.title{
    width: 100%;
    height: 130px;
    background-color: #ffffff;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
.title{
    height: 150px;
}
}

.title h2{
    font-family: "DINNextLTPro-Condensed";
    font-size: 48rem;
    line-height: 48rem;
    font-weight: normal;
    color: #485157;
}
@media print, screen and (min-width: 768px) {/*PC*/
.title h2{
}
}

.title strong{
    padding: 0 0 0 2px;
    font-family: "NewCezannePro-DB";
    font-size: 17rem;
    line-height: 24rem;
    font-weight: normal;
    letter-spacing: 1rem;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
.title strong{
    margin: 0 0 0 1px;
    font-size: 14rem;
}
}


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

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

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

.inquiry{
    padding: 0 0 20px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .inquiry{
        width: 600px;
        margin: auto;
        padding: 0;
        display: flex;
        justify-content: space-between;
    }
}

.inquiry a{
     height: 40px;
     margin: 0 23px 14px;
     padding: 10px 10px;
     letter-spacing: 4rem;
     /* text-align: right; */
     color: #ffffff;
     background-image: url(../img/common_img/bg_slash.png);
     background-size: 18px 32px;
     background-position: 55px center;
     background-repeat: no-repeat;
     display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .inquiry a{
        width: 600px;
        height: 40px;
        margin: 0;
        background-size: 25px 43px;
        background-position: 60px center;
    }
}

.inquiry .fade-btn-ft,
.inquiry .fade-btn-gallery{
    opacity: 1 !important;
    transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 2s;/*easeOutCubic*/
}


.inquiry span{
    font-family: "DINNextLTPro-Condensed";
    font-size: 12rem;
    line-height: 9rem;
    letter-spacing: 0;
    text-align: left;
    color: rgba(255, 255, 255, 0.7);
    display: block;
}

.inquiry strong{
    margin: 10px 0 0 0;
    padding: 0 10px 0 0;
    font-family: "NewCezannePro-DB";
    font-size: 16rem;
    line-height: 16rem;
    font-weight: normal;
    background-image: url(../img/common_img/ic_arrow_wh.png);
    background-size: 11px 10px;
    background-position: right 7px;
    background-repeat: no-repeat;
    display: block;

    margin: 1px 3px 0 0;
    padding: 0 0 0 20px;
    text-align: center;
    background-size: 13px 12px;
    background-position: right 5px;
}

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

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

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

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

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

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

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

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

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

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

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

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

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


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

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

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

header h1{
    width: 340px;
    margin: auto;
}
@media print, screen and (min-width: 768px) {/*PC*/
header h1{
    width: 360pxpx;
    height: auto;
    margin: 0;
    position: absolute;
    top: 28px;
    left: 60px;
}
}

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

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

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

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

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

footer h3{
    width: 240px;
    height: 47px;
    margin: auto;
    font-size: 19rem;
    font-weight: normal;
    color: #485157;
    background-image: url(../img/common_img/bg_slash_sp.png);
    background-size: 40px 47px;
    background-position: center center;
    background-repeat: no-repeat;
    display: flex;
    justify-content: space-between;
}
@media print, screen and (min-width: 768px) {/*PC*/
    footer h3{
        height: auto;
        background-image: none;
    }
}

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

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

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

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

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

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

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

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

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

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


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

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


footer address{
    padding: 12px 23px 0;
    background-color: #ebedef;
    /*opacity: 0;for Animation*/
}
@media print, screen and (min-width: 768px) {/*PC*/
    footer address{
        width: 356px;
        padding: 30px 0 0 0;
        background-color: inherit;
        order: -1;
    }
}
footer .fade-address{
    opacity: 1 !important;
    transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 2s;/*easeOutCubic*/
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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



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

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

#index #mainimg picture>img{
    height: 122vw;
    object-fit: cover;;
    object-position: 50% 100%;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #index #mainimg picture>img{
        height: inherit;
    }
}

#index #mainimg .bldg picture{
    display: block;
    transform-origin: right top;
    transform: scale(1.15);/*for Animation*/
    transition: all cubic-bezier(0.075, 0.82, 0.165, 1) 1.5s; /*easeOutCirc*/
}

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

#index h2{
    width: 90%;
    margin: auto;
    position: absolute;
    top: 8vw;
    left: 0;
    right: 0;
    z-index: 999;
}
#index .apploach h2,
#index .interior h2{
    display: none;
}

@media print, screen and (min-width: 768px) {/*PC*/
    #index .bldg h2{
        width:30vw;
        top: calc(45vw / 2 - 14vw);
        left: calc(40% - 30vw);
        right: inherit;
    }
    #index .apploach h2,
    #index .interior h2{
        width:30vw;
        top: calc(45vw / 2 - 113px - 3vw);
        left: 7vw;
        right: inherit;
        display: block;
    }
    #index .birdview h2{
        display: none;
    }
}

#index h2 .open1,
#index h2 .open2,
#index h2 .open3{
    margin:0px auto 0;
    opacity: 0;/*for Animation*/
    transform: translateY(40px);/*for Animation*/
    transition: all cubic-bezier(0.075, 0.82, 0.165, 1) 2s; /*easeOutCirc*/
}

@media print, screen and (min-width: 768px) {/*PC*/
    #index h2 .new1{
        filter: drop-shadow(0 0 10px rgba( 0, 0, 0, 0.60 ));
        opacity: 0;/*for Animation*/
        transform: translateX(40px);/*for Animation*/
        transition: all cubic-bezier(0.075, 0.82, 0.165, 1) 2s; /*easeOutCirc*/
    }
    #index .interior h2 .new1{
        filter: drop-shadow(0 0 4px rgba( 0, 0, 0, 0.15 ));
    }
    #index h2 .new2{
        margin: 1vw 0 0 1.2vw;
        font-family: "TsukuMinPr6N-D";
        font-size: 19rem;
        line-height: 30rem;
        letter-spacing: 3.5rem;
        font-weight: normal;
        color: #ffffff;
        text-shadow: 0 0 8px black;
        filter: drop-shadow(0 0 4px rgba( 0, 0, 0, 0.8 ));
        opacity: 0;/*for Animation*/
        transform: translateX(45px);/*for Animation*/
        transition: all cubic-bezier(0.075, 0.82, 0.165, 1) 2s; /*easeOutCirc*/
    }
    #index .interior h2 .new2{
        text-shadow: inherit;
        filter: drop-shadow(0 0 4px rgba( 0, 0, 0, 0.4 )) !important;
    }
}

#index .birdview h2 .new3{
    margin:0 auto;
    opacity: 0;/*for Animation*/
    transform: translateX(12px);/*for Animation*/
    transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 1.0s; /*easeOutCirc*/
}
#index .birdview h2 .new4{
    margin: 3vw 0 0 3vw;
    font-family: "TsukuMinPr6N-D";
    font-size: 19rem;
    line-height: 30rem;
    letter-spacing: 3rem;
    color: #485157;
    font-weight: normal;
    opacity: 0;/*for Animation*/
    transform: translateX(12px);/*for Animation*/
    transition: all cubic-bezier(0.215, 0.61, 0.355, 1) 1.0s; /*easeOutCirc*/
}

#index .bldg h2 img{
    width: 85%;
    display: block;
    filter: brightness(100);
}
@media print, screen and (min-width: 768px) {/*PC*/
    #index .bldg h2 img{
    width: 100%;
    margin: auto;
    display: block;
    filter: inherit;
    }
}

#index .point{
    text-align: center;
    background-color: #d4d9dc;
}

#index .point ul.esp{
    padding: 0 13px;
    background-color: #004762;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #index .point ul.esp{
        padding: 0;
        display: flex;
        justify-content: center;
        align-items: flex-end;
    }
}

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

#index .point ul.esp li{
    padding: 18px 9px;
    border-bottom: solid 1px rgba( 255, 255, 255, 0.3 );
}
@media print, screen and (min-width: 768px) {/*PC*/
    #index .point ul.esp li{
        width: 366px;
        padding: 20px 30px;
        border: none;
    }
}

#index .point :not(.esp) li{
    padding: 17px 2px 14px;
    border-bottom: solid 1px rgba( 255, 255, 255, 0.8 );
}
@media print, screen and (min-width: 768px) {/*PC*/
    #index .point :not(.esp) li{
        height: 72px;
        margin: 11px 0;
        padding: 4px 16px 0px;
        border-bottom: none;
        border-right: solid 1px rgba( 255, 255, 255, 0.8 );
    }
}

#index .point ul:not(.esp) li:last-child{
    padding: 19px 0 14px;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #index .point ul:not(.esp) li:last-child{
        padding: 4px 16px;
    }
}

#index .point li:last-child{
    border: none;
}

#index .point li.p1 img,
#index .point li.p2 img{
    width: 90%;
}

@media print, screen and (min-width: 768px) {/*PC*/
    #index .point li.p1 img,
    #index .point li.p2 img{
        width: 100%;
    }
    #index .point li.p3 img,
    #index .point li.p4 img,
    #index .point li.p5 img{
        width: auto;
        height: 100%;

    }
}

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

#index .action{
    padding: 28px 10px 20px;
    background-color: #fdfdfd;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #index .action {
        width: 1040px;
        margin: auto;
        padding: 65px 0 35px;
        background-color: inherit;
    }
}

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

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

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

#index .news h3{
    margin: 0 0 8px;
    font-family: "DINNextLTPro-Condensed";
    font-size: 24rem;
    font-weight: normal;
    color: #485157;
    text-align: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #index .news h3{
        width: 146px;
        height: 100%;
        margin: 0;
        font-size: 20rem;
        line-height: 25rem;
        color: #818c92;
        display: block;
    }
}

#index .news table{
    background-image: url(../img/index_img/bg_news_l.png),url(../img/index_img/bg_news_r.png);
    background-size: 61px 59px;
    background-position: left top,right bottom;
    background-repeat: no-repeat;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #index .news table{
        width: 626px;
        min-height: 110px;
        border-left: solid 4px #818c92;
        background-image: none;
    }
}

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

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

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

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

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

#index .concept{
    padding: 70px 0 50px;
    position: relative;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #index .concept{
        margin: 0 0 120px 0;
        padding: 0 0 0 calc(5vw + 50px);
        display: flex;
        justify-content: space-between;
        align-items: flex-end;
        background-image: url(../img/index_img/bg_concept.png);
        background-size: 100% 436px;
        background-position: center bottom;
        background-repeat: repeat-x;
    }
}

#index .concept h3{
    margin: 0 auto 38px;
    font-family: "DINNextLTPro-Condensed";
    font-size: 31rem;
    font-weight: normal;
    text-align: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #index .concept h3{
        display: none;
    }
}

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

#index .concept h4{
    width: 75vw;
    margin: auto;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #index .concept h4{
        width: 395px;
        margin: 0 0 0 -18px;
    }
}

#index .concept h5{
    margin: 30px 0 8px 15vw;
    font-family: "TsukuMinPr6N-D";
    font-size: 18rem;
    line-height: 28rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #index .concept h5{
        margin: 10px 0 34px;
        font-size: 22rem;
        line-height: 36rem;
        color: #4d4d4d;
    }
}

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

#index a.link{
    width: 290px;
    height: 20px;
    margin: auto;
    padding: 5px 0;
    text-align: center;
    background-color: #3e4e57;
    background-image: url(../img/common_img/ic_arrow_wh.png);
    background-size: 11px 10px;
    background-position: 260px center;
    background-repeat: no-repeat;
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #index a.link{
        height: 30px;
        margin: 0;
        padding: 0;
        background-color: #486589;
        display: flex;
        justify-content: space-between;
        align-items: center;
        clip-path: polygon(0 0, 100% 0, 94% 100%, 0 100%);
        position: relative;
        transition: all 500ms 0s ease;
    }
    #index a.link:hover{
        opacity: 1;
        filter: saturate(200%);
        transition: all 250ms 0s ease;
    }
}

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

#index a.link span{
    font-family: "DINNextLTPro-Condensed";
    font-size: 24rem;
    color: #ebeef1;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #index a.link span{
        margin: 2px 33px 0 0;
        font-size: 12rem;
        line-height: 18rem;
    }
}

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

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

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

@media print, screen and (min-width: 768px) {/*PC*/
    #index .location div,
    #index .room div{
        width: 54vw;
        height: 50vw;
        background-image: url(../img/index_img/bg_slash_big.png);
        background-size: auto 100%;
        background-position: right center;
        background-repeat: no-repeat;
        display: flex;
        flex-direction: column;
        justify-content: center;
        position: relative;
        z-index: 999;
    }
    #index .room div{
        margin: 0 0 0 calc(100% - 54vw);
        background-position: left center;
    }

    #index .location div::before,
    #index .room div::before{
        content: " ";
        width: 54vw;
        height: 50vw;
        position: absolute;
        top: 0;
        background-color: rgba( 244, 245, 246, 0.9 );
        clip-path: polygon(0 0, 100% 0, 46% 100%, 0 100%);
    }
    #index .room div::before{
        clip-path: polygon(54% 0, 100% 0, 100% 100%, 0 100%);
    }
}

#index .location h3,
#index .room h3{
    width: 240px;
    height: 47px;
    margin: auto;
    font-size: 19rem;
    font-weight: normal;
    color: #485157;
    background-image: url(../img/common_img/bg_slash_sp.png);
    background-size: 40px 47px;
    background-position: center center;
    background-repeat: no-repeat;
    display: flex;
    justify-content: space-between;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #index .location h3,
    #index .room h3{
        width: 350px;
        margin: -1vw 0 0 5vw;
        padding: 0 0 0 50px;
        font-size: 24rem;
        letter-spacing: 5rem;
        color: #666666;
        background-image: url(../img/index_img/hr_gy.png);
        background-size: 100% 2px;
        background-position: center 40px;
        flex-direction: column;
        position: relative;
    }
    #index .room h3{
        margin: -1vw 0 0 20vw;
    }
}

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

#index .location h3 span,
#index .room h3 span{
    width: 50%;
    margin: 25px 0 0 0;
    white-space: nowrap;
    text-align: left;
    display: block;
}

#index .location p,
#index .room p{
    padding: 20px 0 15px;
    font-family: "TsukuMinPr6N-D";
    font-size: 15rem;
    line-height: 26rem;
    text-align: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #index .location p,
    #index .room p{
        margin: 0 0 0 5vw;
        padding: 55px 0 20px 50px;
        text-align: left;
        position: relative;
    }
    #index .room p{
        margin: 0 0 0 20vw;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    #index .location .link{
        margin: 0 0 0 calc(5vw + 50px);
    }
    #index .room .link{
        margin: 0 0 0 calc(20vw + 50px);
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    #index .location picture,
    #index .room picture{
        width: 100%;
        height: 44vw;
        margin: auto;
        position: absolute;
        top: 0;
        bottom: 0;
        overflow: hidden;
    }
}



/*/// コンセプト ///*/
#concept article{
    margin: 0 !important;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #concept article{
        width: 100% !important;
        position: relative;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    #concept article div{
        width: 1050px;
        margin: 0 auto;
        padding: 0 0 270px 0;
    }
}

#concept article h3{
    margin: 55px 30px 0px;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #concept article h3{
        width: 430px;
        margin: 110px 0 0 -18px;
    }
}

#concept article h4{
    margin: -5px 43px 25px;
    font-family: "TsukuMinPr6N-D";
    font-size: 18rem;
    line-height: 30rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #concept article h4{
        margin: 0 0 45px;
        font-size: 22rem;
        line-height: 34rem;
    }
}

#concept article h3 img:first-child{
    margin: 0 0 15px 0;
}

#concept article p{
    padding: 0 5px 18px 23px;
    font-family: "TsukuMinPr6N-D";
    font-size: 13.5rem;
    text-align: left;
    letter-spacing: -0.25rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #concept article p{
        padding: 0 0 25px 0;
        font-size: 15rem;
        line-height: 30rem;
        position: relative;
        z-index: 999;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    #concept article .fig{
        width: 718px;
        position: absolute;
        top: -50px;
        right: calc((100% - 1050px) / 2);
    }
}

#concept article .fig .pentagon{
    padding: 30px 30px;
    box-sizing: border-box;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #concept article .fig .pentagon{
        width: 400px;
        margin: 0 0 20px 290px;
        padding: 0;
    }
}

#concept article .fig .bldg{
    width: 114vw;
    margin: 0 -7vw 2px -7vw;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #concept article .fig .bldg{
        width: 718px;
        margin: 0;
    }
}



/*/// 生活環境 ///*/
#location .lead .lala{
    width: 100vw;
    margin: 0 -23px;
    position: relative;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #location .lead .lala{
        width: 1050px;
        margin: 25px auto 0;
        position: relative;
    }
}

#location .lead .lala h3{
    font-family: "TsukuMinPr6N-D";
    font-size: 32rem;
    line-height: 34rem;
    letter-spacing: 1rem;
    text-align: left;
    font-weight: normal;
    color: #ffffff;
    position: absolute;
    top: 33px;
    left: 23px;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #location .lead .lala h3{
        font-size: 42rem;
        line-height: 38rem;
        letter-spacing: 2rem;
        top: 55px;
        left: 70px;
    }
}

#location .lead .lala h3 em{
    padding: 0 0 0 2rem;
    font-size: 20rem;
    line-height: 30rem;
    font-style: normal;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #location .lead .lala h3 em{
        padding: 0;
        font-size: 26rem;
        line-height: 40rem;
    }
}

#location .lead .lala h3 span{
    font-size: 26rem;
    vertical-align: -2rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #location .lead .lala h3 span{
        padding: 0 4rem 0 0;
        font-size: 36rem;
        vertical-align: -3rem;
    }
}

#location .lead .lala h4{
    width: 46vw;
    position: absolute;
    bottom: 40vw;
    right: -3vw;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #location .lead .lala h4{
        width: 260px;
        bottom: 375px;
        right: -25px;
    }
}

#location .lead .lala picture{
    margin: 0 0 12px 0;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #location .lead .lala picture{
        margin: 0 0 40px 0;
    }
}

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

#location .lead .station h3{
    margin: 60px 0 -40px;
    font-family: "TsukuMinPr6N-D";
    font-size: 21rem;
    line-height: 30rem;
    letter-spacing: 1rem;
    text-align: center;
    /* color: #485157; */
}
@media print, screen and (min-width: 768px) {/*PC*/
    #location .lead .station h3{
        width: calc(100% + 20px);
        margin: 70px -10px -25px;
        font-size: 28rem;
        line-height: 38rem;
        letter-spacing: 2rem;
    }
}

/* #location .station h3::before{
    content: " ";
    height: 1px;
    margin: 0 0 5px 0;
    display: block;
    background-image: linear-gradient(90deg, rgba(244, 245, 246, 1), rgba(204, 205, 206, 1) 5% 95%, rgba(244, 245, 246, 1));
}
#location .station h3::after{
    content: " ";
    height: 1px;
    margin: 5px 0 0 0;
    display: block;
    background-image: linear-gradient(90deg, rgba(244, 245, 246, 1), rgba(204, 205, 206, 1) 5% 95%, rgba(244, 245, 246, 1));
} */

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

#location .lead .station figure{
    position: relative;
    margin: 60px 0 0 0;
}

#location .lead .station figcaption.tt{
    width: calc(100% - 85px);
    padding: 40px 85px 5px 0;
    font-size: 16rem;
    text-align: right;
    color: #ffffff;
    background-color: rgba( 72, 81, 87, 0.7 );
    clip-path: polygon(0 100%, 100% 0, 100% 100%);
    position: absolute;
    bottom: 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #location .lead .station figcaption.tt{
        width: calc(100% - 95px);
    padding: 50px 95px 10px 0;
    font-size: 22rem;
    }
}

#location .lead .station figcaption b{
    font-size: 19rem;
    font-weight: normal;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #location .lead .station figcaption b{
        font-size: 26rem;
    }
}

#location .lead .station figcaption.ic{
    width: 100px;
    position: absolute;
    bottom: -10px;
    right: -20px;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #location .lead .station figcaption.ic{
        bottom: -10px;
        right: -6px;
    }
}

#location .lead .station h4{
    padding: 12px 23px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #location .lead .station h4{
        padding: 20px 78px 0;
    }
}

#location .lead .station ul.note,
#location .access ul.note{
    margin: 24px 0 0 0;
    color: #808080;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #location .lead .station ul.note,
    #location .access ul.note{
    margin: 20px 0 0 0;
    font-size: 9rem;
}
}

#location .lead .station ul.note li,
#location .access ul.note li{
    margin: 5px 0 0 0;
}

#location .access h3{
    margin: 0 -23px 10px;
    padding: 10px 0;
    font-family: "TsukuMinPr6N-D";
    font-size: 19rem;
    line-height: 19rem;
    letter-spacing: 1rem;
    font-weight: normal;
    color: #485157;
    text-align: center;
   /*  background-image: linear-gradient(90deg, rgba(244, 245, 246, 1), rgba(211, 214, 216, 1) 5% 95%, rgba(244, 245, 246, 1)); */
}
@media print, screen and (min-width: 414px) {
    #location .access h3{
    font-size: 20rem;
    }
}
@media print, screen and (min-width: 768px) {/*PC*/
    #location .access h3{
        margin: 0 -10px 24px;
        font-size: 20rem;
        line-height: 20rem;
        letter-spacing: 2rem;
        background-image: linear-gradient(90deg, rgba(244, 245, 246, 1), rgba(231, 234, 236, 1) 5% 95%, rgba(244, 245, 246, 1));
    }
}  

#location .access{
    padding: 70px 0 0 !important;
}

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

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



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

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

#location .life :not(.list) h3{
    margin: 0 0 12px 0;
    padding: 5px 18px 0;
    font-family: "DINNextLTPro-Condensed";
    font-size: 28rem;
    line-height: 28rem;
    font-weight: normal;
    color: #ffffff;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #location .life h3{
        width: 100%;
        margin: 0 0 12px 0;
        padding: 5px 18px 0;
        box-sizing: border-box;
    }
}
#location .life .edu h3{
    background-color: #81bea8;
}
#location .life .shop h3{
    background-color: #d5b77d;
}
#location .life .pub h3{
    background-color: #91a3c1;
}

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

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

#location .life figure figcaption b{
    margin: 0 10px 0 0;
    font-family: "NewCezannePro-DB";
}


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

#location .list h3{
    margin: 85px auto 15px;
    width: 100%;
    font-family: "DINNextLTPro-Condensed";
    font-size: 48rem;
    line-height: 48rem;
    font-weight: normal;
    text-align: center;
    color: #5d6970;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #location .list h3{
        margin: 30px 0 20px 0;
        font-size: 48rem;
    }
}

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

#location .list h5{
    padding: 7px 12px 3px;
    font-family: "DINNextLTPro-Condensed";
    font-size: 22rem;
    line-height: 22rem;
    font-weight: normal;
    color: #ffffff;
    display: flex;
    justify-content: space-between;
    background-color: #818c92;
}

#location .list h5 strong{
    font-family: "NewCezannePro-DB";
    font-size: 16rem;
    line-height: 17rem;
    font-weight: normal;
}

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

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

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

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

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

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

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

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

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



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

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

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

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

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

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

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

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

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

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

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

#guide .mansiongallery a em{
    font-family: "NewCezannePro-DB";
    font-size: 17rem;
    line-height: 56rem;
    font-style: normal;
}

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

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


/*/// 敷地計画 ///*/
#landplan .landplan h3{
    margin: 55px -10px 0;
    padding: 5px 0 3px;
    font-family: "TsukuMinPr6N-D";
    font-size: 18rem;
    line-height: 26rem;
    text-align: center;
    border-top: solid 1px #b9c8cd;
    border-bottom: solid 1px #b9c8cd;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #landplan .landplan h3{
        margin: 110px 0 0 0;
        padding: 0;
        font-size: 21rem;
        line-height: 31rem;
        letter-spacing: 1rem;
        text-align: left;
        border-top: none;
        border-bottom: none;
        display: flex;
        align-items: center;
    }
    #landplan .landplan h3::before{
        content: "";
        width: 54px;
        height: 54px;
        margin: 0 10px 0 0;
        background-color: #e1e4e6;
    }
}

#landplan .landplan figure{
    margin: 30px -23px 90px;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #landplan .landplan figure{
        width: 605px;
        height: 483px;
        margin: -110px -45px 0 0;
        padding: 0 0 0 490px;
        position: relative;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    #landplan .landplan figure img{
        width: 605px;
    }
}

#landplan .landplan figure figcaption{
    font-family: "TsukuMinPr6N-D";
    font-size: 26rem;
    text-align: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #landplan .landplan figure figcaption{
        width: 639px;
        font-size: 30rem;
        letter-spacing: 2.2rem;
        text-align: left;
        position: absolute;
        left: 0;
        bottom: 0;
        z-index: 9999;
        background-image: url(../img/landplan_img/bg_line.png);
        background-size: 639px auto;
        background-position: 0 74px;
        background-repeat: no-repeat;
    }
}

#landplan .landplan figure figcaption strong{
    font-size: 48rem;
    letter-spacing: 1.5rem;
    white-space: nowrap;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #landplan .landplan figure figcaption strong{
        font-size: 68rem;
    }
}

#landplan .landplan figure figcaption strong b{
    font-size: 84rem;
    line-height: 84rem;
    letter-spacing: -2rem;
    vertical-align: -6rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #landplan .landplan figure figcaption strong b{
        font-size: 105rem;
        line-height: 105rem;
        letter-spacing: -4rem;
    }
}

#landplan .landplan figure figcaption strong::first-letter{
    letter-spacing: -4rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #landplan .landplan figure figcaption strong::first-letter{
        margin: 0 0 0 -8rem;
        letter-spacing: -12rem;
    }
}

#landplan .landplan figure figcaption strong b span{
    margin: 0 4rem 0 4rem;
    font-size: 66rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #landplan .landplan figure figcaption strong b span{
        margin: 0 4rem 0 6rem;
        font-size: 84rem;
    }
}

#landplan .landplan figure figcaption strong img,
#landplan .landplan figure figcaption small{
    display: none;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #landplan .landplan figure figcaption strong img{
        width: 122px;
        margin: -28px 0 0 4px;
        display: inline;
    }

    #landplan .landplan figure figcaption small{
        margin: 0 0 0 -28rem;
        font-family: sans-serif;
        font-weight: lighter;
        font-size: 9rem;
        letter-spacing: 0;
        color: #ffffff;
        position: relative;
        z-index: 999;
        display: inline;
    }
}

#landplan .landplan figure figcaption em{
    margin: -12px 0 20px 0;
    padding: 6px 0 5px 10px;
    font-size: 18rem;
    line-height: 24rem;
    letter-spacing: 2rem;
    font-style: normal;
    background-color: #e8ecee;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #landplan .landplan figure figcaption em{
        margin: 0;
        padding: 0;
        font-size: 22rem;
        line-height: 27rem;
        letter-spacing: 1rem;
        white-space: nowrap;
        background-color: inherit;
    }
}

#landplan .landplan figure figcaption em span{
    font-size: 20rem;
    vertical-align: -1rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #landplan .landplan figure figcaption em span{
        font-size: 24rem;
    }
}

#landplan .landplan picture{
    margin: 10px 0 0 0;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #landplan .landplan picture{
        margin: 20px 0 0 0;
        display: block;
    }
}

#landplan .landplan aside{
    width: 294px;
    margin: auto;
    color: #ffffff;
    background-color: #b83948;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #landplan .landplan aside{
        width: 620px;
        margin: 0;
        overflow: hidden;
    }
}

#landplan .landplan aside>img{
    width: 264px;
    margin: 15px;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #landplan .landplan aside>img{
        width: 190px;
        margin: 18px;
        float: left;
    }
}

#landplan .landplan aside h4{
    margin: auto;
    font-family: "NewCezannePro-DB";
    font-size: 16rem;
    text-align: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #landplan .landplan aside h4{
        font-size: 21rem;
        text-align: left;
    }
}

#landplan .landplan aside h4 img{
    width: 162px;
    margin: 0 0 12px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #landplan .landplan aside h4 img{
        margin: 22px 0 12px 0;
    }
}

#landplan .landplan aside p{
    padding: 8px 15px 15px;
}

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

#landplan .equip h4{
    margin: 85px 0 0 0;
    font-family: "DINNextLTPro-Condensed";
    font-size: 48rem;
    line-height: 48rem;
    font-weight: normal;
    text-align: center;
    color: #818c92;
    border-bottom: solid 1px #666666;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #landplan .equip h4{
        width: 100%;
        margin: 0 0 0 0;
        padding: 0 0 6px 0;
        text-align: left;
    }
}

#landplan .equip dl{
    margin: 24px 0 48px;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #landplan .equip dl{
        width: 488px;
        margin: 0;
    }
}

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

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

#landplan .equip .box img{
    width: 50vw;
    margin: 20px calc((100% - 50vw) * 0.35) 0 calc((100% - 50vw) * 0.65);
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #landplan .equip .box img{
        width: 180px;
        margin: 20px auto 0;
    }
}

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



/*/// デザイン ///*/
#design main section{
    position: relative;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #design main section{
        min-width: 1166px;
        margin: 110px 0 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: flex-end;
    }
}

#design main section h3{
    margin: 40px 0 0 23px;
    font-family: "DINNextLTPro-Condensed";
    font-size: 54rem;
    line-height: 26rem;
    letter-spacing: 0;
    font-weight: normal;
    background-image: url(../img/common_img/hr_block_r.png);
    background-position: right bottom;
    background-repeat: no-repeat;
    transform: translateX(50px) translateY(0);/*for Animation*/
    opacity: 0;/*for Animation*/

}
#design main section h3 span{
    display: block;
    transform: translateX(-120px) translateY(0);/*for Animation*/
    opacity: 0;/*for Animation*/
}
@media print, screen and (min-width: 768px) {/*PC*/
    #design main section h3{
        margin: 0;
        font-size: 68rem;
        line-height: 34rem;
        letter-spacing: -1rem;
        white-space: nowrap;
        transform: translateX(100px) translateY(0);/*for Animation*/
    }
}

#design main section h4{
    margin: 20px 0 8px 23px;
    font-family: "NewCezannePro-DB";
    font-size: 18rem;
    line-height: 28rem;
    letter-spacing: 1rem;
    transform: translateX(20px) translateY(0);/*for Animation*/
    opacity: 0;/*for Animation*/
}
@media print, screen and (min-width: 768px) {/*PC*/
    #design main section h4{
        margin: 24px 0 14px;
        font-size: 22rem;
        line-height: 36rem;
    }
}

#design main section figure.ph2{
    margin: 28px 23px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #design main section figure.ph2{
        margin: 0;
    }
    
}

#design main section p{
    margin: 0 23px;
    line-height: 30rem;
    transform: translateX(20px) translateY(0);/*for Animation*/
    opacity: 0;/*for Animation*/
}
@media print, screen and (min-width: 768px) {/*PC*/
    #design main section p{
        margin: 12px 0 0 0;
        font-size: 15rem;
    }
}

#design .lead{
    margin: 55px 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #design .lead{
        margin: 75px 0 0;
    }
}

#design .lead figure img{
    width: 110%;
    margin: 0 -5%;
}

@media print, screen and (min-width: 768px) {/*PC*/
    #design .lead div{
        width: 600px;
        margin: 70px 0 0 calc((100% - 1050px) / 2);
}
}

#design .lead h4{
    margin: 10px 23px;
    font-family: "NewCezannePro-DB";
    font-size: 18rem;
    line-height: 30rem;
    letter-spacing: 1rem;
    font-weight: normal;
    transform: translateX(20px) translateY(0);/*for Animation*/
}
@media print, screen and (min-width: 768px) {/*PC*/
#design .lead h4{
    margin: 0;
    font-size: 22rem;
    line-height: 36rem;
    letter-spacing: 2rem;
    transform: translateX(-30px) translateY(0);/*for Animation*/
}
}

#design .lead div p{
    transform: translateX(20px) translateY(0);/*for Animation*/
}
@media print, screen and (min-width: 768px) {/*PC*/
    #design .lead div p{
    transform: translateX(-30px) translateY(0);/*for Animation*/
}
}

#design .concept{
    margin: 66px 23px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#design .concept{
    width: 420px;
    margin: 20px calc((100% - 1050px) / 2) 0 0;
}
}

#design .concept h5{
    margin: 0 0 13px;
    font-family: "DINNextLTPro-Condensed";
    font-size: 36rem;
    line-height: 19rem;
    font-weight: normal;
    text-align: center;
    border-bottom: solid 1px #30353a;
    opacity: 0;/*for Animation*/
    transform: translateX(0) translateY(20px);/*for Animation*/
}
@media print, screen and (min-width: 768px) {/*PC*/
    #design .concept h5{
        text-align: left;
        transform: translateX(30px) translateY(0);/*for Animation*/
    }
}

#design .concept p{
    margin: 0 0 30px;
    font-size: 13rem;
    line-height: 25rem;
    opacity: 0;/*for Animation*/
    transform: translateX(0) translateY(20px);/*for Animation*/
}
@media print, screen and (min-width: 768px) {/*PC*/
#design .concept p{
    margin: 0 0 -6px;
    transform: translateX(30px) translateY(0);/*for Animation*/
    }
}

#design .concept span{
    margin: 15px 0 0 0;
    display: block;
    text-align: left;
}

#design .concept span small{
    margin: 0 8px 0 0;
}

#design .concept span img{
    width: 42px;
    margin: 0 0 0 20px;
    vertical-align: -15px;
}

@media print, screen and (min-width: 768px) {/*PC*/
    #design .facade figure{
        width: 55%;
    }
}

#design .facade figure.lala{
    margin: 0 0 110px 0;
    transform: translateX(15px);/*for Animation*/
    transform-origin: center bottom;/*for Animation*/
    opacity: 0;/*for Animation*/
}

@media print, screen and (min-width: 768px) {/*PC*/
#design .facade figure.lala{
    width: 100%;
    margin: 100px 0 0 0;
    transform: translateX(-50px);/*for Animation*/
    order: 1;
}
}

#design .facade figure.ext{
    transform: translateX(-50px);/*for Animation*/
    transform-origin: center bottom;/*for Animation*/
    opacity: 0;/*for Animation*/
}

@media print, screen and (min-width: 768px) {/*PC*/
    #design .facade div{
        width: calc(45% - 70px);
        margin: 0 0 -10px 0;
    }
}

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

@media print, screen and (min-width: 768px) {/*PC*/
    #design .approach{
        justify-content: right;
        align-items: flex-start;
    }
}

#design .approach .ph1,
#design .hall .ph1{
    transform: translateX(50px);/*for Animation*/
    opacity: 0;/*for Animation*/
}
#design .approach .ph2,
#design .hall .ph2{
    transform: scale(1.1);/*for Animation*/
    opacity: 0;/*for Animation*/
}
@media print, screen and (min-width: 768px) {/*PC*/
    #design .approach .ph2,
    #design .hall .ph2{
    transform: translateX(50px) scale(1);/*for Animation*/
    opacity: 0;/*for Animation*/
}
}
@media print, screen and (min-width: 768px) {/*PC*/
    #design .approach .ph1{
        margin: 70px 0 0 0;
        order: 1;
    }
    #design .approach .ph2{
        width: 60%;
        position: relative;
        z-index: 99;
    }
}

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

@media print, screen and (min-width: 768px) {/*PC*/
    #design .facade h3 span,
    #design .approach h3 span,
    #design .hall h3 span{
        transform: translateX(-150px) translateY(0);/*for Animation*/
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    #design .approach h4,
    #design .approach p,
    #design .hall h4,
    #design .hall p{
        transform: translateX(-20px) translateY(0);/*for Animation*/
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    #design .hall .ph1{
        width: calc(100% - 100px);
        margin: 0 0 70px 0;
        transform: translateX(-50px) translateY(0);/*for Animation*/
    }
    #design .hall .ph2{
        width: 50%;
        margin: 0 0 0 100px;
        transform: translateX(-50px) translateY(0);/*for Animation*/
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    #design .hall div{
        width: calc(50% - 170px);
        order: 1;
    }
}

#design .wifi{
    margin: 18px 0 0 0;
    font-size: 11rem;
    line-height: 12rem;
    display: block;
}

#design .wifi img{
    width: 70px;
    margin: -2px 4px 0 0;
    float: left;
}


/*/// 居住空間 ///*/
#inner .ldk_a,
#inner .ldk_c,
#inner .ldk_g{
    margin: 0 0 70px 0;
    position: relative;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #inner .ldk_c{
        width: calc(100% - 120px);
        margin: 0 120px 70px 0;
    }
    #inner .ldk_g{
        width: calc(100% - 120px);
        margin: 0 0 70px 120px;
    }
}

#inner .ldk_c figure,
#inner .ldk_g figure{
    opacity: 0;/*for Animation*/
}
@media print, screen and (min-width: 768px) {/*PC*/
    #inner .ldk_c figure{
        transform: translateX(-60px) translateY(0);/*for Animation*/
    }
    #inner .ldk_g figure{
        transform: translateX(60px) translateY(0);/*for Animation*/
    }
}

#inner .ldk_a h3,
#inner .ldk_c h3,
#inner .ldk_g h3{
    font-family: "DINNextLTPro-Condensed";
    font-size: 54rem;
    line-height: 26rem;
    letter-spacing: 0;
    font-weight: normal;
    background-repeat: no-repeat;
    opacity: 0;/*for Animation*/

}
#inner .ldk_a h3,
#inner .ldk_g h3{
    margin: 30px 23px 0 0;
    padding: 0 0 0 calc(100vw - 320px + 23px);
    background-image: url(../img/common_img/hr_block_l.png);
    background-position: left bottom;
    transform: translateX(-60px) translateY(0);/*for Animation*/
}
#inner .ldk_c h3{
    margin: 30px 0 0 23px;
    background-image: url(../img/common_img/hr_block_r.png);
    background-position: right bottom;
    transform: translateX(60px) translateY(0);/*for Animation*/
}
#inner .ldk_a h3 span,
#inner .ldk_g h3 span{
    display: block;
    transform: translateX(120px) translateY(0);/*for Animation*/
    opacity: 0;/*for Animation*/
}
#inner .ldk_c h3 span{
    display: block;
    transform: translateX(-120px) translateY(0);/*for Animation*/
    opacity: 0;/*for Animation*/
}
@media print, screen and (min-width: 768px) {/*PC*/
    #inner .ldk_a h3,
    #inner .ldk_c h3,
    #inner .ldk_g h3{
        margin: 0;
        font-size: 68rem;
        line-height: 34rem;
        letter-spacing: -1rem;
        white-space: nowrap;
        color: #ffffff;
        /*transform: translateX(100px) translateY(0);/*for Animation*/
    }
    #inner .ldk_a h3,
    #inner .ldk_g h3{
        padding: 0;
        background-image: url(../img/common_img/hr_block_r_wh.png);
        background-position: right bottom;
        transform: translateX(60px) translateY(0);/*for Animation*/
    }
    #inner .ldk_c h3{
        padding: 0 0 0 120px;
        background-image: url(../img/common_img/hr_block_l_wh.png);
        background-position: left bottom;
        transform: translateX(-60px) translateY(0);/*for Animation*/
    }
    #inner .ldk_a h3 span,
    #inner .ldk_g h3 span{
        transform: translateX(-120px) translateY(0);/*for Animation*/
    }
    #inner .ldk_c h3 span{
        transform: translateX(120px) translateY(0);/*for Animation*/
    }
}

#inner .ldk_a h3 small,
#inner .ldk_c h3 small,
#inner .ldk_g h3 small{
    margin: 0 0 0 13px;
    font-size: 13rem;
    line-height: 9rem;
    letter-spacing: .5rem;
    vertical-align: 10rem;opacity: 0;/*for Animation*/
}

#inner main section h4{
    margin: 16px 0 8px 23px;
    font-family: "NewCezannePro-DB";
    font-size: 18rem;
    line-height: 28rem;
    letter-spacing: 1rem;
    text-align: left;
    white-space: nowrap;
    transform: translateX(30px) translateY(0);/*for Animation*/
    opacity: 0;/*for Animation*/
}
@media print, screen and (min-width: 768px) {/*PC*/
    #inner main section h4{
        margin: 24px 0 14px;
        font-size: 22rem;
        line-height: 36rem;
    }
}

#inner main section p{
    margin: 0 23px;
    line-height: 30rem;
    transform: translateX(30px) translateY(0);/*for Animation*/
    opacity: 0;/*for Animation*/
}
@media print, screen and (min-width: 768px) {/*PC*/
    #inner main section p{
        margin: 12px 0 0 0;
        font-size: 15rem;
    }
}

#inner .ldk_a h4,
#inner .ldk_g h4,
#inner .ldk_a p,
#inner .ldk_g p{
    padding: 0 0 0 calc(100vw - 320px);
}
@media print, screen and (min-width: 768px) {/*PC*/
    #inner .ldk_a h4,
    #inner .ldk_g h4,
    #inner .ldk_a p,
    #inner .ldk_g p{
    padding: 0;
    color: #ffffff;
    }
    #inner .ldk_c h4,
    #inner .ldk_c p{
    padding: 0 0 0 120px;
    color: #ffffff;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    #inner .ldk_a div,
    #inner .ldk_c div,
    #inner .ldk_g div{
        width: 400px;
        position: absolute;
        bottom: 40px;
    }
    #inner .ldk_a div,
    #inner .ldk_g div{
        right: 0;
    }
}

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

#inner .living h3,
#inner .roomspace h3{
    margin: auto;
    font-family: "DINNextLTPro-Condensed";
    font-size: 58rem;
    line-height: 44rem;
    font-weight: normal;
    text-align: center;
    opacity: 0;/*for Animation*/
}
@media print, screen and (min-width: 768px) {/*PC*/
    #inner .living h3{
        margin: 0;
        padding: 0 0 0 120px;
        font-size: 80rem;
        line-height: 40rem;
        text-align: left;
        background-image: url(../img/common_img/hr_block_l.png);
        background-position: left bottom;
        background-repeat: no-repeat;
        order: -2;
        transform: translateX(-60px) translateY(0);/*for Animation*/
    }
    #inner .roomspace h3{
        width: calc(100% - 44% - 18% - 6px - 120px);
        height: 40px;
        margin: 14px 0 0 0;
        font-size: 80rem;
        line-height: 40rem;
        text-align: left;
        background-image: url(../img/common_img/hr_block_r.png);
        background-position: right bottom;
        background-repeat: no-repeat;
        order: -1;
        transform: translateX(60px) translateY(0);/*for Animation*/
    }
    #inner .living h3 span{
        transform: translateX(120px) translateY(0);/*for Animation*/
        opacity: 0;/*for Animation*/
        display: block;
    }
    #inner .roomspace h3 span{
        transform: translateX(-120px) translateY(0);/*for Animation*/
        opacity: 0;/*for Animation*/
        display: block;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    #inner .living div{
        width: calc(100% - 120px);
        padding: 0 0 24px 120px;
        order: -1;
    }
}

#inner .living figure{
    margin: 0 0 6px 0;
}
#inner .living figure.ph1{
    transform: translateX(30px) translateY(0);/*for Animation*/
    opacity: 0;/*for Animation*/
}
#inner .living figure.ph2{
    transform: translateX(-30px) translateY(0);/*for Animation*/
    opacity: 0;/*for Animation*/
}
@media print, screen and (min-width: 768px) {/*PC*/
    #inner .living figure{
        margin: 0;
    }
    #inner .living figure.ph1{
        transform: translateX(0) translateY(0) scale(1.05);/*for Animation*/
        opacity: 0;/*for Animation*/
    }
    #inner .living figure.ph2{
        width: calc(100% - 480px);
        margin: 65px 0 0 0;
    }
}

#inner .living aside{
    margin: 70px 55px;
    transform: translateX(0) translateY(40px);/*for Animation*/
    opacity: 0;/*for Animation*/
}
@media print, screen and (min-width: 768px) {/*PC*/
    #inner .living aside{
        width: 300px;
        margin: 0 120px 0 60px;
        display: flex;
        flex-direction: column;
        transform: translateX(30px) translateY(0);/*for Animation*/
    }
}

#inner .living aside h5{
    font-family: "DINNextLTPro-Condensed";
    font-size: 36rem;
    line-height: 30rem;
    font-weight: normal;
    text-align: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #inner .living aside h5{
        text-align: left;
    }
}

#inner .living aside p{
    margin: 0 0 6px 0;
    font-size: 13rem;
    line-height: 25rem;
}

#inner .living aside .note{
    display: block;
}

@media print, screen and (min-width: 768px) {/*PC*/
    #inner .living aside figure{
        margin: 12px 0 0 0;
        order: 1;
    }
}

#inner .roomspace{
    margin: 140px 0 0 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #inner .roomspace{
    margin: 200px 0 0 0;
    justify-content: right;
    position: relative;
}
}

#inner .roomspace .ph1{
    margin: 0 0 6px 0;
    transform: translateX(30px) translateY(0);/*for Animation*/
    opacity: 0;/*for Animation*/
}
#inner .roomspace .ph2{
    width: calc(68% - 3px);
    transform: translateX(-30px) translateY(0);/*for Animation*/
    opacity: 0;/*for Animation*/
}
#inner .roomspace .ph3{
    width: calc(32% - 3px);
    transform: translateX(-30px) translateY(0);/*for Animation*/
    opacity: 0;/*for Animation*/
}
@media print, screen and (min-width: 768px) {/*PC*/
    #inner .roomspace .ph1{
        margin: 70px 0 0 0;
        order: 1;
        transform: translateX(0) translateY(0) scale(1.05);/*for Animation*/
    }
    #inner .roomspace .ph2{
        width: 44%;
        transform: translateX(30px) translateY(0);/*for Animation*/
    }
    #inner .roomspace .ph3{
        width: 18%;
        margin: 0 0 0 6px;
        transform: translateX(30px) translateY(0);/*for Animation*/
    }
}

#inner .roomspace .ph2 img,
#inner .roomspace .ph3 img{
    height: 100%;
    object-fit: cover;
}

@media print, screen and (min-width: 768px) {/*PC*/
    #inner .roomspace div{
        width: calc(100% - 44% - 18% - 6px - 120px);
        margin: 52px 0 0 calc((100% - 44% - 18% - 6px - 120px) * -1);
        order: -1;
    }
}


/*/// 間取り ///*/
#roomtype .otherpage{
    margin: 0 0 30px;
}
#roomtype .otherpage li{
    margin: 0 0 23px 0;
}
/* #roomtype .otherpage li img{
    width: 100%;
} */
@media print, screen and (min-width: 768px) {/*PC*/
#roomtype .otherpage{
    width: 1050px;
    display: flex;
    justify-content: space-between;
}
#roomtype .otherpage li{
    width: 510px;
}
}

#roomtype .otherpage a{
    padding: 15px 17px 0;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .otherpage a{
        width: 270px;
        height: 154px;
        padding: 15px 203px 0 37px;
        position: relative;
        transition: all cubic-bezier(0.23, 1, 0.32, 1) 0.75s; /*easeOutQuint*/
    }
     #roomtype .otherpage a:hover{
        /* opacity: 0.7; */
        transition: all cubic-bezier(0.23, 1, 0.32, 1) 1s; /*easeOutQuint*/
     }
}

#roomtype .otherpage a.bn_select{
    background-color: #849db7;
}
#roomtype .otherpage a.bn_option{
    background-color: #8c8c8c;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .otherpage a.bn_select:hover{
        background-color: #7089a3;
    }
    #roomtype .otherpage a.bn_option:hover{
        background-color: #777777;
    }
}

#roomtype .otherpage a h4{
    font-family: "DINNextLTPro-Condensed";
    font-size: 48rem;
    line-height: 38rem;
    font-weight: normal;
    color: #ffffff;
    text-align: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .otherpage a h4{
        font-size: 50rem;
    }
}

#roomtype .otherpage a b{
    width: 100%;
    font-family: "NewCezannePro-DB";
    font-size: 14rem;
    line-height: 14rem;
    font-weight: normal;
    color: #ffffff;
    text-align: center;
    display: flex;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .otherpage a b{
        font-size: 13rem;
        line-height: 13rem;
    }
}
#roomtype .otherpage a.bn_select b span{
    width: 50%;
    padding: 3px 0;
    display: block;
}
#roomtype .otherpage a.bn_select b span:nth-child(1){
    background-color: #808080;
}
#roomtype .otherpage a.bn_select b span:nth-child(2){
    padding: 3px 0 3px 14rem;
    letter-spacing: 14rem;
    background-color: #d15669;
}
#roomtype .otherpage a.bn_option b span{
    width: 100%;
    padding: 3px 0 3px 14rem;
    letter-spacing: 14rem;
    display: block;
    background-color: #b2b2b2;
}

#roomtype .otherpage a p{
    width: 59%;
    padding: 9px 0 8px;
    font-family: "TsukuMinPr6N-D";
    font-size: 13rem;
    line-height: 21rem;
    letter-spacing: 0.1rem;
    color: #ffffff;
    display: block;
    float: left;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .otherpage a p{
        width: 270px;
        padding: 5px 0 8px 0;
        line-height: 19rem;
        border-bottom: solid 1px rgba( 255, 255, 255, 0.5 );
    }
}

#roomtype .otherpage a img{
    width: 38%;
    margin: 12px 0;
    float: right;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .otherpage a img{
        width: auto;
        height: 100%;
        margin: 0;
        position: absolute;
        top: 0;
        right: 0;
    }
}

#roomtype .otherpage a>span{
    padding: 5px 0 2px;
    font-family: "DINNextLTPro-Condensed";
    font-size: 16rem;
    line-height: 16rem;
    color: #ffffff;
    text-align: center;
    background-image: url(../img/common_img/bg_button.png);
    background-size: 12px;
    background-position: right bottom;
    background-repeat: no-repeat;
    display: block;
    clear: both;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .otherpage a>span{
        padding: 0 16px 0 0;
        text-align: left;
        background-image: url(../img/common_img/ic_arrow_wh.png);
        background-size: 11px 10px;
        background-position: right 2px;
        background-repeat: no-repeat;
        display: inline-block;
        background-color: inherit !important;
    }
}

#roomtype .otherpage a.bn_select>span{
    background-color: #70869c;
}
#roomtype .otherpage a.bn_option>span{
    background-color: #777777;
}

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

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

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

#roomtype .fig h4 {
    margin: 0 0 -41rem 0;
    font-family: "DINNextLTPro-Condensed";
    font-size: 30rem;
    font-weight: normal;
    text-align: center;
}

#roomtype .fig h4 strong {
    font-size: 100rem;
    line-height: 92rem;
    font-weight: normal;
    display: block;
}

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

#roomtype .fig h5 {
    padding: 0 0 4px 0;
    font-family: "DINNextLTPro-Condensed";
    font-size: 48rem;
    font-weight: normal;
    letter-spacing: 1rem;
    text-align: right;
}

 @media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .fig h5 {
        position: absolute;
        top: 130px;
        left: 0;
    }
}

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

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

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

#roomtype .fig .size dl strong {
    margin: 0 0 0 3px;
    font-family: "DINNextLTPro-Condensed";
    font-size: 32rem;
    font-weight: normal;
}

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

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

 @media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .fig .a_type figure {
        width: 455px;
        margin: 50px auto 25px;
    }
    #roomtype .fig .f1_type figure {
        width: 455px;
        /* margin: 30px auto 25px; */
    }
}

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

#roomtype .fig .point li {
    width: calc(50% - 5px);
    margin: 3px 0;
    padding: 8px 0 7px;
    color: #3e4e57;
    font-size: 14rem;
    line-height: 14rem;
    letter-spacing: -0.25rem;
    text-align: center;
    border: solid 1px #818c92;
    background-color: rgba( 129, 140, 146, 0.1 );
    border-radius: 3px;
}

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

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

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

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

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

#roomtype .fig figure {
    clear: both;
}

#roomtype .rooms{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    /* opacity: 0; */
}

#roomtype .rooms h3{
    width: calc(100% + 20px);
    margin: 55px -10px 35px;
    padding: 10px 0;
    font-family: "TsukuMinPr6N-D";
    font-size: 17rem;
    line-height: 27rem;
    font-weight: normal;
    text-align: center;
    border-top: solid 1px #b9c8cd;
    border-bottom: solid 1px #b9c8cd;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .rooms h3{
        width: 100%;
        margin: 55px 0 50px;
        padding: 0;
        font-size: 20rem;
        line-height: 30rem;
        /* font-size: 18rem;
        line-height: 28rem; */
        border: none;
    }
}

#roomtype .rooms>div{
    width: 100%;
    padding: 17px;
    min-height: 180px;
    margin: 0 0 18px 0;
    position: relative;
    background-color: #ffffff;
    box-shadow: 2px 2px 2px 2px rgba(0, 0, 0, 0.01);
    /* opacity: 0; */
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .rooms>div{
        width: 213px;
        padding: 10px 18px 18px;
        overflow: hidden;
        box-shadow: 3px 3px 4px 0 rgba(0, 0, 0, 0.03);
    }
}

#roomtype .rooms>div>a{
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-content: flex-start;
}

#roomtype .rooms div h4{
    width: calc(100% - 210px);
    height: 148px;
    font-family: "DINNextLTPro-Condensed";
    /* font-size: 106rem;
    line-height: 106rem; */
    font-size: 92rem;
    line-height: 92rem;
    font-weight: normal;
    color: #436484;
    background-image: url(../img/common_img/bg_slash_bl.png);
    background-size: auto 140px;
    background-position: right center;
    background-repeat: no-repeat;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .rooms div h4{
        width: 72px;
        height: 110px;
        font-size: 80rem;
        line-height: 76rem;
        background-size: auto 110px;
        background-position: right top;
    }
}

#roomtype .rooms div h4.wide{
    width: calc(100% - 195px);
    margin: 0 0 0 -5px;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .rooms div h4.wide{
        width: 90px;
        margin: 0;
    }
}

#roomtype .rooms div h4 small{
    margin: -20px 0 0 0;
    font-family: "DINNextLTPro-MediumCond";
    font-size: 18rem;
    line-height: 18rem;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .rooms div h4 small{
        margin: -18px 0 0 0;
        font-size: 14rem;
    }
}

#roomtype .rooms div h4 span{
    display: inline-block;
    text-align: center;
}
/* #roomtype .rooms div h4 b{
    margin: 0 0 -20rem 0;
    font-family: "DINNextLTPro-Condensed";
    font-size: 106rem;
    line-height: 106rem;
    font-weight: normal;
    display: inline-block;
} */


#roomtype .rooms>div>a>dl{
    width: 200px;
    color: #485157;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .rooms>div>a>dl{
        width: 100%;
        margin: -36px 0 0 0;
    }
}

#roomtype .rooms>div>a>dl>dt{
    /* font-family: "DINNextLTPro-Condensed";
    font-size: 47rem;
    line-height: 65rem; */
    font-family: "DINNextLTPro-Regular";
    font-size: 33rem;
    line-height: 65rem;
    letter-spacing: -1rem;
    font-weight: normal;
    text-align: right;
    white-space: nowrap;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .rooms>div>a>dl>dt{
        font-size: 33rem;
        line-height: 60rem;
        letter-spacing: -2rem;
    }
}

#roomtype .rooms dl.sq{
    margin: 0;
    color: #485157;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-content: flex-start;
}
@media print, screen and (min-width: 768px) {/*PC*/
#roomtype .rooms dl.sq{
    height: 85px;
}
}

#roomtype .rooms dl.sq dt{
    width: 40%;
    margin: 1px 0 0 0;
    font-size: 14rem;
    line-height: 14rem;
    white-space: nowrap;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .rooms dl.sq dt{
        font-size: 13rem;
        line-height: 13rem;
    }
}

#roomtype .rooms dl.sq dd{
    width: 60%;
	margin: 0px 0 0 0;
	font-family: "DINNextLTPro-Condensed";
	font-size: 20rem;
    line-height: 20rem;
    text-align: right;
    white-space: nowrap;
}

#roomtype .rooms dl.sq dd b{
    font-size: 28rem;
    font-weight: normal;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .rooms dl.sq dd b{
        font-size: 28rem;
    }
}

#roomtype .rooms dl.sq dd small{
    font-family: "NewCezannePro-DB";
    font-size: 12rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .rooms dl.sq dd small{
        font-size: 14rem;
    }
}

#roomtype .rooms>div ul{
    width: 100%;
}

#roomtype .rooms>div li{
    height: 36px;
    height: 32px;
    margin: 6px 0 0 0;
    background-color: #5278a0;
    background-image: url(../img/common_img/bg_button.png);
    background-size: 12px;
    background-position: right bottom;
    background-repeat: no-repeat;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .rooms>div li{
        height: 26px;
        margin: 5px 0 0 0;
        transition: all cubic-bezier(0.23, 1, 0.32, 1) 0.75s; /*easeOutQuint*/
    }
    #roomtype .rooms>div li:first-child{
        margin: 0;
    }
    #roomtype .rooms>div li:hover{
        background-color: #1e68b4;
        transition: all cubic-bezier(0.23, 1, 0.32, 1) 1s; /*easeOutQuint*/
    }
}

#roomtype .rooms>div li a{
    height: 100%;
    font-size: 15rem;
    color: #ffffff;
    display: flex;
    justify-content: center;
    align-items: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .rooms>div li a{
        font-size: 14rem;
        letter-spacing: 0.25rem;

    }
}

#roomtype .rooms>div li:first-child a{
    font-size: 16rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .rooms>div li:first-child a{
        font-size: 15rem;
    }
}

#roomtype .rooms>div li a b{
    margin: 0 0 -5px 2px;
    font-family: "DINNextLTPro-Condensed";
    font-size: 24rem;
    font-weight: normal;
}



#roomtype .rooms ul.note{
    width: 100%;
    margin: 0 0 75px 0;
    font-size: 12rem;
    line-height: 18rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .rooms ul.note{
        margin: 0 0 40px 0;
        display: flex;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .rooms ul.note li{
        margin: 0 18px 0 0;
    }
}

#roomtype .diagram,
#roomplan .diagram{
    margin: 0 -23px;
    padding: 36px 0 0 0;
    clear: both;
    overflow: hidden;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .diagram{
        margin: 0 auto 30px;
    }
}

#roomplan .diagram{
    padding: 36px 10px 0 10px;
    height: 0;
    opacity: 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomplan .diagram{
        width: 360px;
        height: auto;
        margin: auto;
        padding: 60px 0 0 0;
        opacity: 1;
    }
}

#roomtype .diagram figure,
#roomplan .diagram figure{
    margin: 0 10px 40px;
    padding: 0 13px;
    background-image: url(../img/roomplan_img/fig_block_floor.png);
    background-size: auto 100%;
    background-position: left bottom;
    background-repeat: no-repeat;
    border-bottom: solid 3px #bac0c4;
    line-height: 0;
    position: relative;display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .diagram figure{
        width: 550px;
        margin: 0 auto;
        padding: 0 55px;
        background-position: 30px bottom;
    }
    #roomplan .diagram figure{
        margin: 0;
    }
}

#roomtype .diagram figcaption,
#roomplan .diagram figcaption{
    width: 250px;
    height: 26px;
    margin: auto;
    position: absolute;
    top: -36px;
    left: 0;
    right: 0;
    font-family: "NewCezannePro-DB";
    font-size: 18rem;
    letter-spacing: 1rem;
    color: #818c92;
    display: flex;
    justify-content: center;
    align-items: center;
    background-image: linear-gradient(90deg, rgba(244, 245, 246, 1), rgba(231, 234, 236, 1) 5% 95%, rgba(244, 245, 246, 1));
}
#roomplan .diagram figcaption{
    height: 24px;
    font-size: 15rem;
    top: -32px;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomplan .diagram figcaption{
        width: 160px;
        height: 18px;
        font-size: 13rem;
        top: -24px;
    }
}

#roomtype .diagram figure .name,
#roomplan .diagram figure .name{
    display: flex;
}

#roomtype .diagram figure .block,
#roomplan .diagram figure .block{
    display: flex;
    align-items: flex-end;
    position: relative;
}

#roomtype .diagram figure .block .f1,
#roomplan .diagram figure .block .f1{
    width: calc(100% / 3.5);
    position: absolute;
    top: 0;
    right: 0;
}

@media print, screen and (min-width: 768px) {/*PC*/
    #roomplan .diagram figure .block a,
    #roomtype .diagram figure .block a{
        transition: all cubic-bezier(0.23, 1, 0.32, 1) 0.75s; /*easeOutQuint*/
    }
    #roomplan .diagram figure .block a:hover,
    #roomtype .diagram figure .block a:hover{
        filter: brightness(90%);
        transition: all cubic-bezier(0.23, 1, 0.32, 1) 1s; /*easeOutQuint*/
    }
}

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

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

#roomtype .select h4,
#roomtype .equip h4{
    margin: 85px 0 0 0;
    font-family: "DINNextLTPro-Condensed";
    font-size: 48rem;
    line-height: 48rem;
    font-weight: normal;
    text-align: center;
    color: #818c92;
    border-bottom: solid 1px #666666;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .select h4,
    #roomtype .equip h4{
        width: 100%;
        margin: 0 0 0 0;
        padding: 0 0 6px 0;
        text-align: left;
    }
}

#roomtype .select h4 span,
#roomtype .equip h4 span{
    padding: 7px 0;
    font-family: "NewCezannePro-DB";
    font-size: 16rem;
    line-height: 16rem;
    color: #333333;
    border-top: solid 1px #666666;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .select h4 span,
    #roomtype .equip h4 span{
        margin: 0 0 0 15px;
        padding: 8px 0 8px 15px;
        font-size: 18rem;
        border-left: solid 1px #989898;
        border-top: none;
        display: inline;
        vertical-align: 6px;
    }
}

#roomtype .select dt{
    margin: 15px 0 8px 0;
    font-family: "DINNextLTPro-Condensed";
    font-size: 24rem;
    color: #657983;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .select dt{
        font-size: 24rem;
        margin: 18px 0 6px 0;
    }
}

#roomtype .select .ic{
    width: 120px;
    display: flex;
    flex-wrap: wrap;
    font-size: 13rem;
    line-height: 13rem;
    font-weight: normal;
    border: solid 1px #b83948;
}

#roomtype .select .ic span{
    width: 50%;
    padding: 5px 0 1px;
    text-align: center;
    white-space: nowrap;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .select .ic span{
        padding: 4px 0 1px;
    }
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

#roomtype .zeh{
    padding: 20px 20px 23px 20px;
    background-color: rgba( 200, 231, 231, 0.7 );
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .zeh{
        width: 444px;
        padding: 15px 23px 23px 23px;
    }
}


#roomtype .zeh h4{
    margin: 0;
    text-align: center;
    border-bottom: solid 1px #78ad9c;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .zeh h4{
        line-height: 0;
    }
}

#roomtype .zeh h4 img{
    width: 200px;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .zeh h4 img{
        width: 170px;
    }
}

#roomtype .zeh h5{
    margin: 0 -20px;
    padding: 10px 0 30px;
    font-family: "NewCezannePro-DB";
    font-size: 17rem;
    line-height: 28rem;
    font-weight: normal;
    text-align: center;
}

#roomtype .zeh h5 b{
    font-size: 22rem;
    font-weight: normal;
}

#roomtype .zeh h5 b span{
    color: #11983f;
}

#roomtype .zeh h5 small{
    font-size: 11rem;
}

@media print, screen and (min-width: 768px) {/*PC*/
    #roomtype .zeh figure{
        width: 380px;
        margin: auto;
    }
}

/*各間取り*/
#roomplan .nav_tab{
    width: calc(100% - 20px);
    margin: 0 auto 0;
    padding: 0 0 19px 0;
    display: flex;
    justify-content: space-between;
    opacity: 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomplan .nav_tab{
        width: 1050px;
        margin: 20px auto 0;
    }
}

#roomplan .nav_tab button{
    width: calc(100% / 3) !important;
    margin: 0 1px; 
    padding: 30px 0 3px 0;
    appearance: none;
    font-family: "NewCezannePro-DB";
    font-size: 14rem;
    line-height: 22rem;
    letter-spacing: 0;
    white-space: nowrap;
    color: #666666;
    border: none;
    border-bottom: solid 8px #bbc1c4;
    background-color: inherit;
    background-image: inherit;
    position: relative;
    cursor:pointer;
    transition: all cubic-bezier(0.23, 1, 0.32, 1) 0.75s; /*easeOutQuint*/
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomplan .nav_tab button{
        font-size: 19rem;
        color: #818c92;
    }
    #roomplan .nav_tab button:hover{
        color: #4d4d4d;
        border-bottom: solid 8px #98a1a6;
        transition: all cubic-bezier(0.23, 1, 0.32, 1) 1s; /*easeOutQuint*/
    }
}

#roomplan .nav_tab button.swiper-slide-thumb-active{
    color: #5278a0;
    border-bottom: solid 8px #5278a0;
}
#roomplan .nav_tab button.swiper-slide-thumb-active::after{
        content: url(../img/equipment_img/ic_select.png);
        position: absolute;
        bottom: -38px;
        left: 0;
        right: 0;
        transform: scale(0.5);
}


#roomplan .nav_tab button small{
    width: 100%;
    height: 20px;
    margin: 0 0 -2px 0;
    display: block;
    font-family: "DINNextLTPro-Condensed";
    font-size: 11rem;
    line-height: 28rem;
    color: #bfbfbf;
    transition: all cubic-bezier(0.23, 1, 0.32, 1) 0.75s; /*easeOutQuint*/
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomplan .nav_tab button small{
        font-size: 14rem;
        line-height: 18rem;
    }
}
#roomplan .nav_tab button.swiper-slide-thumb-active small{
    color: #5278a0;
}

#roomplan .nav_tab button b{
    margin: 0 4px 0 0;
    font-family: "DINNextLTPro-Condensed";
    font-size: 22rem;
    line-height: 22rem;
    font-weight: normal;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomplan .nav_tab button b{
        font-size: 28rem;
    }
}


#roomplan .fig .main-swiper .swiper-slide{
    background-color: #f4f5f6;
}

#roomplan main h3{
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    font-weight: normal;
    position: relative;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomplan main h3{
        width: 460px;
        height: auto;
        padding: 0 640px 0 0;
        flex-wrap: wrap;
        border-bottom: inherit;
    }
}

#roomplan main h3 .type{
    margin: 20px 0 -10px 0;
    font-family: "DINNextLTPro-Condensed";
    font-size: 96rem;
    line-height: 62rem;
    font-weight: normal;
    white-space: nowrap;
    text-align: center;
    display: inline-block;
    background-color: #f4f5f6;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomplan main h3 .type{
        font-size: 130rem;
        line-height: 90rem;
    }
}

#roomplan main h3 .type::after{
    content: " ";
    width: 115px;
    height: 200px;
    display: block;
    background-image: url(../img/common_img/bg_slash_bk.png);
    background-size: auto 200px;
    background-repeat: no-repeat;
    position: absolute;
    top: 0;
    left: -13px;
    z-index: 999;
}
#roomplan.f1_type main h3 .type::after{
    left: 0px;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomplan main h3 .type::after{
        left: 10px;
    }
    #roomplan.f1_type main h3 .type::after{
        left: 30px;
    }
}

#roomplan main h3 .type small{
    font-family: "DINNextLTPro-MediumCond";
    font-size: 18rem;
    line-height: 18rem;
    text-align: center;
    display: block;
    background-color: #f4f5f6;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomplan main h3 .type small{
        font-size: 24rem;
    }
}

#roomplan main h3 .title-swiper{
    width: calc(100% - 30px);
    margin: 15px 0 0 30px;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomplan main h3 .title-swiper{
        width: auto;
        margin: 0 0 0 60px;
    }
    #roomplan.f1_type main h3 .title-swiper{
        margin: 0 0 0 80px;
    }
}

#roomplan main h3 .title-swiper li{
    font-family: "DINNextLTPro-Regular";
    font-size: 36rem;
    line-height: 36rem;
    letter-spacing: -1rem;
    text-align: right;
    display: flex;
    justify-content: flex-end;
    align-items: flex-end;
    flex-wrap: wrap;
    overflow: hidden;
    background-color: #f4f5f6;
    opacity: 0 !important;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomplan main h3 .title-swiper li{
        height: 100px;
        margin: 0;
        font-family: "DINNextLTPro-Regular","NewCezannePro-M";
        /* font-family: "DINNextLTPro-Condensed"; */
        font-size: 50rem;
        line-height: 50rem;
        text-align: left;
        justify-content: flex-start;
		align-items: flex-start;
    }
}

#roomplan main h3 .title-swiper li.swiper-slide-active{
    opacity: 1 !important;
}

#roomplan main h3 .title-swiper span.jpn{
	margin: -8rem 0 0 0;
    font-family: "NewCezannePro-DB";
    font-size: 28rem;
    letter-spacing: -1rem;
	display: inline !important;
}
#roomplan.c_type main h3 .title-swiper .tt2 span.jpn{
	margin: -6rem 0 0 -20px;
    font-size: 26rem;
    letter-spacing: -2rem;
}
#roomplan.f_type main h3 .title-swiper .tt1 span.jpn,
#roomplan.f1_type main h3 .title-swiper .tt1 span.jpn{
    font-size: 31rem;
		line-height: 41rem;
}
#roomplan:not(.c_type) main h3 .title-swiper li:not(.tt2) span.jpn::first-letter{
    font-family: "NewCezannePro-M";
    font-size: 36rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomplan main h3 .title-swiper span.jpn{
    margin: -16rem 0 0 0;
    font-size: 39rem;
    letter-spacing: -1rem;
	}
	#roomplan.c_type main h3 .title-swiper .tt2 span.jpn{
	margin: -16rem 0 0 0;
    font-size: 39rem;
    letter-spacing: -2rem;
}
	#roomplan.c_type main h3 .title-swiper .tt2 span.jpn .pc{
		display: inline !important;
	}
	#roomplan.f_type main h3 .title-swiper .tt1 span.jpn,
	#roomplan.f1_type main h3 .title-swiper .tt1 span.jpn{
		margin: 0;
		font-size: 41rem;
		line-height: 41rem;
		letter-spacing: 0;
	}
    #roomplan main h3 .title-swiper span.jpn::first-letter,
    #roomplan.f_type main h3 .title-swiper .tt1 span.jpn::first-letter,
	#roomplan.f1_type main h3 .title-swiper .tt1 span.jpn::first-letter{
        font-family: "DINNextLTPro-Regular" !important;
        font-size: 50rem !important;
        line-height: 40rem !important;
    }
}

#roomplan article.spec{
    padding: 10px 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomplan article.spec{
        width: 390px;
        margin: auto;
        padding: 15px 0 0 0;
        position: absolute;
        left: calc((100% - 1050px) / 2);
        z-index: 999;
        background-color: #f4f5f6;
    }
}

#roomplan .spec dl{
    width: 275px;
    margin: 0 0 0 calc(100% - 275px);
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-end;
    font-size: 15rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomplan .spec dl{
        width: 390px;
		margin: 0 0 0 0;
		position: relative;
		z-index: 999;
    }
}

#roomplan .spec dt{
    width: 5%;
    line-height: 24rem;
    border-bottom: solid 1px #b2b2b2;
    white-space: nowrap;
}

#roomplan .spec dd{
    width: 95%;
    padding: 9px 0 0 0;
    font-family: "DINNextLTPro-Condensed";
    font-size: 24rem;
    text-align: right;
    border-bottom: solid 1px #b2b2b2;
    white-space: nowrap;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomplan .spec dd{
        font-size: 28rem;
    }
}

#roomplan .spec dd b{
    vertical-align: bottom;
    font-size: 32rem;
    line-height: 29rem;
    font-weight: normal;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomplan .spec dd b{
        font-size: 40rem;
        line-height: 34rem;
    }
}


#roomplan .spec dd small{
    font-family: "NewCezannePro-DB";
    font-size: 14rem;
    line-height: 14rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomplan .spec dd small{
        font-size: 18rem;
        line-height: 18rem;
    }
}

#roomplan .spec .price{
    display: none;
}

#roomplan .spec dt.price{
    padding: 16px 0 0 0;
    font-size: 11rem;
    border-bottom: none;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomplan .spec dt.price{width: auto !important;
    padding: 26px 0 0 0;
    font-size: 14rem;
    border-bottom: none;
}
}

#roomplan .spec dt.price b{
    padding: 2px 4px 3px 4px;
    font-size: 13rem;
    font-weight: normal;
    line-height: 14rem;
    color: #ffffff;
    background-color: #a13b4e;
    border-radius: 2px;
    vertical-align: 3px;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomplan .spec dt.price b{
        padding: 3px 10px 4px 10px;
        font-size: 15rem;
        line-height: 15rem;
        vertical-align: 6px;
    }
    _::-webkit-full-page-media, _:future, :root #roomplan .spec dt.price b{/*Safari*/
        padding: 4px 10px 4px 10px !important;
      }
    
}

#roomplan .spec dd.price{
    font-family: "NewCezannePro-DB";
    font-size: 14rem;
    border-bottom: none;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomplan .spec dd.price{width: auto !important;
        padding: 12px 0 0 0;
        font-size: 18rem;
        border-bottom: none;
    }
}

#roomplan .spec dd.price b{
    font-family: "DINNextLTPro-Condensed";
    font-size: 32rem;
    letter-spacing: 0;
    color: #a13b4e;
    vertical-align: -1px;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomplan .spec dd.price b{
        font-size: 48rem;
    }
}

#roomplan .fig{
    clear: both;
    overflow: hidden;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomplan .fig{
        position: relative;
    }
}

#roomplan .fig figure.plan{
    position: relative;
    padding: 10px 30px 50px;
}
#roomplan.f1_type .fig figure.plan{
    padding: 10px 0 50px;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomplan .fig figure.plan{
        width: 400px;
        padding: 0 0 0 650px;
    }
    #roomplan.f1_type .fig figure.plan{
        width: 600px;
        padding: 0 0 0 450px;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    #roomplan .fig figure.plan img:not(.north){
        margin: 50px 0 0 0;
    }
}

#roomplan .fig figure.plan img.north{
    width: auto;
    height: 30px;
    margin: 10px 0 0 0;
    float: right;
    /* position: absolute;
    right: 0;
    bottom: 0; */
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomplan .fig figure.plan img.north{
        margin: 15px 0 50px 0;
}
}

#roomplan .notice{
    margin: -20px 0 0 0;
    display: flex;
    flex-wrap: wrap;
    clear: both;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomplan .notice{
        /* margin: 0 0 15px 0; */
        position: absolute;
        bottom: 10px;
    }
}

#roomplan .notice li{
    margin: 0 10px 10px 0;
    font-size: 13rem;
    line-height: 13rem;
    display: flex;
}


#roomplan .notice li.txt{
    width: 100%;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomplan .notice li.txt{
        width: auto;
        margin: 0 0 0 5px;
    }
}

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

#roomplan .fig .point{
    margin: 40px 0 0 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;display: none;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomplan .fig .point{
        width: 410px;
        margin: 50px 0 0 0;
        padding: 0 0 5px 20px;
        border-left: solid 1px #818c92;
        border-bottom: solid 1px #818c92;
        position: absolute;
        bottom: 95px;
        left: 2px;
    }
}

#roomplan .swiper-slide-active .point{
    display: block;
}

#roomplan .fig .point dt{
    margin: 0 0 14px;
    font-family: "DINNextLTPro-MediumCond";
    font-size: 30rem;
    line-height: 30rem;
    letter-spacing: 1rem;
    color: #a4acb0;
    border-bottom: dotted 1px #818c92;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomplan .fig .point dt{
        margin: 0 0 10px;
        border: none;
    }
}

#roomplan .fig .point dd{height: auto;
    margin: 0 0 18px 11rem;
    font-size: 14rem;
    line-height: 18rem;
}

#roomplan .fig .point dd::first-letter{
    margin: 0 0 0 -11rem;
    font-size: 11rem;
    color: #b9bfc3;
    vertical-align: 1rem;
}

#roomplan main nav.page{
    margin: 40px 23px -10px 23px;
    display: flex;
    justify-content: space-between;
    position: relative;
    z-index: 999;
}
@media print, screen and (min-width: 768px) {/*PC*/
#roomplan main nav.page{
    width: 1050px;
    margin: 0 auto -30px;
}
}

#roomplan main nav.page a{
    color: #5278a0;
    transition: all 400ms 0s ease;
}
#roomplan main nav.page a:hover{
    color: #1e68b4;
    transition: all 400ms 0s ease;
}
		
#roomplan main nav.page .prev,
#roomplan main nav.page .next{
    font-family: "DINNextLTPro-MediumCond";
    font-size: 11rem;
    background-size: 10px 9px;
    background-repeat: no-repeat;
    border-top: solid 2px #5278a0;
}


#roomplan main nav.page .prev b,
#roomplan main nav.page .next b{
    font-family: "DINNextLTPro-Condensed";
    font-size: 36rem;
    vertical-align: -7px;
    font-weight: normal;
}


#roomplan main nav.page .prev{
    padding: 12px 0 0 15px;
    background-image: url(../img/common_img/ic_prev.png);
    background-position: left 18px;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomplan main nav.page .prev{
	
    }
}

#roomplan main nav.page .next{
    padding: 12px 15px 0 0;
    background-image: url(../img/common_img/ic_next.png);
    background-position: right 18px;
    text-align: right;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomplan main nav.page .next{
	
    }
}

#roomplan main nav.page .back{
    padding: 11px 3px 10px 0;
    font-size: 14rem;
    white-space: nowrap;
    text-align: center;
    background-image: url(../img/common_img/ic_back.png);
    background-size: 11px 7px;
    background-position: center 33px;
    background-repeat: no-repeat;
    border-top: solid 2px #5278a0;
    flex-grow: 1;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #roomplan main nav.page .back{
        padding: 8x 0 10px 0;
        background-position: center 36px;
    }
}

.folddown,
.foldup {height: 46px;
    font-size: 15rem;
    line-height: 15rem;
    color: #5278a0;
    float: right;
}
.foldup{
    display: none;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .folddown,
    .foldup {
        display: none;
    }
}

.folddown img,
.foldup img{
    width: 14px;
    height: 14px;
    margin: 16px 4px 26px 0;
    vertical-align: -28px;
}



/*/// 設備・仕様 ///*/
/* 共通 */
#equipment .equip_nav{
    margin: 0 -23px 40px;
    display: flex;
    flex-wrap: wrap;
    align-content: space-between;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .equip_nav{
    margin: 40px 0 60px;
    flex-wrap: nowrap;
}
}

#equipment .equip_nav a{
    width: 25%;
    height: 48px;
    padding: 4px 0 0 0;
    font-family: "NewCezannePro-DB";
    font-size: 12rem;
    line-height: 12rem;
    letter-spacing: -1rem;
    color: #ffffff;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #7593b3;
    border-bottom: solid 6px #90a9c3;
    box-sizing: border-box;
    background-image: url(../img/equipment_img/vt_blue.png);
    background-size: 1px 34px;
    background-position: left bottom;
    background-repeat: no-repeat;
    /* background-image: url(../img/common_img/hr_select.png);
    background-size: 1px 20px;
    background-position: right center; */
    background-repeat: no-repeat;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .equip_nav a{
    margin: 0 1px; 
    padding: 0 0 5px 0;
    font-size: 15rem;
    line-height: 15rem;
    letter-spacing: 0;
    white-space: nowrap;
    color: #818c92;
    border-bottom: solid 8px #bbc1c4;
    background-color: inherit;
    background-image: inherit;
    flex-wrap: wrap;
    position: relative;
    transition: all cubic-bezier(0.23, 1, 0.32, 1) 0.75s; /*easeOutQuint*/
    }
    /* #equipment .equip_nav a:nth-child(8){
        background-image: none !important;
    } */
    #equipment .equip_nav a:hover{
        color: #4d4d4d;
        border-bottom: solid 8px #98a1a6;
        transition: all cubic-bezier(0.23, 1, 0.32, 1) 1s; /*easeOutQuint*/
    }
}

#equipment .equip_nav a:nth-child(1),
#equipment .equip_nav a:nth-child(5){
    background-image: none;
}

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

#equipment .equip_nav small{
    display: none;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .equip_nav small{
    width: 100%;
    margin: 0 0 -2px 0;
    display: block;
    font-family: "DINNextLTPro-Condensed";
    font-size: 11rem;
    line-height: 11rem;
    color: #bfbfbf;
    transition: all cubic-bezier(0.23, 1, 0.32, 1) 0.75s; /*easeOutQuint*/
}
#equipment .equip_nav a:nth-child(7) small,
#equipment .equip_nav a:nth-child(8) small{
    padding: 0 15rem 0 0;
    letter-spacing: 0;
}
#equipment .equip_nav a:hover small{
    color: #808080;
    transition: all cubic-bezier(0.23, 1, 0.32, 1) 1s; /*easeOutQuint*/
}
}

#equipment.kitchen .equip_nav a:nth-child(1),
#equipment.bath .equip_nav a:nth-child(2),
#equipment.powder .equip_nav a:nth-child(3),
#equipment.toilet .equip_nav a:nth-child(4),
#equipment.eco .equip_nav a:nth-child(5),
#equipment.security .equip_nav a:nth-child(6),
#equipment.equipments .equip_nav a:nth-child(7),
#equipment.structure .equip_nav a:nth-child(8){
    background-color: #5278a0;
    border-bottom: solid 6px #4a6e97;
    background-image: inherit;
}
#equipment.kitchen .equip_nav a:nth-child(1) + a,
#equipment.bath .equip_nav a:nth-child(2) + a,
#equipment.powder .equip_nav a:nth-child(3) + a,
#equipment.toilet .equip_nav a:nth-child(4) + a,
#equipment.eco .equip_nav a:nth-child(5) + a,
#equipment.security .equip_nav a:nth-child(6) + a,
#equipment.equipments .equip_nav a:nth-child(7) + a,
#equipment.structure .equip_nav a:nth-child(8){
    background-image: inherit;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #equipment.kitchen .equip_nav a:nth-child(1),
    #equipment.bath .equip_nav a:nth-child(2),
    #equipment.powder .equip_nav a:nth-child(3),
    #equipment.toilet .equip_nav a:nth-child(4),
    #equipment.eco .equip_nav a:nth-child(5),
    #equipment.security .equip_nav a:nth-child(6),
    #equipment.equipments .equip_nav a:nth-child(7),
    #equipment.structure .equip_nav a:nth-child(8){
        color: #5278a0;
        background-color: inherit;
        border-bottom: solid 8px #5278a0;
    }
    #equipment.kitchen .equip_nav a:nth-child(1) small,
    #equipment.bath .equip_nav a:nth-child(2) small,
    #equipment.powder .equip_nav a:nth-child(3) small,
    #equipment.toilet .equip_nav a:nth-child(4) small,
    #equipment.eco .equip_nav a:nth-child(5) small,
    #equipment.security .equip_nav a:nth-child(6) small,
    #equipment.equipments .equip_nav a:nth-child(7) small,
    #equipment.structure .equip_nav a:nth-child(8) small{
        color: #5278a0;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
   #equipment.kitchen .equip_nav a:nth-child(1)::after,
    #equipment.bath .equip_nav a:nth-child(2)::after,
    #equipment.powder .equip_nav a:nth-child(3)::after,
    #equipment.toilet .equip_nav a:nth-child(4)::after,
    #equipment.eco .equip_nav a:nth-child(5)::after,
    #equipment.security .equip_nav a:nth-child(6)::after,
    #equipment.equipments .equip_nav a:nth-child(7)::after,
    #equipment.structure .equip_nav a:nth-child(8)::after{
        content: url(../img/equipment_img/ic_select.png);
        position: absolute;
        bottom: -38px;
        left: 0;
        right: 0;
        transform: scale(0.5);
    } 
    }


@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: 628px;
}
.bath .top>figure{
    width: 660px;
}
.powder .top>figure{
    width: 504px;
}
.toilet .top>figure{
    width: 504px;
}
}

.kitchen .top figure.main img,
.bath .top figure.main img,
.powder .top figure.main img,
.toilet .top figure.main img{
    width: calc(100% + 46px);
    height: auto;
    margin: 0 -23px 20px;
}
@media print, screen and (min-width: 768px) {/*PC*/
.bath .top figure.main img,
.powder .top figure.main img,
.toilet .top figure.main img{
    width: 100%;
    height: auto;
    margin: 0;
}
.kitchen .top figure.main img:nth-child(1){
    width: 628px;
    height: 417px;
    margin: 0;
    object-fit: cover;
}
}

.kitchen .top figure.main img:nth-child(2){
    width: 100%;
    margin: 20px 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .kitchen .top figure.main img:nth-child(2){
        width: 570px;
        margin: 50px auto 0;
        display: block;
    }
}

#equipment main h3{
    margin: 0 -13px 4px;
    font-family: "DINNextLTPro-Condensed";
    font-size: 60rem;
    line-height: 42rem;
    font-weight: normal;
    text-align: center;
    color: #485157;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment main h3{
    margin: 0;
    font-size: 64rem;
    line-height: 54rem;
    text-align: left;
}
}

#equipment.eco main h3 small{
    font-size: 42rem;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #equipment.eco main h3 small{
    font-size: 42rem;
    display: inline;
}
}

#equipment main h4.top{
    margin: 0 -10px 15px;
    font-family: "NewCezannePro-M";
    font-weight: normal;
    font-size: 16rem;
    line-height: 22rem;
    text-align: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment main h4.top{
    margin: 0 0 40px 0;
    font-size: 19rem;
    text-align: left;
}
}

#equipment .note{
    margin: 4px 0 0 0;
    padding-left:10rem;
	text-indent:-10rem;
    font-size: 10rem;
    line-height: 14rem;
    font-family: "NewCezannePro-M", sans-serif;
	color: #505050;
    display: block;
}

#equipment .note2{
    margin: 4px 0 0 0;
    font-size: 10rem;
    line-height: 14rem;
    font-family: "NewCezannePro-M", sans-serif;
	color: #505050;
    display: block;
}

#equipment .free{
    width: 100px !important;
    height: 24px;
}

#equipment .free_rt{
    width: 95px !important;
    height: 24px !important;
    position: absolute;
    top: 0;
    right: 0;
}

#equipment .ph{
    position: relative;
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .equip{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    border-bottom: solid 1px #b3b3b3;
}
#equipment .equip_tp{
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    border-top: solid 1px #b3b3b3;
    border-bottom: solid 1px #b3b3b3;
    clear: both;
}
#equipment .equip_bt{
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}
}

#equipment .equip dl,
#equipment .equip_tp dl,
#equipment .equip_bt dl{
    margin: 40px 0;
    padding: 0 0 40px 0;
    border-bottom: solid 1px #b3b3b3;
}
#equipment.structure .equip dl,
#equipment.structure .equip_tp dl,
#equipment.structure .equip_bt dl{
    /* border-top: solid 1px #b3b3b3;
    border-bottom: none; */
}
#equipment.structure .equip_bt dl:last-child{
    border-bottom: none;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment .equip dl{
    width: 231px;
    margin: 35px 0 35px;
    padding: 0;
    border-bottom: none;
}
#equipment .equip_tp dl{
    width: 231px;
    margin: 35px 0 35px;
    padding: 0;
    border-bottom: none;
}
#equipment .equip_bt dl{
    width: 231px;
    margin: 35px 0 35px;
    padding: 0;
    border-bottom: none;
}
#equipment.kitchen .equip dl,
#equipment.kitchen .equip_tp dl,
#equipment.kitchen .equip_bt dl{
    margin: 30px 0 30px;
}
#equipment.structure .equip dl,
#equipment.structure .equip_tp dl,
#equipment.structure .equip_bt dl{
    border-top: none;
}
}

#equipment .equip dt,
#equipment .equip_tp dt,
#equipment .equip_bt dt{
    margin: 12px 0 6px 0;
    font-size: 16rem;
    line-height: 19rem;
    color: #1c354d;
}
#equipment.structure .equip dt,
#equipment.structure .equip_tp dt,
#equipment.structure .equip_bt dt{
    /* margin: 26px 0 6px 0; */
    margin: 0 0 6px 0;
}

#equipment .equip dd,
#equipment .equip_tp dd,
#equipment .equip_bt dd{
    line-height: 23rem;
    letter-spacing: 0.5rem;
    font-family: "NewCezannePro-M", sans-serif;
	color: #505050;
}

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

#equipment h5.line,
#equipment h6.line{
    margin: 10px -23px -20px;
    padding: 0 23px 10px;
    font-family: "NewCezannePro-DB";
    font-weight: normal;
    font-size: 17rem;
    line-height: 22rem;
    color: #00577d;
    background-color: #ffffff;
}
#equipment.structure h5.line{
    padding: 0 23px 18px 23px !important;
}

#equipment h6.line{
    color: #00577d;
    background-color: #e6e6e6;
}
#equipment.eco h6.line{
    margin: 6px -23px 4px;
    font-size: 18rem;
    line-height: 24rem;
    background-color: inherit;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment h5.line,
#equipment h6.line{
    margin: 10px 0 15px;
    padding: 7px 0 6px 0;
    font-size: 17rem;
    line-height: 17rem;
    text-align: left;
    background-color: rgba( 255, 255, 255, 0.50 );
    outline: solid 1px #d2d7da;
    outline-offset: -1px;
    overflow: hidden;
}
#equipment.structure h5.line {
    margin: 10px 0 -15px 0 !important;
    padding: 7px 0 6px !important;
}
#equipment.eco h6.line{
    margin: 10px 0 15px;
    padding: 9px 0 9px 0;
    font-size: 16rem;
    line-height: 16rem;
    outline: solid 1px #00577d;
    background-color: #ffffff;
    overflow: hidden;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
    .structure h5.line strong{
    margin: 0 12px 0 0 !important;
}
}

#equipment h5.line strong,
#equipment h6.line strong{
    margin: 0 -23px 8px;
    padding: 5px 0 2px 23px;
    display: block;
    color: #ffffff;
}
#equipment h5.line strong{
    font-family: "DINNextLTPro-Condensed";
    font-weight: normal;
    font-size: 15rem;
    line-height: 15rem;
    background-color: #00577d;
}
#equipment h6.line strong{
    font-size: 14rem;
    background-color: #00577d;
}
#equipment.structure h5.line strong{
    margin: 0 -23px 16px -23px !important;
}
#equipment.eco h6.line strong{
    font-weight: normal;
    background-color: #00577d;
}
@media print, screen and (min-width: 768px) {/*PC*/
#equipment h5.line strong,
#equipment h6.line strong{
    margin: 0 12px 0 0;
    display: inline;
    color: #ffffff;
    text-align: left;
    background-color: #00577d;
    border-bottom: none;
}
#equipment h5.line strong{
    padding: 10px 15px 10px 15px;
    font-size: 10rem;
    line-height: 12rem;
    vertical-align: 3px;
}
#equipment h6.line strong{
    padding: 8px 15px 8px 15px;
    font-size: 17rem;
}
#equipment.structure h5.line strong{
    margin: 0 12px 0 0 !important;
}
#equipment.eco h6.line strong{
    margin: 0 15px 0 0;
    padding: 9px 15px 10px 15px;
}
}

#equipment .top figure.main{
    position: relative;
}

#equipment .top figure.main figcaption{
    position: absolute;
    bottom: 40px;
    left: 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #equipment .top figure.main figcaption{
        left: 15px;
        bottom: 15px;
    }
}
#equipment.kitchen .top figure.main figcaption {
    position: relative;
    margin: 20px 0;
    bottom: 10px;
    left: 5px;
}

@media print, screen and (min-width: 768px) {/*PC*/
#equipment .top figure.main figcaption ul {
    display: flex;
    justify-content: center;
    align-items: center;
}
}
#equipment .top figure.main figcaption li {
    margin: -3px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #equipment .top figure.main figcaption li {
        margin: 0 3px;
    }
    }

#equipment .top figure.main figcaption .op {
    margin: 0;
    padding: 0 8px;
    font-family: "NewCezannePro-M";
    font-size: 12rem;
    line-height: 18rem;
    letter-spacing: 0rem;
    color: #ffffff;
    background-color: rgba(0, 0, 0, 0.4);
	border: solid 1px rgba(255, 255, 255, 0.5);
	display: inline-block;
}

#equipment .top figure.main figcaption .note{
    margin: 1px 0 0 0;
}
#equipment.powder .top figure.main figcaption .note{
    color: #ffffff;
}

#equipment a.readmore{
    width: 115px;
    height: auto;
    margin: 7px 0 0 0;
    transition: all 300ms 0s ease-in-out;
}

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

#equipment a.readmore:hover{
    opacity: 0.7;
    transition: all 150ms 0s ease-in-out;
}

a.readmore{
    width: 118px;
    height: 16px;
    display: block;
}

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

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

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

.kitchen .space h5,
.kitchen .cock h5{
    margin: 0 0 14px 0;
    padding: 8px 0 8px;
    font-size: 15rem;
    line-height: 15rem;
    color: #ffffff;
    text-align: center;
    background-color: #00577d;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .kitchen .space h5,
    .kitchen .cock h5{
        margin: 0 0 8px 0;
        padding: 5px 0 5px;
        font-size: 15rem;
        line-height: 15rem;
    }
    
}

.kitchen .space figure{
    position: relative;
}

.kitchen .space figure>img{
    width: 100%;
    height: auto;
    object-fit: cover;
}
.kitchen .space figure.sub>img{
    margin: 14px 0 0 0;
}

@media print, screen and (min-width: 768px) {/*PC*/
    .kitchen .space figure>img{
        height: 170px
    }
    .kitchen .space figure.sub>img{
        width: 233px;
        height: auto;
        margin: 18px 0 0 15px;
        float: right;
    }
}

.kitchen .space figcaption,
.kitchen .cock figcaption{
    width: 74px;
    position: absolute;
    top: 4px;
    right: 4px;
}

.kitchen .space p{
    padding: 15px 0 15px;
    line-height: 23rem;
    
}
@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .space p{
    padding: 12px 0 12px;
    letter-spacing: 0;
}
}

.kitchen .cock{
    margin: 20px 0 40px 0;
    padding: 0 0 40px;
    position: relative;
    border-bottom: solid 1px #b3b3b3;
}
@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .cock{
    position: absolute;
    top: 430px;
    right: 0;
    width: 380px;
    border: none;
}
}

.kitchen .cock figure{
    width: 50%;
    margin: 0 0 12px 0;
    position: relative;
}
@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .cock figure{
    width: 198px;
    margin: 0 0 10px 0;
}
}

.kitchen .cock img{
    width: 100%;
    height: auto;
}

.kitchen .cock p{
    width: 50%;
    display: block;
    font-family: "NewCezannePro-M";
    letter-spacing: 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .cock p{
    width: 198px;
}
}

.kitchen .cock ul{
    width: 48%;
    position: absolute;
    top: 45px;
    right: 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .cock ul{
    width: 170px;
    top: 34px;
}
}

.kitchen .cock li{
    margin: 0 0 10px 0;
}


.kitchen .raku{
    margin: 40px 0 40px 0;
    padding: 0 0 10px 0;
    border-bottom: double 4px #b3b3b3;
}
@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .raku{
    margin: 70px 0 40px 0;
    padding: 0 0 10px 0;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    border-bottom: solid 1px #b3b3b3;
}
}

.kitchen .raku h5{
    margin: 0 0 20px;
    padding: 4px 0 4px;
    border-top: solid 3px #b95761;
    border-bottom: solid 3px #b95761;
    text-align: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .raku h5{
    width:calc(100% - 25px);
    margin: 0 auto 20px;
    padding: 2px 0 2px 25px;
    text-align: left;
    background-color: #b95761;
    border: none;
}
}

.kitchen .raku h5 img{
    width: 90%;
}
@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .raku h5 img{
    width: 300px;
    filter: brightness(100);
}
}

.kitchen .raku h6{
    padding: 6px 0 6px 12px;
    font-size: 17rem;
    line-height: 18rem;
    color: #ffffff;
    background-color: #b95761;
    margin: 12px 0 18px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .raku h6{
    margin: 0px 0 14px 0;
}
}

.kitchen .raku h6 img{
    width: 53px;
    margin: -14px 0 -10px 3px;
    vertical-align:-2px;
}

.kitchen .raku div{
    margin: 0 0 30px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .raku div{
    width: 304px;
    margin: 0 0 0 0;
}
}

.kitchen .raku div.raku01{
    margin: -10px 0 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .raku div.raku01{
    width: 560px;
    margin: 0;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .raku>figure{
    width: 450px;
    margin: 0;
}
}

.kitchen .raku figure img{
    width: 100%;
    margin: 0 0 20px 0;
}

.kitchen .raku figure.top img{
    height: 65vw;
    object-fit: cover;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .kitchen .raku figure.top img{
        height: 260px;
        margin: 0 0 40px 0;
    }
}

.kitchen .raku dl{
    margin: 0 0 18px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .raku dl{
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    position: relative;
}
}

.kitchen .raku dt{
    margin: 0 0 6px 0;
    font-size: 16rem;
    line-height: 19rem;
    color: #b95761;
}

.kitchen .raku dd{
    line-height: 23rem;
    letter-spacing: 0rem;
    font-family: "NewCezannePro-M", sans-serif;
	color: #505050;
}
@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .raku dd{
    margin: 0 0 20px 0;
}
}

.kitchen .raku dl.box01,
.kitchen .raku dl.box02,
.kitchen .raku dl.box03{
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
}

.kitchen .raku dl.box01 dt,
.kitchen .raku dl.box02 dt{
    width: 100%;
}
@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .raku dl.box01 dt{
    width: auto;
    position: absolute;
    left: 140px;
    letter-spacing: 0;
}
}

.kitchen .raku dl.box01 img{
    width: 140px;
    margin: 5px 0 10px 0;
}

.kitchen .raku dl.box01:nth-child(3) img{
    height: 86px;
    margin: 5px 0 20px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .raku dl.box01 img{
    width: 125px;
    margin: 0;
}
}

.kitchen .raku dl.box01 .txt{
    width: calc(100% - 158px);
}
@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .raku dl.box01 .txt{
    width: calc(100% - 140px);
    margin: 24px 0 0 0;
}
}

.kitchen .raku dl.box02 img{
    width: 160px;
	height: 99px;
    margin: 5px 0 10px 0;
}

.kitchen .raku dl.box02 .txt{
    width: calc(100% - 180px);
}

.kitchen .raku dl.box03 img{
    width: 160px;
	height: auto;
    margin: 5px 0 10px 0;
}

.kitchen .raku dl.box03 .txt{
    width: calc(100% - 170px);
}

.kitchen .equip dt{
    margin: 12px 0 10px 0 !important;
}

.kitchen .equip .ph{
    margin: 0 0 10px 0 !important;
}

@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .gas{
    width: 504px !important;
    margin: 0 0 35px 0 !important;
    position: relative;
}
}

.kitchen .gas .ph{
    position: relative;
    margin: 0 0 10px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .gas .ph{
    width: 250px;
    margin: 0 0 20px 0;
}
}

.kitchen .gas .ph .func{
    margin: 5px 0 0 0;
    display: flex;
    
    justify-content: space-between;
    align-items: flex-start;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .kitchen .gas .ph .func{
        margin: 8px 0 0 0;
    }
}

.kitchen .gas .ph .func li{
    width: 49%;
    margin: 8px 0 0;
    font-size: 12rem;
    color: #ffffff;
    text-align: center;
    background-color: #00577d;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .kitchen .gas .ph .func li{
        width: 123px;
        margin: 0;
        padding: 2px 0;
        letter-spacing: 0;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .gas dt{
    width: 100%;
    margin: 0 0 10px 0!important;
    white-space: nowrap;
}
}

.kitchen .gas dt small{
    font-size: 14rem;
}

.kitchen .gas .sub{
    margin: 10px 0 0 0;
    padding: 35px 0 0 0;
    display: flex;
    justify-content: space-between;
    background-image: url(../img/equipment_img/ic_tri_bt.png);
    background-size: 44px 22px;
    background-position: center top;
    background-repeat: no-repeat;
}
@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .gas .sub{
    width: 170px;
    margin: 0 42px 0 0;
    padding: 0 0 0 38px;
    display: block;
    position: absolute;
    top: 30px;
    right: 0;
    background-image: url(../img/equipment_img/ic_tri_rt.png);
    background-size: 22px 44px;
    background-position: 8px 53px;
}
}
.kitchen .gas .sub li{
    font-size: 13rem;
    line-height: 18rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .kitchen .gas .sub li{
        font-size: 12rem;
        line-height: 16rem;
    }
}
.kitchen .gas .sub li.ic{
    margin: 0 0 10px 0;
    height: 24px;
    line-height: 0;
    text-align: center;
    background-color: #f7b52c;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .kitchen .gas .sub li.ic{
        margin: 0 0 5px 0;
    }
}

.kitchen .gas .sub li img{
    margin: 0 0 5px 0;
}

.kitchen .gas .sub img{
    width: 177px;
    margin: 0 15px 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .gas .sub img{
    width: 170px;
    margin: 0 0 5px 0;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
    .kitchen .gas .sub .note2{
        margin: 0 !important;
        white-space: nowrap;
    }
    }

@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .fan{
    width: 504px !important;
    margin: 0 0 35px 0 !important;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .fan dt{
    margin: 0 0 10px 0 !important;
}
}

.kitchen .fan .ph{
    position: relative;
}
@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .fan .ph{
    width: 231px;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
    .kitchen .fan .ph img{
        width: 100%;
        height: auto;
    }
    }

.kitchen .fan .sel{
    margin: 10px 0 0 0;
    padding: 35px 0 0 0;
    background-image: url(../img/equipment_img/ic_tri_bt.png);
    background-size: 44px 22px;
    background-position: center top;
    background-repeat: no-repeat;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .kitchen .fan .sel{
        margin: 0;
        padding: 0 0 0 40px;
        background-image: url(../img/equipment_img/ic_tri_rt.png);
        background-size: 22px 44px;
        background-position: 9px 55px;
    }
}

.kitchen .fan p{
    padding: 9px 0 0 0;
}

.kitchen .fan .free{
    position: absolute !important;
    top: 35px;
    right: 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .kitchen .fan .free{
        top: 0;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .counter{
    width: 504px !important;
    min-height: 215px;
    position: relative;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
.kitchen .counter .ph{
    margin: -35px 0 2px 0 !important;
}
}

.kitchen .counter dt{
    margin: 0 0 -10px 0 !important;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .kitchen .counter dt{
        margin: 12px 0 0 0 !important;
    }
}

.kitchen .wash{
    position: relative;
}

.kitchen .wash .ph{
    margin: 0 0 15px 0;
}

.kitchen .wash ul{
    margin: 0 0 12px 0;
}

.kitchen .wash li{
    margin: 6px 0;
    padding: 1px 0;
    color: #ffffff;
    letter-spacing: 0;
    text-align: center;
    background-color: #f7b52c;
    border-radius: 2px;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .kitchen .wash li{
        font-size: 11rem;
        letter-spacing: 0rem;
        white-space: nowrap;
    }
}


.kitchen .sink{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    border-bottom: none !important;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .kitchen .sink{
        width: 100% !important;
        min-height: 380px;
        position: relative;
        display: block;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    .kitchen .sink dt{
        width: 100%;
    }
}

.kitchen .sink dt.sub{
    margin: 2px 0 8px 0!important;
    font-size: 14rem !important;
    line-height: 16rem !important;
    letter-spacing: 0.5rem !important;
}

.kitchen .sink dd.ph img{
    width: 85% !important;
    height: auto;
    margin: 20px auto 0;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .kitchen .sink dd.ph{
        width: 240px;
        margin: 0;
        position: absolute !important;
        top: 70px;
        left: 233px;
    }
    .kitchen .sink dd.ph img{
        width: 100% !important;
        margin: 0;
    }
    .kitchen .sink dd.img_br::after{
        position: absolute !important;
        bottom:2px;
        right: -27px;

    }
}

.kitchen .sink dd.ph2{
    width: 48vw;
    margin: 25px 0 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .kitchen .sink dd.ph2{
        width: 220px;
        margin: 0;
        position: absolute;
        top: 70px;
    }
}

.kitchen .sink dd.ph3{
    position: relative;
    margin: 0 0 9px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .kitchen .sink dd.ph3{
        width: 318px;
        position: absolute;
        top: 188px;
        right: 0;
    }
}

.kitchen .sink dd.ph2 img,
.kitchen .sink dd.ph3 img,
.kitchen .sink .pop{
    width: 100%;
    height: auto;
}

@media print, screen and (min-width: 768px) {/*PC*/
    .kitchen .sink .txt{
        width: 700px !important;
        position: absolute;
        top: 320px;
    }
}

.kitchen .sink dd.ph img.ic{
    width: 60px !important;
    height: 60px;
    position: absolute;
    top: -15px;
    right: 20px;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .kitchen .sink dd.ph img.ic{
        top: -3px;
        right: -25px;
    }
}

.kitchen .sink dd.ph3 img.ic{
    width: 60px !important;
    height: 60px;
    position: absolute;
    top: -15px;
    right: -10px;
}

.kitchen .sink dd.txt{
    width: calc(100% - 48vw - 15px);
    margin: 25px 0 0 0;
}

@media print, screen and (min-width: 768px) {/*PC*/
    .kitchen .sink dd.txt2{
        width: 318px;
        position: absolute;
        top: 100px;
        right: 0;
    }
}

.kitchen .sink dd.box{
    margin: 30px 0 35px 0;
    padding: 15px 10px 15px 7px;
    background-color: #ffffff;
    border: solid 1px #bababa;
    border-radius: 12px;
    display: flex;
    align-items: flex-start;
    position: relative;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .kitchen .sink dd.box{
        width: 430px;
        height: 124px;
        padding: 8px 17px;
        margin: 0;
        position: absolute;
        top: 192px;
        left: 233px;
    }
}

.kitchen .sink dd.box strong{
    font-size: 15rem;
    letter-spacing: 0;
    display: block;
}

.kitchen .sink dd.box strong small{
    font-size: 11rem;
    vertical-align: 5rem;
}

.kitchen .sink dd.box p{
    line-height: 20rem;
    letter-spacing: 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .kitchen .sink dd.box p{
        width: 230px !important;
        line-height: 21rem;
    }
}

.kitchen .sink dd.box>img{
    width: 200px;
    margin: 15px 5px 0 0;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .kitchen .sink dd.box>img{
        width: 186px;
        height: 124px;
        margin: 0;
        position: absolute;
        top: 8px;
        right: 15px;
    }
}

.kitchen .sink dd.box .pop{
    width: 33px;
    height: 30px;
    margin: 0;
    display: block;
    position: absolute;
    top: -30px;
    right: 30vw;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .kitchen .sink dd.box .pop{
        right: 170px
    }
}

/* バスルーム */
@media print, screen and (min-width: 768px) {/*PC*/
.bath{
    position: relative;
}
}

.bath .bubble{
    margin: 40px 0 0 0;
    border-bottom: double 4px #b3b3b3;
}
@media print, screen and (min-width: 768px) {/*PC*/
.bath .bubble{
    margin: 55px 0 0 0;
    border-bottom: none;
}
}

.bath .bubble h5{
    padding: 6px 0 6px 12px;
    font-size: 17rem;
    line-height: 18rem;
    color: #b95761;
    text-align: center;
    border-top: solid 3px #b95761;
    border-bottom: solid 3px #b95761;
}
@media print, screen and (min-width: 768px) {/*PC*/
.bath .bubble h5{
    margin: 0;
    padding: 9px 0 9px 20px;
    text-align: left;
    color: #ffffff;
    background-color: #b95761;
    border: none;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
.bath .bubble div{
    margin: 18px 0 40px;
    display: flex;
    align-items: flex-end;
    position: relative;
}
.bath .bubble div.point{
    align-items: flex-start;
    justify-content: space-between;
}
}

.bath .bubble figure>img{
    margin: 18px 0 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
.bath .bubble figure img{
    width: 364px;
    margin: 0 26px 5px 0;
}
}

.bath .bubble figcaption{
    margin: 12px 0 8px;
}
@media print, screen and (min-width: 768px) {/*PC*/
.bath .bubble figcaption{
    margin: 0;
    position: absolute;
    top: 105px;
    left: 392px;
}
}

.bath .bubble figcaption img{
    width: 140px;
}
@media print, screen and (min-width: 768px) {/*PC*/
.bath .bubble figcaption img{
    width: 150px;
}
}

.bath .bubble figure.sub{
    width: 90%;
    margin: 10px auto 40px;
}
@media print, screen and (min-width: 768px) {/*PC*/
.bath .bubble figure.sub{
    width: 320px;
    max-width: inherit;
    margin: 0;
}
.bath .bubble figure.sub img{
    width: 100%;
}
}

.bath .bubble p,
.bath .bubble dd{
    line-height: 23rem;
    font-family: "NewCezannePro-M", sans-serif;
	color: #505050;
}

@media print, screen and (min-width: 768px) {/*PC*/
.bath .bubble p{
    width: 295px;
    margin: 0 44px 0 0;
}
}

.bath .bubble dl{
    margin: 0 0 40px;
}
@media print, screen and (min-width: 768px) {/*PC*/
.bath .bubble dl{
    width: 320px;
    margin: 0;
}
}

.bath .bubble  dt{
    height: 32px;
    font-size: 15rem;
    line-height: 15rem;
    color: #ffffff;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #b95761;
}

.bath .bubble .ph img{
    width: 100%;
    margin: 14px 0 14px 0;
    display: block;
}
.bath .bubble .point3 .ph img{
    margin: 14px 0 34px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .bath .bubble .point1 .ph img{
        width: 294px;
        margin: 14px 0 20px 26px;
    }
    .bath .bubble .point2 .ph img{
        width: 294px;
        margin: 8px 16px 18px 10px;
    }
    .bath .bubble .point3 .ph img{
        width: 276px;
        margin: 8px 25px 40px 19px;
    }
}

.bath .bubble dd.sub img{
    width: 55%;
    margin: -22px 15px 5px 0;
    float: left;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .bath .bubble dd.sub img{
        width: 170px;
    }
}

.bath .bubble .note{
    margin: -25px 0 35px !important;
    text-align: right;
    display: block;
}

.bath .dry,
.bath .hotwater{
    margin: 40px 0 0 0;
    padding: 0 0 20px 0;
}
.bath .dry{
    margin: 60px 0 70px 0;
}

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

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

.bath .dry h5,
.bath .hotwater h5{
    padding: 6px 15px 6px;
    font-size: 16rem;
    line-height: 18rem;
    color: #00577d;
    text-align: center;
    border-top: solid 3px #00577d;
    border-bottom: solid 3px #00577d;
}

@media print, screen and (min-width: 768px) {/*PC*/
.bath .dry h5,
.bath .hotwater h5{
    width: calc(100% - 25px);
    margin: 0;
    padding: 9px 0 9px 25px;
    font-size: 18rem;
    text-align: left;
    color: #ffffff;
    background-color: #00577d;
    border: none;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
    .bath .thermo{
        width: 350px !important;
        margin: 0 !important;
        position: absolute;
        top: 410px;
        right: 0;
    }
    }

.bath .thermo dt{
    margin: 0 0 10px 0!important;
    padding: 6px 15px 6px;
    letter-spacing: 0.5rem;
    color: #ffffff !important;
    background-color: #00577d;
}


.bath .thermo .ph{
    margin: 15px 0 0 0;
    border: solid 1px #b3b3b3;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .bath .thermo .ph{
        margin: 0;
        padding: 8px 0;
        background-color: #ffffff;
    }
}

.bath .thermo .readmore{
    margin: 5px 15px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .bath .thermo dd a{
        margin: 12px 0 0 0 !important;
    }
}

.bath .dry img{
    width: 100%;
}

.bath .dry div{
    width: 100%;
    margin: 15px 0 0 0;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
}
@media print, screen and (min-width: 768px) {/*PC*/
.bath .dry div{
    width: 320px;
    align-content: flex-start;
}
.bath .dry div:nth-child(2){
    margin: 25px 0 0 0;
}
.bath .dry div:nth-child(4){
    margin: 25px 0 0 0;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
.bath .hotwater div{
    width: 504px;
    margin: 25px 0 0 0;
}
}

.bath .dry .topic{
    width: calc(100% - 50px);
    margin: 20px 0 25px;
    padding: 15px 25px 25px;
    background-color: #00577d;
    color: #ffffff;
}
@media print, screen and (min-width: 768px) {/*PC*/
.bath .dry div.topic{
    width: 294px;
    margin: 25px auto 0;
    padding: 15px 25px 0;
}
}

.bath .dry p{
    padding: 13px 0 0;
    line-height: 23rem;
}

.bath .dry p{
    width: calc(100% - 150px);
    padding: 16px 0 0 0;
}
.bath .dry .topic p{
    width: calc(100% - 150px);
    padding: 12px 0 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
.bath .dry p{
    width: calc(100% - 130px);
    padding: 12px 0 0 0;
}
.bath .dry .topic p{
    width: calc(100% - 133px);
    padding: 16px 0 0 0;
}
}

.bath .dry .note2,
.bath .dry figcaption{
    color: #ffffff !important;
}

.bath .dry figure.sub{
    width: 130px;
    margin: 19px 0 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
.bath .dry figure.sub{
    width: 116px;
    margin: 17px 0 0 0;
}
.bath .dry .topic figure.sub{
    width: 116px;
    margin: 20px 0 0 0;
}
}

.bath .dry h6{
    margin: auto;
    font-size: 20rem;
    line-height: 24rem;
    text-align: center;
}
.bath .dry h6 img{
    margin: 10px 0 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
.bath .dry h6{
    line-height: 24rem;
}
.bath .dry h6 img{
    margin: 10px 0 10px 0;
}
}

.bath .dry .topic span.point{
    width: 100%;
    margin: 12px 0 0 0;
    padding: 4px 0 4px;
    font-size: 20rem;
    text-align: center;
    background-color: #f7b52c;
    display: block;
}

.bath .dry .topic span.point b{
    font-size: 40rem;
    line-height: 40rem;
    vertical-align: -1px;
}

.bath .dry figcaption{
    margin: 4px 0 0 0;
    font-size: 10rem;
    line-height: 12rem;
    text-align: center;
}

.bath .dry .fig{
    margin: 0 0 20px;
}
@media print, screen and (min-width: 768px) {/*PC*/
.bath .dry .fig{
    margin: 0 0 15px 0;
}
}

.bath .dry dl{
    margin: 2px 0;
    display: flex;
    align-items: flex-start;
}
@media print, screen and (min-width: 768px) {/*PC*/
.bath .dry dl{
    margin: 2px 0 0 0;
}
}

.bath .hotwater{
    position: relative;
}

.bath .hotwater .readmore{
    position: absolute;
    top: 65px;
    right: 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
.bath .hotwater .readmore{
    top: 2px;
    left: 450px;
    right: inherit;
}
}

.bath .hotwater dl{
}
@media print, screen and (min-width: 768px) {/*PC*/
.bath .hotwater dl{
}
.bath .hotwater dl.top{
    width: 100%;
    margin: 23px 0x 0;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
}
}

.bath .dry dt{
    width: 130px;
    margin: 6px 4px 0 0;
    padding: 4px 6px 4px;
    white-space: nowrap;
    background-color: #f7b52c;
    font-family: "NewCezannePro-M", sans-serif;
    font-size: 14rem;
    line-height: 14rem;
    color: #ffffff;
    text-align: center;
}

.bath .hotwater dt{
width: 100%;
    margin: 14px 0 12px;
    font-size: 16rem;
    line-height: 18rem;
    letter-spacing: -1rem;
}

.bath .dry dd{
    width: calc(100% - 130px);
    padding: 6px 0 0 0;
    font-family: "NewCezannePro-M";
    font-size: 10rem;
    line-height: 11rem;
}

.bath .hotwater dd{
    font-family: "NewCezannePro-M", sans-serif;
    line-height: 23rem;
}

.bath .hotwater dd.ph img{
    width: 85%;
    margin: 25px auto 0;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
.bath .hotwater dd.ph img{
    width: 320px;
    margin: 0;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
.bath .hotwater .txt{
    width: 200px;
    float: left;
}
}

.bath .hotwater dd.fig img{
    width: 100%;
    margin: 20px auto 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
.bath .hotwater dd.fig{
        width: 242px;overflow: hidden;float: right;
}
.bath .hotwater dd.fig img{
    margin: 0;
}
.bath .hotwater dl.top dd.fig{
    width: 596px;
}
.bath .hotwater dl.top dd.fig img{
    width: 100%;
    margin: 20px 0 0 0;
}
}

.bath .hotwater dd.ic{
    margin: 15px 0 10px;
    /*text-align: right;*/
}
@media print, screen and (min-width: 768px) {/*PC*/
.bath .hotwater dd.ic{
    position: absolute;
    top: 0;
    right: 0;
}
}

.bath .hotwater dd.ic img{
    width: 105px;
    height: auto;
}
@media print, screen and (min-width: 768px) {/*PC*/
.bath .hotwater dd.ic img{
    width: 135px;
}
}

.bath .hotwater h6{
    margin: 30px 0 10px 0;
    padding: 4px 10px 4px;
    background-color: #00577d;
    font-size: 16rem;
    line-height: 16rem;
    color: #ffffff;
    position: relative;
}
@media print, screen and (min-width: 768px) {/*PC*/
.bath .hotwater h6{
    margin: 0 0 10px 0;
}
}

.bath .hotwater h6 img{
    position: absolute;
    top: 28px;
    right: 10px;
    width: 60px;
    height: 54px;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .bath .hotwater h6 img{
        position: absolute;
        top: -21px;
        right: 10px;
        width: 71px;
        height: 65px;
    }
}
@media print, screen and (min-width: 768px) {/*PC*/
.bath .hotwater ul{
    display: flex;
    flex-wrap:wrap;
    justify-content: space-between;
    margin: 12px 0 0 0;
}
}

.bath .hotwater li{
    margin: 0 0 5px 0;
    background-color: #f7b52c;
    color: #ffffff;
    text-align: center;
    border-radius: 3px;
}
@media print, screen and (min-width: 768px) {/*PC*/
.bath .hotwater li{
    width: 48.5%;
    margin: 0 0 10px 0;
}
}

.bath .bathtab{
    position: relative;
}
@media print, screen and (min-width: 768px) {/*PC*/
.bath .bathtab{
    width: 350px !important;
    margin: 0 !important;
    position: absolute;
    top: 0;
    right: 0;
}
}

.bath .bathtab .ph{
    border: solid 1px #b3b3b3;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .bath .bathtab .ph{
        padding: 8px 0;
        background-color: #ffffff;
    }
}

.bath .bathtab .free{
    position: absolute;
    right: 0;
    top: 0;
}

.bath .drain .ph{
    border: solid 1px #b3b3b3;
    }


.bath .drain .ph img{
}
@media print, screen and (min-width: 768px) {/*PC*/
    .bath .drain .ph img{
}
}

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

.bath .kireidoor{
    border-bottom: none !important;
}

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

/*パウダールーム*/
@media print, screen and (min-width: 768px) {/*PC*/
    .powder div.top{
        padding: 0 0 35px 0;
        border-bottom: solid 1px #b3b3b3;
    }
}

.powder figure.main img{
    height: 133.333vw !important;
    object-fit: cover;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .powder figure.main img{
        height: auto !important;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    .powder .pocket{
        position: absolute;
        bottom: -340px;
    }
}
.powder .pocket dt{
    margin: 0 0 10px 0 !important;
    padding: 6px 15px;
    color: #ffffff !important;
    background-color: #00577d;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .powder .pocket dt{
        margin: 0 0 6px 0 !important;
        padding: 6px 12px;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    .powder .equip{
        padding: 0 0 0 273px;
    }
}

.powder .cock{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .powder .cock{
        position: absolute;
        top: 335px;
        left: 546px;
    }
}

.powder .cock .txt{
    width: calc(100% - 150px);
}
@media print, screen and (min-width: 768px) {/*PC*/
    .powder .cock .txt{
        width: 100%;
    }
    .powder .cock .txt span{
        width: 85px;
        padding: 5px 0 0 0;
    }
}

.powder .cock .fig{
    width: 140px;
    margin: -20px 0 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .powder .cock .fig{
        margin: -80px 0 0 100px;
    }
}

.powder .cock .fig img{
    width: 100%;
}

.powder .mirror{
    overflow: hidden;
}
@media print, screen and (min-width: 768px) {/*PC*/
.powder .mirror{
    width: 504px !important;
    margin: 0 !important;
    padding: 0 0 30px 0 !important;
    position: absolute;
    top: 0;
    right: 0;
    border-bottom: solid 1px #c9d6dd !important;
}
}

.powder .mirror .ph{
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    font-size: 10rem;
    line-height: 14rem !important;
}
@media print, screen and (min-width: 768px) {/*PC*/
.powder .mirror .ph{
    width: 360px;
    float: left;
}
}

.powder .mirror .ph_sub ul{
    margin: 10px 0 22px 0;
    font-size: 11rem;
    line-height: 15rem !important;
    display: flex;
    justify-content: space-between;
}

@media print, screen and (min-width: 768px) {/*PC*/
.powder .mirror .ph_sub{
    width: 128px;
    float: right;
}
.powder .mirror .ph_sub ul{
    margin: 0;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
}

.powder .mirror .ph_sub li{
    width: 45%;
    margin: 0 0 5px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .powder .mirror .ph_sub li{
        width: 100%;
        margin: 0 0 5px 0;
    }
}

.powder .mirror .ph_sub img{
    width: 100%;
    height: auto;
}

@media print, screen and (min-width: 768px) {/*PC*/
.powder .mirror dt{
    padding: 12px 0 0 0;
    clear: both;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
.powder .mirror dd.txt{
    width: 100%;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
.powder .drawer{
    position: absolute;
    top: 335px;
    right: 0;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
.powder .drawer .ph{
    width: 231px;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
    .powder .drawer dd.txt span{
        padding: 10px 0 0 0;
    }
}

.powder .drawer .free,
.powder .cock .free{
    position: absolute;
    bottom: 0;
    right: 0;
}

.powder .linen{
    min-height: 320px;
    border-bottom: none !important;
}

.powder .linen .ph{
    margin: 4px 0 0 20px;
    float: right;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .powder .linen .ph{
    margin:0 0 0 18px;
}
}

.powder .linen .ph img{
    width:120px !important;
    height:320px;
}

@media print, screen and (min-width: 768px) {/*PC*/
.powder .linen dt{
    margin: 105px 0 6px 0!important;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
    .powder .equip{
        
    }
}

.powder .poket{
    margin: 40px 0 0 0;
    /*border: solid 1px #00446b;*/
    outline: solid 1px #00446b;
    outline-offset: -1px;
}
@media print, screen and (min-width: 768px) {/*PC*/
.powder .poket{
    width: 231px;
    margin: 72px 0 0 0;
    position: absolute;
    left: 0;
}
}

.powder .poket h5{
    padding: 6px 0 6px 15px;
	font-family: "NewCezannePro-DB";
    font-size: 16rem;
    line-height: 16rem;
    color: #ffffff;
    background-color: #00446b;
}

.powder .poket img{
    width: 100%;
}

.powder .poket p{
    padding: 12px 20px 15px;
    font-family: "NewCezannePro-M", sans-serif;
	color: #505050;
    line-height: 23rem;
    
}
@media print, screen and (min-width: 768px) {/*PC*/
.powder .poket p{
    padding: 8px 15px 10px;
}
}

/* トイレ */
.toilet .top>figure{
    position: relative; 
}
@media print, screen and (min-width: 768px) {/*PC*/
.toilet .top>figure{
    margin: 0 0 40px 0;
}
}

.toilet figure.main>img{
    height: 133.333vw !important;
    object-fit: cover;
    object-position: 50% 60%;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .toilet figure.main>img{
        height: auto !important;
    }
}

.toilet .top>p{
    padding: 0 0 10px;
    display: flex;
    justify-content: center;
    align-items: flex-end;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .toilet .top>p{
        margin: 0;
        padding: 0;
        justify-content: flex-start;
        position: absolute;
        top: 0px;
        left: 545px;
    }
}

.toilet .top>p a,
.toilet .top>p a img{
    margin: 0 !important;
}

.toilet .top>p img.eco5{
    width: 180px;
    margin: 0 10px 3px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
.toilet .top>p img.eco5{
    width: 200px;
    margin: 0 15px 0 0;
}
}

.toilet .top>p img.eco5 + a.readmore{
    margin: 0 0 4px 0 !important;
}
@media print, screen and (min-width: 768px) {/*PC*/
.toilet .top>p img.eco5 + a.readmore{
    margin: 0 0 2px 0 !important;
}
}

.toilet .bowl{
    margin: 40px 0 0 0;
    padding: 0 0 40px 0;
    border-bottom: solid 1px #b3b3b3;
}
@media print, screen and (min-width: 768px) {/*PC*/
.toilet .bowl{
    width: 504px;
    margin: 0;
    padding: 0 0 36px 0;
    position: absolute;
    top: 66px;
    right: 0;
}
}

.toilet .bowl h5{
    margin: 0 0 8px 0;
    padding: 6px 0 6px 15px;
    font-size: 16rem;
    line-height: 16rem;
    color: #ffffff;
    background-color: #00577d;
}

.toilet .bowl .ph{
    margin: 8px 0 -6px 0;
    display: flex;
    justify-content: space-between;
}

.toilet .bowl figure{
    width: 32%;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .toilet .bowl figure{
        width: 152px;
    }
}

.toilet .bowl figcaption{
    font-size: 12rem;
    text-align: center;
}

@media print, screen and (min-width: 768px) {/*PC*/
    .toilet .top .equip_bt{
        width: 504px;
        position: absolute;
        top: 420px;
        right: 0;
    }
    }

@media print, screen and (min-width: 768px) {/*PC*/
.toilet .top .equip_bt{
    /* width: 504px;
    position: absolute;
    top: 664px;
    right: 0; */
}
}


@media print, screen and (min-width: 768px) {/*PC*/
.toilet dl.kirei{
    width: 380px !important;
    margin: 35px 0 !important;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    .toilet dl.nozzle{
        width: 357px !important;
        margin: 35px 0 !important;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    .toilet dl.forme .ph img{
        width: 231px;
        height: 172px;
        object-fit: cover;
    }
}



@media print, screen and (min-width: 768px) {/*PC*/
.toilet .rimless .ph img,
.toilet .liftup .ph img,
.toilet .basin .ph img{
    width: 231px;
    /* height: 150px;
    object-fit: cover; */
}
}

@media print, screen and (min-width: 768px) {/*PC*/
    .toilet .remote{
        width: 295px !important;
    }
}

.toilet .handrail{
    min-height: 255px;
    margin: 0 !important;
    padding: 0 0 25px 0 !important;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .toilet .handrail{
        width: 211px;
        margin: 40px 231px 0 0 !important;
        /* position: absolute;
        top: 200px;
        right: 0; */
    }
}

.toilet .handrail .ph{
    width:100px;
    height:auto;
    margin: 0 0 0 15px;
    float: right;
}

@media print, screen and (min-width: 768px) {/*PC*/
.toilet .handrail dt{
    margin: 0 0 6px 0 !important;
}
}

.toilet .handrail{
    border-bottom: none !important;
}

.toilet .forme .ph,
.toilet .fullauto .ph{
    border: solid 1px #b3b3b3;
    overflow: hidden;
}

/* エコロジー＆エコノミー */
@media print, screen and (min-width: 768px) {/*PC*/
.eco main{
    background-image: url(../img/equipment_img/bg_eco_pc.jpg);
    background-size: auto 520px;
    background-position: center 300px;
    background-repeat: no-repeat;
    opacity: 0;
}
}
		
@media print, screen and (min-width: 768px) {/*PC*/
.eco main section:after {
    visibility: hidden;
    display: block;
    content: " ";
    clear: both;
    height: 0;
    }
}

.eco main h5{
    margin: 75px -10px 0 0;
    display: flex;
    align-items: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
.eco main h5{
    width: 100%;
    height: 120px;
    margin: 0;
    font-size: 16rem;
    line-height: 20rem;
    text-align: left;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}
}

.eco main h5 span{
    font-family: "NewCezannePro-M";
    font-size: 14rem;
    line-height: 18rem;
    letter-spacing: 0;
    font-weight: normal;
    color: #333333;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
.eco main h5 span{
    border: none;
    font-family: "NewCezannePro-M", sans-serif;
    font-size: 16rem;
    letter-spacing: 0.5rem;
	text-align: left !important;
    order: -1;
}
}

.eco main h5 img{
    padding: 0 12px 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
.eco main h5 img{
    padding: 0;
}
}

.eco main h5 b{
    margin: 0 8px 0 0;
    padding: 0 8px 0 0;
    font-family: "NewCezannePro-DB";
    font-size: 16rem;
    line-height: 18rem;
    font-weight: normal;
    color: #00577d;
    white-space: nowrap;
    border-right: double 3px rgba( 0, 87, 125, 0.40 );
}
@media print, screen and (min-width: 768px) {/*PC*/
    .eco main h5 b{
        margin: 0;
        padding: 0;
        border: none;
    }
}

.eco main p{
    font-family: "NewCezannePro-M", sans-serif;
    line-height: 23rem;
}

.eco main figure{
    margin: 0 0 10px 0;
}

.eco .lead{
    height: 160vw;
    margin: -40px -23px 0;
    padding: 40px 0 0;
    background-image: url(../img/equipment_img/bg_eco_sp.jpg);
    background-size: cover;
    background-position: center bottom;
    background-repeat: no-repeat;position: relative;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .eco .lead{
        height: 500px;
        margin: 0;
        padding: 0;
        background-image: none;
    }
}

.eco .lead h4.zeh{
    width: 77vw;
    margin: 32vw auto 18vw;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .eco .lead h4.zeh{
        width: 366px;
        margin: 120px auto 70px ;
    }
}

.eco .lead p{
    padding: 0 23px 10px;
    text-align: center;
    color: #ffffff;
    text-shadow: 0 0 12px rgba( 33, 55, 22, 0.60 );
}
@media print, screen and (min-width: 768px) {/*PC*/
    .eco .lead p{
        font-size: 17rem;
        line-height: 27rem;
        text-shadow: 0 0 8px rgba( 33, 55, 22, 0.60 );
}
}

.eco .lead p strong{
    margin: 0 0 6px 0;
    font-size: 18rem;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .eco .lead p strong{
        margin: 0 0 12px 0;
        font-size: 20rem;
    }
}

.eco .lead::after{
    content: "image";
    font-size: 10rem;
    line-height: 20rem;
    color: #ffffff;
    text-align: right;
    display: block;
    position: absolute;
    bottom: 4px;
    right: 8px;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .eco .lead::after{
        bottom: 24px;
        visibility: visible;
    }
}

.eco .scheme{
    margin: 36px 0 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .eco .scheme{
        margin: 60px 25px 0 25px;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: flex-end;
    }
}

.eco .scheme figcaption{
    margin: 4px 0 0 0;
    font-size: 10rem;
    line-height: 14rem;
}

@media print, screen and (min-width: 768px) {/*PC*/
    .eco .scheme .label{
        width: 410px;
    }
}

.eco .scheme .fig{
    margin: 40px -3vw 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .eco .scheme .fig{
        width: 520px;
        margin: 0;
    }
}

.eco .scheme .fig figcaption{
    text-align: right;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .eco .scheme .fig figcaption{
        margin: 8px 8px 0 0;
    }
}

.eco .scheme h4{
    width: 100%;
    margin: 30px 0 0 0;
    font-family: "NewCezannePro-DB";
    font-size: 19rem;
    font-weight: normal;
    text-align: center;
    white-space: nowrap;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .eco .scheme h4{
        margin: 15px 0 5px 0;
        font-size: 24rem;
        letter-spacing: 2rem;
    }
}

.eco .scheme .note{
    width: 100%;
    text-align: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .eco .scheme .note{
        font-size: 14rem !important;
    }
}
		
.eco .scheme a{
        width: 230px;
    margin: 10px auto 10px;
    padding: 2px 0;
    color: #ffffff;
    font-size: 14rem;
    text-align: center;
    background-image: url(../img/common_img/ic_arrow_wh.png);
    background-size: 10px auto;
    background-position: 95% center;
    background-repeat: no-repeat;
    background-color: #0f708e;
    border-radius: 3px;
    display: block;
    /* backdrop-filter: blur(2px);
    -webkit-backdrop-filter: blur(2px); */
    transition: all 0.15s ease-in;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .eco .scheme a{
        width: 240px;
        padding: 2px 0;
        font-size: 16rem;
        border-radius: 4px;
    }
    
    .eco .scheme a:hover {
        background-color: #007fa1;
        transition: all 0.25s ease-in;
    }
}

.eco .value{
    width: 36px;
    position: absolute;
    right: -12px;
}
@media print, screen and (min-width: 414px) {/*PC*/
.eco .value{
    width: 46px;
}
.eco .bathtab .value{
    top: -46px;
}
}

.eco .share h5 img{
    width: 175px;
    height: 35px;
}

.eco .share .fig_01{
    margin: 14px 0 14px 0;
    padding: 0 10px 5px;
    text-align: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
.eco .share .fig_01{
    width: 626px;
    margin: 25px 27px 10px 0;
    padding: 0 0 5px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-content: space-between;
    position: relative;
    float: left;
}
}

.eco .share .fig_01 .past{
    width: auto;
    height: 224px;
}

.eco .share .fig_01 .sp{
    width: 32px;
    margin: 12px auto 8px;
}
.eco .share .fig_01 .pc{
    width: 32px;
    height: 30px;
    margin: 130px auto 0;
}

.eco .share .fig_01 .new{
    width: auto;
    height: 242px;
}

.eco .share .fig_01 figcaption{
    margin: 0 0 0 -15px;
    font-family: "NewCezannePro-M";
    font-size: 11rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
.eco .share .fig_01 figcaption{
    margin: 0;
    position: absolute;
    bottom: -3px;
    left: 0;
}
}

.eco .share .fig_02{
    position: relative;
}
@media print, screen and (min-width: 768px) {/*PC*/
.eco .share .fig_02{
    width: 383px;
    margin: 25px 0 0 0;
    float: right;
}
}

.eco .share .value{
    bottom: 22px;
}

.eco .share p.note2{
    letter-spacing: -0.25rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
.eco .share p.note2{
    letter-spacing: 0;
    display: block;
    clear: both;
}
}

.eco .share .sub{
    margin: 30px 0 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
.eco .share .sub{
    margin: 45px 0 0 0;
    display: flex;
    justify-content: space-between;
    clear: both;
}
}

.eco .sub dl{
    margin: 15px 0 30px;
    padding: 0 0 0 12px;
    border-left: solid 4px #00577d;
}

@media print, screen and (min-width: 768px) {/*PC*/
    .eco .share .sub dl:nth-child(1){
        width: 375px;
        margin: 0;
    }
    .eco .share .sub dl:nth-child(2){
        width: 220px;
        margin: 0;
    }
    .eco .share .sub dl:nth-child(3){
        width: 320px;
        margin: 0;
       
    }
}

.eco .sub dt{
    margin: 0 0 8px 0;
    font-size: 16rem;
    line-height: 21rem;
    color: #00577d;
}
@media print, screen and (min-width: 768px) {/*PC*/
.eco .sub dt{
    width: 100%;
    margin: 0 0 5px 0;
    line-height: 20rem;
}
}

.eco .sub dd{
    line-height: 23rem;
}

.eco .share .sub .ph1{
    width: 94px;
    margin: 0 0 0 10px;
    float: right;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .eco .share .sub .ph1{
        width: 133px;
        
    }
}

.eco .share .sub .ph3{
    width: 77px;
    margin: -10px 0 0 10px;
    float: right;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .eco .share .sub .ph3{
        width: 72px;
        margin: 0 0 0 18px;
    }
}

.eco .share .sub .ph3.img_br::after{
    margin: -4rem -2rem 0 0;
    transform: scale(0.9);
}

@media print, screen and (min-width: 768px) {/*PC*/
.eco .eco5{
    position: relative;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
.eco .wash{
    position: relative;
}
}

.eco .wash .ph{
    margin: 8px 0 30px 0;
}

@media print, screen and (min-width: 768px) {/*PC*/
    .eco .wash .ph{
        margin: 15px 0 0 0;
        float: left;
    }
    .eco .wash .ph img{
        width: 216px;
        height: 232px;
        object-fit: cover;
}
}

.eco .wash .fig{
    margin: 0 0 20px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .eco .wash .fig{
        width: 310px;
        margin: 20px 0 0 0;
        float: left;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    .eco .wash div{
        width: 280px;
        margin: 0 20px;
        float: left;
        letter-spacing: 0;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    .eco .wash div dl{
        margin: 15px 0 25px;
    }
    .eco .wash div dl:last-child{
        margin: 15px 0 0;
    }
}

.eco .wash .sub small{
    font-size: 10rem;
    color: #333333;
    vertical-align: 5px;
    transform: scale(0.9);
}

@media print, screen and (min-width: 768px) {/*PC*/
    .eco .wash .note2{
        width: 180px;
        margin: -48px 0 0 0 !important;
        float: right;
    }
}



.eco .eco5 h5 img{
    width: 148px;
    margin: 0 0 0 -10px;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .eco .eco5 h5 img{
    width: 176px;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
.eco .eco5 p{
    width: 285px;
    text-align: left;
    letter-spacing: 0;
    float: left;
}
}

.eco .eco5 figure{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
@media print, screen and (min-width: 768px) {/*PC*/
.eco .eco5 figure{
    width: 750px;
    padding: 6px 0 0 0;
    flex-wrap: nowrap;
    align-items: flex-end;
    float: right;
}
}
.eco .eco5 figure img.ph,
.eco .eco5 figure img.fig1{
    width: 43vw;
    margin: 30px 0 15px;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .eco .eco5 figure img.ph{
        width: 170px;
        margin: 0;
    }
    .eco .eco5 figure img.fig1{
        width: 162px;
        margin: 0;
    }
    .eco .eco5 figure img.fig2{
        width: 388px;
        margin: 0;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
.eco .eco5 ul.note2{
    width: 285px;
    position: absolute;
    left: 0;
    bottom: 10px;
    line-height: 11rem !important;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
.eco .bathtab p.note2{
    width: 100%;
    clear: both;
}
}

.eco .shower h5 img{
    width: 137px;
    margin: -20px 0 0 0;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .eco .shower h5 img{
        width: 160px;
        margin: -25px 0 -6px !important;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    .eco .shower div{
        width: 500px;
        position: relative;
    }
}

.eco .shower .ph{
    width: 36vw;
    height: 38vw;
    margin: 4px 0 25px 15px;
    object-fit: cover;
    float: right;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .eco .shower .ph{
        width: 165px;
        height: auto;
        margin: 2px 0 0 0;
        position: absolute !important;
        top: 4px;
        right: -185px;
        float: none;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    .eco .shower .fig1{
        margin: 24px 0 0 0;
    }
    .eco .shower .fig2{
        width: 220px;
        margin: 3px 0 0 0;
    }
}

.eco .shower .fig3{
    margin: 15px 0 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .eco .shower .fig3{
        width: 353px;
        position: absolute;
        top: -15px;
        right: -550px;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
.eco .shower p.note2{
    width: 810px;
    margin: -53px 0 0 0 !important;
    display: inline-block;
    float: right;
}
}

.eco .ecojyozu h5 img{
    width: 108px;
    height: auto;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .eco .ecojyozu h5 img{
        width: 122px;
    }
}
.eco .ecojyozu figure img{
    margin: 25px 0 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
.eco .ecojyozu figure img:first-child{
    width: 482px;
    margin: 20px 58px 10px 0;
}
.eco .ecojyozu figure img:last-child{
    width: 504px;
    margin: 20px 0 10px 0;
}
}

.eco .ecojyozu  .note2{
    text-align:left;
}

@media print, screen and (min-width: 768px) {/*PC*/
.eco .bathtab{
    position: relative;
}
}

.eco .bathtab h5 img{
    width: 122px;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
.eco .bathtab h5 img{
    width: 133px;
    margin: 0 0 -4px 0;
}
}
@media print, screen and (min-width: 768px) {/*PC*/
.eco .bathtab p{
    width: 220px;
    float: left;
}
}

.eco .bathtab figure{
    position: relative;
}
@media print, screen and (min-width: 768px) {/*PC*/
.eco .bathtab figure{
    width: 830px;
    float: right;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
}
}

.eco .bathtab figure img{
    margin: 22px auto 0;
}

.eco .bathtab figure img.mechanism{
    width: 65%;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
.eco .bathtab figure img.mechanism{
    width: 227px;
    margin: 5px 0 0 20px;
}
.eco .bathtab figure img.graph{
    width: 364px;
    margin: 10px 0 0 0;
}
.eco .bathtab figure img.pc{
    width: 182px;
    margin: 10px 0 0 0;
}
}

.eco .bathtab figure img.ic{
    width: 25vw;
    height: auto;
    margin: 0;
    position: absolute;
    top: 40vw;
    left: -5px;
}
@media print, screen and (min-width: 768px) {/*PC*/
.eco .bathtab figure img.ic{
    width: 124px;
    top: 145px;
    left: -120px;
}
}

.eco .bathtab figure img.value{
    bottom: 8px;
}
@media print, screen and (min-width: 768px) {/*PC*/
.eco .bathtab figure img.value{
    bottom: 200px;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
.eco .bathtab ul.note2{
    width: 182px;
    position: absolute;
    top: 235px;
    right: 0;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
.eco .bathtab p.note2{
    width: 100%;
    clear: both;
}
}

/*セキュリティ*/
.security .equip .ph,
.security .equip_bt .ph,
.security #keysystem .ph{
    position: relative;
}

.security .equip .img_b::after,
.security .equip_bt .img_b::after,
.security #keysystem .img_b::after{
    content: "image";
    font-size: 10rem;
    line-height: 10rem;
    color: #333333;
    width: auto;
    position: absolute;
}

.security .h24 .img_b::before{
    content: "image";
    font-size: 10rem;
    line-height: 10rem;
    color: #333333;
    width: auto;
    position: absolute;
    top:37%;
    left: 1%;
}
@media print, screen and (min-width: 768px) {/*PC*/
.security .h24 .img_b::before{
    top: 240px;
    left: 180px;
}
}

.security .h24 .img_b::after{
    bottom: 2%;
    left: 1%;
}
@media print, screen and (min-width: 768px) {/*PC*/
.security .h24 .img_b::after{
    top: 240px;
    bottom: inherit;
    left: inherit;
    right: 23px;
}
}

.security .camera .img_b::after{
    bottom: 0;
    right: 0;
}

.security .monitor .img_b::after{
    bottom: 0;
    right: -20%;
}
@media print, screen and (min-width: 768px) {/*PC*/
.security .monitor .img_b::after{
    bottom: 0;
    right: -28px;
}
}

.security .tv .img_b::after{
    bottom: 0;
    right: 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
.security .tv .img_b::after{
    bottom: 25px;
    right: 0;
}
}

.security .door .img_b::after{
    bottom: -3.5%;
    right: 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
.security .door .img_b::after{
    bottom: -12px;
    right: 7px;
}
}

.security .key{
    border-bottom: none !important;
}

.security .key .img_b::after{
    bottom: 0;
    right: 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
.security .key .img_b::after{
    bottom: -17px;
    right: 0;
}
}

.security #keysystem .img_b::after{
    bottom: 16%;
    right: 3%;
}
.security #keysystem div dl:nth-child(2) .img_b::after{
    bottom: 3%;
    right: 3%;
}


.security .lock .ph{
    width: 80%;
    margin: auto;
}

.security .camera .ph{
    width: 90%;
    margin: auto;
}

.security .monitor .ph{
    width: 50%;
    margin: auto;
}

.security .key .ph{
    width: 80%;
    margin: auto;
}
@media print, screen and (min-width: 768px) {/*PC*/
.security .key .ph{
    width: 100%;
    margin: auto;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
.security .tv .ph{
    margin: 35px 0 0 0 !important;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
.security .h24{
    width: 100% !important;
    margin: 0 0 35px 0 !important;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
.security .h24 dt,
.security .h24 dd.txt{
    width: 323px;
}
.security .h24 dt{
    margin: 0 0 6px 0!important;
}
.security .h24 dd.txt{
    float: left;
}
}

.security .h24 dd.ph{
    margin: 10px 0 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
.security .h24 dd.ph{
    width: 702px;
    margin: -44px 0 0 0;
    float: right;
}
}

.security .lock dd.ph,
.security .camera dd.ph,
.security .monitor dd.ph,
.security .tv dd.ph,
.security .door dd.ph,
.security .key dd.ph{
    margin: 10px auto 0;
}

@media print, screen and (min-width: 768px) {/*PC*/
.security .lock{
    width: 504px !important;
}
.security .lock dt{
    margin: 0 0 6px 0!important;
}
.security .lock dd.txt{
    width: 212px;
    float: left;
}
.security .lock dd.ph{
    width: 260px;
    margin: -10px 0 0 0;
    float: right;
}
}

.security .camera dd.ph{
    width: 80%;
}
@media print, screen and (min-width: 768px) {/*PC*/
.security .camera dd.ph{
    width: 220px;
    margin: 30px auto 0;
}
}

.security .monitor dd.ph{
    width: 40%;
}
@media print, screen and (min-width: 768px) {/*PC*/
.security .monitor dd.ph{
    width: 95px;
    margin: 6px auto 0;
}
}

.security .monitor .img_b::after{
    right: -25%;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .security .monitor .img_b::after{
        right: -35px;
    }
}

.security .monitor dd.note{
    width: 100%;
    margin: 8px 0 0 0 !important;
    line-height: 12rem !important;
    text-align: center;
    order: 1;
}

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

@media print, screen and (min-width: 768px) {/*PC*/
.security .camera,
.security .monitor,
.security .tv,
.security .door,
.security .key{
    display: flex;
    flex-wrap: wrap;
}
.security .camera .ph,
.security .monitor .ph,
.security .tv .ph,
.security .door .ph,
.security .key .ph{
    order: 1;
    margin: 10px auto 0;
}
.security .camera dt,
.security .monitor dt,
.security .tv dt,
.security .door dt,
.security .key dt{
    margin: 0 0 6px 0!important;
}
}

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

.security #keysystem h5{
    margin: 0 -23px;
    padding: 6px 0 6px 12px;
    font-size: 17rem;
    line-height: 18rem;
    color: #ffffff;
    text-align: center;
    background-color: #00577d;
}
@media print, screen and (min-width: 768px) {/*PC*/
.security #keysystem h5{
    width: calc(100% - 25px);
    margin: 45px 0 0 0;
	padding: 6px 0 6px 25px;
    text-align: left;
}
}

.security #keysystem div.outline{
    margin: 18px 0;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    justify-content: space-between;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .security #keysystem div.outline{
        width: 530px;
        margin: 20px 0 0 0;
    }
}

.security #keysystem figure.knob{
    width: 57%;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .security #keysystem figure.knob{
        width: 340px;
    }
}
.security #keysystem figure.key{
    width: 38%;
    margin: 0 0 -16px 0;
    position: relative;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .security #keysystem figure.key{
        width: 180px;
        margin: 0 0 5px 0;
    }
}

.security #keysystem figure img{
    width: 100%;
    height: auto;
}
.security #keysystem figure.key img{
    margin: 0 0 18px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .security #keysystem figure.key img{
        margin: 0;
    }
}
.security #keysystem figure.key figcaption{
    position: absolute;
    top: 28px;
    right: 8px;
    letter-spacing: 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .security #keysystem figure.key figcaption{
        top: 52px;
        right: 22px;
        font-size: 14rem;
        line-height: 14rem;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    .security #keysystem figure.key::after{
        position: absolute;
        bottom: -12px;
        right: -2px;
    }
}

.security #keysystem p{
    margin: 18px 0 0 0;
    font-family: "NewCezannePro-M", sans-serif;
    letter-spacing: -0.5rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
.security #keysystem p{
    margin: 28px 0 0 0;
    letter-spacing: 0.5rem;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
.security #keysystem div.step{
    width: 480px;
    margin: 15px 0 0 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
}

.security #keysystem dl{
    padding: 8px 0 22px 0;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
}
@media print, screen and (min-width: 768px) {/*PC*/
.security #keysystem dl{
    width: 220px;
    padding: 0 0 20px 0;
    display: block;
}
}

.security #keysystem dl.step1{
    background-image: url(../img/equipment_img/ic_tri_bt.png);
    background-size: 30px 15px;
    background-position: 28% bottom;
    background-repeat: no-repeat;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .security #keysystem dl.step1{
        padding: 0 40px 20px 0;
        background-image: url(../img/equipment_img/ic_tri_rt.png);
        background-size: 25px 50px;
        background-position: 228px 90px;
    }
}

.security #keysystem dt{
    margin: 0 0 3px 0;
    font-size: 16rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
.security #keysystem dt{
    margin: 0;
    font-size: 15.5rem;
    letter-spacing: -0.5rem;
}
}

.security #keysystem dt img{
    width: 19px;
    margin: 0 4px 0 0;
    vertical-align: -3px;
}
@media print, screen and (min-width: 768px) {/*PC*/
.security #keysystem dt img{
    margin: 0 2px 0 0;
}
}

.security #keysystem .ph{
    width: 57%;
}
@media print, screen and (min-width: 768px) {/*PC*/
.security #keysystem .ph{
    width: 100%;
}
}

.security #keysystem .ph img{
    width: 100%;
}

.security #keysystem .txt{
    width: 40%;
    margin: -2px 0 0 0;
    font-family: "NewCezannePro-M", sans-serif;
    line-height: 20rem;
    letter-spacing: -0.5rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
.security #keysystem .txt{
    width: 100%;
    margin: 5px 0 0 0;
    letter-spacing: 0.5rem;
}
}

/*設備*/
.equipments .storage{
    padding: 40px 0 40px 0 !important;
    border-top: dotted 1px #00446b;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .equipments .storage{
        padding: 0 !important;
        border-top: none;
    }
}

.equipments .storage .ph{
    position: relative;
}

.equipments .storage .ph span{
    width: 100%;
    padding: 4px 0 4px;
    position: absolute;
    bottom: 0;
    display: block;
    background-color: rgba( 0, 0, 0, 0.60 );
    font-family: "NewCezannePro-M";
    font-size: 14rem;
    line-height: 14rem;
    color: #ffffff;
    text-align: center;
}

.equipments .door .ph{
    background-color: #ffffff;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .equipments .door .ph{
        width: 231px !important;
        height: 270px;
        padding: 0;
    }
}

.equipments .door .ph img{
    height: 230px !important;
    object-fit: cover;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .equipments .door .ph img{
        height: 270px !important;
        object-position: -90px 100%;
    }
}
.equipments .door ul{
    display: flex;
}
@media print, screen and (min-width: 768px) {/*PC*/
.equipments .door ul{
    display: inherit;
}
}

.equipments .door li{
    padding: 0 12px 0 0;
}

@media print, screen and (min-width: 768px) {/*PC*/
    .equipments .stock .ph img{
        width: 231px !important;
        height: 270px !important;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    .equipments .height .ph{
        width: 231px !important;
        height: 270px;
    }
}

.equipments .height .ph img{
    height: 230px !important;
    object-fit: cover;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .equipments .height .ph img{
        height: 270px !important;
        object-position: -70px 0;
    }
}

.equipments .box{
    border-bottom: none !important;
}

.equipments .box .ph{
    width: 65vw;
    margin: auto;
    padding: 0 0 0 15vw;
    text-align: center;
    position: relative;
}

.equipments .box .ph::after{
    position: absolute;
    bottom: 0px;
    right: 15vw;
}

@media print, screen and (min-width: 768px) {/*PC*/
    .equipments .box{
        width: 504px !important;
    }
    .equipments .box .ph{
        width: 246px;
        margin: -15px 10px 0 0;
        padding: 0 0 0 15px;
        float: left;
        position: relative;
    }
    .equipments .box .ph img{
        width: 100%;
        height: auto !important;
    }
    .equipments .box .ph::after{
        position: absolute;
        bottom: 10px;
        left: 170px;
        right: inherit;
    }
}

.equipments .height .ph,
.equipments .door .ph,
.equipments .flooring .ph{
    border: solid 1px #b3b3b3;
    overflow: hidden;
}

.equipments .door .ph img{
    width: 233px;
    height: 272px;
    object-fit: cover;
    object-position: 50% 100%
}

.equipments .flooring .ph::after{
    position: absolute;
    right: 0;
}

@media print, screen and (min-width: 768px) {/*PC*/
.equipments .equip .ph img,
.equipments .equip_bt .ph img{
    width: 231px;
    height: 190px;
    object-fit: cover;
}
}

.equipments .ftth{
    margin: 0 0 25px 0;
}
.equipments .glass{
    margin: 0 0 40px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .equipments .ftth,
    .equipments .glass{
        width: 504px;
        margin: 0 0 35px 0;
    }
    .equipments .ftth{
        float: left;
    }
    .equipments .glass{
        float: right;
    }
}

.equipments .ftth h5,
.equipments .glass h5{
    padding: 6px 0 6px 0;
    font-family: "NewCezannePro-DB";
    font-size: 16rem;
    line-height: 18rem;
    font-weight: normal;
    color: #00577d;
    text-align: center;
    border-top: solid 3px #00577d;
    border-bottom: solid 3px #00577d;
}
@media print, screen and (min-width: 768px) {/*PC*/
.equipments .ftth h5,
.equipments .glass h5{
    margin: 0;
    padding: 6px 0 6px 15px;
    text-align: left;
    color: #ffffff;
    background-color: #00577d;
    border: none;
}
}

.equipments .ftth dl{
    padding: 0 0 20px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
.equipments .ftth dl{
    padding: 0;
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
}
}
.equipments .ftth dt{
    width: 230px;
    margin: 20px auto 10px;
    text-align: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .equipments .ftth dt{
        width: 200px;
        margin: 30px 0 0;
        order: -1;
    }
}



@media print, screen and (min-width: 768px) {/*PC*/
    .equipments .ftth .ph{
        margin: 5px 0 0 0;
        order: -1;
    }
}

.equipments .ftth .ph img.fig{
    margin: 12px 0 2px;
}
@media print, screen and (min-width: 768px) {/*PC*/
.equipments .ftth .ph img.fig{
    width: 274px;
}
}

.equipments .ftth .ph::after{
    margin: 0 ;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .equipments .ftth .ph::after{
        margin: 0 ;
    }
}

.equipments .ftth .txt{
}
@media print, screen and (min-width: 768px) {/*PC*/
.equipments .ftth .txt{
    width: 200px;
    margin: -120px 0 0 0;
}
}

.equipments .ftth .note2{
    margin: -12px 0 0 0 !important;
}
@media print, screen and (min-width: 768px) {/*PC*/
.equipments .ftth .note2{
    width: 274px;
    margin: 0 !important;
}
}

.equipments .ftth .note2 strong{
    font-size: 14rem;
    line-height: 30rem;
    font-weight: normal;
    text-align: left;
    color: #b83948;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .equipments .ftth .note2 strong{
        font-size: 13rem;
        line-height: 26rem;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    .equipments .glass div{
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: flex-start;
    }
}

.equipments .glass .fig1{
    margin: 18px 0 15px 0;
    padding: 0 40px;
    background-color: #ffffff;
}
.equipments .glass .fig2{
    margin: 12px auto 12px;
    padding: 0 40px;
    background-color: #ffffff;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .equipments .glass .fig1,
    .equipments .glass .fig2{
        width: 248px;
        height: 224px;
        margin: 18px 0 0 0;
        padding: 10px 0;
        background-color: #ffffff;
        position: relative;
    }
}

.equipments .glass .fig1 figcaption{
    padding: 2px 3px;
    position: absolute;
    top: 10px;
    left: 10px;
    line-height: 13rem;
    border: solid 1px #666666;
}

@media print, screen and (min-width: 768px) {/*PC*/
    .equipments .glass p{
        margin: 15px 0 10px;
    }
}

.equipments .glass img{
    width: 100%;
}

.equipments .glass .img_br::after{
    position: absolute;
    right: 25px;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .equipments .glass .img_br::after{
        right: 0;
        bottom: 0;
}
}

.equipments .img_b::after{
    margin: -15rem 0 0 5rem;
    text-align: left;
}

/* 構造 */  
@media print, screen and (min-width: 768px) {/*PC*/
    .structure .lead{
        width: 100%;
    }
}

.structure .lead h6{
    margin: 40px 0 8px 0;
    font-family: "NewCezannePro-DB";
    font-size: 16rem;
    color: #1c354d;
}
@media print, screen and (min-width: 768px) {/*PC*/
.structure .lead h6{
    margin: 40px 0 10px 0;
    font-size: 17rem;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
.structure .lead p{
    font-size: 14rem;
}
}

.structure figure.main img{
    width: 100%;
    margin: 15px 0 0;
    padding: 0 0 20px 0;
    /*border-bottom: solid 1px #7fa1b5;*/
}
@media print, screen and (min-width: 768px) {/*PC*/
.structure figure.main img{
    width: 521px;
    margin: 55px 0 0;
    border-bottom: none;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
.structure .equip .top{
    width: 500px;
    padding: 90px 0 10px 0;
}
}

.structure .equip dl,
.structure .equip_bt dl{
    /* margin: 5px 0 5px 0 !important; */
    display: flex;
    flex-wrap: wrap;
}
@media print, screen and (min-width: 768px) {/*PC*/
.structure .equip dl,
.structure .equip_bt dl{
    /* margin: 45px 0 0px 0 !important; */
}
}
.structure .equip .ph,
.structure .equip_bt .ph{
    order: 1
}

.structure .top dt img{
    width: 24px;
    margin: 0 5px 0 0;
    vertical-align: -5px;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .structure .top dt img{
        vertical-align: -6px;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
.structure .ph{
    width: 100% !important;
    padding: 0 !important;
}
}

.structure .rebar .ph{
    width: 80%;
    margin: 10px auto 0;
}

.structure .thickness .ph{
    width: 85%;
    margin: 10px auto 0;
    padding: 0 0 0 8%;
}

.structure .wall .ph{
    width: 80%;
    margin: 10px auto 0;
    padding: 0 0 0 10%;
}

.structure .floor .ph{
    width: 90%;
    margin: 15px 0 0 7vw;
    padding: 0 5% 0 0 0;
}

.structure .void .ph{
    width: 100%;
    margin: 15px auto 0;
}

.structure .ratio .ph{
    width: 80%;
    margin: 10px auto 0;
}

.structure .roof .ph{
    margin: 10px auto 0;
    padding: 0 0 0 5%;
}

.structure .slit .ph{
    margin: 10px 0 0;
}

.structure .noise .ph{
    width: 100%;
    margin: 30px auto 10px;
    display: flex;
    justify-content: space-between;
}
@media print, screen and (min-width: 768px) {/*PC*/
.structure .noise .ph{
    margin: 15px auto 10px;
    justify-content: center;
    }
}

.structure .noise .ph img{
    width: 49% !important;
}
@media print, screen and (min-width: 768px) {/*PC*/
.structure .noise .ph img{
    width: 42% !important;
    margin: 0 15px;
}
}

.structure .sash .ph{
    width: 75%;
    margin: 20px auto 0;
}

.structure .alminium .ph{
    width: 65%;
    margin: 10px auto 0;
}

.structure .double .ph{
    width: 85%;
    margin: 10px auto 0;
}

.structure .sickhouse .ph{
    margin: 15px auto 5px;
}

.structure .spile .ph{
    margin: 15px 0 0;
}

@media print, screen and (min-width: 768px) {/*PC*/
.structure .spile,
.structure .ratio{
    margin: 35px 0 0 0 !important;
}
.structure .alminium{
    position: absolute;
    top: 270px;
    right: 0;
}
.structure .freeplan{
    position: absolute;
    top: 200px;
    left: 0;
}
.structure .ratio dt,
.structure .sash dt{
    letter-spacing: 0;
    white-space: nowrap;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
.structure .equip,
.structure .equip_bt{
    position: relative;
}
.structure .equip dl,
.structure .equip_bt dl{
    width: 504px !important;
    display: block;
}
.structure .equip .ph,
.structure .equip_bt .ph{
    float: right;
}
.structure .top dl{
    margin: 40px 0 40px 0 !important;
}
.structure .top dt,
.structure .top dd{
    width: 240px !important;
}
.structure .top .floor dd{
    width: 180px !important;
    margin: 0;
}


.structure .top .floor .ph{
    width: 299px !important;
}

.structure .top .void dt,
.structure .top .void dd{
    width: 184px !important;
}
.structure .top .void .ph{
    width: 295px !important;
    margin: 0 0 0 0;
}
.structure .spile dt,
.structure .spile dd{
    width: 185px !important;
}
.structure .spile .ph{
    width: 300px !important;
    margin: 0 0 50px 0;
}
.structure .ratio dt,
.structure .ratio dd{
    width: 256px !important;
}
.structure .ratio .ph{
    width: 230px !important;
    margin: 18px 0 0 0;
}
.structure .roof dt,
.structure .roof dd{
    width: 185px !important;
}
.structure .roof .ph{
    width: 311px !important;
    margin: 20px -10px 0 0;
}
.structure .slit dt,
.structure .slit dd{
    width: 173px !important;
}
.structure .slit .ph{
    width: 311px !important;
    margin: -3px 0 0 0;
}
.structure .noise{
    height: 390px;
}
.structure .sash dt,
.structure .sash dd{
    width: 235px !important;
}
.structure .sash .ph{
    width: 254px !important;
    margin: 0;
}
.structure .alminium dt,
.structure .alminium dd{
    width: 235px !important;
}
.structure .alminium .ph{
    width: 224px !important;
    margin: -54px 20px 0 0;
}
.structure .double dt,
.structure .double dd{
    width: 206px !important;
}
.structure .double .ph{
    width: 254px !important;
    margin: 5px 20px 0 0;
}
.structure .rebar .ph{
    margin: -65px auto 0 !important;
}
.structure .wall .ph{
    margin: -15px auto 0 !important;
}
.structure .sickhouse .ph{
    margin: 15px auto 10px !important;
}
}

.structure .img_br::after{
    width: auto;
    position: absolute;
    right: 0;
}

.structure .wall .img_br::after{
    right: 65%;
    bottom: 10%;
}

.structure .floor .img_br::after{
    right: 67%;
    bottom: 0%;
}

.structure .void .img_br::after{
    right: -1%;
    bottom: -9%;
}

.structure .rebar .img_br::after{
    bottom: -4%;
    right: -6%;
}

.structure .thickness .img_br::after{
    bottom: 24%;
    right: 16%;
}

.structure .spile .img_br::after{
    right: -3rem;
    bottom: -22rem;
}

.structure .ratio .img_br::after{
    right: -5rem;
    bottom: 1rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .structure .ratio .img_br::after{
        bottom: -4rem;
    }
}

.structure .slit .img_br::after{
    bottom: 13%;
}

.structure .noise .img_br::after{
    right: 1%;
    bottom: 2%;
}

.structure .sash .img_br::after{
    right: 15%;
}

.structure .alminium .img_br::after{
    right: 12%;
    bottom: -6%;
}

.structure .double .img_br::after{
    right: 37%;
    bottom: 2%;
}

.structure dd.note,
.structure dd.note2{
    line-height: 12rem !important;
    order: 2;
    clear: both;
}

.structure .sickhouse {
    border-bottom: inherit !important;
}

.structure .flat35{
    margin: 50px 0 0 0;
    padding: 0 0 8px 0;
    border-top: solid 3px #b3b3b3;
    border-bottom: solid 3px #b3b3b3;
    font-family: "NewCezannePro-M", sans-serif;
    color: #505050;
    line-height: 20rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
.structure .flat35{
    margin: 70px 0 50px 0;
    padding: 0;
    border: solid 1px #b3b3b3;
    display: flex;
    align-items: center;
}
}

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

.structure .flat35 dt img{
    width: 80%;
}
@media print, screen and (min-width: 768px) {/*PC*/
.structure .flat35 dt img{
    width: 280px;
    padding: 0 20px 0 20px;
    border-right: solid 1px #b3b3b3;
    line-height: 0;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
.structure .flat35 dd{
    padding: 10px 20px 5px 15px; 
}
}

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

.structure .guarantee h5,
.structure .maintenance h5{
    font-family: "NewCezannePro-DB";
    font-size: 21rem;
    text-align: center;
}

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

@media print, screen and (min-width: 768px) {/*PC*/
.structure .guarantee h5 .pc{
    display: inline !important;
    font-size: 21rem;
    vertical-align: 0rem;
    color: #4d4d4d;
}
}

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

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

.structure .guarantee dd,
.structure .maintenance dd{
    line-height: 23rem;
    letter-spacing: -0.25rem;
}

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

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

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

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

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

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

.structure .maintenance p{
    line-height: 23rem;
    letter-spacing: -0.25rem;
}

.structure .maintenance dl{
    margin: 0 0 30px 0;
    padding: 10px 0 10px 0;
    border-bottom: dotted 1px #b3b3b3;
}
@media print, screen and (min-width: 768px) {/*PC*/
    .structure .maintenance dl{
        margin: 0 0 5px 0;
    }
}

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

@media print, screen and (min-width: 768px) {/*PC*/
.structure .maintenance dd{
    line-height: 20rem;
}
}

.structure .maintenance figure img{
    width: 94%;
    margin: 10px auto 10px;
    display: block;
}

@media print, screen and (min-width: 768px) {/*PC*/
    .structure .maintenance figure img{
        margin: 35px auto 0;
    }
}



/*/// セレクトプラン ///*/
#selectplan .title .ic{
    width: 201px;
    margin: -8px auto 0;
    display: flex;
}
#optionplan .title .ic{
    width: 201px;
    margin: -8px auto 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #selectplan .title .ic{
        margin: -4px auto 0;
    }
    #optionplan .title .ic{
        margin: -4px auto 0;
    }
}

#selectplan .title .ic li{
    padding: 4px 0 0;
    font-size: 14rem;
    line-height: 14rem;
    color: #ffffff;
    text-align: center;
}
#selectplan .title .ic li:nth-child(1){
    width: 50%;
    letter-spacing: 0;
    background-color: #999999;
}
#selectplan .title .ic li:nth-child(2){
    width: calc(48% - 10rem);
    padding: 4px 0 0 10rem;
    letter-spacing: 10rem;
    background-color: #d15669;
}
#optionplan .title .ic li{
    padding: 4px 0 0 14rem;
    font-size: 14rem;
    line-height: 14rem;
    letter-spacing: 14rem;
    color: #ffffff;
    text-align: center;
    background-color: #b1b1b1;

}

#selectplan main section{
    margin: 70px 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan main section{
    margin: 90px 0 0;
    overflow: hidden;
}
}

#selectplan .top h3{
    font-family: "TsukuMinPr6N-D";
    font-size: 17rem;
    font-weight: normal;
    text-align: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .top h3{
    font-size: 22rem;
}
}

#selectplan .top{
    margin: 55px 0 0 0;
}

#selectplan .top p{
    margin: 10px 0 35px 0;
    letter-spacing: -1rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #selectplan .top p{
    margin: 20px 0 30px 0;
    font-size: 14rem;
    line-height: 26rem;
    text-align: center;
}
}

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

#selectplan .top .step dl{
    margin: 0 0 14px 0;
    display: flex;
    align-items: stretch;
    align-content: stretch;
    position: relative;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #selectplan .top .step dl{
    width: 150px;
    flex-wrap: wrap;
}
}

#selectplan .top .step dl::after{
    content: '';
    position: absolute;
    bottom: -12px;
    left: 0;
    right: 0;
    width: 20px;
    height: 16px;
    margin: auto;
    background-image: url(../img/select_img/bg_tri_down.png);
    background-size: 20px 16px;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #selectplan .top .step dl::after{
    content: '';
    position: absolute;
    bottom: 60px;
    right: -168px;
    width: 18px;
    height: 24px;
    background-image: url(../img/select_img/bg_tri_right.png);
    background-size: 18px 24px;
}
}

#selectplan .top .step dl:last-child::after{
    content: none;
}

#selectplan .top .step dt{
    width: 40px;
    height: 26px;
    padding: 6px 0 0 9px;
    font-family: "DINNextLTPro-Condensed";
    font-size: 12rem;
    line-height: 26rem;
    color: #ffffff;
    background-color: #436484;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #selectplan .top .step dt{
    width: 100%;
    height: 75px;
    font-size: 21rem;
    line-height: 30rem;
    color: #808080;
    background-color: #e5e5e5;
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
}
}

#selectplan .top .step dt b{
    margin: 0 0 0 3px;
    font-size: 26rem;
    font-weight: normal;
    vertical-align: -2rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #selectplan .top .step dt b{
    margin: 0 6px 0 3px;
    font-size: 75rem;
    line-height: 55rem;
}
}

#selectplan .top .step dd{
    width: calc(100% - 52px);
    height: 24px;
    padding: 8px 0 0 10px;
    font-size: 16rem;
    line-height: 16rem;
    letter-spacing: 2rem;
    color: #666666;
    background-color: #e5e5e5;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .top .step dd{
    width: 100%;
    height: 48px;
    padding: 12px 0 0 10px;
    font-size: 15rem;
    line-height: 20rem;
    color: #ffffff;
    background-color: #436484;
    order: -1;
}
}

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

#selectplan .tt h4,
#selectplan .tt2 h4{
    padding: 0 0 2px 0;
    font-size: 16rem;
    font-weight: normal;
    color: #485157;
    border-bottom: solid 1px #b3b3b3;
}
#selectplan .bath .tt h4{
    letter-spacing: 10rem;
}

@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .tt h4,
#selectplan .tt2 h4{
    height: 52px;
}
#selectplan .kitchen .tt2 h4{
    width: 445px;
}
#selectplan .powder .tt2 h4{
    width: 635px;
}
}

#selectplan .tt h4 b,
#selectplan .tt2 h4 b{
    padding: 0 6px 0 0;
    font-family: "DINNextLTPro-Condensed";
    font-size: 45rem;
    letter-spacing: 0.5rem;
    vertical-align: -1px;
    font-weight: normal;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .tt h4 b,
#selectplan .tt2 h4 b{
    padding: 0 10px 0 0;
    font-size: 60rem;
    line-height: 60rem;
    white-space: nowrap;
}
}

#selectplan .tt ul,
#selectplan .tt2 ul{
    display: flex;
    font-size: 10rem;
    line-height: 18rem;
}
#selectplan .tt li:nth-child(2),
#selectplan .tt2 li:nth-child(2){
    margin: 0 0 0 12px;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .tt ul{
    display: block;
    line-height: 14rem;
    position: absolute;
    bottom: 35px;
    right: 0;
}
#selectplan .tt2 ul{
    display: block;
    line-height: 14rem;
    position: absolute;
    top: 20px;
}
#selectplan .kitchen .tt2 ul{
    left: 333px;
}
#selectplan .powder .tt2 ul{
    left: 525px;
}

#selectplan .tt ul li,
#selectplan .tt2 ul li{
    text-align: right;
}
}

#selectplan .tt p{
    margin: 15px 0 8px;
    font-size: 12rem;
    line-height: 18rem;
}
#selectplan .tt2 p{
    margin: 0 0 40px;
    font-size: 13rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .tt p{
    margin: 10px 0 15px;
    font-size: 14rem;
    text-align: left;
}
#selectplan .tt2 p{
    margin: 50px 0 10px;
    font-size: 14rem;
    line-height: 28rem;
    text-align: left;
}
}

/*床・建具・玄関シミュレーション*/
#selectplan .roomcolor .simulator{
    padding: 0 0 10px 0;
    border-bottom: double 3px #b3b3b3;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .roomcolor .simulator{
    padding: 0 0 12px 0;
    border-bottom: none;
}
}

#selectplan .roomcolor .swiper-container{
    position: relative;
}

#selectplan .roomcolor .thumbs-swiper{
    position: absolute;
    top: 60vw;
    width: 100%;
    overflow: inherit !important;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #selectplan .roomcolor .thumbs-swiper{
        position: inherit;
        top: inherit;
        background-color: #f4f5f6;
    }
}

#selectplan .roomcolor .button{
    display: flex;
    background-color: #f4f5f6;
}

#selectplan .roomcolor .button li{
    width: 25%;
    height: 52px;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .roomcolor .button li{
    height: auto;
    /* background-size: 1px auto;
    background-position: left 60px;
    background-repeat: no-repeat;
    background-image: url(../img/common_img/vt_dot.png); */
}/*
#selectplan .roomcolor .button li.bw{
    background-image: none;
} */
}

#selectplan .roomcolor .button dl{
    opacity: 0.3;
    cursor:pointer
}
.swiper-slide-thumb-active dl,
.swiper-slide-thumb-active img.model{
    opacity: 1 !important;
}

#selectplan .roomcolor img.model{
    width: 36px;
    height: 36px;
    position: absolute;
    top: -26px;
    left: 3px;
    z-index: 999;
    opacity: 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .roomcolor img.model{
    width: 40px;
    height: 40px;
    top: -18px;
    left: 210px;
}
}

#selectplan .roomcolor .button a.active img.model{
    opacity: 1;
}

#selectplan .roomcolor .button 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*/
#selectplan .roomcolor .button dl>dt.pc{
    position: relative;
    margin: 0;
    padding: 15px 0 13px;
    font-size: 11rem;
    line-height: 11rem;
	letter-spacing: 1rem;
    color: #ffffff;
    text-align: center;
}
}

#selectplan .roomcolor .button dl>dt>b{
    display: none;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .roomcolor .button dl>dt>b{
    margin: 0 0 0 0;
    font-family: "DINNextLTPro-Condensed";
    font-size: 24rem;
    line-height: 24rem;
	letter-spacing: 0.25rem;
    font-weight: normal;
    display: block;
}
}

#selectplan .roomcolor .button .thumb1>dl>dt{
    background-color: #250100;
}
#selectplan .roomcolor .button .thumb2>dl>dt{
    background-color: #542f00;
}
#selectplan .roomcolor .button .thumb3>dl>dt{
    background-color: #957460;
}
#selectplan .roomcolor .button .thumb4>dl>dt{
    background-color: #c3ad9b;
}

#selectplan .roomcolor .swiper-slide-thumb-active dt::after{
    content: "";
    width: 25px;
    height: 15px;
    margin: auto;
    display: block;
    position: absolute;
    bottom: -15px;
    left: 0;
    right: 0;
    z-index: 999;
    clip-path: polygon(50% 100%,100% 0,0 0);
}
#selectplan .roomcolor .swiper-slide-thumb-active.thumb1>dl>dt::after{
    background-color: #250100;
}
#selectplan .roomcolor .swiper-slide-thumb-active.thumb2>dl>dt::after{
    background-color: #542f00;
}
#selectplan .roomcolor .swiper-slide-thumb-active.thumb3>dl>dt::after{
    background-color: #957460;
}
#selectplan .roomcolor .swiper-slide-thumb-active.thumb4>dl>dt::after{
    background-color: #c3ad9b;
}

@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .roomcolor .button dt.sp,
#selectplan .roomcolor .thumb_sp{
    display: none !important;
}
}

#selectplan .roomcolor .thumb_sp{
    margin: 54px 0 0 0;
    padding: 13px 0 0 0;
    display: flex;
    justify-content: center;
    background-size: 25% 12px;
    background-repeat: no-repeat;
    background-color: #f4f5f6;
}

#selectplan .roomcolor .thumb_sp dl{
    width: 24vw;
}

#selectplan .roomcolor .thumb_sp dt{
    font-size: 10rem;
    line-height: 10rem;
    text-align: center;
    background-color: #f4f5f6;
}
#selectplan .roomcolor .thumb_sp dt.name{
    height: 20rem;
}

#selectplan .roomcolor .thumb_sp dd{
    width: 17vw;
    margin: 2px auto 2px;
}

#selectplan .roomcolor .button dd.thumb_pc{
    display: none;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .roomcolor .button dd.thumb_pc{
    padding: 12px 35px 0;
    display: flex;
    flex-wrap: wrap;
    text-align: center;
    justify-content: space-between;
    border-left: dotted 1px #666666;
}
#selectplan .roomcolor .button li:last-child dd.thumb_pc{
    border-right: dotted 1px #666666;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .roomcolor .button dd.thumb_pc dl{
    width: 89px;
}
#selectplan .roomcolor .button dd.thumb_pc dd{
    width: 74px;
    margin: 0 auto 3px;
}
#selectplan .roomcolor .button dd.thumb_pc dd img{
    width: 74px;
}
}

#selectplan .roomcolor .thumb_sp dt.part{
    font-family: "NewCezannePro-DB";
    font-size: 11rem;
    line-height: 11rem;
    letter-spacing: 0;
    text-align: center;
    white-space: nowrap;
}
#selectplan .roomcolor .thumb_sp dt.name{
    font-size: 10rem;
    line-height: 11rem;
    text-align: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .roomcolor .button dt.part{
    font-family: "NewCezannePro-M";
    font-size: 11rem;
    line-height: 11rem;
    letter-spacing: 0;
    text-align: center;
    white-space: nowrap;
}
#selectplan .roomcolor .button dt.name{
    margin: 0 0 10px 0;
    font-size: 10rem;
    line-height: 11rem;
    letter-spacing: -0.3rem;
    text-align: center;
}
}

/*バスルームシミュレーション*/
#selectplan .bath .simulator{
    padding: 0 0 5px 0;
    border-bottom: dotted 1px #333333;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .bath .simulator{
    padding: 0 0 12px 0;
    border-bottom: none;
}
}

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

#selectplan .bath .simulator .swiper-slide>img{
}
@media print, screen and (min-width: 768px) {/*PC*/
    #selectplan .bath .simulator .main-swiper2 .swiper-slide>img{
    width: 525px;
}
}

#selectplan .bath .swiper-container{
    position: relative;
}

#selectplan .bath .thumbs-swiper2{
    position: absolute;
    top: 127vw;
    width: 100%;
    overflow: inherit !important;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #selectplan .bath .thumbs-swiper2{
        position: inherit;
        top: inherit;
        background-color: #f4f5f6;
    }
}

#selectplan .bath .button2{
    display: flex;
    background-color: #f4f5f6;
}

#selectplan .bath .button2 li{
    width: 25%;
    height: 60px;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .bath .button2 li{
    height: auto;
    /* background-size: 1px auto;
    background-position: left 60px;
    background-repeat: no-repeat;
    background-image: url(../img/common_img/vt_dot.png); */
}
/* #selectplan .bath .button2 li.bw{
    background-image: none;
} */
}

#selectplan .bath .button2 dl{
    opacity: 0.3;
    cursor:pointer
}
.swiper-slide-thumb-active dl,
.swiper-slide-thumb-active img.model{
    opacity: 1 !important;
}

#selectplan .bath img.model{
    width: 36px;
    height: 36px;
    position: absolute;
    top: -26px;
    left: 3px;
    z-index: 999;
    opacity: 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .bath img.model{
    width: 40px;
    height: 40px;
    top: -18px;
    left: 210px;
}
}

#selectplan .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*/
#selectplan .bath .button2 a img.model{
    width: 40px;
    height: 40px;
    top: -25px;
    left: 210px;
}
}
#selectplan .bath .button2 a.active img.model{
    opacity: 1;
}

#selectplan .bath .button2 dl>dt.sp{
    position: relative;
    padding: 17px 0 18px;
    font-size: 11rem;
    line-height: 14rem;
    letter-spacing: -0.75rem;
    color: #ffffff;
    text-align: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .bath .button2 dl>dt.pc{
    position: relative;
    margin: 0;
    padding: 15px 0 13px;
    font-size: 13rem;
    line-height: 13rem;
	letter-spacing: 1rem;
    color: #ffffff;
    text-align: center;
}
}

#selectplan .bath .button2 dl>dt>b{
    display: none;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .bath .button2 dl>dt>b{
    margin: 0 0 4px 0;
    font-size: 17rem;
    line-height: 17rem;
	letter-spacing: 0.25rem;
    display: block;
}
}

#selectplan .bath .button2 .thumb1>dl>dt{
    background-color: #250100;
}
#selectplan .bath .button2 .thumb2>dl>dt{
    background-color: #542f00;
}
#selectplan .bath .button2 .thumb3>dl>dt{
    background-color: #957460;
}
#selectplan .bath .button2 .thumb4>dl>dt{
    background-color: #c3ad9b;
}

#selectplan .bath .swiper-slide-thumb-active dt::after{
    content: "";
    width: 25px;
    height: 15px;
    margin: auto;
    display: block;
    position: absolute;
    bottom: -15px;
    left: 0;
    right: 0;
    z-index: 999;
    clip-path: polygon(50% 100%,100% 0,0 0);
}
#selectplan .bath .swiper-slide-thumb-active.thumb1>dl>dt::after{
    background-color: #250100;
}
#selectplan .bath .swiper-slide-thumb-active.thumb2>dl>dt::after{
    background-color: #542f00;
}
#selectplan .bath .swiper-slide-thumb-active.thumb3>dl>dt::after{
    background-color: #957460;
}
#selectplan .bath .swiper-slide-thumb-active.thumb4>dl>dt::after{
    background-color: #c3ad9b;
}


@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .bath .button2 dt.sp,
#selectplan .bath .thumb_sp{
    display: none !important;
}
}

#selectplan .bath .thumb_sp{
    margin: 54px 0 0 0;
    padding: 13px 0 0 0;
    display: flex;
    justify-content: center;
    background-color: #f4f5f6;
}

#selectplan .bath .thumb_sp dl{
    width: 25%;
}

#selectplan .bath .thumb_sp dt{
    font-size: 10rem;
    line-height: 10rem;
    text-align: center;
    background-color: #f4f5f6;
}
#selectplan .bath .thumb_sp dt.name{
    height: 20rem;
}

#selectplan .bath .thumb_sp dd{
    width: calc(100% - 6px);
    margin: 2px 3px 2px 3px;
}

#selectplan .bath .thumb_sp dd img{
    width: 100%;
    height: 14vw !important;
    object-fit: cover;
}

#selectplan .bath .button2 dd.thumb_pc{
    display: none;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .bath .button2 dd.thumb_pc{
    padding: 12px 20px 0 21px;
    display: flex;
    flex-wrap: wrap;
    text-align: center;
    justify-content: space-between;
    border-left: dotted 1px #666666;
}
#selectplan .bath .button2 li:last-child dd.thumb_pc{
    padding: 12px 20px 0 20px;
    border-right: dotted 1px #666666;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .bath .button2 dd.thumb_pc dl{
    width: 103px;
}
#selectplan .bath .button2 dd.thumb_pc dd{
    width: 103px;
    margin: 0 auto 3px;
}
#selectplan .bath .button2 dd.thumb_pc dd img{
    width: 103px;
}
}

#selectplan .bath .thumb_sp dt.part{
    font-family: "NewCezannePro-M";
    font-size: 10rem;
    line-height: 10rem;
    letter-spacing: -1rem;
    text-align: center;
    white-space: nowrap;
}

#selectplan .bath .thumb_sp dl:nth-child(2) dt.part{
    margin: 0 0 3px -2px;
}

#selectplan .bath .thumb_sp dt.name{
    font-size: 10rem;
    line-height: 11rem;
    text-align: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .bath .button2 dt.part{
    margin: 10px 0 0 0;
    font-family: "NewCezannePro-DB";
    font-size: 11rem;
    line-height: 11rem;
    letter-spacing: 0;
    text-align: center;
    white-space: nowrap;
}
#selectplan .bath .button2 dt.name{
    
    font-size: 10rem;
    line-height: 11rem;
    letter-spacing: -0.3rem;
    text-align: center;
}
}

/*キッチン*/
#selectplan .kitchen figure{
    margin: 12px 0 12px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .kitchen figure{
    width: 570px;
    height: 450px;
    margin: -50px 0 30px 0;
    float: right;
}
}

#selectplan .powder figure{
    margin: 12px 0 12px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .powder figure{
    width: 380px;
    height: 520px;
    margin: -50px 0 30px 0;
    float: right;
}
}

#selectplan main div:not(.thum)>h5{
    width: calc(100% - 10px);
    margin: 0 0 12px 0;
    padding: 3px 4px 3px 6px;
    font-family: "NewCezannePro-DB";
    font-size: 16rem;
    line-height: 16rem;
    font-weight: normal;
    letter-spacing: -0.25rem;
    text-align: left;
    color: #ffffff;
    background-color: #436484;
}
@media print, screen and (min-width: 375px) {/*スマホ4.7″以上*/
#selectplan main div:not(.thum)>h5{
    width: calc(100% - 18px);
    padding: 6px 6px 5px 10px;
    font-family: "NewCezannePro-DB";
    font-size: 16rem;
    line-height: 16rem;
    letter-spacing: 0;
}
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan main div:not(.thum)>h5{
    width: calc(100% - 22px);
    padding: 7px 6px 4px 16px;
    font-size: 18rem;
    line-height: 18rem;
    letter-spacing: 1rem;
}
}

#selectplan main div:not(.thum)>h5 small{
    font-size: 18rem;
    font-family: "DINNextLTPro-Condensed";
    color: rgba( 255, 255, 255, 0.8 );
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan main div:not(.thum)>h5 small{
    font-size: 21rem;
    vertical-align: -1rem;
}
}

#selectplan main div:not(.thum)>h5 span{
    opacity: 0.3;
}

#selectplan main div dt{
    margin: 0 0 3px 0;
    font-size: 16rem;
    line-height: 18rem;
    position: relative;
}

#selectplan main div dd.txt{
    margin: 10px 0 0 0;
    line-height: 23rem;
}

#selectplan main dd.ph img{
    width: 100%;
}

#selectplan main .note{
    font-size: 10rem;
    line-height: 10rem;
    letter-spacing: -0.5rem;
}

#selectplan main .note2{
    margin: -8px 0 12px;
    font-size: 12rem;
    line-height: 12rem;
    letter-spacing: -0.5rem;
    color: #436484;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #selectplan main .note2{
        margin: -33px 0 23px;
        padding: 0 12px 0 0;
        font-size: 13rem;
        line-height: 10rem;
        letter-spacing: -0.5rem;
        color: #ffffff;
        text-align: right;
    }
}

#selectplan main p{
    margin: 15px 0 0 0;
    line-height: 23rem;
}

#selectplan main .or{
    margin: 10px 0 0 0;
    background-image: url(../img/select_img/ln_dot_hr.png);
    background-position: center center;
    background-repeat: repeat-x;
    display: flex;
}

#selectplan main .or2{
    margin: 10px 0 0 0;
    background-image: url(../img/select_img/ln_dot_hr.png);
    background-position: center center;
    background-repeat: repeat-x;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan main .or{
        background-image: none;
    }
#selectplan main .or2{
    margin: 0;
    background-image: url(../img/select_img/ln_dot_vt.png);
    background-position: center center;
    background-repeat: repeat-y;
    display: flex;
    }
}

#selectplan main .or img,
#selectplan main .or2 img{
    width: 40px;
    height: 46px;
    margin: 0 auto 0;
}

@media print, screen and (min-width: 768px) {/*PC*/
#selectplan main .or img,
#selectplan main .or2 img{
    width: 60px;
    height: 52px;
    margin: auto;
}
}

#selectplan .list{
    margin: 0 0 30px 0;
}
#selectplan .select,
#selectplan .range_pannel,
#selectplan .kitchen_pannel,
#selectplan .height,
#selectplan .handle,
#selectplan .cabinet,
#selectplan .tap{
    margin: 0 0 45px 0;
}

@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .height{
    margin: 0 0 30px 0;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .accent li img,
#selectplan .bathcounter li img,
#selectplan .floor li img{
    margin: 0 0 3px 0 !important;
}
}

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

#selectplan .powerhandle{
    margin: 0 0 60px 0;
}

#selectplan .tatami{
    margin: 15px 0 0 0;
}


#selectplan .tatami ul{
    width: calc(50% - 7px);
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .floor,
#selectplan .bathcounter{
    width: calc(25% - 7px);
}
#selectplan .tatami ul{
    width: 380px;
}
}

#selectplan .list .thumb,
#selectplan .list .thumb_w,
#selectplan .list .thumb_w2{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
#selectplan .floor .thumb,
#selectplan .bathcounter .thumb{
    justify-content: flex-start;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .floor .thumb,
#selectplan .bathcounter .thumb{
    justify-content: space-between;
}
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .list .thumb_w{
    justify-content: flex-start;
}
}

#selectplan .list .thumb li{
    width: calc(25% - 10px);
    margin: 0 0 12px 0;
    text-align: center;
    font-size: 10rem;
    line-height: 11rem;
    letter-spacing: -1rem;
    position: relative;
}
#selectplan .list .thumb_w li{
    width: calc(33.33333333% - 10px);
    margin: 0 0 12px 0;
    text-align: center;
    font-size: 10rem;
    line-height: 11rem;
    letter-spacing: -1rem;
    position: relative;
}

#selectplan .list .thumb_w2 li{
    width: 40vw;
    margin: 0 0 25px 0;
    text-align: center;
    font-size: 10rem;
    line-height: 11rem;
    position: relative;
}

#selectplan .tatami .thumb li{
    width: calc(50% - 6.5px) !important;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .tatami .thumb li{
    width: 110px !important;
}
}

#selectplan .list .thumb li img,
#selectplan .list .thumb_w li img{
    width: 100%;
    height: 50px;
    object-fit: cover;
    margin: 0 auto 3px auto;
    display: block;
}

#selectplan .list .thumb_w2 li img{
    width: 100%;
    margin: 0 auto 3px auto;
    display: block;
}

#selectplan .list .thumb_w2 li img.large{
    position: absolute;
    top: 0;
    right: 0;
    width: 33px;
    height: 15px;
}

@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .list .thumb li{
    width: 12.5%;
    height: 74px;
    margin: 0 0 40px 0;
    font-size: 12rem;
    line-height: 13rem;
}
#selectplan .list .thumb li:nth-child(1),
#selectplan .list .thumb li:nth-child(9){
    width: 110px;
    height: 74px;
    margin: 0 11px 40px 0;
}
#selectplan .list .thumb li:nth-child(8),
#selectplan .list .thumb li:nth-child(16){
    width: 110px;
    height: 74px;
    margin: 0 0 40px 11px;
}
#selectplan .list .thumb li img{
    width: 110px;
    height: 74px;
}
#selectplan .list .thumb_w li{
    width: 244px;
    height: 74px;
    margin: 0 22px 40px 0;
    font-size: 12rem;
    line-height: 13rem;
}
#selectplan .list .thumb_w li img{
    width: 244px;
    height: 74px;
}
#selectplan .list .thumb_w2 li{
    width: 218px;
    height: 140px;
    margin: 0 0 40px 0;
    font-size: 12rem;
    line-height: 13rem;
}
}

#selectplan .roomcolor .thumb li{
    width: calc(50% - 6.5px) !important;
}
#selectplan .floor .thumb li,
#selectplan .bathcounter .thumb li{
    margin: 0 4% 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .roomcolor .thumb li,
#selectplan .accent .thumb li,
#selectplan .accent .thumb li:nth-child(1),
#selectplan .accent .thumb li:nth-child(4),
#selectplan .floor .thumb li:nth-child(1),#selectplan .floor .thumb li:nth-child(2),#selectplan .floor .thumb li:nth-child(3){
    width: 98px !important;
    height: 74px;
    margin: 0 0 40px 0 !important;
}
#selectplan .accent li img:not(.ic),
#selectplan .floor li img:not(.ic){
    width: 98px !important;
    height: 74px;
}
#selectplan .powder .list .thumb li .ic{
    right: 0;
}
}

#selectplan .list li img.bd{
    border: solid 1px #e6e6e6;
    box-sizing: border-box;
}

#selectplan .list .thumb li .ic,
#selectplan .list .thumb_w li .ic{
    width: 36px;
    height: 36px;
    position: absolute;
    top: -10px;
    right: -5px;
}
#selectplan .list .thumb_w2 li .ic{
    width: 36px;
    height: 36px;
    position: absolute;
    top: -9px;
    left: -5px;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .list .thumb li .ic,
#selectplan .list .thumb_w li .ic{
    width: 38px;
    height: 38px;
    top: -10px;
    right: -2px;
}
#selectplan .list .thumb_w2 li .ic{
    width: 38px;
    height: 38px;
    top: -10px;
    right: 183px;
}
}

#selectplan dt img.sel{
    width: 75px;
    height: 21px;
    margin: 0 0 6px 0;
    display: block;
}

#selectplan dd.ph{
    position: relative;
}

#selectplan .bath_color{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .range_pannel,
#selectplan .kitchen_pannel,
#selectplan .handle,
#selectplan .bath_color,
#selectplan .bathtab,
#selectplan .cabinet,
#selectplan .powerhandle,
#selectplan .tap,
#selectplan .japanese{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
#selectplan .height{
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}
}

#selectplan .range_pannel dl,
#selectplan .kitchen_pannel dl{
    width: 80%;
    margin: auto;
}
#selectplan .range_pannel dl.si{
    margin: 0 auto -10px;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .range_pannel dl,
#selectplan .kitchen_pannel dl{
    width:268px;;
    margin: 0;
}
#selectplan .range_pannel dl.si{
    margin: 0
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .range_pannel p,
#selectplan .kitchen_pannel p{
    width:376px;;
    margin: 44px 0 0 0;
}
}

#selectplan .range_pannel span.note,
#selectplan .kitchen_pannel span.note{
    margin: 8px 0 0 0;
    line-height: 14rem !important;
    display: block;
}

#selectplan .range_pannel .ic,
#selectplan .kitchen_pannel .ic{
    width: 36px;
    height: 36px;
    position: absolute;
    top: -10px;
    right: -20px;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .range_pannel .ic,
#selectplan .kitchen_pannel .ic{
    width: 38px;
    height: 38px;
}
}

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

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

@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .height p{
    width: 348px;
    margin: 17px 0 10px 0;
}
}
#selectplan .height figure{
    position: relative;
}

#selectplan .height figure .fig1{
    width: 80%;
    height: auto;
    margin: 20px auto 15px auto;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .height figure{
    width: 680px;
    height: auto;
    margin: 0;;
    display: flex;
    align-items: flex-end;
}
#selectplan .height figure .fig1{
    width: 315px !important;
    margin: 0 0 10px 0;
}
#selectplan .height figure .fig2{
    width: 365px !important;
}
}

#selectplan .height .ic{
    width: 36px;
    height: 36px;
    position: absolute;
    right: 120px;
    bottom: 62vw;
    
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .height .ic{
    width: 38px;
    height: 38px;
    bottom: 80px;
    right: 470px;
}
}

#selectplan .handle figure{
    width: 80%;
    margin: 0 auto 20px;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .handle figure{
    width: 318px !important;
    height: auto;
    margin: 0 70px 0 0;
}
}
#selectplan .handle dl{
    width: 80%;
    margin: auto;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .handle dl{
    width: 268px;
    margin: 18px 0 0 0;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .handle dd.ph{
    width: 100%;
    margin: 10px auto;
}
}

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

#selectplan p.mid{
    margin: 40px 0 26px 0;
    padding: 12px 0 12px 0;
    font-size: 15rem;
    line-height: 24rem;
    text-align: center;
    background-color: #e1e4e6;
    display: block;
    position: relative;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan p.mid{
    margin: 70px 0 35px;
    padding: 8px 0 8px 0;
    font-size: 16rem;
    letter-spacing: 0;
}
}

#selectplan p.mid::after{
    content: "";
    width: 40px;
    height: 17px;
    margin: auto;
    display: block;
    position: absolute;
    bottom: -17px;
    left: 0;
    right: 0;
    z-index: 999;
    background-color: #e1e4e6;
    clip-path: polygon(50% 100%,100% 0,0 0);
}

#selectplan .accent,
#selectplan .floor,
#selectplan .bathcounter{
    width: 100%;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .accent{
    width: 437px;
}
#selectplan .floor{
    width: 324px;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
    #selectplan .bathcounter{
        width: 233px;
    }

    #selectplan main div.bathcounter:not(.thum)>h5{
        width: calc(100% - 12px);
        padding: 8px 0 4px 8px;
        letter-spacing: -1rem;
        white-space: nowrap;
    }

    #selectplan main div.bathcounter:not(.thum)>h5 small{
        letter-spacing: .5rem !important;
    }
    
    #selectplan .bathcounter .thumb li{
        width: 108px !important;
    }
    #selectplan .bathcounter .thumb li:nth-child(2){
        margin: 0 0 40px 0;
    }
}

#selectplan .bathtab{
    width: 100% !important;
    margin: 0 0 45px 0;
    position: relative;
    top: inherit;
    right: inherit;
}

#selectplan .bathtab dl{
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
}

@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .bathtab dl{
    width: 260px;
    display: block;
}
}

#selectplan .bathtab dt{
    width: 100%;
}

#selectplan .bathtab dd.ph{
    width: 62%;
    margin: 0 0 10px 0;
    border: none;
}

#selectplan .bathtab .ic{
    width: 36px;
    height: 36px;
    position: absolute;
    top: -15px;
    right: 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .bathtab .ic{
    width: 38px;
    height: 38px;
    position: absolute;
    top: -45px;
    right: -5px;
}
}

#selectplan .bathtab dd.txt,
#selectplan .bathtab dd.txt2,
#selectplan .bathtab dd.txt3,
#selectplan .bathtab dd.txt4{
    width: 35%;
    font-size: 12rem;
    line-height: 18rem;
    letter-spacing: -0.25rem;
}
#selectplan .bathtab dd.txt{
    margin: -3px 0 10px 0;
}
#selectplan .bathtab dd.txt2{
    margin: 22px 0 10px 0;
}
#selectplan .bathtab dd.txt3{
    margin: 15px 0 10px 0;
}
#selectplan .bathtab dd.txt4{
    margin: 35px 0 10px 0;
}

@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .bathtab dd{
    width: 100% !important;
    margin: 0 0 5px 0 !important;
    padding: 0;
}
#selectplan .bathtab dd.txt{
    width: 100% !important;
    margin: 0 0 15px 0 !important;
}
}

#selectplan .bathtab dd.note{
    margin: 0  !important;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #selectplan .bathtab dd.note{
        margin: 20px 0 0 0 !important;
        line-height: 14rem;
    }
}

#selectplan .cabinet h5 + span.note{
    margin: -8px 0 14px 0;
    display: block;
    width: 100%;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #selectplan .cabinet h5 + span.note{
        text-align: right;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .cabinet dl{
    width: 439px;
}
}

#selectplan .handle .ic{
    width: 36px;
    height: 36px;
    position: absolute;
    top: -20px;
    right: -20px;
}
#selectplan .cabinet .ic,
#selectplan .powerhandle .ic{
    width: 36px;
    height: 36px;
    margin: -11px 0 0 5px;
    right: inherit;
    position: relative;
}
#selectplan .tap .standard .ic{
    width: 36px;
    height: 36px;
    margin: -28px 0 0 4px;
    right: inherit;
    position: relative;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .cabinet .ic,
#selectplan .powerhandle .ic,
#selectplan .handle .ic,
#selectplan .tap .standard .ic{
    width: 38px;
    height: 38px;
    margin: -11px 0 0 4px;
}
}

#selectplan .powerhandle figure{
    width: 80%;
    margin: 0 auto 20px;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .powerhandle figure{
    width: 318px !important;
    height: auto;
    margin: 0 70px 0 0;
}
}

#selectplan .powerhandle dl{
    width: 80%;
    margin: auto;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .powerhandle dl{
    width: 268px;
    margin: 18px 0 0 0;
}
}

#selectplan .powerhandle dd.ph{
    margin: 0 auto;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .powerhandle dd.ph{
    width: 100%;
    margin: 10px auto;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .tap dl{
    width: 480px;
}
}

#selectplan .tap .standard .ic1{
    width: 60px;
    height: 18px;
    margin: auto;
    position: absolute;
    top: 5px;
    right: 2vw;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #selectplan .tap .standard .ic1{
        width: 65px;
        height: 18px;
        margin: auto;
        position: absolute;
        top: 10px;
        right: inherit;
        left: 110px;
    }
}

#selectplan .tap .select .ic2{
    width: 135px;
    height: 18px;
    position: absolute;
    top: 20px;
    right: -20px;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .tap .select .ic2{
    top: -37px;
    left: 0;
    right: inherit;
}
}

#selectplan .tap .standard{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .tap .standard{
    margin: 0 !important;
    padding: 0 !important;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .tap .standard dt{
    width: 100%;
}
}

#selectplan .tap .standard .ph{
    width: 48%;
    margin: 10px auto 0;
    position: relative;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .tap .standard .ph{
    width: 175px;
    margin: 5px 0 0;
}
}

#selectplan .tap .standard .txt{
    letter-spacing: -.5rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .tap .standard .txt{
    width: 244px;
    margin: 35px 0 0 0;
}
}

#selectplan .tap .standard .txt img{
    width: calc(42vw + 20px);
    margin: 5px 10px 0 0;
    float: left;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .tap .standard .txt img{
    width: 100%;
    margin: 0 0 5px 0;
}
}

#selectplan .tap .standard .sub dl{
    margin: 20px 0 0 0;
    padding: 20px;
    background-color: #ffffff;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .tap .standard .sub dl{
    width: 440px;
    margin: 22px 0 0 0;
}
}

#selectplan .tap .standard .sub dd.ph{
    width: 42vw;
    margin: 3px 0 20px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .tap .standard .sub dd.ph{
    width: 158px;
    margin: 5px 0 10px 0;
}
}

#selectplan .tap .standard .sub dd.fig1{
    width: 42vw;
}
#selectplan .tap .standard .sub dd.fig2{
    width: 32vw;
}

@media print, screen and (min-width: 768px) {/*PC*/
    #selectplan .tap .standard .sub dd.fig1{
        width: 132px;
    }
    #selectplan .tap .standard .sub dd.fig2{
        width: 100px;
        font-size: 11rem;
        line-height: 16rem;
        letter-spacing: 0;
        text-align: left;
    }
}

#selectplan .tap .standard .sub dd.fig2 img{
    margin: 0px 0 10px 0 !important;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #selectplan .tap .standard .sub dd.fig2 img{
        margin: 0px 0 11px 0 !important;
    }
}

#selectplan .tap .standard .sub dd.txt{
    width: 32vw;
    margin: 0;
    line-height: 22rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .tap .standard .sub dd.txt{
    width: 100%;
    order: 1;
}
}

#selectplan .tap .select{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    position: relative;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .tap .select{
    margin: 0;
}
}

#selectplan .tap .select>.ph{
    width: 80%;
    margin: 15px auto 6vw;
    padding: 0 0 0 8vw;
    position: relative;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .tap .select>.ph{
    width: 290px;
    margin: 60px 0 0 0;
    padding: 0;
}
}

#selectplan .tap .select .txt{
    margin: 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .tap .select>.txt{
    width: 280px;
    position: absolute;
    top: 67px;
    right: 0;
}
}

#selectplan .tap .select .txt img{
    width: calc(48vw + 20px);
    margin: 5px 10px 0 0;
    float: left;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .tap .select .txt img{
    width: 160px;
    margin: 0;
    position: absolute;
    top: 90px;
    right: 0;
}
}

#selectplan .tap .select .sub dl{
    margin: 20px 0 0 0;
    padding: 20px;
    background-color: #ffffff;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .tap .select .sub dl{
    width: 438px;
    margin: 33px 0 0 0;
}
}

#selectplan .tap .select .sub dd.ph{
    width: 48vw;
    margin: 6px 0 0 0;
    position: relative;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .tap .select .sub dd.ph{
    width: 100%;
    margin: 3px 0 0 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
}

#selectplan .tap .select .sub dd.ph img{
    margin: 5px 0 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .tap .select .sub dd.ph img{
    width: 49%;
    margin: 0;
}
}

#selectplan .tap .select .sub dd.ph img.ic{
    width: 80px;
    position: absolute;
    top: 5vw;
    right: -2vw;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #selectplan .tap .select .sub dd.ph img.ic{
        top: 22px;
        right: 50%;
    }
}

#selectplan .tap .select .sub dd.txt{
    width: 26vw;
    margin: 7px 0 0 0;
    line-height: 22rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .tap .select .sub dd.txt{
    width: 100%;
    margin: 10px 0 0 0;
}
}

#selectplan .tap img{
    width: 100%;
    height: auto;
}


@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .japanese .tt2{
    width: 400px;
    margin: 5px 0 0 0;
}
}

#selectplan .tatami{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    align-content: flex-start;
}

@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .tatami{
    width: 592px;
}
}

#selectplan .tatami figure{
    width: 48%;
    height: 126px;
}
@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .tatami figure{
    width: 190px;
    height: 190px;
}
}

#selectplan .tatami figure img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}

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

@media print, screen and (min-width: 768px) {/*PC*/
#selectplan .tatami .thumb li:nth-child(1){
    margin: 0 0 40px 0;
}
}

/*/// オプションプラン　///*/
#optionplan .lead p{
    margin: 53px 0 35px 0;
    line-height: 28rem;
    letter-spacing: -0.2rem;
    text-align: center;
}

@media print, screen and (min-width: 768px) {/*PC*/
#optionplan .lead p{
    margin: 50px 0 50px 0;
    font-family: "TsukuMinPr6N-D";
    font-size: 15rem;
    line-height: 28rem;
    letter-spacing: 1rem;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
#optionplan section{
    position: relative;
    min-height: 2550px;
}
#optionplan section div,
#optionplan section .column,
#optionplan section .main_ph{
    position: absolute;
}
}

#optionplan section h4{
    margin: 60px 0 12px 0;
    padding: 6px 8px 6px 10px;
    font-family: "NewCezannePro-DB";
    font-size: 15rem;
    line-height: 15rem;
    color: #ffffff;
    background-color: #436484;
}
#optionplan section div:nth-child(1) h4,
#optionplan section div:nth-child(8) h4,
#optionplan section div:nth-child(9) h4{
    margin: 0 0 12px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #optionplan section div:nth-child(2) h4{
        width: 100%;
    }
}

#optionplan section h5{
    margin: 0 0 5px 0;
    font-size: 15rem;
    line-height: 18rem;
}

#optionplan section figure{
    margin: 0 0 18px 0;
}

#optionplan section figure.main_ph{
    margin: 60px 0 35px 0;
}

#optionplan section figure img{
    width: 100%;
}

#optionplan section figcaption{
    margin: 3px 0 5px 0;
    font-size: 13rem;
    line-height: 14rem;
}

#optionplan section p{
    margin: -10px 0 25px 0;
    font-size: 12rem;
    line-height: 20rem;
}

#optionplan .column{
    margin: 12px 0 0 0;
    padding: 20px 25px 20px 25px;
    background-color: #ffffff;
    clear: both;
}

#optionplan .column dt{
    font-size: 16rem;
    line-height: 30rem;
}

#optionplan .column .ph img{
    width: 100%;
    height: auto;
}

#optionplan .column .txt{
    margin: 10px 0 0 0;
    font-size: 12rem;
    line-height: 20rem;
}

#optionplan .ecocut{
    margin: 60px 0 0 0;
}

#optionplan .main_ph{
    width: 100%;
}

#optionplan .main_ph img{
    width: 100vw;
    height: 100vw;
    object-fit: cover;
    object-position: 20% 100%;
    margin: 0 -23px;
}

#optionplan .main_ph p{
    margin: 20px 0 0 0;
    font-size: 14rem;
    line-height: 28rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #optionplan .main_ph p{
        font-family: "TsukuMinPr6N-D";
    }
}

#optionplan .living_op figure.main img{
    width: 100%;
    height:62vw;
    object-fit: cover; 
}
@media print, screen and (min-width: 768px) {/*PC*/
    #optionplan .living_op figure.main img{
        width: 685px;
        height:340px;
    }
}

#optionplan .living_op figure.sub img{
    width: 100%;
    height: 58vw;
    margin: auto;
    display: block;
    object-fit: cover;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #optionplan .living_op figure.sub img{
        width: 320px;
        height: 340px;
    }
}

#optionplan .living_op figure.sub{
    position: relative;
    margin: 0 30px 70px 30px;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #optionplan .living_op figure.sub{
    margin: 0 0 70px 0;
}
}

#optionplan .living_op figcaption{
    
}
@media print, screen and (min-width: 768px) {/*PC*/
    #optionplan .living_op figcaption{
        left: 0;
        bottom: -22px;
    }
}

#optionplan .board_op figure{
    margin: 0 0 30px 0;
}

#optionplan .board_op p{
    margin: 10px 0 20px 0;
}

@media print, screen and (min-width: 768px) {/*PC*/
#optionplan .living_op{
    width: 100%;
}
#optionplan .living_op figure:nth-child(2){
    width: 685px;
}
#optionplan .living_op figure:nth-child(3){
    width: 320px;
    position: absolute;
    top: 40px;
    right: 0;
}
#optionplan .living_op figure:nth-child(4){
    width: 320px;
    position: absolute;
    bottom: 0;
    right: 0;
}
}

@media print, screen and (min-width: 768px) {/*PC*/
    #optionplan .western_op{
        width: 685px;
        top: 380px;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }
    
    #optionplan .western_op figure{
        width: 320px;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    #optionplan .laundry{
        width: 270px;
        height: 254px;
        padding: 12px 25px 0 25px;
        top: 428px;
        right: 0;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    #optionplan .ecocut{
        width: 500px;
        height: 215px;
        padding: 25px 25px 25px 25px;
        top: 700px;
        right: 0;
    }
    #optionplan .ecocut .ph{
        width: 265px;
        margin: 0 20px 0 0;
        float: left;
    }
    #optionplan .ecocut dt{
        width: calc(100% - 265px - 20px);
        margin: 85px 0 5px 0;
        display: block;
        text-align: left;
        float: right;
    }
    #optionplan .ecocut dd.txt{
        display: block;
    }
}

#optionplan .apploach_op{
    width: 34%;
    float: left;
}
#optionplan .apploach_op img{
    width: 100%;
    height: 62vw;
    object-fit: cover;
    object-position: 0% 50%;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #optionplan .apploach_op{
        width: 150px;
        top: 700px;
        float: inherit;
    }
    #optionplan .apploach_op img{
        width: 100%;
        height: 226px;
        object-position: 50% 50%;
    }
}

#optionplan .cloth_op{
    width: calc(66% - 23px);
    float: right;
}

#optionplan .cloth_op img{
    width: 100%;
    height: 62vw;
    object-fit: cover;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #optionplan .cloth_op{
        width: 260px;
        top: 700px;
        left: 195px;
        float: inherit;
    }
    #optionplan .cloth_op img{
        width: 100%;
        height: 226px;
        object-position: 50% 50%;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    #optionplan .main_ph{
        width: 1050px;
        top: 1060px;
    }
    
    #optionplan .main_ph img{
        width: 100%;
        height: auto;
        object-fit: contain;
        margin: 0;
    }
    
    #optionplan .main_ph p{
        width: 450px;
        margin: 0;
        padding: 25px;
        font-size: 14rem;
        line-height: 32rem;
        letter-spacing: 0;
        text-align: left;
        position: absolute;
        top: 85px;
        right: 0;
        background-color: rgba(255,255,255,0.7);
        font-size: 13rem;
        white-space: nowrap;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    #optionplan .shink_op{
        width: 395px;
        top: 1270px;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    #optionplan .kitchen_op{
        width: 685px;
        top: 1805px;
        left: 0;
    }
    #optionplan .kitchen_op div.w_sink{
        width: 320px;
        /*top: 99px;*/
    }
    #optionplan .kitchen_op div.kirei{
        width: 320px;
        /*top: 99px;*/
        right: 0;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    #optionplan .worktop_op{
        width: 320px;
        top: 1805px;
        right: 0;
    }
}

#optionplan .board_op div h5{
        line-height: 22rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #optionplan .board_op{
        width: 100%;
        top: 2180px;
    }
    
    #optionplan .board_op p{
        margin: 0 0 -5px 0;
    }
    
    #optionplan .board_op figure{
        width: 320px;
        position: absolute;
        top: 120px;
    }
    #optionplan .board_op figure:nth-child(3){
        left: 365px;
    }
    
    #optionplan .board_op div{
        width: 320px;
        height: 226px;
        position: absolute;
        top: 132px;
        right: 0;
        display: flex;
        flex-wrap: wrap;
        align-items: flex-end;
        
    }
}

#optionplan .note{
    margin: 2px 0 0 0;
    line-height: 18rem;
    display: inline-block;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #optionplan .note{
        line-height: 16rem;
    }
}



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

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

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

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

#outline article .note{
    line-height: 14rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
#outline article .note{
    font-size: 13rem;
    margin: -8px 0 0 8px;
}
}
							
							
/*/// ZEH-M　///*/
#zeh article{
    font-family: "TsukuMinPr6N-D";
    letter-spacing: 1rem;
}

#zeh article p,
#zeh article dd.txt,
#zeh article .note{
    font-family: "NewCezannePro-M";
    letter-spacing: 1rem;
}

#zeh .title::after,
#zeh #reduce .title2::after,
#zeh #life .title2::after{
    content: "image";
    font-size: 10rem;
    line-height: 10rem;
    color: #ffffff;
    position: absolute;
    bottom: 6px;
    right: 10px;
}
#zeh .title::after{
    color: #666666;
    bottom: 12px;
}

#zeh .lead figure img,
#zeh .about h3,
#zeh .about .bels img,
#zeh .insulation h4,
#zeh .saving h4,
#zeh #reduce dt{
    filter: drop-shadow(0 0 15px rgba( 0, 0, 0, 0.20 ));
}
#zeh #life dl{
    filter: drop-shadow(0 0 10px rgba( 0, 0, 0, 0.20 ));
}

#zeh .img_br::after{
    margin: -10rem 4rem 5rem 0;
    line-height: 10rem;
    color: #888888;
}

#zeh .title{
    height: 77vw;
    background-image: url(../img/zeh_img/ph_zeh_sp.jpg);
    background-size: 100%;
    background-repeat: no-repeat;
    background-color: #f1f6f5;
    position: relative;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh .title{
        height: 33vw;
        background-image: url(../img/zeh_img/ph_zeh_pc.jpg);
    }
}

#zeh .title h2 img{
    width: 25vw;
    margin: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh .title h2 img{
        width: 12vw;
        top: 45%;
        bottom: 55%;
    }
}

#zeh .title p{
    position: absolute;
    bottom: 11vw;
    left: 0;
    right: 0;
    font-family: "TsukuMinPr6N-D";
    font-size: 26rem;
    letter-spacing: 3rem;
    color: #ffffff;
    text-shadow: 0 0 4px #357b2b,0 0 4px #357b2b,0 0 4px #357b2b;
    text-align: center;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh .title p{
        bottom: 100px;
        font-size: 36rem;
    }
}

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

#zeh .lead p{
    margin: 30px -5px 0;
    font-size: 13rem;
    line-height: 26rem;
    letter-spacing: 0;
    text-align: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh .lead p{
        width: 100%;
        margin: 30px -5px 90px;
        font-family: "TsukuMinPr6N-D";
        font-size: 18rem;
        line-height: 36rem;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    #zeh .lead div{
        width: 480px;
    }
}

#zeh .lead h3{
    margin: 50px 0 10px 0;
    font-size: 19rem;
    line-height: 30rem;
    text-align: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh .lead h3{
        margin: 70px 0 20px 0;
        font-size: 26rem;
        line-height: 44rem;
        text-align: left;
    }
}

#zeh .lead h3 small{
    font-size: 12rem;
    line-height: 20rem;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh .lead h3 small{
        font-size: 14rem;
        line-height: 28rem;
    }
}

#zeh .lead h3 + .note{
    font-size: 11rem;
    line-height: 14rem;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh .lead h3 + .note{
    font-size: 11rem;
    line-height: 16rem;
    }
}

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

#zeh .lead figure figcaption{
    margin: 10px 0 0 0;
    font-size: 11rem;
    line-height: 14rem;
}

#zeh .about{
    margin: 50px 0 120px 0;
    text-align: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh .about{
        margin: 0 0 180px;
    }
}

#zeh .about h3{
    margin: 70px auto 0;
    padding: 12px 18px;
    font-size: 21rem;
    color: #ffffff;
    text-align: center;
    background-image: url(../img/zeh_img/bg_tt.jpg);
    background-size: auto 100%;
    background-position: center;
    background-repeat: no-repeat;
    display: inline-block;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh .about h3{
        margin: 120px auto 0;
        padding: 20px 60px 18px;
        font-size: 30rem;
    }
}

#zeh .about h4{
    margin: 24px 0 0;
    /* font-family: "DINNextLTPro-Condensed"; */
    font-size: 20rem;
    color: #006934;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh .about h4{
        margin: 60px 0 0;
        font-size: 40rem;
    }
}

#zeh .about h5{
    margin: 20px -10px;
    font-size: 15rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh .about h5{
        margin: 40px 0 25px;
        font-size: 20rem;
        line-height: 38rem;
    }
}

#zeh .about p{
    letter-spacing: 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh .about p{
        font-size: 14rem;
        line-height: 28rem;
    }
}

#zeh .about .zeh_concept{
    margin: 15px -10px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh .about .zeh_concept{
        width: 700px;
        margin: 70px auto 0;
    }
}

#zeh .about .bels{
    width: 100%;
    margin: 0 auto;
    padding: 11vw 0;
    background-image: url(../img/zeh_img/bg_bels_sp.png);
    background-position: center top;
    background-size: auto 110%;
    background-repeat: no-repeat;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh .about .bels{
        width: 445px;
        margin: 15px auto;
        padding: 70px 0 50px;
        background-image: url(../img/zeh_img/bg_bels_pc.png);
    }
}

#zeh .about .bels span{
    display: block;
    background: none;
}

#zeh .about .bels img{
    background-color: transparent;
}

#zeh .anchor a{
    margin: 10px auto 22px;
    padding: 6px 0 10px;
    color: #006934;
    text-align: center;
    border: solid 1px #006934;
    background-image: url(../img/zeh_img/ic_down.png);
    background-position: calc(100% - 10px) center;
    background-size: 22px;
    background-repeat: no-repeat;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh .anchor a{
        width: 600px;
        padding: 18px 20px 12px 0;
        font-size: 18rem;
        background-position: calc(100% - 20px) center;
        background-size: 28px;
    }
}
#zeh #reduce .anchor a:first-child{
    background-image: url(../img/zeh_img/ic_up.png);
}
#zeh #life .anchor a{
    background-image: url(../img/zeh_img/ic_up.png);
}

#zeh .anchor a strong{
    font-size: 21rem;
    font-weight: normal;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh .anchor a strong{
        padding: 0 0 0 8px;
        font-size: 30rem;
        display: inline;
    }
}

#zeh .title2{
    height: 280px;
    margin: 0 -23px;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh .title2{
        width: 100vw;
        height: 320px;
        margin: 0 calc(((100vw - 1050px) /2) * -1);
       
    }
}
#zeh #reduce .title2{
    background-image: url(../img/zeh_img/bg_forest.jpg);
}
#zeh #life .title2{
    background-image: url(../img/zeh_img/bg_chair.jpg);
}

#zeh .title2 h3{
    width: 100%;
    margin: 23px;
    padding: 6px 0 10px;
    text-align: center;
    color: #ffffff;
    border: solid 1px #ffffff;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh .title2 h3{
        width: 600px;
        padding: 18px 20px 12px 0;
        font-size: 18rem;
    }
}

#zeh .title2 h3 strong{
    font-size: 21rem;
    font-weight: normal;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh .title2 h3 strong{
        padding: 0 0 0 8px;
        font-size: 30rem;
        display: inline;
    }
}

#zeh #reduce section{
    margin: 0 0 90px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh #reduce section{
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    #zeh #reduce div:not(.title2):not(.anchor){
        width: 500px;
        margin: 30px 0 0 0px;
    }
}

#zeh #reduce h4{
    margin: 50px 0 0;
    padding: 8px 0;
    font-size: 22rem;
    letter-spacing: 1rem;
    text-align: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh #reduce h4{
        width: 100%;
        padding: 14px 0 12px;
        font-size: 28rem;
        letter-spacing: 2rem;
    }
}
#zeh .insulation h4{
    background-color: rgba( 245, 205, 92, 0.90 );
}
#zeh .saving h4{
    background-color: rgba( 137, 205, 198, 0.90 );
}

#zeh #reduce h5{
    margin: 18px 0 14px;
    font-size: 18rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh #reduce h5{
        font-size: 21rem;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    #zeh #reduce p{
        font-size: 15rem;
        line-height: 30rem;
    }
}

#zeh #reduce figure{
    margin: 35px -10px 60px;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh #reduce figure{
        width: 366px;
        margin: 130px 0 0 0;
    }
}

#zeh #reduce figure.compare{
    margin: 35px 0 20px;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh #reduce figure.compare{
        width: 100%;
        margin: -180px 0 40px 0;
        display: flex;
    }
}

#zeh #reduce figure.compare img{
    margin: 0 0 40px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh #reduce figure.compare img{
        width: 300px;
        height: auto;
        margin: 0 30px 0 0;
    }
}

#zeh #reduce figure.room{
    margin: 0 -23px;
    position: relative;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh #reduce figure.room{
        width: 680px;
        margin: -290px 350px 30px 0;
    }
}
#zeh #reduce figure.room div{
    overflow-x: scroll;;
    -ms-overflow-style: none;/*IE・Edge*/
    scrollbar-width: none;/*Firefox*/
}
#zeh #reduce figure.room div::-webkit-scrollbar{
    display:none;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh #reduce figure.room div{
        width: 100% !important;
    }
}

#zeh #reduce figure.room div img{
    width: 700px;
    margin: 0 23px;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh #reduce figure.room div img{
    width: 100%;
    margin: 0 0;
}
}

#zeh #reduce figure.room span{
    width: 40px;
    height: 40px;
    background-color: #89ccc6;
    border-radius: 3px;
    display: block;
    position: absolute;
    bottom: 45px;
    left: 23px;
    opacity: 0.9;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh #reduce figure.room span{
        display: none;
    }
}

#zeh #reduce figure.room span img{
    width: 36px;
    height: 36px;
    margin: 2px;
}

#zeh #reduce figure.room figcaption{
    margin: 10px 23px;
    font-family: "NewCezannePro-M";
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh #reduce figure.room figcaption{
        margin: 10px 0;
    }
}

#zeh #reduce dl{
    margin: 28px 0 0 0;
    padding: 20px 20px 16px;
    border: solid 1px #888888;
    background-color: #ffffff;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh #reduce dl{
        width: 288px;
        position: relative;
    }
    #zeh .saving dl{
        min-height: 270px;
    }
}

#zeh #reduce dt{
    margin: 0 -20px 12px -20px;
    font-size: 15rem;
}
#zeh .insulation dt{
    padding: 5px 10px 5px 20px;
    background-color: rgba( 245, 205, 92, 0.80 );
}
#zeh .saving dt{
    padding: 5px 10px 5px 18px;
    background-color: rgba( 137, 205, 198, 0.80 );
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh #reduce dt{
    padding: 0px 10px 0px 20px !important;
    }
}

#zeh .saving dt b{
    width: 21px;
    height: 22px;
    border-radius: 11px;
    margin: 2px 3px 0 0;
    padding: 0 0 0 1px;
    font-family: "DINNextLTPro-Condensed";
    font-size: 22rem;
    line-height: 26rem;
    color: rgba( 255, 255, 255, 1 );
    font-style: normal;
    text-align: center;
    background-color: rgba( 0, 87, 125, 0.70 );
    background-color: #3d7d9e;
    display: block;
    float: left;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh .saving dt b{
        margin: 1px 4px 0 0;
    }
}

/* #zeh .saving dt::first-letter{
    margin: 0 2px 0 0;
    font-family: "NewCezannePro-M";
    font-size: 21rem;
    vertical-align: -2rem;
    color: #01a7b6;
} */

@media print, screen and (min-width: 768px) {/*PC*/
    #zeh #reduce dt{
        min-height: 50px;
        padding: 2px 12px 0;
        font-size: 17rem;
        line-height: 20rem;
        display: flex;
        align-items: center;
    }
}

#zeh #reduce .txt{
    letter-spacing: 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh #reduce .txt{
        margin: 0 0 10px 0;
        font-size: 14rem;
}
}

#zeh #reduce .ph2{
    position: relative;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh #reduce .ph1{
        width: 210px;
        margin: 0 0 0 auto;
        display: block;
    }
    #zeh #reduce .ph2{
        width: 230px;
        margin: -60px auto 0 -20px;
        mix-blend-mode: multiply;
        display: block;
    }
}

#zeh #reduce .ph2 span{
    padding: 2px 6px;
    font-family: "NewCezannePro-M";
    font-size: 12rem;
    line-height: 12rem;
    border: solid 1px #888888;
    display: inline-block;
    position: absolute;
    top: 3vw;
    left: 6vw;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh #reduce .ph2 span{
        top: 0;
        left: 20px;
    }
}

#zeh #reduce .ph1 img,
#zeh #reduce .ph2 img{
    height: 220px;
    object-fit: cover;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh #reduce .ph1 img,
    #zeh #reduce .ph2 img{
    width: 100%;
    height: auto;
    object-fit: cover;
}
}

#zeh #reduce .ph{
    margin: 12px 0 0 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh .insulation .ph{
        width: 288px;
        margin: auto !important;
        position: absolute;
        bottom: 10px;
        left: 0;
        right: 0;
    }
    #zeh .saving .ph{
        width: 288px;
        margin: auto !important;
        position: absolute;
        bottom: 16px;
        left: 0;
        right: 0;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    #zeh .insulation .ph img{
        width: 260px;
        margin: 0 auto 20px;
        display: block;
    }
    #zeh .insulation dl:last-child .ph img{
        margin: 0 auto 40px;
    }
}

#zeh #reduce .logo{
    padding: 15px 25px 0;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh #reduce .logo{
        padding: 0 50px 0;
        position: absolute;
        bottom: 60px;
        left: 0;
        right: 0;
    }
}

#zeh .benefit{
    margin: 90px 0 90px 0;
    padding: 23px 23px;
    background-color: #006934;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh .benefit{
        width: 986px;
        margin: 80px auto 180px;
        padding: 14px 32px 32px;
    }
}

#zeh .benefit h4{
    padding: 0 0 6px 0;
    font-family: "TsukuMinPr6N-D";
    font-size: 22rem;
    line-height: 34rem;
    font-weight: normal;
    color: #ffffff;
    text-align: center;
    border-bottom: solid 1px rgba( 255, 255, 255, 0.70 );
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh .benefit h4{
        width: 880px;
        margin: auto;
        font-size: 24rem;
    }
}

#zeh .benefit button{
    width: 100%;
    display: block;
    font-family: "AvenirNextLTPro-Medium";
    font-size: 12rem;
    color: #ffffff;
    background-size: 20px 16px;
    background-repeat: no-repeat;
    opacity: 0.8;
}
#zeh .benefit button#openAct{
    margin: auto;
    padding: 6px 0 18px 0;
    background-image: url(../img/zeh_img/ic_tri_rev.png);
    background-position: center bottom;
    display: block;
}
#zeh .benefit button#closeAct{
    margin: 12px 0 0 0;
    padding: 18px 0 0 0;
    background-image: url(../img/zeh_img/ic_tri.png);
    background-position: center top;
    display: none;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh .benefit button{
        background-size: 16px 12px;
    }
    #zeh .benefit button#openAct{
        padding: 3px 0 12px 0;
    }
    #zeh .benefit button#closeAct{
        padding: 12px 0 0 0;
    }
}


#zeh .benefit div{
    /* height: 0; */
    background-color: #ffffff;
    overflow: hidden;
}

#zeh .benefit dl{
    margin: 32px 22px;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh .benefit dl{
        margin: 25px 35px 0 35px;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
}

#zeh .benefit dt{
    height: 100px;
    font-family: "NewCezannePro-DB";
    font-size: 24rem;
    line-height: 29rem;
    text-align: center;
    color: #006934;
    border: solid 4px #006934;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh .benefit dt{
        width: 300px;
        height: 100px;
    }
}

#zeh .benefit dt img{
    width: 170px;
    margin: 0 0 6px 0;
}

#zeh .benefit dd{
    margin: 14px 0 40px 0;
    font-family: "NewCezannePro-DB";
    font-size: 19rem;
}
#zeh .benefit .env dd,
#zeh .benefit .tax dd{
    font-size: 18rem;
    line-height: 24rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh .benefit dd{
        width: 590px;
        margin: 0;
        font-size: 26rem;
    }
    #zeh .benefit .env dd{
        font-size: 22rem;
        line-height: 28rem;
    }
    #zeh .benefit .tax dd{
        font-size: 22rem;
    }
}

#zeh .benefit dd b{
    font-size: 36rem;
    line-height: 39rem;
}
#zeh .benefit .tax dd b{
    font-size: 32rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh .benefit dd b{
        font-size: 44rem;
    }
    #zeh .benefit .tax dd b{
        font-size: 34rem;
    }
}

#zeh .benefit .note{
    margin: 10px 0 0 0;
    display: block;
}
#zeh .benefit div>.note{
    margin: 10px 22px;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh .benefit div>.note{
        text-align: right;
    }
}

#zeh #life h4{
    margin: 30px auto 24px;
    font-size: 24rem;
    text-align: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh #life h4{
        margin: 70px auto 25px;
        font-size: 32rem;
    }
}

#zeh #life section{
    margin: 0 0 90px 0;
}

#zeh #life section>p{
    line-height: 26rem;
    text-align: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh #life section>p{
        margin: 0 0 60px 0;
        font-size: 14rem;
        line-height: 28rem;
    }
}

#zeh #life dl{
    margin: 23px 0;
    padding: 12px 0 22px;
    position: relative;
    background: linear-gradient(90deg, #fdf3ed 0%, #fce7db 45%, #f8ceb9 100%);
}
#zeh #life dl:nth-of-type(2n){
    background: linear-gradient(90deg, #fdecd7 0%, #fbe1c2 45%, #f9ca92 100%);
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh #life dl{
        min-height: 170px;
        margin: 32px 0;
        padding: 12px 0;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
}

#zeh #life dt{
    width: 50px;
    height: 50px;
    margin: 0 0 6px 22px;
    border-radius: 25px;
    font-family: "DINNextLTPro-MediumCond";
    font-size: 44rem;
    line-height: 58rem;
    color: #717171;
    text-align: center;
    background-color: #ffffff;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh #life dt{
        width: 80px;
        height: 80px;
        margin: 0 35px;
        border-radius: 40px;
        font-size: 60rem;
        line-height: 90rem;
    }
}

#zeh #life dd.txt{
    padding: 0 12px;
    font-size: 16rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh #life dd.txt{
        width: 700px;
        padding: 0 0 10px;
        font-size: 15rem;
    }
}

#zeh #life dd.txt strong{
    min-height: 50px;
    padding: 0 10px 10px;
    font-family: "TsukuMinPr6N-D";
    font-size: 22rem;
    line-height: 26rem;
    letter-spacing: 0;
    border-bottom: solid 1px #231815;
    display: flex;
    align-items: center;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh #life dd.txt strong{
        padding: 0;
    }
}

#zeh #life dd.txt p{
    padding: 20px 10px 18px;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh #life dd.txt p{
        padding: 10px 0;
    }
}

#zeh #life dd.txt .note{
    padding: 0 10px;
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh #life dd.txt .note{
        padding: 0;
    }
}

@media print, screen and (min-width: 768px) {/*PC*/
    #zeh #life dd.fig{
        width: 180px;
        text-align: center;
    }
}

#zeh #life dd.fig img{
    width: auto;
    height: 120px;
    position: absolute;
    top: 10px;
    right: 20px;
    mix-blend-mode: multiply;
}
#zeh #life dl:nth-child(1) dd.fig img{
    height: 100px;
    top: 25px;
    right: 10px;
}
#zeh #life dl:nth-child(2) dd.fig img{
    right: 10px;
}
#zeh #life dl:nth-child(5) dd.fig img{
    height: 90px;
    top: 30px;
    right: 30px;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh #life dd.fig img{
        height: 160px;
        position: relative;
        top: inherit !important;
        right: inherit !important;
    }
    #zeh #life dl:nth-child(1) dd.fig img{
        height: 140px;
    }
    #zeh #life dl:nth-child(5) dd.fig img{
        height: 130px;
    }
}

#zeh .refer{
    margin: 80px 23px -50px;
    font-size: 12rem;
    line-height: 18rem;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh .refer{
        width: 1050px;
        margin: 50px auto -50px;
    }
}

#zeh .refer dt{
    font-size: 14rem;
}

#zeh .refer dd{
    margin: 8px 0 0 0;
}

#zeh .refer a{
    display: block;
}
@media print, screen and (min-width: 768px) {/*PC*/
    #zeh .refer a{
        display: inline;
    }
}