@charset "UTF-8";
html,body{
width:100%;
max-width:100%;
height:100%;
}
body.menu-open {
overflow: hidden;
height: 100vh;
}

body{
position:relative;
background: #5A4E45 linear-gradient(90deg,rgb(90 78 69 / 1) 1%, rgb(35 32 33 / 1) 100%);
font-size:1.1em;
font-weight:400;
font-family:'Noto Serif JP', serif;
/*font-family:'Noto Sans JP', sans-serif;
font-family:'Roboto', sans-serif;*/
color:rgb(255 255 255 / 1);
line-height:1.55;
text-align:center;
letter-spacing:.002em;
-webkit-text-size-adjust:100%;
word-wrap:break-word;
}
body#sub-body{
background: rgb(255 255 255 / 1);
color: rgb(100 100 100 / 1);
}
body#sub-body.design-body{
	background: rgb(0 0 0 / .05);
}
a,
a:link{
color:rgb(255 255 255 / 1);
text-decoration:none;
-webkit-transition:All 1s ease;
-moz-transition:All 1s ease;
-o-transition:All 1s ease;
-ms-transition:All 1s ease;
transition:All 1s ease;
}

a:visited{
color:rgb(255 255 255 / 1);
}

a:hover,
a:active{
color:rgb(255 255 255 / 1);
}

img{
width:100%;
max-width:100%;
height:auto;
flex-shrink:0;
vertical-align:bottom;
}

html,body code{
font-family:'Noto Serif JP', serif !important;
}

h2,
h3,
h4,
h5,
h6{
font-weight:500;
}

img,li,li::before{
opacity: 1;
-webkit-transition:All 1s ease;
-moz-transition:All 1s ease;
-o-transition:All 1s ease;
-ms-transition:All 1s ease;
transition:All 1s ease;
}
img:hover{
}
img.none:hover{
opacity: 1;
}

/* オープニング */

/* Loading背景画面設定　*/
#opening{
position:fixed;
width:100%;
height:100vh;
z-index:9999;
background: rgb(51 59 50 /1 );
text-align:center;
}
/* Loading画像中央配置　*/
#opening_logo{
position:absolute;
top:45%;
left:50%;
transform:translate(-50%, -50%);
}
/* Loading アイコンの大きさ設定　*/
#opening_logo img{
width:200px;
}
/* fadeUpをするアイコンの動き */
.fadeUp{
animation-name:fadeUpAnime;
animation-duration:1.5s;
animation-fill-mode:forwards;
opacity:0;
}
@keyframes fadeUpAnime{
from{
opacity:0;
transform:translateY(100px);
}

to{
opacity:1;
transform:translateY(0);
}
}
.animate{
opacity:0;
transform:translateY(30px);
transition:all 1.0s;
}
.openanimate,
.animate_reverse{
opacity:0;
transform:translateY(-30px);
transition:all 1.0s;
}
.animate.show,
.openanimate.show,
.animate_reverse.show{
opacity:1;
transform:translateY(0);
}
body{
animation:fade 3s;
}
@keyframes fade{
0%{opacity:0;
}
100%{opacity:1;
}
}

/*other*/
p.access_triangle{
	width: 20px;
	margin: 8px auto;
}
.cc{
display:flex;
justify-content:center;
align-items:center;
}
.title_blank{
	margin-top: 31px;
}
.small{
	font-size: .7em !important;
}
/*subpage master*/
body section#subcontent p.center{
	text-align: center;
}
body section#subcontent p.left{
	text-align: left;
}
body section#subcontent p.right{
	text-align: right;
}
body section#subcontent .groupbox{
	margin-bottom: 40px;
}
.sub_photo_group img{
	border-radius: 12px;
}

/*----------------------------------------
ハンバーガーメニューボタン
----------------------------------------*/
.hamburger {
box-sizing: border-box;
 display: block;
 position: fixed;
 z-index: 888;
 right: 0;
 top: 0;
 width: 100px;
 height: 100px;
 background: rgb(255 255 255 / 1);
 cursor: pointer;
 text-align: center;
}

body#sub-body .hamburger{
}
.hamburger:hover{
	background: rgb(255 255 255 / 1);
}
.hamburger span {
 display: block;
 position: absolute;
 width: 50px;
 height: 2px;
 left: 25px;
 background: rgb(0 0 0 / .2);
 transition: 0.3s ease-in-out;
}

.hamburger span:nth-child(1) {
 top: 30px;
}

.hamburger span:nth-child(2) {
 top: 40px;
}

.hamburger span:nth-child(3) {
 top: 50px;
}

.hamburger span:nth-child(4) {
 top: 60px;
}

.hamburger span:nth-child(4) {
 width: 70px;
 height: 1.35em;
 background: none;
 left: 15px;
 font-family: 'Roboto', sans-serif;
 font-size: 1.05em;
 font-weight: 700;
 color: rgb(0 0 0 / .3);
 letter-spacing: 0.35em;
}

/* スマホメニューを開いてる時のボタン */
.hamburger.active span:nth-child(1) {
 top: 40px;
 left: 25px;
 background: rgb(0 0 0 / .2);
 transform: rotate(-45deg);
}
.hamburger.active span:nth-child(2){
display: none;
}
.hamburger.active span:nth-child(3) {
 top: 40px;
 background: rgb(0 0 0 / .2);
 transform: rotate(45deg);
}

/* メニュー背景 */
nav.globalMenuSp{
 position: fixed;
 z-index: 555;
 top: 0;
 left: 0;
 color: rgb(255, 255, 255);
background: #5A4E45 linear-gradient(90deg,rgb(90 78 69 / 1) 1%, rgb(35 32 33 / 1) 100%);
 text-align: center;
 width: 100%;
 height: 100vh;
 transform: translateY(-100%);
 transition: all 0.6s;
}

nav.globalMenuSp.active {
 transform: translateY(0);
}

nav.globalMenuSp ul{
 margin:10% auto 0;
 padding:0;
 width:80%;
 display:grid;
 grid-template-columns:1fr 1fr 1fr;
 gap:0;
}

@media (max-width:1300px) {
nav.globalMenuSp ul{
 margin:3% auto 0;
}
}
@media (max-width:896px) {
nav.globalMenuSp ul{
 margin:10% auto 0;
}
}

nav.globalMenuSp ul li {
transition: 0.4s all;
list-style-type: none;
font-size: 1.25em;
line-height: 1.55em;
letter-spacing: 0.2em;
}
nav.globalMenuSp ul li a span {
display: block;
font-size: .6em;
letter-spacing: 0.35em;
}
nav.globalMenuSp ul li a {
display: block;
background: rgb(0 0 0 / .7);
border: 1px solid rgb(255 255 255 / .2);
color: rgb(255 255 255 / 1);
padding: 13px;
}
nav.globalMenuSp ul li a:hover,
nav.globalMenuSp ul li a.current {
background: rgb(255 255 255 / .7);
color: rgb(0 0 0 / .7);
}
nav.globalMenuSp ul li a.current{
pointer-events: none;
cursor: default;
}

nav.globalMenuSp ul li:last-child {
 padding-bottom: 0;
}

/* ページ未解説リンク */
a.linkno{
pointer-events:none;
opacity:.5;
}
nav.globalMenuSp ul li a.linkno{
background: rgb(255 255 255 / .4);
color: rgb(255 255 255 / .85);
}

/*----------------------------------------
 header
----------------------------------------*/
body#top-body header{
height:auto;
background:url(../images/top_mv_001.png) no-repeat 50% top;
background-size:100% auto;
padding:0;
aspect-ratio:1 / .6035;
color:rgb(255 255 255 / 1);

position: relative;
}
p.top_header_cap{
position: absolute;
right: 16px;
bottom: 0;
font-size: smaller;
color:rgb(255 255 255 / .7);
}
body#sub-body header{
height:auto;
background: rgb(30 106 132 / 1);
margin-bottom:0;
color:rgb(255 255 255 / 1);
}
#header_inner{
display:grid;
grid-template-columns:50% 50%;
justify-content:space-around;
margin-top:0;
}

body#sub-body #header_inner{
background: rgb(255 255 255 / 1);
margin-top:0;
}

div#header_inner_left{
padding:15px 0 15px 15px;
text-align:left;
}
body#sub-body div#header_inner_left{
padding:15px 0 15px 15px;
}

div#header_inner_left h1{
margin-bottom: 10px;
}
body#sub-body div#header_inner_left h1{
color: rgb(0 0 0 / .5) ;
margin-bottom: 10px;
}

div#header_inner_right{
margin:30px 0 0 auto;
padding-right:130px;
display: grid;
grid-template-columns: 200px 200px;
column-gap: 10px;
text-align:right;
}
@media (max-width:896px) {
div#header_inner_right{
display: none;;
}
}
/* 以下#header_inner左 */
h1{
font-size:10px;
font-weight:normal;
text-align:left;
}
header h2.logo{
width:280px;
height:auto;
}
header h2.logo a img{
width:100%;
height:auto;
}

/* 以下#header_inner右 */
/*-- sub_nav -*/
ul.sub_nav{
}
ul.sub_nav li{
display:inline-block;
}

/*top title トップページタイトル*/
div#top_main_tilte{
	padding: 145px 0 50px;
	display: none;
}
div#top_main_tilte h2{
	margin-bottom: 20px;
	font-size: 3.45em;
	font-weight: normal !important;
	letter-spacing: .1em;
}
div#top_main_tilte p{
	font-size: 1.75em;
	letter-spacing: .05em;
}
 
