/* CSS Document */

body {background:#fff;}

/*    ▼fade in
　　　スクロールで表示（jquery.inview.js）
====================================*/
.fade{
overflow: hidden;
transition: 1.3s;
opacity: 0.1;
transition-delay: 0.15s;
}
.view{
opacity: 1.0;
}
/*ヘッダー*/
h1 {width:151px;}
h1 img {max-width:100%;}

header {
background-color:#fff;
display: flex;
justify-content: flex-end;
align-items: center;
height: 112px;
text-align: right;
width:100%;
position: fixed;
top: 0;
right: 0;
z-index: 99;
}
.header__inner {
display: flex;
align-items: center;
justify-content: space-between;
margin:0 auto;
max-width: 1280px;
width: 98%;
}

/*ヘッダー　物件概要/現地案内図*/
header ul.h-btnarea  {
width:100%;
display: flex;
justify-content: flex-end;
align-items: center;
}
header ul.h-btnarea .inner {
display: flex;
flex-direction: column;
}
header ul.h-btnarea li:not(:first-child) {margin-left:1em;}
header ul.h-btnarea li a {
align-self: stretch;
color: #666;
display: block;
transition: 0.3s;
}

header ul.h-btnarea li a > span {color: #fff;}

header ul.h-btnarea .inner li {margin-left: 0;}
header ul.h-btnarea .inner li a {
font-size:1.2rem;
font-feature-settings: 'palt';
}
header ul.h-btnarea .inner li a::before {
content: '●';
color:#000;
display: inline-block;
margin-right: .25em;
transform: scale(.7);
}
header ul.h-btnarea .inner li a:hover {color:#999;}

/*ヘッダー　CV*/
header .btn-zhth a,
header .btn-request a,
header .btn-reserve a {
align-self: stretch;
line-height: 1.4;
padding: .25em 0;
transition: .3s;
}

header ul.h-btnarea li.btn-zhth a,
header ul.h-btnarea li.btn-request a,
header ul.h-btnarea li.btn-reserve a {color:#fff;}

header .btn-zhth a {
background: #ec8289;
font-size:1.6rem;
padding: .15em .75em;
text-align: center;
}
header .btn-zhth span {
display: block;
font-family: 'Oswald', sans-serif;
font-size:1.4rem;
}

header .btn-request a {
background-color:#2c99df;
font-size:1.2rem;
text-align: center;
width: 144px;
}
header .btn-request span {
display: block;
font-family: 'Oswald', sans-serif;
font-size:1.8rem;
}

header .btn-reserve a {
background-color:#1ecca5;
font-size:1.2rem;
text-align: center;
width: 144px;
}
header .btn-reserve span {
display: block;
font-family: 'Oswald', sans-serif;
font-size:1.8rem;
}

header .btn-zhth a:hover,
header .btn-request a:hover,
header .btn-reserve a:hover {opacity: .7;}


/*ヘッダー　ナビゲーション*/
.nav_wrap {width: 77.625%;}

header ul.nav  {
display: flex;
justify-content: space-between;
margin:1em 0 0 auto;
width: 100%;
}
/*header ul.nav li {
width: calc( 100% / 2 );
}*/
header ul.nav li a {
display: block;
font-family: 'Oswald', sans-serif;
font-size: 1.6rem;
padding: 0;
position: relative;
text-decoration: none;
transition: .3s;
}
header#kaso ul.nav li a {}
/*ヘッダーナビゲーション　下線の動き*/
header ul.nav li a::after ,
header#kaso ul.nav li a::after {
position: absolute;
bottom: 4px;
left: 0;
content: '';
width: 100%;
height: 4px;
background:#2c99df;
opacity: 0;
visibility: hidden;
transition: .3s;
}
header#kaso ul.nav li a::after {
background: #FFFFFF;
}
header ul.nav li a:hover::after ,
header#kaso ul.nav li a:hover::after {
bottom: -7px;
opacity: 1;
visibility: visible;
}
#spNav {display: none;}
header ul.nav li {position: relative;}
header ul.nav li.new a::before {
position: absolute;
right: 0;
left: 0;
margin: 0 auto;
text-align: center;
top: -18px;
content: "NEW";
background: #000;
color: #fff;
font-size: 10px;
padding: 2px 5px 3px;
display: none;
}

/*現在地　bodyのID名を変更でナビゲーション現在地表示　*/
body#top header ul.nav li.nav01 a::after ,
body#concept header ul.nav li.nav02 a::after ,
body#location header ul.nav li.nav03 a::after ,
body#design header ul.nav li.nav04 a::after ,
body#landplan header ul.nav li.nav11 a::after ,
/*body#view header ul.nav li.nav12 a::after ,*/
body#gallery header ul.nav li.nav12 a::after ,
body#plan header ul.nav li.nav05 a::after ,
body#modelroom header ul.nav li.nav06 a::after ,
body#quality header ul.nav li.nav07 a::after ,
body#results header ul.nav li.nav08 a::after {
bottom: -7px;
opacity: 1;
visibility: visible;
}
body#top header ul.nav li.nav01 a ,
body#concept header ul.nav li.nav02 a ,
body#location header ul.nav li.nav03 a ,
body#design header ul.nav li.nav04 a ,
body#landplan header ul.nav li.nav11 a ,
/*body#view header ul.nav li.nav12 a ,*/
body#gallery header ul.nav li.nav12 a ,
body#plan header ul.nav li.nav05 a ,
body#modelroom header ul.nav li.nav06 a ,
body#quality header ul.nav li.nav07 a ,
body#results header ul.nav li.nav08 a {} 

