@charset "UTF-8";
html,body{
width:100%;
max-width:100%;
height:100%;
}

body{
position:relative;
background:rgb(242 237 231 / 1);
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(51 51 51 / 1);
line-height:1.8;
text-align:center;
letter-spacing:.002em;
-webkit-text-size-adjust:100%;
word-wrap:break-word;
}
body#sub-body{
	background: rgb(255 255 255 / 1);
}
a,
a:link{
color:rgb(51 51 51 / 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(51 51 51 / 1);
}

a:hover,
a:active{
color:rgb(88 123 142 / 1);
}

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

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

/* オープニング */

/* Loading背景画面設定　*/
#opening{
position:fixed;
width:100%;
height:100vh;
z-index:9999;
background: rgb(88 123 142 / 1);
background: linear-gradient(180deg, rgb(88 123 142 / 1) 0%, rgb(62 110 136 / 1) 100%);
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;
}
}

/*----------------------------------------
ハンバーガーメニューボタン
----------------------------------------*/
.hamburger {
 display: block;
 position: fixed;
 z-index: 777;
 right: 0;
 top: 0;
 width: 50px;
 height: 50px;
 background: rgb(88 123 142 / 1);
 background: linear-gradient(180deg, rgb(88 123 142 / 1) 0%, rgb(62 110 136 / 1) 100%);
 cursor: pointer;
 text-align: center;
}

body#sub-body .hamburger{
 display: block;
 position: fixed;
 z-index: 777;
 right: 0;
 top: 0;
 width: 50px;
 height: 50px;
 background:rgb(88 123 142 / 1);
 cursor: pointer;
 text-align: center;
}
.hamburger:hover{
	background: rgb(51 87 97 / 1);
}
.hamburger span {
 display: block;
 position: absolute;
 width: 30px;
 height: 2px;
 left: 10px;
 background: rgb(255 255 255 / .5);
 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: 33px;
}

.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;
 color: rgb(255, 255, 255);
 letter-spacing: 0.2em;
}

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

.hamburger.active span:nth-child(2),
.hamburger.active span:nth-child(3) {
 top: 19px;
 background: rgb(255 255 255 / .5);
 transform: rotate(45deg);
}

/* メニュー背景 */
nav.globalMenuSp{
 position: fixed;
 z-index: 555;
 top: 0;
 left: 0;
 color: rgb(255, 255, 255);
 background: rgb(160 177 185 / 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:10% auto 0;
 padding:0;
 width:80%;
 display:grid;
 grid-template-columns:1fr 1fr 1fr;
 gap: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(88 123 142 / .5);
color: rgb(255, 255, 255);
padding: 13px;
}
nav.globalMenuSp ul li a:hover,
nav.globalMenuSp ul li a.current {
background: rgb(255 255 255 / 1);
color: rgb(88 123 142 / 1);
}

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

/* ページ未解説リンク */
a.linkno{
pointer-events:none;
opacity:.5;
}

/*----------------------------------------
 header
----------------------------------------*/
body#top-body header{
height:auto;
background:rgb(160 177 185 / 1) url(../images/top_mv_001.jpg) no-repeat 50% top;
background-size:100% auto;
padding:15px 0 0 10px;
aspect-ratio:1 / 0.475;
/*clip-path:path('M0,0v1143.722c227.657,49.372,573.8,81.849,960,81.849c386.201,0,729.6-33.079,960-82.45V142.27V0H0z');*/
color:rgb(255 255 255 / 1);
}
body#sub-body header{
height:auto;
background: rgb(88 123 142 / 1);
margin-bottom:0;
padding:15px;
color:rgb(255 255 255 / 1);
/*clip-path:path('M0,0v1143.722c227.657,49.372,573.8,81.849,960,81.849c386.201,0,729.6-33.079,960-82.45V142.27V0H0z');*/
}
#header_inner{
display:grid;
grid-template-columns:1fr 1fr;
justify-content:space-between;
margin-top:12px;
}
div#header_inner_left{
text-align:left;
}
div#header_inner_right{
padding-right:60px;
text-align:right;
}
/* 以下#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:.35em;
font-size:1.05em;
font-weight:700;
letter-spacing:.15em;
text-align:center;
}

a.btn:link,
a.btn:visited{
background: rgb(160 177 185 / 1);
color:rgb(255 255 255 / 1);
}
a.btn:hover,
a.btn:active{
background:rgb(88 123 142 / 1);
color:rgb(255 255 255 / 1);
}
section#header_inner a.btn{
	width:200px !important;
}
section#header_inner a.btn:link,
section#header_inner a.btn:visited{
background:rgb(88 123 142 / 1);
}
section#header_inner a.btn:hover,
section#header_inner a.btn:active{
background:rgb(51 87 97 / 1);
}
body#sub-body a.btn:link,
body#sub-body a.btn:visited{
background:rgb(160 177 185 / 1);
color:rgb(255 255 255 / 1);
}
body#sub-body a.btn:hover,
body#sub-body a.btn:active{
background:rgb(88 123 142 / 1);
color:rgb(255 255 255 / 1);
}

/* グローバルメニュー */
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(88 123 142 / .7);
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(88 123 142 / 1);
color:rgb(255 255 255 / 1);
}
/* グローバルメニュー */