/* 以下資料と来場予約ボタン共通 */
a.btn{
display:inline-block;
width:150px;
padding:.65em .35em;
font-size:1.05em;
font-weight:700;
letter-spacing:.15em;
text-align:center;
}
a.btn:link,
a.btn:visited{
background: rgb(51 59 50 / 1);
color:rgb(255 255 255 / 1);
}
a.btn:hover,
a.btn:active{
background:rgb(30 106 132 / 1);
color:rgb(255 255 255 / 1);
}
/*section#header_inner*/ a.btn{
width:200px;
}
section#header_inner a.btn{
}
section#header_inner a.btn:link,
section#header_inner a.btn:visited{
background:rgb(51 59 50 / 1);
}
section#header_inner a.btn:hover,
section#header_inner a.btn:active{
background:rgb(30 106 132 / 1);
}
/*トップ背景暗部*/
nav.globalMenuSp a.btn:link,
nav.globalMenuSp a.btn:visited,
body#top-body section#company a.btn:link,
body#top-body section#company a.btn:visited{
background:rgb(51 59 50 / 0);
border: 1px solid rgb(255 255 255 / .5);
}
nav.globalMenuSp a.btn:hover,
nav.globalMenuSp a.btn:active,
body#top-body section#company a.btn:hover,
body#top-body section#company a.btn:active{
background:rgb(51 59 50 / 1);
border: 1px solid rgb(51 59 50 / 1);
}

/*下層ページのボタン色*/
body#sub-body section#header_inner a.btn:link,
body#sub-body section#header_inner a.btn:visited{
background:rgb(51 59 50 / 1);
color:rgb(255 255 255 / 1);
}
body#sub-body section#header_inner a.btn:hover,
body#sub-body section#header_inner a.btn:active{
background:rgb(30 106 132 / 1);
color:rgb(255 255 255 / 1);
}
body#sub-body section#company a.btn:link,
body#sub-body section#company a.btn:visited{
color:rgb(255 255 255 / 1);
}
body#sub-body section#company a.btn:hover,
body#sub-body section#company a.btn:active{
color:rgb(255 255 255 / 1);
}

/* グローバルメニュー */
div.globalMenuSp_btn a.btn{
box-sizing: border-box;
padding: 3em 0 !important;
}
div.globalMenuSp_btn a.btn:link,
div.globalMenuSp_btn a.btn:visited,
body#sub-body div.globalMenuSp_btn a.btn:link,
body#sub-body div.globalMenuSp_btn a.btn:visited{
border: none !important;
width:100%;
background: rgb(255 255 255/ .3);
color:rgb(255 255 255 / 1);
}
div.globalMenuSp_btn a.btn:hover,
div.globalMenuSp_btn a.btn:active,
body#sub-body div.globalMenuSp_btn a.btn:hover,
body#sub-body div.globalMenuSp_btn a.btn:active{
width:100%;
background: rgb(51 59 50 / 1);
color:rgb(255 255 255 / 1);
}
div.globalMenuSp_btn a.btn.btn_rec:link{
}
/* グローバルメニュー */

a.btn span{
padding:.6em;
padding-left:18px;
}
a.btn.btn_rec span{
background:url(../images/icon_file.svg) no-repeat 0 60%;
background-size:11px auto;
}
a.btn.btn_rsv span{
background:url(../images/icon_calendar.svg) no-repeat 0 55%;
background-size:11px auto;
}
div.information_btn{
display: grid;
justify-content: center;
grid-template-columns: 200px 200px;
grid-gap: 15px;
margin:20px auto 64px;
}
nav.globalMenuSp div.information_btn{
margin:96px auto 0;
grid-template-columns: 250px 250px;
}
nav.globalMenuSp div.information_btn a.btn{
width:250px;
}
@media (max-width:896px) {
div.information_btn{
grid-template-columns: 250px;
grid-template-rows: 35px 35px;
grid-gap: 10px;
margin:12px auto;
}
nav.globalMenuSp div.information_btn{
margin:64px auto;
grid-template-columns: 250px;
grid-template-rows: 50px 50px;
}
}

div.globalMenuSp_btn{
width:80%;
margin:25px auto;
display:grid;
grid-template-columns:1fr 1fr;
gap:5px;
}
div.globalMenuSp_btn a.btn{
box-sizing:border-box;
display:block;
width:100% !important;
padding:21px;
/*border:1px solid rgb(51 51 51 / 1);*/
}
@media screen and (max-width:896px) {
a.btn{
display:block;
width:250px;
margin:5px auto;
padding:.5em;
font-size:1.25em;
text-align:center;
}	

div.company_btn{/* 会社概要部分 */
margin:0 auto 20px;
}
div.globalMenuSp_btn{/*グローバルメニュー*/
width:100%;
margin:0 auto;
gap:1px;
position:relative;
top:-4px;
}
}

/*----------------------------------------
 main
------------------------------------------*/
body#sub-body main{
margin-bottom:120px;
}
body#top-body main{
margin-bottom:50px;
}

/*----------------------------------------
 section
----------------------------------------*/
section {
width:100%;
}
div.top_info{
}

/*----------------------------------------
 pankuzu
----------------------------------------*/
.pankuzu {
width:90%;
text-align:left;
margin:30px 5% 30px 5%;
}
#top_pankuzu.pankuzu {
width:90%;
text-align:left;
margin:30px 5% 0x 5%;
}
body.quality-body .pankuzu {
width:90%;
text-align:left;
margin:-20px 5% 30px 5%;
}
.pankuzu ul {
width:100%;
list-style:none;
}
.pankuzu li {
display:inline-block;
margin:0 2px;
padding:0 0;
font-size:1em;
}
.pankuzu li a::after {
content:" ＞";
color:rgb(255 255 255 / 1);
}
section#modelroom_back .pankuzu li a::after {
content:" ＞";
color:rgb(255 255 255 / 1);
}

body#sub-body .pankuzu li a::after {
color:rgb(100 100 100 / .5);
}
body#sub-body section#modelroom_back .pankuzu li a::after {
color:rgb(100 100 100 / .5);
}

.pankuzu li a:link,
.pankuzu li a:visited,
.pankuzu li a:hover,
.pankuzu li a:active{
color:rgb(255 255 255 / 1);
}

body#sub-body .pankuzu li a:link,
body#sub-body .pankuzu li a:visited,
body#sub-body .pankuzu li a:hover,
body#sub-body .pankuzu li a:active{
color:rgb(100 100 100 / 1);
}

/*----------------------------------------
 フッター共通
----------------------------------------*/
#footer_cap{
display:grid;
place-items:center;	
margin: 50px auto 30px;
}
#footer_cap p {
margin-bottom: 1em;
margin-left: 1em;
text-indent: -1em;	
font-size:9px !important;
line-height:1.45em !important;
text-align: left !important;
}
body#sub-body section#subcontent div.outline-content p.buken_comment{
margin-bottom: 1em;
font-size:9px !important;
line-height:1.25em !important;
text-align: left !important;
}
@media (max-width:896px) {
body#sub-body section#subcontent div.outline-content p.buken_comment,	
section#subcontent #footer_cap p{
font-size:9px !important;
}	
}

p.buken_comment{/*概要phpページ調整用*/
font-size:9px !important;
line-height:2.15em !important;
text-align: left !important;
}

#company{
}
#company a{
color:rgb(255 255 255 / 1);
}
body#sub-body #company a{
color:rgb(100 100 100 / 1);
}
div.contact{
margin-bottom:50px;
}
div.company_info{
width: 90%;
margin:0 auto 50px;
}
div.footer_tel{
width: 25%;
margin: 0 auto;
margin-bottom:50px;
}
div.contact h2,
div.company_info h2{
display: inline-block;
margin-bottom:20px;
font-size:1.45em;
font-weight:400;
letter-spacing:.3em;
}
.top_info_company{
font-size:1.2em;
line-height:2.35em;
text-align:center;
margin-bottom:35px;
padding-bottom:25px;
border-bottom:2px solid rgb(255 255 255 / .2);
}
body#sub-body .top_info_company{
border-bottom:2px solid rgb(100 100 100 / .2);
}
.top_info_company strong{
display: block;
font-weight: normal;
}
.top_info_company span{
font-size:1.85em;
display:block;
margin-bottom:20px;
}