/*        1030px以下の時のヘッダーナビレイアウト
=========================================*/
@media only screen and (max-width: 1030px) {
header ul.nav li a ,
header#kaso ul.nav li a {font-size:1.4rem;}
/*header ul.nav {margin: 17px 5px 0 0;}*/

header ul.h-btnarea .inner li a {font-size:1rem;}

header .btn-zhth a {font-size:1.4rem;}
header .btn-zhth span {font-size:1.2rem;}

header .btn-request a {
font-size:1rem;
width: 128px;
}
header .btn-request span {font-size:1.6rem;}
header .btn-reserve a {
font-size:1rem;
width: 128px;
}
header .btn-reserve span {font-size:1.6rem;}
}


/*ヘッダー　中文繁体字*/
header .sp_btn-zhth {display: none;}

/*        860px以下　SP　ヘッダー
=========================================*/
@media only screen and (max-width: 860px) {
body#top header ul.nav li.nav01 a::after ,
body#concept header ul.nav li.nav02 a::after ,
body#location header ul.nav li.nav03 a::after ,
body#design header ul.nav li.nav04 a::after ,
body#landplan header ul.nav li.nav11 a::after ,
/*body#view header ul.nav li.nav12 a::after ,*/
body#gallery header ul.nav li.nav12 a::after ,
body#plan header ul.nav li.nav05 a::after ,
body#modelroom header ul.nav li.nav06 a::after ,
body#quality header ul.nav li.nav07 a::after ,
body#results header ul.nav li.nav08 a::after {
opacity: 0;
}

h1 {
height: 40px;
margin-left: 8px;
padding: 8px 0;
width: 98px;
}
h1 img {
max-width: 100%;
max-height: 100%;
}
header ul.h-btnarea {display: none;}
header{
width:100%;
height: 56px;
position: fixed;
top: 0;
z-index: 99;
padding: 0;
}
header ul.nav li a:hover::after ,
body#top header ul.nav li.nav01 a::after {
visibility: hidden;
}
header .btn-request a ,
header .btn-reserve a {
display: none;
}

header ul.nav {
margin: 7px 5px 0 0;
}

header .sp_btn-zhth {
display: block;
position: absolute;
top:6px;
right:56px;
}
header .sp_btn-zhth a {
background: rgb(35,44,35);
background: linear-gradient(90deg, rgba(35,44,35,1) 0%, rgba(17,150,130,1) 100%);
color: #fff;
display: block;
font-size:1.2rem;
line-height: 40px;
padding: .15em .75em;
text-align: center;
}