a.btn span{
padding:.6em;
padding-left:18px;
}
a.btn.btn_rec span{
background:url(../images/icon_file.svg) no-repeat 0 50%;
background-size:11px auto;
}
a.btn.btn_rsv span{
background:url(../images/icon_calendar.svg) no-repeat 0 50%;
background-size:11px auto;
}
div.information_btn,
div.company_btn{
margin:25px auto;
}
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.information_btn{/* インフォメーション欄 */
margin:15px auto;
grid-template-columns:1fr;
justify-content:center;/*左右センター*/
align-items:center;/*天地中央*/
border-right:none;
border-bottom:1px solid rgb(255 255 255 / .3);
}
div.company_btn{/* 会社概要部分 */
margin:0 auto 20px;
}
div.globalMenuSp_btn{/*グローバルメニュー*/
width:100%;
margin:0 auto;
gap:0;
position:relative;
top:-4px;
}
}

/*----------------------------------------
 main
------------------------------------------*/
main{
margin-bottom:50px;
}

/*----------------------------------------
 section
----------------------------------------*/
section {
width:100%;
}

/*----------------------------------------
 pankuzu
----------------------------------------*/
.pankuzu {
width:90%;
text-align:left;
margin:30px 5% 30px 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:#333;
}
section#modelroom_back .pankuzu li a::after {
content:" ＞";
color:#fff;
}
.pankuzu li a:link,
.pankuzu li a:visited{
color:#333;
}
.pankuzu li a:hover,
.pankuzu li a:active{
color:#2393b3;
}

/*----------------------------------------
 フッター共通
----------------------------------------*/
#footer_cap{
	width: 80%;
	margin: 50px auto 30px;
	text-align: center;
}
p.buken_comment{/*概要phpページ調整用*/
	font-size:9px !important;
	line-height:2.15em !important;
	text-align: left !important;
}

div.contact{
margin-bottom:50px;
}
div.company_info{
margin-bottom: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;
padding-left:.75em;
padding-right:.75em;
padding-bottom:4px;
border-bottom:2px double rgb(88 123 142 / .5);
font-size:1.45em;
font-weight:400;
color:rgb(88 123 142 / 1);
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(88 123 142 / .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 55px;
width:100%;
}
section#footer_menu_simple ul{
display:grid;
grid-template-columns:1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
gap:0;
}
section#footer_menu_simple ul li{
list-style:none;
display:inline-block;
border-right:1px solid rgb(255 255 255 / .15);
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(88 123 142 / 1);
padding-top:8px;
padding-bottom:8px;
}
section#footer_menu_simple ul li a.linkno{
background:rgb(88 123 142 / .2);
opacity:1;
}
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(160 177 185 / 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(0 0 0 / .05);
color:rgb(0 0 0 / .35);
}