/*----------------------------------------
 footer
----------------------------------------*/
section#footer_menu_simple{
margin:0 auto 0;
width:100%;
background: none;
}
section#footer_menu_simple ul{
display:grid;
grid-template-columns:1fr 1fr 1fr 180px 1fr 1fr 1fr 1fr;
gap:0;
}
section#footer_menu_simple ul li{
list-style:none;
display:inline-block;
background: white;
font-size:.6em;
text-align:center;
line-height:1.9em;
letter-spacing:.35em;
}
section#footer_menu_simple ul li:last-child a{
border-right:none;
}
section#footer_menu_simple ul li a{
display: inline-block;
width:100%;
background: rgb(51 59 50 / .7);
padding-top:16px;
padding-bottom:16px;
color: rgb(255 255 255 / 1);
}
section#footer_menu_simple ul li a.linkno{
background:rgb(222 222 222 / 1);
opacity:1;
border-right:1px solid rgb(0 0 0 / .05);
}
section#footer_menu_simple ul li a span{
font-size:1.15em;
display:block;
}
section#footer_menu_simple ul li a:link,
section#footer_menu_simple ul li a:visited{
color:rgb(255 255 255 / 1);
}
section#footer_menu_simple ul li a:hover,
section#footer_menu_simple ul li a:active{
background:rgb(51 59 50 / 1);
color:rgb(255 255 255 / 1);
}
section#footer_menu_simple ul li a.linkno:link,
section#footer_menu_simple ul li a.linkno:visited,
section#footer_menu_simple ul li a.linkno:hover,
section#footer_menu_simple ul li a.linkno:active{
}
section#footer_menu_simple ul li a.current{
pointer-events: none;
background: rgb(255 255 255/ 1);
color:rgb(51 59 50 / .5);
}

section.osusume{
margin-top:50px;
margin-bottom:0;
padding-top:35px;
padding-bottom:20px;
background:#ececec;
width:100%;
overflow:hidden;
color: rgb(100 100 100 / 1) !important;

}
section.osusume h2.sec-title-b{
margin-bottom:20px !important;
}
/*20240905*/
section.osusume section.footer-NEW-ESTATE{
	padding: 0 !important;
}
div.sagasu a{
text-align:center;
font-size:1.25em;
color: rgb(100 100 100 / 1) !important;
display:inline-block;
margin:40px auto;
padding-top:5px;
padding-bottom:7px;
padding-left:25px;
padding-right:22px;
border-radius:1px;
}
div.sagasu a i img{
height:18px;
width:auto;
position:relative;
top:-2px;
}
div.sagasu a:link,
div.sagasu a:visited{
background:#ffffff;
border:1px solid #ccc;
color: rgb(100 100 100 / 1) !important;
}
div.sagasu a:hover,
div.sagasu a:active{
background:#eeeeee;
border:1px solid #ccc;
color: rgb(100 100 100 / 1) !important;
}
body h3.top-NEW-ESTATE-content-title,
body span.top-NEW-ESTATE-content-text{
	color: rgb(100 100 100 / 1) !important;
}

.footer_info{
width:100%;
background-color: rgb(255 255 255 / 1);
box-sizing: border-box;;
margin:0 auto;
padding: 50px 10%;	
display:grid;
grid-template-columns:auto 300px;
justify-content:center;/*左右センター*/
align-items:center;/*天地中央*/
}
.footer_nav{
margin:0 auto;
display:flex;
align-items:center;
justify-content:center;
flex-wrap:wrap;
text-align:left;
}
.footer_nav ul li:before{
content:'▶ ';
font-size:.6em;
color:rgb(51 59 50 / .2);
position:relative;
top:-2px;
left: -3px;
}
.footer_nav ul li:hover:before{
content:'▼ ';
font-size:.6em;
color:rgb(51 59 50 / .4);
}
.footer_nav ul{
width:100%;
list-style:none;
font-size:10px;
}
.footer_nav ul li{
margin:0 5px;
padding:0 0;
display:inline-block;
line-height: 3em;
}
.footer_nav ul li a{
font-size:1.2rem;
color: rgb(100 100 100 / 1);
}
div.footer_casbee p img{
width: 75%;
margin: 0 auto 0;
}
div#footer_bottom{
width:100%;
margin:0 auto 0;
padding-top:50px;
padding-bottom:50px;
}
div#footer_bottom a{
color:rgb(255 255 255 /1);
}
.to-top{
position:fixed;
right:0;
bottom:0;
width:40px;
height:40px;
cursor:pointer;
z-index:20;
}
.to-top img{
width:100%;
height:auto;
}
.to-top:hover{
}

/*----------------------------------------
 下層ページ共通
----------------------------------------*/
section#subcontent{
	width: 1200px;
	max-width: 1200px;
	margin:0 auto;
}
@media (max-width:1200px) {
section#subcontent{
	width: 90%;
}
}
@media (max-width:896px) {
section#subcontent{
	width: 95%;
}
}

section#subcontent.accesslocation,
section#subcontent.design{
	width: 100%;
	max-width: 100%;
	margin:0 auto;
}
@media (max-width:1200px) {
section#subcontent.accesslocation,
section#subcontent.design{
	width: 100%;
}
}
@media (max-width:896px) {
section#subcontent.accesslocation{
	width: 100%;
}
section#subcontent.design{
	width: 100%;
}	
}


section#subcontent h2{
	font-size: 2.5em;
	font-weight: 300;
	letter-spacing: .25em;
}
section#subcontent h3{
	font-size: 1.75em;
	font-weight: 300;
	letter-spacing: .25em;
}
section#subcontent h4{
	font-size: 1.45em;
	font-weight: 300;
	letter-spacing: .25em;
}
section#subcontent h5{
	font-size: 1.25em;
	font-weight: 300;
	letter-spacing: .25em;
}
section#subcontent h6{
	font-size: 1.1em;
	font-weight: 300;
	letter-spacing: .25em;
}
section#subcontent p{
	font-size: /*1.1em*/11px ;
	font-weight: 300;
	line-height: 1.55m;
	letter-spacing: .05em;
}

/* subpage menu */
div.subpage_menu.grid2{
	width: 55%;
	margin: 60px auto;
	gap:0;
}
div.subpage_menu.grid2 a{
	display: block;
	background: rgb(120 157 136 / .45);
	padding: .85em;
	border: 1px solid rgb(255 255 255 / .5);
	font-size: 1.05em;
	color: white;
	letter-spacing: .2em;
}
div.subpage_menu.grid2 a:hover{
	background: rgb(120 157 136 / 1);
}
div.subpage_menu.grid2 a:first-child{
	border-radius: 15px 0 0 0;
}
div.subpage_menu.grid2 a:last-child{
	border-radius: 0 0 15px 0;
}
div.subpage_menu.grid2 a#subpage_menu_title{
	background: rgb(0 0 0 / 0);
	pointer-events: none;
	cursor: default;
	font-family:'Roboto', sans-serif;
	color: rgb(255 255 255 / 0);
	letter-spacing: .5em;
}
div.subpage_menu.grid2 a#subpage_menu_title:hover{
	pointer-events: none;
	background: rgb(0 0 0 / .5);
}
div.subpage_menu.grid2 a#subpage_menu_title span{
	position: relative;
	top: 2px;
}


div.cap_footer{
	width: 90%;
	margin: 0 auto;
}
div.cap_footer p{
	font-size: 9px;
	line-height: 1.65em;
	text-indent: -1em;
}

/*----------------------------------------
 キャプション
----------------------------------------*/
body .cap{
	display: block;
	line-height: 1em;
	margin-top: 0;
	margin-bottom: 0;
	margin-left: 1em;
	text-indent: -1em;
	position: relative;
	top:0;
	font-size: 9px !important;
	text-align: left;
	line-height: 1.3em;
}
body .quality_cap{
	display: block;
	line-height: 1em;
	margin-top: .35em;
	margin-bottom: 0;
	margin-left: 1em;
	text-indent: -1em;
	position: relative;
	top:0;
	font-size: 9px !important;
	text-align: left;
	line-height: 1.3em;
}
body .cap_indent{
	display: block;
	line-height: 1em;
	margin-top: .35em;
	margin-bottom: 1em;
	margin-left: 1em;
	text-indent: -1em;
	position: relative;
	top:0;
	font-size: 9px !important;
	text-align: left;
	line-height: 1.3em;
}
body .cap_blank{
	display: block;
	line-height: 1em;
	margin-top: .75em;
	margin-bottom: 1em;
	margin-left: 1em;
	text-indent: -1em;
	position: relative;
	top:0;
	font-size: 9px !important;
	text-align: left;
	line-height: 1.3em;
}
body .cap_blank_right{
	display: block;
	line-height: 1em;
	margin-top: .75em;
	margin-bottom: 1em;
	margin-left: 1em;
	text-indent: -1em;
	position: relative;
	top:0;
	font-size: 9px !important;
	text-align: right;
	line-height: 1.3em;
}
body .cap_center{
	display: block;
	line-height: 1em;
	margin-top: 0;
	margin-bottom: 1em;
	margin-left: 1em;
	text-indent: -1em;
	font-size: 9px !important;
	text-align: center !important;
	line-height: 1.3em;
}
body .cap_no{
	display: block;
	position:  relative;
	top: -1.5em;
	right: .5em;
	margin-bottom: -1.5em;
	line-height: 1.3em;
}
body .cap_right{
	z-index: 15;
	display: block;
	margin-bottom: 1em;
	line-height: 1em;
	font-size: 9px !important;
	text-align: right;
	line-height: 1.3em;
}
body .cap_right_blank{
	z-index: 15;
	display: block;
	line-height: 1em;
	margin-top: .75em;
	margin-bottom: 1em;
	margin-right: .75em;
	font-size: 9px !important;
	text-align: right;
	line-height: 1.3em;
}
body .cap_right_blank_white{
	z-index: 15;
	display: block;
	line-height: 1em;
	margin-top: .75em;
	margin-bottom: 1em;
	margin-right: .75em;
	font-size: 9px !important;
	color: white;
	text-align: right;
	line-height: 1.3em;
}
body .cap_right_white{
	z-index: 15;
	display: block;
	margin-bottom: 1em;
	line-height: 1em;
	font-size: 9px !important;
	color: white;
	text-align: right;
	line-height: 1.3em;
}
body .cap_right_inner{
	z-index: 15;
	display: block;
	position:  relative;
	top: -1.5em;
	right: .5em;
	margin-bottom: -1em;
	line-height: 1em;
	font-size: 9px !important;
	text-align: right !important;
	line-height: 1em;
}
body .cap_right_inner_white{
	z-index: 15;
	display: block;
	position:  relative;
	top: -1.5em;
	right: .5em;
	margin-bottom: -1em;
	line-height: 1em;
	font-size: 9px !important;
	color: white;
	text-align: right;
}
body .accesslocation .cap_right_inner_white{
	z-index: 15;
	display: block;
	position:  relative;
	top: -3em;
	right: .5em;
	margin-bottom: -1em;
	line-height: 1em;
	font-size: 9px !important;
	color: white;
	text-align: right;
}
body .safety_amenity .cap_right_inner_white{
	top: -2.5em;
	margin-bottom: -2em;
	line-height: 1em;
}