/*--------footer--------*/
#spNav {
position: fixed;
left: 0;
bottom: 0;
width: 100%;
font-size: 0;
border-top: 1px solid #fff58a;
display: block;
z-index: 99;
background: #000;
}
#spNav li {
display: inline-block;
width: 20%;
box-sizing: border-box;
text-align: center;
padding: 10px 0;
border-right: 1px solid #fff58a;
}
#spNav li:last-child {
border-right: none;
}
#spNav li a {
color: #fff58a;
font-size: 10px;
display: block;
padding-top: 32px;
}
#spNav li:first-child a {
background: url(../img/tel.svg) no-repeat top center;
background-size: auto 29px;
}
#spNav li:nth-child(2) a {
background: url(../img/request.svg) no-repeat center 1px;
background-size: 23px auto;
}
#spNav li:nth-child(3) a {
background: url(../img/reserve.svg) no-repeat center 1px;
background-size: 23px auto;
}
#spNav li:nth-child(4) a {
background: url(../img/map.svg) no-repeat center 0px;
background-size: 25px auto;
}
#spNav li:nth-child(5) a {
background: url(../img/outline.svg) no-repeat center 0px;
background-size: 25px auto;
}

header ul.nav li.new a::before {
left: inherit;
top: 0;
right: 10px;
background: #9b0a2c;
margin: 0;
width: 30px;
padding: 4px 5px 4px;
}
header ul.nav li.nav05 a::before,
header ul.nav li.nav06 a::before {
position: absolute;
top:0;
right: 10px;
left: inherit;
margin: 0;
width: 30px;
padding: 4px 5px 4px;
}

#nav_Btn {
float: right;
color: #fff;
z-index: 1;
text-align: center;
font-size: 1rem;
position: absolute;
right: 8px;
top: 6px;
}
#nav_Btn p {
margin-top: 5px;
color:#000;
}
#nav_Btn .bar {
width: 30px;
height: 22px;
display: block;
margin: 4px auto 4px;
position: relative;
}
#nav_Btn,
#nav_Btn .bar span {
display: inline-block;
transition: all .4s;
box-sizing: border-box;
}
#nav_Btn .bar span {
position: absolute;
left: 0;
width: 100%;
height: 2px;
background-color: #000;
border-radius: 2px;
}
#nav_Btn .bar span:nth-of-type(1) {
top: 0;
}
#nav_Btn .bar span:nth-of-type(2) {
top: 10;
}
#nav_Btn .bar span:nth-of-type(3) {
bottom: 0;
}
#nav_Btn .bar span:nth-of-type(2) {
top: 50%;
left: 50%;
-webkit-transform: translate3d(-50%, -50%, 0);
transform: translate3d(-50%, -50%, 0);
}
#nav_Btn.active .bar span:nth-of-type(1) {
-webkit-transform: translateY(10px) rotate(-315deg) scale(.8);
transform: translateY(10px) rotate(-315deg) scale(.8);
}
#nav_Btn.active .bar span:nth-of-type(2) {
opacity: 0;
}
#nav_Btn.active .bar span:nth-of-type(3) {
-webkit-transform: translateY(-10px) rotate(315deg) scale(.8);
transform: translateY(-10px) rotate(315deg) scale(.8);
}
header ul.nav {
display: none;
z-index: 1;
position: absolute;
top: 56px;
left: 0;
width: 100%;
font-size: 0;
background:rgba(0, 0, 0, 0.9);
border-top: 1px solid #fff;
margin: 0;
}
header ul.nav li {
display: inline-block;
width: 50%;
font-size: 13px;
color: #fff;
box-sizing: border-box;
border-bottom: 1px solid #fff;
border-right: 1px dotted #fff;
text-align: center;
position: relative;
}
header ul.nav li:last-child {
/*width: 100%;*/
}
header ul.nav li:nth-child(2n) {
border-right: none;
}
header ul.nav li a {
display: inline-block;
padding: 18px 0;
font-size: 13px;
color: #fff;
width: 100%;
box-sizing: border-box;
}
header ul.nav li.here,
header ul.nav li.noLink {
padding: 18px 0;
}
header ul.nav li.here {
background:#363312;
}
header ul.nav li.noLink {
color: #777;
}
body#top header ul.nav li.nav01 ,
body#concept header ul.nav li.nav02 ,
body#location header ul.nav li.nav03 ,
body#design header ul.nav li.nav04 ,
body#landplan header ul.nav li.nav11 ,
body#view header ul.nav li.nav12 ,
body#plan header ul.nav li.nav05 ,
body#modelroom header ul.nav li.nav06 ,
body#quality header ul.nav li.nav07 ,
body#results header ul.nav li.nav08 ,
body#outline header ul.nav li.nav09 ,
body#map header ul.nav li.nav10 {
background:#363312;
font-weight: bold;
}
body#map header ul.nav li.nav10 {
/*width: 100%;*/
}
}