section.osusume{
margin-top:50px;
margin-bottom:0;
padding-top:35px;
padding-bottom:20px;
background:#ececec;
width:100%;
overflow:hidden;
}
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;
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;
color:#777777;
border:1px solid #ccc;
}
div.sagasu a:hover,
div.sagasu a:active{
background:#eeeeee;
color:#777777;
border:1px solid #ccc;
}

.footer_info{
display:grid;
grid-template-columns:1fr 1fr 1fr;
justify-content:center;/*左右センター*/
align-items:center;/*天地中央*/
width:70%;
margin:0 auto;
}
.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(88 123 142 / 1);
position:relative;
top:-1px;
}
.footer_nav ul li:hover:before{
content:'▼ ';
font-size:.6em;
color:rgb(88 123 142 / 1);
}
.footer_nav ul{
width:100%;
list-style:none;
font-size:10px;
}
.footer_nav ul li{
margin:0 5px;
padding:0 0;
display:inline-block;
}
.footer_nav ul li a{
font-size:1.2rem;
color:#000;
}
div.footer_right img{
}
div.footer_casbee p img{
width: 75%;
margin: 0 auto 0;
}
div#footer_bottom{
width:100%;
margin:35px auto 0;
padding-top:50px;
padding-bottom:50px;
background: rgb(88 123 142 / 1);
background: linear-gradient(180deg, rgb(88 123 142 / 1) 0%, rgb(62 110 136 / 1) 100%);
color:rgb(255 255 255 /1);
}
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 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*/13px ;
	font-weight: 300;
	line-height: 2em;
	letter-spacing: .05em;
}

/* subpage menu */
div.subpage_menu.grid2{
	width: 55%;
	margin: 60px auto;
}
div.subpage_menu.grid2 a{
	display: block;
	background: rgb(88 123 142 / .45);
	padding: .85em;
	border: 1px solid rgb(255 255 255 / .3);
	font-size: 1.05em;
	color: white;
	letter-spacing: .2em;
}
div.subpage_menu.grid2 a:hover{
	background: rgb(88 123 142 / 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;
}

/*----------------------------------------
 キャプション
----------------------------------------*/
.cap{
	display: block;
	line-height: 1em;
	margin-top: .5em;
	font-size: smaller;
	text-align: left;
}
.cap_no{
	display: block;
	position:  relative;
	top: -1.5em;
	right: .5em;
	margin-bottom: -1.5em;
}
.cap_rignt{
	z-index: 15;
	display: block;
	line-height: 1em;
	font-size: smaller;
	text-align: right;
}
.cap_rignt_inner{
	z-index: 15;
	display: block;
	position:  relative;
	top: -1.5em;
	right: .5em;
	margin-bottom: -1.5em;
	line-height: 1em;
	font-size: smaller;
	text-align: right;
}
.cap_rignt_inner_white{
	z-index: 15;
	display: block;
	position:  relative;
	top: -1.5em;
	right: .5em;
	margin-bottom: -1.5em;
	line-height: 1em;
	font-size: smaller;
	color: white;
	text-align: right;
}


/*----------------------------------------
 下層ページmain_title
----------------------------------------*/
.main_title{
box-sizing:boder-box;
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-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: 50px 0 65px;
z-index:33;
display:flex;
justify-content:center;/*左右センター*/
align-items:center;/*天地中央*/
background: rgb(160 177 185 / 1);
}
body#top-body .lead_inner{
width:90%;
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 / .45);
}
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;
line-height:1.75em;
letter-spacing:.25em;
}
body#top-body .lead_inner h2 span.expansion{
font-size:1.75em;
font-weight:500;
}
body#top-body .lead_inner h2 span.expansion_max{
position:relative;
bottom:-.15em;
font-size:2.2em;
font-weight:500;
}
body#top-body .lead_inner h2 span.expansion_middle{
position:relative;
bottom:-.15em;
font-size:1.5em;
font-weight:500;
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);
}
/* 行動提起 */