/*----------------------------------------
 下層ページmain_title
----------------------------------------*/
.main_title{
box-sizing:boder-box;
margin-top: 8px;
width:100%;
display:flex;
justify-content:center;
align-items:center;
background-repeat:no-repeat;
background-position:50% 50%;
background-size:100% auto;
}
.main_title_access{
background-image:url(../images/header_access.jpg);
}
.main_title_location{
background-image:url(../images/header_location.jpg);
}
.main_title_plan{
background-image:url(../images/header_plan.jpg);
}
.main_title_safety{
background-image:url(../images/header_safety.jpg);
}
.main_title.main_title_quality{
background-position: center 80%;
background-image:url(../images/header_quality.jpg);
}
.main_title_design{
background-image:url(../images/header_design.jpg);
}
.main_title.main_title_map{
background-image:url(../images/header_map.jpg);
}
.main_title_outline{
background-image:url(../images/header_outline.jpg);
}
.main_title_inner{
text-align:center;
margin:45px auto;
}
.main_title_inner p{
box-sizing: border-box;
padding:15px;
padding-left:26px;
background:rgb(0 0 0 / .3);
font-family:'Noto Serif JP', serif;
font-size:1.75em;
color:rgb(255 255 255 / 1);
line-height:1.45em;
letter-spacing:.8em;
text-align:center;
}
.main_title_inner span{
display: block;
margin: 0 auto;
text-align: center;
font-size:.6em;
font-weight:300;
/*position:relative;
left:-1em;*/
}

/*----------------------------------------
 top
----------------------------------------*/
/* 行動提起 */
body#top-body .lead{
margin:0 auto;
padding: 96px 0 48px;
z-index:33;
display:flex;
justify-content:center;/*左右センター*/
align-items:center;/*天地中央*/
}
body#top-body .lead_inner{
width:70%;
margin:0 auto;
display:grid;
grid-template-columns:1fr 1fr 1fr;
place-items:center;
z-index:46;
}
body#top-body .lead_inner div{
width:100%;
height:100%;
display:flex;
justify-content:center;/*左右センター*/
align-items:center;/*天地中央*/
border-right:1px solid rgb(255 255 255 / .4);
}
body#top-body .lead_inner div:last-of-type{
border-right:none;
}
body#top-body .lead_inner h2{
font-size:1.45em;
text-align:center;
font-weight: normal !important;
color:rgb(255 255 255 / 1);
line-height:2.2em;
letter-spacing:.35em;
}
body#top-body .lead_inner h2 span.expansion{
font-size:1.75em;
}
body#top-body .lead_inner h2 span.expansion_max{
position:relative;
bottom:-.05em;
font-size:2.2em;
font-weight: normal !important;

}
body#top-body .lead_inner h2 span.expansion_middle{
position:relative;
bottom:-.15em;
font-size:1.5em;
line-height: 1.8em;
}
body#top-body .lead_inner h2 a,
body#top-body .lead_inner h2 a:link,
body#top-body .lead_inner h2 a:visited,
body#top-body .lead_inner h2 a:hover,
body#top-body .lead_inner h2 a:active{
color:rgb(255 255 255 / 1);
font-weight: normal !important;

}
/* 行動提起 */

/*----------------------------------------
 Information
----------------------------------------*/
h2#information_title{
padding-top: 24px;
padding-bottom:10px;
font-size:1.05em;
font-family:'Roboto', sans-serif;
color: rgb(150 150 150 / 1);
letter-spacing:.75em;
}

section#information{
box-sizing: border-box;;
width:100%;
margin:0 auto 0;
padding: 50px 5%;
background: rgb(255 255 255 / 1);
}
div#information_content{
background:rgb(255 255 255 / 1);
border:1px solid rgb(88 123 142 / 0);
width: 80%;;
margin: 0 auto;
padding:24px;
padding-bottom:0;
color: rgb(77 77 77 / 1);
}
div#information_php{
font-size:1.25em;
}
div#information_php h1{
text-align:center;
}

p.top-arrow{
	width: 15%;
	margin: 96px auto;
}

/*----------------------------------------
 top content
----------------------------------------*/
section#top_maincontent{
background: url(../images/pattern002.png) no-repeat right top;
background-size: 220px auto;
padding-top: 120px;
margin-bottom: 120px;
}
section#top_maincontent > section{
background-size: 100% auto;
margin-bottom: 0;
padding: 75px 0;
position: relative;
}
p.top_cap{
position: absolute;
right: 4px;
bottom: 4px;
font-size: smaller !important;
color: rgb(255 255 255 / 1);
}
p.top_cap_under{
position: absolute;
right: 4px;
bottom: 16px;
font-size: smaller !important;
color: rgb(255 255 255 / 1);
}
section#top_access{
background: url(../images/top_location_bg.jpg) 50% 50% no-repeat;
background-size: 100% auto !important;
}
section#top_location{
background: url(../images/top_location_bg.jpg) 50% 50% no-repeat;
background-size: 100% auto !important;
}
section#top_design{
background: url(../images/top_design_bg.jpg) 50% 0 no-repeat;
background-size: 100% auto !important;	
}
section#top_plan{
background: url(../images/top_plan_bg.jpg) 50% 0 no-repeat;
background-size: 100% auto !important;	
}
section#top_quality{
background: url(../images/top_quality_bg.jpg) 50% bottom no-repeat;
background-size: 100% auto !important;	
}
section#top_safety{
background: url(../images/top_safety_bg.jpg) 50% 30% no-repeat;
background-size: 100% auto !important;	
}
section#top_modelroom{
background: url(../images/top_modelroom_bg.jpg) 50% bottom no-repeat;
background-size: 100% auto !important;	
}
section#top_access > div,
section#top_location > div,
section#top_design > div,
section#top_plan > div,
section#top_quality > div,
section#top_safety > div,
section#top_modelroom > div{
text-align: center;
color: rgb(255 255 255 / 1);
}

div.top_content_text{
width: 40%;
margin: 0 auto 0 5%;
padding: 25px 0;
background: rgb(51 59 50 / .35);
border-radius: 4px;
border: 1px solid rgb(255 255 255 / .1); /* ボーダー */
border-right-color: rgb(255 255 255 / .05);
border-bottom-color: rgb(255 255 255 / .05);
-webkit-backdrop-filter: blur(15px); /* ぼかしエフェクト */
backdrop-filter: blur(15px);
text-align: center;
color: rgb(255 255 255 / 1);
}
/*右寄せ対策*/
section#top_maincontent > section:nth-child(odd) > div > div{
margin: 0 5% 0 auto;
}

div.top_content_text > div{
}
div.top_content_text h4{
margin-bottom: 4px;
font-size:1.65em ;
letter-spacing: .2em;
color: rgb(255 255 255 / .7);
}
div.top_content_text h3{
margin-bottom:8px;
font-size:1.4em;
font-weight:300;
line-height:1.45em;
letter-spacing:.1em
}
div.top_content_text h3 strong{
font-size:1.75em;
font-weight:300;
}
div.top_content_text p{
margin-bottom: 24px;
}

/*----------------------------------------
 read moreボタン
----------------------------------------*/
a.btn_action_none,
a.btn_action_nolink{
pointer-events:none;
opacity:.3;
}

a.btn_action{
display:inline-block;
padding-top:16px;
padding-bottom:16px;
padding-left:100px;
padding-right:100px;
box-sizing:border-box;
background:rgb(0 0 0  / 1);
position:relative;
z-index:1;
overflow:hidden;
border:none;
font-size:12px;
color:rgb(255 255 255 / 1);
letter-spacing:.2em;
}
a.btn_action:hover,
a.btn_action:active{
color:rgb(255 255 255 / 1);
}

a.btn_action:hover::before{
transform-origin:top right;
transform:skewX(0deg) translateX(0);
color:rgb(30 106 132 / 1);
}
a.active:hover::before{
transform-origin:top right;
transform:skewX(0deg) translateX(-100%);
color:rgb(30 106 132 / 1);
}

a.btn_action::before{
content:'';
width:100%;
height:100%;
background: rgb(30 106 132 / .55);
color:rgb(255 255 255 / 1);
position:absolute;
top:0;
left:0;
z-index:-1;
transform-origin:top left;
transform:skewX(0deg) translateX(-100%);
transition:inherit; 
}