/*ボタン　資料請求　来場予約*/
.req_area {
width:100%;
background: url(../img/bg_req.jpg) no-repeat;
background-size: cover;
background-position: bottom center;
padding: 100px 0;
margin: 0px auto 0px;
}
.req_area h3 {
font-size: 30px;
color: #fff;
margin-bottom: 30px;
text-align: center;
}
ul.req_wrap {
width: 700px;
max-width: 90%;
margin: 0 auto;
display: flex;
justify-content:space-between;
}
/*資料請求*/
ul.req_wrap li.request a {
width: 340px;
max-width: 100%;
display: block;
transition: 0.3s;
}
ul.req_wrap li.request a:hover {
opacity: 0.7;
}
ul.req_wrap li.request a img {
max-width: 100%;
}
/*来場予約*/
ul.req_wrap li.reserve a {
width: 340px;
max-width: 100%;
display: block;
transition: 0.3s;
}
ul.req_wrap li.reserve a:hover {
opacity: 0.7;
}
ul.req_wrap li.reserve a img {
max-width: 100%;
}


/*        860px以下　SP　ボタン　資料請求　来場予約
=========================================*/
@media only screen and (max-width: 860px) {
.req_area {
padding: 50px 0;
margin: 0 auto 30px;
}
.req_area h3 {
font-size: 20px;
line-height: 1.5;
margin-bottom: 20px;
}
ul.req_wrap {
flex-wrap: wrap;
}
ul.req_wrap li.request{
max-width: 85%;
margin: 0 auto 15px;
}
ul.req_wrap li.request a{
width:280px;
}
ul.req_wrap li.reserve{
max-width: 85%;
margin: 0 auto;
}
ul.req_wrap li.reserve a{
width:280px;
}
ul.req_wrap li.reserve a:after {
top: 20px;
right: 20px;
}
}

/*注釈/予告広告*/
.att {
width: 1000px;
max-width:94%;
text-align: left;
margin: 40px auto 30px;
}
.att li {
font-size: 12px;
line-height: 1.5;
text-indent: -1em;
padding-left: 1em;
margin-bottom: 3px;
}
.yokoku {
width: 1000px;
max-width:94%;
display: flex;
justify-content: flex-start;
margin: 0 auto 30px;
align-items: center;
}
.yokoku li {
text-align: left;
}
.yokoku li:first-child {
font-size: 15px;
padding: 13px 0;
border: 1px solid #000;
width: 10%;
text-align: center;
}
.yokoku li:last-child {
font-size: 13px;
line-height: 1.5;
margin-left: 20px;
width: 90%;
}

/*        860px以下　SP　注釈
=========================================*/
@media only screen and (max-width: 860px) {
.att {
max-width: 96%;
}
.yokoku {
flex-wrap: wrap;
}
.yokoku li:first-child {
width: 100%;
padding: 6px 0;
text-align: center;
margin-bottom: 10px;
}
.yokoku li:last-child {
width: 100%;
margin-left: 0px;
}
}


/*フッター*/
footer {
margin: 0 auto;
text-align: center;
}

footer .fnav {
background-color:#000;
padding: .5em 0;
width:100%;
}
footer .fnav ul {
display: flex;
justify-content: space-between;
margin:auto;
max-width:1280px;
width:96%;
}
footer .fnav li {margin:0}
footer .fnav li:last-child {}
footer .fnav li a {
color: #fff;
display: block;
font-family: 'Oswald', sans-serif;
transition: .3s;
}
footer .fnav li a:hover {
text-decoration: underline;
}
/*現在地*/
body#top .fnav li.nav01 a ,
body#concept .fnav li.nav02 a ,
body#location .fnav li.nav03 a ,
body#design .fnav li.nav04 a ,
body#landplan .fnav li.nav11 a ,
body#view .fnav li.nav12 a ,
body#plan .fnav li.nav05 a ,
body#modelroom .fnav li.nav06 a ,
body#quality .fnav li.nav07 a ,
body#results .fnav li.nav08 a {
text-decoration: underline;
}