/*----------------------------------------
 Information
----------------------------------------*/
section#information{
width:80%;
margin:0 auto 55px;
}
section#information h2{
margin-bottom:10px;
font-size:1.05em;
color: rgb(88 123 142 / 1);
letter-spacing:.75em;
}
div#information_content{
background:rgb(255 255 255 / 1);
border:1px solid rgb(88 123 142 / .5);
padding:20px;
padding-bottom:5px;
}
div#information_php{
font-size:1.25em;
}
div#information_php h1{
text-align:center;
}

/*----------------------------------------
 top content
----------------------------------------*/

section#top_access,
section#top_location,
section#top_design,
section#top_plan,
section#top_quality ,
section#top_safety,
section#top_modelroom{
background-size: 100% auto;
margin-bottom: 100px;
padding: 75px 0;
position: relative;
}
p.top_cap{
position: absolute;
right: 4px;
bottom: 4px;
font-size: smaller !important;
color: rgb(255 255 255 / 1);
}
/*section#top_safety p.top_cap{
bottom: 48px;
}*/
p.top_cap_under{
position: absolute;
right: 4px;
bottom: 16px;
font-size: smaller !important;
color: rgb(255 255 255 / 1);
}/*
@media screen and (max-width:896px) {
p.top_cap_under{
position: absolute;
right: 3px;
bottom: 3px;
font-size: smaller !important;
color: rgb(255 255 255 / 1);
}
}*/
section#top_access{
background: url(../images/top_access_bg.jpg) 50% 0 no-repeat;
background-size: 100% auto !important;
}
section#top_location{
background: url(../images/top_location_bg.jpg) 50% 0 no-repeat;
background-size: 100% auto !important;
}
section#top_design{
background: url(../images/top_design_bg.jpg) left bottom 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% 0 no-repeat;
background-size: 100% auto !important;	
}
section#top_safety{
background: url(../images/top_safety_bg.jpg) 50% 0 no-repeat;
background-size: 100% auto !important;	
}
section#top_modelroom{
background: url(../images/top_modelroom_bg.jpg) 50% 0 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{
margin-bottom:10px;
text-align: center;
color: rgb(255 255 255 / 1);
}
/*section#top_access div.top_content{
display:grid;
grid-template-columns:1fr 1fr;
gap:0;
z-index:1;
}*/
div.top_content_text{
width: 50%;
display:grid;
place-items:center;
background: rgb(166 142 104 / .7);
padding: 55px 0;
}
section#top_access div.top_content_text,
section#top_plan div.top_content_text,
section#top_quality div.top_content_text{
margin: 0 0 0 auto;
}
div.top_content_text h3{
margin-bottom:15px;
font-size:1.4em;
font-weight:300;
line-height:1.9em;
letter-spacing:.1em
}
div.top_content_text h3 strong{
font-size:1.75em;
font-weight:300;
}
div.top_content_text h4{
background:rgb(88 123 142 / 1);
margin-bottom: 10px;
padding: 0 10px;
font-size:1.25em ;
letter-spacing: .75em;
}

/*----------------------------------------
 read moreボタン
----------------------------------------*/
a.btn_action_none,
a.btn_action_nolink{
pointer-events:none;
opacity:.5;
}
a.btn_action{
display:inline-block;
margin-top:25px;
margin-bottom: 0;
padding-top:5px;
padding-bottom:5px;
padding-left:100px;
padding-right:100px;
box-sizing:border-box;
background:rgb(0 0 0  / .7);
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(88 123 142 / 1);
}