/*----------------------------------------
 ACCESS
----------------------------------------*/
section#subcontent.accesslocation{
}
div#access_main_title{
	margin: 24px auto 24px !important;
	text-align: center;
}
div#access_main_title h3{
	margin-bottom: 16px;
}
div#access_main_title h4{
margin-bottom: 12px;
}
div#access_main_title h5{
}
div#access_main_title h6{
margin-bottom: 20px;
font-size: 1.15em;
}
@media screen and (max-width:896px) {
div#access_main_title{
	margin: 36px auto 96px !important;
}
}

.access_rosen_image img{
	margin: 0 auto 24px;
	position: relative;
	bottom: -24px;

}

.comfort_main_title{
	margin-top: -150px !important;
}
@media screen and (max-width:896px) {
	.comfort_main_title{
	margin-top: 40px !important;
}
}

div.comfort_mark {
	margin-bottom: 72px !important;
}

div.subtitle.location_subtitle,
div.subtitle.comfort_subtitle{}

section#subcontent.accesslocation h2{
	font-size: 2em;
	font-weight: 300;
	letter-spacing: .25em;
}

body p.accesslocation_cap{
	font-size: smaller !important!;
	margin-left: 1em;
	text-indent: -1em;
}
section#subcontent.accesslocation p{
	text-align: left;
}

.access_rosen{
	margin-top: 40px;
	padding: 64px 25%;
	background: rgb(0 0 0 / .05);
}

.access_time{
	margin-bottom: 96px;
	padding: 64px 5%;
	background: rgb(237 235 225 / .3);
	letter-spacing: 0;
}
.access_time h3{
	margin-bottom: 20px;
	padding-bottom: .25em;
	border-bottom: 1px solid rgb(100 100 100 / .25);
}
.access_time h3 span{
	font-size: 1.45em;;
}

.access_time_grid{
	margin-bottom: 24px;
}
.access_time h4{
	font-family:'Noto Serif JP', serif !important;
	font-size: .85em;
	font-weight: normal;
	letter-spacing: -025em;
}
.access_time h4 code{
	font-size: 1.45em;
}
.access_time h4 code.red{
	color:rgb(111 32 39 / 1);
}
.access_time h4 code span{
	font-size: .55em;
}
.access_time p{}

.accesslocation_group,
.access_group,
.location_group,
.comfort_group{
margin: 24px auto;
}

.access_place{
padding: 32px;
}
.access_place h3{
	margin-bottom: 20px;
	font-size: 1.85em;
	letter-spacing: .15em;
}
@media screen and (max-width:896px) {
.access_place_shibuya h3,
.access_place.access_place_minamimachida h3{
	margin-top: 20px;
}
}
.access_place h3 span{
	display: block;
	font-size: .5em;
	letter-spacing: 1em;
}
.access_place h4{
	margin-bottom: 12px;
}
.access_place.access_place_shibuya,
.access_place.access_place_minamimachida{
background: rgb(135 153 132/ 1);
color:white;
}
.access_place.access_place_futakotamagawa{
	background: rgb(229 225 200 / .5);
}

div.access_three{
	margin: 64px auto 128px;
}
@media screen and (max-width:896px) {
div.access_three{
	margin: 64px auto 64px;
}
}
.access_three h3{
	margin-bottom: 20px;
	font-size: 1.85em;
	letter-spacing: .15em;
}
.access_three h3 span{
	display: block;
	font-size: .5em;
	letter-spacing: 1em;
}
.access_three h4{
	margin-bottom: 12px;
}
div.access_three img{
	border-radius:12px ;
	margin: 12px auto;
}

div.mark_clinic{
width: 150px;
margin-left: 32px;
margin-top: -64px;
}
@media screen and (max-width:896px) {
div.mark_clinic{
width: 120px;
margin:0 12px 0 auto;
margin-top: -120px;
}
}

.access_other{
}
.access_other_group{
	box-sizing: border-box;
	background: rgb(30 106 132 / 1);
	border-radius: 2px;
	margin-bottom: 20px;
	padding: 12px;
	color: white;
}
.access_other_group h3{
	margin-bottom: 1em;
	padding-bottom: .45em;
	border-bottom: 1px solid rgb(255 255 255 / .5);
}
.access_other_group h4{
	padding: 4px;
	background: white;
	border-radius: 4px;
	color: rgb(30 106 132 / 1);
}
.access_other_group img{
	margin: 12px 0;
	border-radius: 12px;
}
.access_other_group_beige{
	background: rgb(245 244 240 / 1);
	padding: 8px;
	color: rgb(30 106 132 / 1);
}
.access_other_group h5{
	margin-bottom: .45em;
	padding-bottom: .25em;
	border-bottom:1px solid rgb(30 106 132 / .5);
}
.access_other_group .access_other_group_beige img{
}
/*----------------------------------------
 スマートフォン横スクロール
----------------------------------------*/
@media screen and (max-width:896px) {
.access_rosen{
	margin-top: 40px;
	padding: 48px 5% 64px;
}
}	
.yoko_content{
	position: relative;
	width: 100%;
}
/* 横スクロールエリア */
.scroll_area{
	overflow-x: auto;
	overflow-y: hidden;
	white-space: nowrap;
}
/* 画像 */
.scroll_area img{
	display: block;
	width: 1000px;
	max-width: none; /* 画像を縮めない */
	height: auto;
	margin-top: 48px;
}
/* 矢印 */
body .yajirushi{
	position: absolute;
	top: 12px;
	left: 15%;
	transform: translateX(-50%);
	font-size: 56px !important;
	color: #999;
	opacity: 1;
	pointer-events: none;

	transition: opacity 0.4s ease;
}
/* 非表示 */
.yajirushi.hide{
	opacity: 0;
}

/*ロケーション*/
div.location{
margin-top: 120px;
padding-bottom: 75px;
background: rgb(237 235 225 / .3);
}
@media screen and (max-width:896px) {
div.location{
margin-top: 24px;
padding-bottom: 36px;
}
}
div.location_title{
	margin: 36px 5%;
}
div.location_title h4{
	border-bottom: 1px solid rgb(100 100 100 / .25);
	margin-bottom: .45em;
	padding-bottom: .25em;
}
div.location_title p{
	text-align: center !important;
}
div.location_place_title{
	margin-left: 1.5em;
}
.mark_tyokyu{
position: relative;
top:-90px;
}
@media screen and (max-width:896px) {
.mark_tyokyu{
position: relative;
top:-120px;
margin: 0 32px -130px auto !important;
}
}

div.location h5,
div.location h6,
div.comfort h6{
	margin: 12px auto 8px;
	padding: 0 .45em 0 .75em;
	border-left: 3px solid rgb(30 106 132 / .3);
	text-align: left;
}
div.location h5 code,
div.location h6 code,
div.comfort h6 code{
display: block;
padding-left: .5em;
font-size: .7em;
}

div.tokyu_square{
	margin-bottom: 96px;
}
.shop_list{
	margin:1em 1.5em 1em 0;
	padding: 12px;
	border-radius: 6px;
	background: rgb(235 213 204 / .5);
}
@media screen and (max-width:896px) {
.sp_left_content{
	width: 95%;
	margin: 0 5% 0 0;
}
.sp_right_content{
	width: 95%;
	margin:0 0 0 5%;
}
}

/*グルメ*/

.gourmet{
	padding: 96px 5%;
	background: rgb(212 208 194 / 1);
}
@media screen and (max-width:896px) {
.gourmet{
	padding: 48px 5%;
}
}
.gourmet > div{
	margin: 0 auto;
	padding: 1px;
	background: white url(../images/location/gourmet_ribbon.svg) no-repeat center top;
	background-size: 64px auto;
	border-radius: 6px;
}
.gourmet > div > div{
	margin: 2px;
	padding: 24px;
	border: 1px solid rgb(140 127 113 / .5);
}

.gourmet > div h3{
	margin-bottom: 24px;
}
.gourmet > div img{
	margin: 12px auto;
	width: 95%;
	border-radius: 12px;
}

.life_information_photo{
	margin: 64px auto 120px !important;
}

.life_information_photo h4{
	margin-bottom: 12px;
}

.life_information_photo_group{
	margin-bottom: 64px;
}
.life_information_photo_group > div{
	margin-bottom: 32px;
}

.life_information_photo_group div.titlebox{
	background-color: rgb(255 255 255 / .2);
	margin-bottom: 3em;
}
.life_information_photo_group img{
	border-radius: 24px;
}
@media screen and (max-width:896px) {
.life_information_photo_group div.titlebox{
	padding-top: 3em;
	padding-bottom: 2em;
	margin-bottom: 3em;
}
}

/* マップリスト　*/
div#location_info{
margin:120px auto 50px;
padding: 96px 0;
background: rgb(30 106 132 / 1);
color: white;
}
div#location_info > h3{
font-family:'Roboto', sans-serif;
font-weight: 500;
}
div#life_information_lists{
width: 80%;
margin: 0 auto 50px;
}
@media screen and (max-width:896px) {
div#location_info{
margin:48px auto 48px;
padding: 48px 0;
}	
div#life_information_lists{
width: 90%;
margin: 0 auto 50px;
}
}	
div#life_information_lists > div{
gap:25px;
}
div#life_information_lists h4{
margin-bottom: 12px;
padding: .5em 0 .3em;
background: rgb(255 255 255 / .7);
border: none;
font-family: 'Noto Sans JP', sans-serif;
font-size: 1.05em;
color: rgb(30 106 132 / 1);
line-height: 1em;
}
div#life_information_lists ul{
margin-bottom: 30px;
text-align: left;
}
div#life_information_lists ul li{	
margin-bottom: 12px;
font-family: 'Noto Sans JP', sans-serif;
font-size: smaller;
font-weight: normal !important;
letter-spacing:.005;
text-align: left;
}