footer .footer_contact {
margin:3em auto;
max-width: 1280px;
width: 96%;
}
footer .contact_inner {margin-bottom: 3.5em;}
footer .contact_inner .tel {
font-size:4rem;
position: relative;
}
footer .contact_inner .tel::before {
background: url(../img/icon_freedial.png) no-repeat 0;
background-size: 100%;
content:'';
display: inline-block;
height: 33px;
margin-right: 8px;
width: 50px;
}
footer .contact_inner dl {
font-size:93%;
text-align: center;
}

footer .jv_logo {
display: flex;
flex-wrap: wrap;
justify-content: center;
margin: 0 -32px;
}
footer .jv_logo li {
margin:0 32px;
width:136px;
}
footer .jv_logo li img {width: 100%;}

footer .jv_logo .ichiran_link {
margin-bottom: 24px;
width: 100%;
}
footer .jv_logo .ichiran_link img {
display: block;
margin:auto;
width: 165px;
}

footer .copyright {
font-size: 1.2rem;
font-family: 'Oswald', sans-serif;
letter-spacing: .05em;
margin-bottom: 1.5em;
}

.page_top {
position: fixed;
right: 0px;
bottom: 0px;
z-index: 5;
opacity: 0.9;
}
.page_top img {width:24px;}

/*        860px以下　SP　フッター
=========================================*/
@media only screen and (max-width: 860px) {
footer {padding-bottom: 72px;}
footer .fnav {display: none;}

.page_top {
bottom: 60px;
right: 0px;
}
.page_top img {
width: 25px;
}
}

/* BELOW 640px
=========================================*/
@media only screen and (max-width: 640px) {
footer {padding-bottom: 192px;}
footer .jv_logo {
margin: 0 -2%;
}
footer .jv_logo li {
margin:0 2%;
width:28%;
}
.page_top {
bottom: 192px;
}
}



.conversion_wrap {
margin:auto;
max-width: 1000px;
width: 96%;
}

.contents_bnr_wrap {}
.contents_bnr_wrap img {
max-width: 100%;
width: 100%;
}
.contents_bnr_wrap ul {
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}
.contents_bnr_wrap li {width: 48%;}

.conversion__inner {
margin:3em auto;
text-align: center;
}
.conversion__inner ul {
display: flex;
justify-content: space-between;
flex-wrap: nowrap;
margin-top: 1em;
}
.conversion__inner li {
display: flex;
align-items: center;
justify-content: center;
height: 72px;
letter-spacing: .1em;
width: 48%;
}
.conversion__inner li a {
color:#fff;
display: flex;
align-items: center;
justify-content: center;
flex-wrap: wrap;
font-size:1.8rem;
}
.conversion__inner li a span {
color:#fff;
font-family: 'Oswald', sans-serif;
font-size:3.2rem;
margin-right: .5em;
}
.link_request {
background-color:#2c99df;
}
.link_reserve {
background-color: #1ecca5;
}

/* BELOW 860px
=========================================*/
@media only screen and (max-width: 860px) {
.conversion__inner li {height: 64px;}
.conversion__inner li a {
font-size:1.3rem;
line-height: 1.2;
}
.conversion__inner li a span {
display: block;
font-size:2.4rem;
margin-right: 0;
width: 100%;
}
}

/* BELOW 640px
=========================================*/
@media only screen and (max-width: 640px) {
.contents_bnr_wrap li {width: 100%;}
.contents_bnr_wrap li + li {margin-top:1em;}
}

.tx_white {color:#fff;}



.main-img {padding-top: 112px;}

/*=========================================
BELOW 860px
=========================================*/
@media only screen and (max-width: 860px) {
.main-img {padding-top: 56px;}
}