a.active:hover::before{
transform-origin:top right;
transform:skewX(0deg) translateX(-100%);
color:rgb(88 123 142 / 1);
}
a.btn_action::before{
content:'';
width:100%;
height:100%;
background: rgb(88 123 142 / .7);
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.access{
	width: 100%;
}
div.access_tocity{
	padding: 50px 0;
	background: rgb(88 123 142 / 1);
	color: rgb(255 255 255 / 1);
}
div.access_tocity > div{
}
section#subcontent div.access_tocity p.access_tocity_cap{
	height: 7.5em;
	overflow: hidden;
	font-size: 11px !important;
	line-height: 1.8em;
	letter-spacing: 0;
}
div.access_tocity h4{
	margin-bottom: 8px;
	line-height: 1.75em;
}

div.access_tocity h4 strong{
	display: inline-block;
	padding-left: .25em;
	font-size: 2em;
}
div.access_tocity h4 span.large{
	font-size: 1.3em;
}
div.access_tocity h4 span.small{
	font-size: .7em;
}
div.access_rosen{
	padding: 50px 0;
	background: rgb(0 0 0 / .05);
}
div.access_rosen img{
	width: 50%;
	height: auto;
	margin: 0 auto;
}

div.access_ranking{
	padding: 50px 0;
	background: rgb(243 151 0 / 1);
	color: rgb(255 255 255 / 1);
}
div.access_ranking > div{
	width: 90%;
	margin: 0 auto;
}
div.access_ranking h2{
	font-family: 'Roboto', sans-serif;
	font-weight: 500 !important;
	font-size: 3em !important;
}
div.access_ranking h4{
	margin-bottom: 8px;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 1.75em !important;
	font-weight: bold !important;
	letter-spacing: 0 !important;
}
div.access_ranking p.ranking_cap{
	margin-top: 8px;
	font-size: 10px !important;
}

/*----------------------------------------
 LOCATION
----------------------------------------*/
section#subcontent.location p{
	text-align: left;
}

div.location_photo{
	position: relative;
}
div.location_photo h2{
	position: absolute;
	top:35px;
	left: 0;
	padding: 15px;
	background: rgb(88 123 142 / .6);
	border-radius: 0 8px 8px 0;
	font-size: 1.25em !important;
	line-height: 2.1em;
	letter-spacing: .05em;
	color: rgb(255 255 255 / 1);
	text-align: left;
}
div.time{
	box-sizing: border-box;
	width: 60px;
	height: 60px;
	overflow: hidden;
	display: grid;
	place-items:center;
	position: absolute;
	right: 0;
	bottom: 0;
	background: rgb(51 87 97 / 1);
	font-family:'Noto Sans JP', sans-serif;;
	font-size:.8em;
	line-height: 1.75em;
	color: rgb(255 255 255 / 1);
}
div.time strong{
	font-size: 2em;
}
div.time small{
	font-size: .8em;
}

div.location_sub_title{
	margin: 0 auto 20px;
	text-align: center;
}
section#subcontent.location div.location_sub_title p{
	text-align: center;
}
div.location_main h4,
div.location_vinawalk h5,
div.location_shopping h5{
	margin-top: 4px;
	margin-bottom: 8px;
	padding-left: .5em;
	text-align: left;
}

div.location_main div.location_cap{
position: absolute;
left: 0;
bottom: 0;
background: rgb(0 0 0 / .7);	
color: rgb(255 255 255 / 1);
}

div.location_cap{
display:flex;
justify-content:center;/*左右センター*/
align-items:center;/*天地中央*/
padding: 15px;
font-size: smaller !important;
text-align: left !important;
}

div.location_vinawalk{
	margin: 50px auto 0;
	padding: 50px 5%;
	background: rgb(160 177 185 / .2);
}

div.location_shopping{
	margin: 75px auto 0;
	padding: 50px 5%;
	background: rgb(242 237 231 / 1);
}
div.location_gourmet{
	padding: 75px 0;
	background: brown;
	color: white;
}
div.location_gourmet .location_gourmet_title p{
	text-align: center !important;
}