/*----------------------------------------
 デザイン
----------------------------------------*/
section#subcontent.design h2{
	font-family: 'Roboto', sans-serif;
	font-size: 1.75em;
	margin:35px auto 40px;
	letter-spacing: .25em;
	color: rgb(0 0 0 / .45);
}
section#subcontent.design h2.design_main_title{
	margin:75px auto 10px;
	padding-bottom: 55px;
	font-family: 'Noto Serif JP', serif;
	font-size: 2em;
	letter-spacing: .05em;
}
section#subcontent.design div.interior h2{
	padding-top: 75px;
	color: rgb(255 255 255 / .4);
}
section#subcontent.design h3{
	margin-bottom: 16px;
	font-size: 1.6em;
}
section#subcontent.design p{
	font-size: 1em;
}

.openanimate_design {
  opacity: 0;
  top: -50px;
  position: relative; /* or absolute/fixed depending on context */
  transition: opacity 0.5s ease, top 2s ease;
}
.openanimate_design.show {
  opacity: 1;
  top: 75px;
}

.openanimate_design_photo {
  opacity: 0;
  top: 100px;
  position: relative; /* or absolute/fixed depending on context */
  transition: opacity 1s ease, top 2.5s ease;
}
.openanimate_design_photo.show {
  opacity: 1;
  top: 0;
}

div.design_title{
	z-index: 88;
	display: inline-grid;
	margin: 0 auto;
	padding: 35px 35px;
	color: white;
}
div.design_title h3{
	font-family:'Roboto', sans-serif;
	font-size: 1.45em !important;
	font-weight: 100;
	color: rgb(255 255 255 / .5);
	letter-spacing: .45em !important;
}
div.design_title h4{
	margin-bottom: 16px;
	font-size: 1.25em !important;
	line-height: 1.65em;
}
div.design_title p{
	line-height: 1.8em;
}
div.exterior div.design_title{
background: #5A4E45 linear-gradient(90deg,rgb(90 78 69 / 1) 1%, rgb(35 32 33 / 1) 100%);;
box-shadow: 10px 10px 15px rgb(45 79 122 / .3);
}
div.interior div.design_title{
background: rgb(61 40 31 1 / 1);
background: linear-gradient(90deg,rgb(61 40 31 /1) 0%, rgb(122 81 45 / 1) 100%);
box-shadow: 10px 10px 15px rgb(122 81 45 / .3);
}

div.design_photo{
	position: relative;
}

div.exterior{
	margin: 120px auto 0;
	background: rgb(0 0 0 / 0);
}
div.interior{
	margin: 0 auto 50px;
	padding-top: 200px;
	padding-bottom: 50px;
	background: rgb(0 0 0 / .9);
}

div.exterior_001{
	margin: 0 auto 100px;
}
div.exterior_002{
	width: 80%;
	margin: 128px 20% 125px 0;
}
div.exterior_003{
	width: 55%;
	margin: 200px 0 100px 45%;
}
div.exterior_001 .design_title{
	position: relative;
	bottom: -200px;
}
div.exterior_002 .design_title{
	position: relative;
	top: -20px;
}
div.exterior_003 .design_title{
	position: relative;
	top: 0px;
	right: 128px;
}
/*div.exterior_001 .design_photo img{
	border-radius: 128px 0 64px 0;
}
div.exterior_002 .design_photo img{
	border-radius: 0 128px 32px 0;
}
div.exterior_003 .design_photo img{
border-radius: 120px 0 0 32px;
}*/

div.interior_001{
	margin: -70px auto 200px;
}
div.interior_002{
	margin: -125px 20% 100px 0;
}
div.interior_003{
	margin: 0 0 100px 40%;
}
div.interior_004{
	margin: 0 40% 100px 0;
}
div.interior_001 .design_title{
	width: 55%;
	margin-bottom: 120px;
	position: relative;
	bottom:0;
}
div.interior_002 .design_title{
	width: 75%;
	margin-top: -50px;
	position: relative;
	bottom: -35px;
}
div.interior_003 .design_title{
	width: 55%;
}
div.interior_004 .design_title{
}
div.interior_001 .design_photo{

}
div.interior_002 .design_photo{

}
div.interior_003 .design_photo{
	
}
div.interior_004 .design_photo{
}
@media screen and (max-width:896px) {

div.exterior{
	margin: 75px auto 0;
}
div.interior{
	margin: 0 auto 50px;
	padding-top: 100px;
	padding-bottom: 10px;
}

section#subcontent.design h2{
	margin:15px auto 35px;
	font-size: 1.6em;
}
section#subcontent.design div.interior h2{
	padding-top: 75px;
}
section#subcontent.design h3{
	margin-top: 20px;
	margin-bottom: 16px;
	font-size: 1.2em;
}
section#subcontent.design p{
	font-size: 1em;
}
section#subcontent.design p.design_cap{
	bottom: -12px;
	right: 4px;
	font-size: smaller !important;
}	
div.design_title{
	padding: 10px 15px;
}	
div.exterior_001{
	width: 95%;
	margin: 0 auto 25px;
}
div.exterior_002{
	width: 95%;
	margin: 155px 5% 200px 0;
}
div.exterior_003{
	width: 95%;
	margin: -100px 0 100px 5%;
}	
div.exterior_001 .design_title{
	position: relative;
	bottom: -200px;
}
div.exterior_002 .design_title{
	width: 85%;
	margin-left: 5%;
	position: relative;
	top: -100px;
	margin-bottom: -75px;
}
div.exterior_003 .design_title{
	position: relative;
	top: 0px;
	right: 2.5%;
}

div.interior_001{
	width: 90%;
	margin: -70px auto 130px;
}
div.interior_002{
	width: 95%;
	margin: -125px 5% 100px 0;
}
div.interior_003{
	width: 90%;
	margin: 0 0 100px 10%;
}
div.interior_004{
	width: 90%;
	margin: 0 10% 50px 0;
}	
div.interior_001 .design_title{
	width: 80%;
	margin-bottom: 100px;
}
div.interior_002 .design_title{
	width: 90%;
	margin-top: -150px;
	margin-bottom: -500px;
	position: relative;
	bottom: -155px;
}
div.interior_003 .design_title{
	width: 85%;
}	
}

/*----------------------------------------
 QUALITY（設備・仕様）
----------------------------------------*/
@media screen and (max-width : 896px) {
#quality_main_title{
margin-top: 120px;
}
}

section#subcontent.quality p{
	font-size: /*1.1em*/11px !important;
	line-height: 1.7em !important;
	letter-spacing: .002em;
}

section#subcontent.quality{
	width: 100%;
	margin-bottom: 50px
}

section#subcontent.quality h2{
	font-size: 2.25em;
	color: rgb(120 157 136 / 1);
	letter-spacing: .4em;
}
section#subcontent.quality h3{
	margin-bottom: 4px;
	font-size: 1.2em;
}
section#subcontent.quality h3{
	margin-bottom: 20px;
	padding-bottom: .25em;
	border-bottom: 1px solid rgb(120 157 136 / .3);
	font-size: 1.35em;
	font-weight: 500;
	color: rgb(120 157 136 / 1);
	letter-spacing: .25em;
}

.quality_title{
	box-sizing: border-box;
	width: 100%;
	margin: 0 auto;
	padding-bottom: .55em;
}
section#subcontent.quality div.type{
	margin-bottom: 70px;
}
section#subcontent.quality div.type > h3{
	box-sizing: border-box;
	background: rgb(120 157 136 / .5);
	margin-bottom: 15px;
	padding: .4em .25em .25em;
	border-radius: 4px;
	font-family:'Roboto', sans-serif;
	font-size: 1.2em;
	font-weight: 500;
	color: rgb(255 255 255 / 1);
}
section#subcontent.quality div img{
}

div#quality_kitchen > div,
div#quality_bathroom > div,
div#quality_powderroom > div,
div#quality_restroom > div{
	padding: 50px 5% 0;
}
section#subcontent.quality h5,
section#subcontent.quality div#quality_bathroom h5,
section#subcontent.quality div#quality_powderroom h6,
section#subcontent.quality div#quality_restroom h6{
	margin-bottom: 10px;
	padding: .45em;
	background: rgb(120 157 136 / 1);
	font-size: 1em;
	color: #fff;
	line-height: 1.25em;
	letter-spacing: .05em;
}
section#subcontent.quality h5 span{
	font-size: .7em;
}
section#subcontent.quality p{
	margin-bottom: 10px;
	text-align: left;
	line-height: 1.25em;
}

section#subcontent.quality ul li{
	margin-bottom: 6px;
	padding: .45em;
	background: rgb(140 127 113 / .7);
	border-radius: 2px;
	font-size: 1em;
	color: #fff;
}