div.location_gourmet div.grid2{
	background: rgb(0 0 0 / .95);
}
.location_gourmet_lists {
}
.location_gourmet_lists h4,
.location_gourmet_lists p{
	padding: 0 .25em;
	text-align: left !important;
	line-height: 1.3em !important;
}
.location_gourmet_lists p{
	margin-bottom: 4px;
	font-size: 10px;
}
div.time_for_gourmet{
	box-sizing: border-box;
	width: 60px;
	height: 60px;
	overflow: hidden;
	display: grid;
	place-items:center;
	background: rgb(51 87 97 / 1);
	font-family:'Noto Sans JP', sans-serif;;
	font-size:.8em;
	line-height: 1.75em;
	color: rgb(255 255 255 / 1);
}

/* マップリスト　*/
div#location_info{
margin-bottom: 50px;
padding: 50px 0;
background: rgb(88 123 142 / 1);
color: white;
}
div#location_info > h3{
font-family:'Roboto', sans-serif;
font-weight: 500;
}
div#life_information_lists{
width: 90%;
margin: 0 auto 50px;
}
div#life_information_lists > div{
gap:15px;
}
div#life_information_lists h4{
margin-bottom: 12px;
padding: .5em 0 .3em;
background: rgb(255 255 255 / 1);
border: none;
font-family: 'Noto Sans JP', sans-serif;
font-size: 1.05em;
color: rgb(88 123 142 / 1);
line-height: 1em;
}
div#life_information_lists ul{
margin-bottom: 30px;
text-align: left;
}
div#life_information_lists ul li{	
margin-bottom: 8px;
font-family: 'Noto Sans JP', sans-serif;
font-size: smaller;
font-weight: normal !important;
letter-spacing:.005;
text-align: left;
}


/*----------------------------------------
 デザイン
----------------------------------------*/
section#subcontent.design h2{
	margin:35px auto 35px;
	font-size: 1.75em;
	font-family: 'Roboto', sans-serif;
	letter-spacing: .85em;
	color: rgb(0 0 0 / .45);
}
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 1.5s ease;
}
.openanimate_design_photo.show {
  opacity: 1;
  top: 0;
}

div.design_title{
	z-index: 888;
	width: ;
	display: inline-grid;
	margin: 0 auto;
	padding: 25px 45px;
	color: white;
}
div.exterior div.design_title{
background: rgb(45 79 122 / 1);
background: linear-gradient(90deg,rgb(32 31 61 / 1) 0%, rgb(45 79 122 / 1) 100%);
box-shadow: 10px 10px 15px rgb(45 79 122 / .5);
}
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 / .5);
}

div.design_photo{
	position: relative;
}
p.design_cap{
	position: absolute;
	bottom: 4px;
	right: 4px;
	font-size: smaller !important;
	color: white;
}

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

div.exterior_001{
	margin: 0 auto 100px;
}
div.exterior_002{
	width: 80%;
	margin: 0 20% 125px 0;
}
div.exterior_003{
	width: 70%;
	margin: -100px 0 100px 30%;
}
div.exterior_001 .design_title{
	position: relative;
	bottom: -200px;
}
div.exterior_002 .design_title{
	position: relative;
	top: -100px;
}
div.exterior_003 .design_title{
	position: relative;
	top: 0px;
}
div.exterior_001 .design_photo{
}
div.exterior_002 .design_photo{
}
div.exterior_003 .design_photo{
	position: relative;
	top: -75px;
}

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: -60px;
	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) {
section#subcontent.design h2{
	margin:35px auto 35px;
	font-size: 1.6em;
}
section#subcontent.design div.interior h2{
	padding-top: 75px;
}
section#subcontent.design h3{
	margin-bottom: 16px;
	font-size: 1.4em;
}
section#subcontent.design p{
	font-size: 1em;
}	
div.design_title{
	padding: 25px 25px;
}	
div.exterior_001{
	margin: 0 auto 75px;
}
div.exterior_002{
	width: 95%;
	margin: 0 5% 100px 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{
	position: relative;
	top: -100px;
}
div.exterior_003 .design_title{
	position: relative;
	top: 0px;
}

div.interior_001{
	width: 100%;
	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_003 .design_title{
}	
}

/*----------------------------------------
 QUALITY（設備・仕様）
----------------------------------------*/
section#subcontent.quality p{
	font-size: /*1.1em*/11px !important;
	line-height: 1.7em;
	letter-spacing: .002em;
}

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

section#subcontent.quality h2{
	font-family:'Roboto', sans-serif;
	font-size: 2.25em;
	color: rgb(88 123 142 / 1);
	letter-spacing: .4em;
}
section#subcontent.quality h3{
	margin-bottom: 4px;
	font-size: 1.2em;
}
.quality_title{
	width: 90%;
	margin: 0 auto;
	padding-bottom: .55em;
	border-bottom: 2px solid rgb(88 123 142 / .25);
}
section#subcontent.quality div.type{
	margin-bottom: 70px;
}
section#subcontent.quality div.type > h3{
	background: rgb(88 123 142 / .6);
	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);
}
h3#ae{
}
h3#ab{
}
h3#c1e1{
}
h3#bc1c2e{
}
h3#ad1d2{
}

div#quality_kitchen > div,
div#quality_bathroom > div,
div#quality_powderroom > div,
div#quality_restroom > div{
	padding: 50px 50px 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: .35em;
	background: #f4f6eb;
	color: #858f50;
	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;
}

section#subcontent.quality ul li{
	margin-bottom: 6px;
	padding: .15em;
	background: rgb(88 123 142 / .1);
	border-radius: 4px;
	font-size: 1em;
	font-weight: bold;
	font-family: 'Noto Sans JP', sans-serif;
	color: rgb(88 123 142 / 1);
}

/*--kitchen--*/
section#subcontent.quality div#quality_kitchen{
}
section#subcontent.quality div#quality_kitchen h4{
	background: #858f50;
	margin: 0;
	padding: 7px 1.5em;
	font-size: .85em;
	text-align: center;
	color: white;
}
#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;
}

p.map_add{
font-size:1.25em;
color:#ffffff;
line-height:1.3em;
background:#181311;
margin-top:20px;
padding-top:.7em;
padding-bottom:.7em;
text-align: center !important;
}

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 > div{
	padding: 0 5%;
}

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_amenity h2,
div#safety_structure h2{
	margin-bottom: 15px;
	padding: .1em 1em;
	border-bottom: 1px solid rgb(88 123 142 / .35);
	font-size: 2.75em;
	color: rgb(88 123 142 / 1);
	text-align: left;
}

div#safety_safety h3,
div#safety_multimedia h3,
div#safety_afterservice h3,
div#safety_amenity h3,
div#safety_structure h3{
	margin-bottom: 10px;
	padding-bottom: .25em;
	border-bottom: 1px solid rgb(88 123 142 / .3);
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.35em;
	font-weight: 500;
	color: rgb(88 123 142 / 1);
	letter-spacing: 0;
}
section#subcontent.safety div.safety_title{
	margin-bottom: 35px;
}
section#subcontent.safety div.safety_title h3{
	padding: 0 1.25em;
	border: none;
	font-family: 'Noto Serif JP', serif;
	font-size: 1.55em !important;
	text-align: left;
}
div#safety_multimedia h3,
div#safety_afterservice h3{
	font-family:'Noto Sans JP', sans-serif;
	font-weight: 500;
	line-height: 1.65em;
	letter-spacing: 0;
}
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 h4{
	margin-bottom: 10px;
	padding: .25em;
	background: rgb(88 123 142 / 1);
	font-size: 1.1em;
	color: white;
}
section#subcontent.safety h5{
	margin-bottom: 10px;
	padding:.5em .25em .25em;
	background: rgb(88 123 142 / .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 h5.safety_door_title{
	padding:0;
	background: none;
	border-radius: 0;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.15em;
	font-weight: 700;
	line-height: 1.35em;
	text-align: left;
	letter-spacing: 0;
	color: rgb(88 123 142 / 1);	
}
section#subcontent.safety h5.safety_door_title strong{
	position: relative;
	top:.1em;
	font-size: 1.75em;
	color:rgb(190 135 85 / 1) ;
}
section#subcontent.safety 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 h6{
	margin-bottom: 10px;
	text-align: left;
}
section#subcontent.safety 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 h6 small{
	font-size: smaller;
}