/*--kitchen--*/
section#subcontent.quality div#quality_kitchen{
}
section#subcontent.quality h4{
	background: rgb(120 157 136 / .15);
	margin: 0;
	padding: 7px 1.5em;
	font-size: 12px;
	text-align: center;
	color: rgb(120 157 136 / 1);
}
#alltype3 img{
	border-radius: 12px;
}

/*--bathroom--*/
section#subcontent.quality div#quality_bathroom h6{
	margin-bottom: 10px;
	padding: .1em;
	background: #858f50;
	color: white;
}

/*----------------------------------------
 MAP（案内図）
----------------------------------------*/
section.map{
	width: 90%;
	margin: 0 auto;
	text-align: center;
}

div.map_add{
font-size:1.25em;
color:#ffffff;
line-height:1.3em;
background:#181311;
margin-top:20px;
padding:1em 1em;
text-align: center !important;
}
div.map_add h6{
margin-bottom: .5em;
padding-bottom: .25em;
border-bottom: 1px solid rgb(255 255 255 / .5);
}

a.googlemap{
font-size:1.3em;
letter-spacing:.2em;
display:block;
padding-top:.5em;
padding-bottom:.5em;
margin-top:20px;
}
a.googlemap:link,
a.googlemap:visited{
color:#777777;
background:#ffffff;
border:3px solid #ddd;
}
a.googlemap:hover,
a.googlemap:active{
color:#ffffff;
background:#aaaaaa;
border:3px solid #aaa;
}

a.btn_print{
font-size:1.3em;
letter-spacing:.2em;
display:block;
padding-top:.5em;
padding-bottom:.5em;
margin-top:20px;
}
a.btn_print:link,
a.btn_print:visited{
color:#777777;
background:#ffffff;
border:3px solid #ddd;
}
a.btn_print:hover,
a.btn_print:active{
color:#ffffff;
background:#aaaaaa;
border:3px solid #aaa;
}
/* 20240905 */
.pc .map_img{
	width: 60%;
	margin: 0 auto;
}
.pc .map_img img{
	width: 100%;
}
section.map h3{
	margin-bottom: 10px;
	padding-bottom: .1em;
	border-bottom: 2px solid rgb(0 0 0 / .15);
	font-size: 2.25em;
}

/*----------------------------------------
 物件概要
----------------------------------------*/
body#sub-body section#subcontent.outline{
width:90% !important;
margin:0 auto;
}

body#sub-body section#subcontent div.outline-content{
margin-top:50px;
margin-bottom:60px;
}

body#sub-body section#subcontent div.outline-content h2{
margin-bottom:10px;
text-align:left;
}

body#sub-body section#subcontent div.outline-content h2:nth-of-type(2){
text-align:left;
font-size:16px;
letter-spacing:0;
border:none;
margin-bottom:5px;
}

body#sub-body section#subcontent div.outline-content h2:nth-of-type(1),
body#sub-body section#subcontent div.outline-content h2:nth-of-type(3),
body#sub-body section#subcontent div.outline-content h2:nth-of-type(4){
text-align:left;
font-size:16px!important;
border:none;
margin-top:35px;
margin-bottom:0;
}

/*----------------------------------------
 Safety
----------------------------------------*/
section#subcontent.safety{
	margin-bottom: 50px;
}
section#subcontent.safety_amenity > div{
	padding: 0 5%;
}
section#subcontent.safety_amenity > div img{
	margin-top: 16px;
	margin-bottom: 10px;
}

div#safety_safety,
div#safety_multimedia,
div#safety_afterservice,
div#safety_amenity,
div#safety_structure{
	margin-bottom: 30px;
	padding: 15px 0 15px ;
}
div#safety_safety h2,
div#safety_multimedia h2,
div#safety_afterservice h2,
div#safety_security h2,
div#safety_amenity h2,
div#safety_structure h2{
	margin-bottom: 15px;
	padding: .1em 1em;
	border-bottom: 1px solid rgb(30 106 132 / .35);
	font-size: 2.75em;
	color: rgb(30 106 132 / 1);
	text-align: left;
}

div#safety_safety h3,
div#safety_multimedia h3,
div#safety_afterservice h3,
div#safety_security h3,
div#safety_amenity h3,
div#safety_structure h3{
	margin-bottom: 10px;
	padding-bottom: .25em;
	border-bottom: 1px solid rgb(120 157 136 / .3);
	font-size: 1.35em;
	font-weight: 500;
	color: rgb(120 157 136 / 1);
	letter-spacing: .25em;
}
section#subcontent.safety_amenity div.safety_title{
	margin-bottom: 35px;
}

h3.au_title small{
	font-size: .6em !important;
}
div#safety_multimedia h3 strong,
div#safety_afterservice h3 strong{
	font-size: 1.35em;
}
section#subcontent.safety_amenity h4{
	margin-bottom: 10px;
	padding: .25em;
	background: rgb(120 157 136 / 1);
	font-size: 1.1em;
	color: white;
}
section#subcontent.safety_amenity h5{
	margin-bottom: 10px;
	padding:.5em .25em .25em;
	background: rgb(120 157 136 / .65);
	border-radius: 4px;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1em;
	line-height: 1.35em;
	color: rgb(255 255 255 / 1);
}
section#subcontent.safety_amenity ul li{
	margin-bottom: 6px;
	padding: .45em;
	background: rgb(140 127 113 / .7);
	border-radius: 2px;
	font-size: 1em;
	color: #fff;
}

section#subcontent.safety_amenity h5.safety_door_title{
	margin-top: 12px;
	padding:0;
	background: none;
	border-radius: 0;
	font-family:'Noto Serif JP', serif;
	font-size: 1.15em;
	line-height: 1.35em;
	text-align: left;
	letter-spacing: 0;
	color: rgb(100 100 100  / 1);	
}
section#subcontent.safety_amenity h5.safety_door_title strong{
	position: relative;
	top:.1em;
	font-size: 1.45em;
	color:rgb(175 166 71 / 1) ;
}
section#subcontent.safety_amenity p{
	text-align: left;
	font-size: 11px !important;
	line-height: 1.65em;
	letter-spacing: 0;
}

/*--safety--*/
div#safety_safety div#handsfree{
	background: rgb(160 177 185 / .2);
	margin-bottom: 30px;
	padding: 25px;
}
p.security_photo_small{
	width: 60%;
	margin: 0 auto;
}
section#subcontent.safety_amenity h6{
	margin-bottom: 10px;
	text-align: left;
}
section#subcontent.safety_amenity h6.num{
	position: relative;
	top:2px;
	
	width: 20px;
	height: 20px;
	background: #c88c0e;
	
	font-size:10px;
	font-weight: 500;
	text-align: center;
	color: white;
}
section#subcontent.safety_amenity h6 small{
	font-size: smaller;
}

.security_round{
	padding: 16px;
	background: rgb(245 244 240 / 1);
	border-radius: 4px;
}

.img_40{
	width: 40%;
	margin: 0 auto;
}

.img_60{
	width: 60%;
	margin: 0 auto;
}
.img_80{
	width: 80%;
	margin: 0 auto;
}

div#aujcom h5 small{
	display: block;
	padding-left: .7em;
	padding-right: .7em;
	padding-top: 10px;
	padding-bottom: 10px;
	font-size: .5em;
}

/*----------------------------------------
 間取り plan
----------------------------------------*/
body#sub-body section#subcontent.plan{
width:90% !important;
margin:0 auto;
}

/*以下プランページphp強制制御*/
body#sub-body div.planList{
	margin: 0 auto !important;
}
body#sub-body .planList .planBox {
	display:  inline-block;
	float: none !important;
	width: 290px;
	margin: 20px 15px 15px 0;
	/*padding: 10px 0 7px;*/
    text-align: center !important;
}

@media screen and (max-width:896px) {
body#sub-body section#subcontent.plan{
margin-top: 60px;
}
body#sub-body .planList .planBox {
	display:block;
	margin: 15px auto 15px;

}	
}


















/*----------------------------------------
 印刷
----------------------------------------*/

@media print{
html,body{
height:auto !important;
}	

header {
height:100px;
display:none;
}
	
.hamburger,
.globalMenuSp{
display:none;
}

div.main_title{
display:none;
}

main {
padding-top:0;
}

.nav{
display:none;
}

.print_no,
.to-top{
display:none;
}

.main_title{
display:none;
}

.pankuzu{
display:none;
}

.map_img{
width:80%;
margin:0 10% 10px 10%;
}

#contact{
display:none;
}

section#company{
display:none;
}

footer{
display:none;
}

}


@media screen and (max-width:1200px) {
/*top title トップページタイトル*/
div#top_main_tilte{
	padding: 70px 0 40px;
}
div#top_main_tilte h2{
	margin-bottom: 8px;
}
}/*1200*/