.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 .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(255 255 255 / .5);
 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: 33px;
}

.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;
 color: rgb(255, 255, 255);
 letter-spacing: 0.2em;
}

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

.hamburger.active span:nth-child(2),
.hamburger.active span:nth-child(3) {
 top: 19px;
 background: rgb(255 255 255 / .5);
 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
----------------------------------------*/


/*----------------------------------------
 header
----------------------------------------*/
body#top-body header{
margin-bottom:0;
background-image:url(../images/top_mv_001_sp.jpg);
aspect-ratio:1 / 1.2;
}
#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;
width:90%;
margin:0 auto;
}

div#footer_bottom{
width:100%;
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;
}
	
/*----------------------------------------
 top
----------------------------------------*/
/* 行動提起 */
body#top-body .lead{
margin:0 auto 50px;
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 30px;
border-right:none;
border-top:1px solid rgb(255 255 255 / .45);
}
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{
width:90%;
margin:0 auto 55px;
}
section#information h2{
font-size:1em;
letter-spacing:.5em;
margin-bottom:5px;
}
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_concept{
box-sizing: border-box;
width: 100%;
overflow: hidden;
margin: 0;
padding: 40px 20px;
background-size: 200% auto;
}
div.top_content_concept h2{
margin-bottom: 10px;
font-size: 1.75em;
letter-spacing: .15em;
}
div.top_content_concept p{
text-align: left;
line-height: 2em;
}
	
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_design{
}	
section#top_access{
background: url(../images/top_access_bg.jpg) 50% 50% no-repeat;
background-size: 350% auto !important;
}
section#top_location{
background: url(../images/top_location_bg.jpg) 50% 50% no-repeat;
background-size: 220% auto !important;
}
section#top_design{
background: url(../images/top_design_bg_sp.jpg) left bottom no-repeat;
background-size: 100% auto !important;
}
section#top_plan{
background: url(../images/top_plan_bg.jpg) 50% 50% no-repeat;
background-size: 220% auto !important;	
}
section#top_quality{
background: url(../images/top_quality_bg.jpg) 50% 50% no-repeat;
background-size: 220% auto !important;	
}
section#top_safety{
background: url(../images/top_safety_bg.jpg) right 50% no-repeat;
background-size: 150% auto !important;	
}
section#top_modelroom{
background: url(../images/top_modelroom_bg.jpg) 50% 50% no-repeat;
background-size: 220% 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: 95%;
margin: 0 auto !important;
padding: 20px 2.5%;
background: rgb(166 142 104 / .9);
}
section#top_access div.top_content_text{
width: 90%;
margin-bottom: 0;
}
section#top_location div.top_content_text,
section#top_plan div.top_content_text,
section#top_safety div.top_content_text{
margin: 0 auto;
}
div.top_content_text h3{
margin-bottom:10px;
font-size:1.15em;
font-weight:300;
letter-spacing:.25em;
}
div.top_content_text h3 strong{
font-size:1.75em;
font-weight:300;
}
div.top_content_text h4{
background:rgb(88 123 142 / 1);
margin-bottom: 10px;
padding: 0 10px;
font-size:.9em ;
letter-spacing: .75em;
}

/*----------------------------------------
 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
----------------------------------------*/

/*----------------------------------------
 デザイン
----------------------------------------*/

/*----------------------------------------
 QUALITY（設備・仕様）
----------------------------------------*/
	
/*----------------------------------------
 物件概要
----------------------------------------*/

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

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

/*----------------------------------------
 map
----------------------------------------*/
/* 20240905 */
.sp div.map_img{
	width: 100%;
	margin: 0 auto;
}
.sp .map_img img{
	width: 100%;
}
	
	
}