@media screen and (max-width:896px) {
/*----------------------------------------
ハンバーガーメニューボタン
----------------------------------------*/
.hamburger {
 width: 50px;
 height: 50px;
 cursor: pointer;
 text-align: center;
}

.hamburger span {
 display: block;
 position: absolute;
 width: 30px;
 height: 2px;
 left: 10px;
 background: rgb(0 0 0 / .2);
 transition: 0.3s ease-in-out;
}

.hamburger span:nth-child(1) {
 top: 12px;
}

.hamburger span:nth-child(2) {
 top: 19px;
}

.hamburger span:nth-child(3) {
 top: 26px;
}

.hamburger span:nth-child(4) {
 top: 30px;
}

.hamburger span:nth-child(4) {
 width: 40px;
 height: 1.35em;
 background: none;
 left: 5px;
 font-family: 'Roboto', sans-serif;
 font-size: 0.7em;
 font-weight: 700;
 letter-spacing: 0.2em;
}

/* スマホメニューを開いてる時のボタン */
.hamburger.active span:nth-child(1) {
 top: 19px;
 left: 10px;
 background: rgb(0 0 0 / .2);
 transform: rotate(-45deg);
}
.hamburger.active span:nth-child(3) {
 top: 19px;
 background: rgb(0 0 0 / .2);
 transform: rotate(45deg);
}

/* メニュー背景 */
nav.globalMenuSp {
 color: rgb(255 255 255 / 1);
 text-align: center;
 width: 100%;
 min-height: 100%;
 transform: translateY(-100%);
 transition: all 0.6s;
}

nav.globalMenuSp.active {
 transform: translateY(0);
}

nav.globalMenuSp ul {
margin:15% auto auto;
padding:0;
width:100%;
display:grid;
grid-template-columns:1fr 1fr;
gap:0;
}
nav.globalMenuSp ul li {
max-width:100%;
transition: 0.4s all;
list-style-type: none;
font-size: 1.25em;
line-height: 1.55em;
letter-spacing: 0.2em;
}
nav.globalMenuSp ul li a span {
display: block;
font-size: .6em;
letter-spacing: 0.35em;
}
nav.globalMenuSp ul li a {
display: block;
padding: 13px;
color:rgb(255 255 255 / 1);
}
nav.globalMenuSp ul li a:hover,
nav.globalMenuSp ul li a.current {
}

nav.globalMenuSp ul li:last-child {
padding-bottom: 0;
}

/* ページ未解説リンク */
a.linkno{
pointer-events:none;
opacity:.5;
}
	
/*----------------------------------------
 キャプション.cap
----------------------------------------*/
div.cap_footer{
	margin-top: 25px;
	text-align: left;
}

/*----------------------------------------
 header
----------------------------------------*/
body#top-body header{
margin-bottom:0;
background-image:url(../images/top_mv_001_sp.png);
aspect-ratio:1 / 1.5;
}
p.top_header_cap{
position: absolute;
right: 12px;
bottom: -16px;
}
#header_inner{
display:grid;
grid-template-columns:1fr;
justify-content:space-between;
margin-top:0;
}
header h2.logo{
width:200px;
height:auto;
}
	
/*top title トップページタイトル*/
div#top_main_tilte{
	padding: 90px 0 40px;
}
div#top_main_tilte h2{
	margin-bottom: 16px;
	font-size: 2.45em;
	font-weight: normal !important;
	letter-spacing: .1em;
}
div#top_main_tilte p{
	font-size: 1.6em;
	letter-spacing: .05em;
}	

/* pankuzu */
.pankuzu {
display:none;
}

/*----------------------------------------
 footer
----------------------------------------*/
.footer_info{
display:grid;
grid-template-columns:1fr;
margin:0 auto;
}

div#footer_bottom{
width:95%;
margin:35px auto 0;
padding-top:25px;
padding-bottom:90px;
}
div.footer_right img{
width: 75%;
margin: 0 auto;
}
div.footer_casbee p img{
width: 50%;
margin: 15px auto 0;
}
	
/*----------------------------------------
 下層ページ共通
----------------------------------------*/
section#subcontent{
	font-size: 1.05em;
}
section#subcontent h2{
	margin-bottom: 15px;
	font-size: 2.25em;
	font-weight: 300;
	letter-spacing: .25em;
}
section#subcontent h3{
	margin-bottom: 15px;
	font-size: 1.55em;
	font-weight: 300;
	letter-spacing: .25em;
}
section#subcontent h4{
	margin-bottom: 15px;
	font-size: 1.35em;
	font-weight: 300;
	letter-spacing: .25em;
}
section#subcontent h5{
	margin-bottom: 15px;
	font-size: 1.15em;
	font-weight: 300;
	letter-spacing: .25em;
}
section#subcontent h6{
	margin-bottom: 15px;
	font-size: 1.05em;
	font-weight: 300;
	letter-spacing: .25em;
}
section#subcontent p{
	margin-bottom: 15px;
	font-size: /*1.1em*/13px !important;
	font-weight: 300;
	text-align: left;
	letter-spacing: .05em;
}
section#subcontent li{
	font-size: 1.1em;
}
	
/* subpage menu */
div.subpage_menu.grid2{
	width: 90%;
	margin: 40px auto;
}
body.quality_body div.subpage_menu.grid2{
	margin: 40px auto -55px;
}	
	
/*----------------------------------------
 top
----------------------------------------*/
/* 行動提起 */
body#top-body .lead{
margin:36px auto 48px;
padding: 30px 0 0;
z-index:33;
}
body#top-body .lead_inner{
width:90%;
margin:0 auto;
display:grid;
grid-template-columns:1fr;
grid-template-rows:1fr 1fr 1fr;
place-items:center;
}
body#top-body .lead_inner div{
padding: 0 0 16px;
border-right:none;
border-top:1px solid rgb(255 255 255 / .4);
}
body#top-body .lead_inner div:first-of-type{
border:none;
}
body#top-body .lead_inner h2{
width:100%;
padding:.5em;
padding-left:1.5em;
padding-right:1.5em;
font-size:1.45em;
text-align:center;
line-height:1.95em;
letter-spacing:.1em;
}
body#top-body .lead_inner h2 span.expansion{
font-size:1.45em;
}
body#top-body .lead_inner h2 span.expansion_max{
font-size:2.2em;
}

/* 行動提起 */
/*----------------------------------------
 Information
----------------------------------------*/
section#information{
margin:0 auto 0;
}
div#information_content{
background:rgb(255 255 255 / 1);
/*border:1px solid rgb(122 136 65 / .5);*/
padding:15px;
padding-bottom:0;
}
/*----------------------------------------
 top content
----------------------------------------*/
section#top_access,
section#top_location,
section#top_design,
section#top_plan,
section#top_quality ,
section#top_safety,
section#top_modelroom{
padding: 30px 0;
margin:0;
text-align: center;
}
section#top_access{
background: url(../images/top_location_bg_sp.jpg) 50% 50% no-repeat;
background-size: 220% auto !important;
}

section#top_design{
background: url(../images/top_design_bg.jpg) left bottom no-repeat;
background-size: 220% auto !important;
}
section#top_plan{
background: url(../images/top_plan_bg.jpg) 50% 50% no-repeat;
background-size: 200% auto !important;	
}
section#top_quality{
background: url(../images/top_quality_bg.jpg) right bottom no-repeat;
background-size: 200% auto !important;	
}
section#top_safety{
background: url(../images/top_safety_bg.jpg) left 50% no-repeat;
background-size: 200% auto !important;	
}
section#top_modelroom{
background: url(../images/top_modelroom_bg.jpg) left bottom no-repeat;
background-size: 150% auto !important;	
}
/*section#top_access div.top_content{
display:grid;
grid-template-columns:1fr;
gap:0;
z-index:1;
}*/
div.top_content_text{
box-sizing: border-box;
width: 90%;
margin: 0 auto !important;
}
div.top_content_text h3{
margin-bottom:4px;
font-size:1.45m;
font-weight:300;
letter-spacing:.25em;
}
div.top_content_text h3 strong{
font-size:1.75em;
font-weight:300;
}
div.top_content_text h4{
margin-bottom: 10px;
padding: 0;
font-size:1.45em ;
}
div.top_content_text p{
margin-bottom: 15px;
font-size: 11px !important;
}

/*----------------------------------------
 read moreボタン
----------------------------------------*/
a.btn_action{
display:inline-block;
margin-top:0;
margin-bottom: 0;
padding-top:5px;
padding-bottom:5px;
padding-left:70px;
padding-right:70px;
font-size:12px;
}
/*----------------------------------------
 下層ページ共通
----------------------------------------*/

/*----------------------------------------
 main_title
----------------------------------------*/
.main_title{
background-size:150% auto;
}

/*----------------------------------------
 ACCESS
----------------------------------------*/

/*----------------------------------------
 LOCATION
----------------------------------------*/

/*----------------------------------------
 デザイン
----------------------------------------*/
section#subcontent.design h2.design_main_title{
	margin:20px auto 0;
	padding-bottom: 55px;
	font-size: 2em;
	letter-spacing: .02em;
}

/*----------------------------------------
 QUALITY（設備・仕様）
----------------------------------------*/
section#subcontent.quality{
	margin-top: 0;
	padding-top: 0;
}	
img.alsok{
	display: block;
	width: 40%;
	margin: 0 auto;
	text-align: center;
}
	
/*----------------------------------------
 物件概要
----------------------------------------*/

/*----------------------------------------
 Safety
----------------------------------------*/

/*----------------------------------------
 間取り plan
----------------------------------------*/
body#sub-body section#subcontent.plan div#plan_content{
margin-bottom:35px;
}

/*----------------------------------------
 map
----------------------------------------*/
section#subcontent.map{
margin-top: 35px;
}
/* 20240905 */
.sp div.map_img{
	width: 100%;
	margin: 0 auto;
}
.sp .map_img img{
	width: 100%;
}
	
}
