@charset "utf-8";


/* グロナビ NEW マーク */
.gnavi li {
  position: relative; }
  
.gnavi li:nth-child(99)::after,
.gnavi li:nth-child(99)::after
{
  position: absolute;
  top: 3px;
  right: 3px;
  font-size: 11px;
  content: "NEW";
  color:#ffffff;
  background-color:#6B0608;
  padding: 1px 4px 1px 4px;
  line-height: 12px;
}








/*----------------------------------------------------
	共通タイトル
----------------------------------------------------*/
.s_title_bg {
/*background:url("../images/common/title_bg.png") 45% top no-repeat;
background-size: 230px;*/
}
@media ( max-width : 768px ) {
.s_title_bg {
background-size:35%;
}
}
.s_title_bg2 {
background:url("../images/common/title_bg2.png") center center no-repeat;
background-size:contain;
}
@media ( max-width : 768px ) {
.s_title_bg2 {
background-size:160%;
}
.s_title_bg2 h2 {
padding-top:1%;
}
}

.highlight {
    background-color: #e4bc00; /* 蛍光黄色 */
    color: white; /* 文字色を黒に設定 */
	font-weight: bold;
	font-size: 120%;
    padding: 0.2em 0.4em; /* パディングでテキスト周りに余白を作る */
}

@media ( max-width : 980px ) {
.highlight {
    background-color: #dfd5ca; /* 蛍光黄色 */
    color: black; /* 文字色を黒に設定 */
	font-weight: bold;
	font-size: 130%;
    padding: 0.2em 0.4em; /* パディングでテキスト周りに余白を作る */
}
}


/*----------------------------------------------------
	トップページ
----------------------------------------------------*/

/*----------------------------------------------------
	インフォメーション
----------------------------------------------------*/

.info_text{
line-height: 1.37em;
font-size: 0.88em;
margin-bottom: 1.5em;
}

@media ( max-width : 768px ) {
.info_text{
line-height: 1.77em;
font-size: 0.98em;
}
}

.info_text_hd{
text-align: center;
color: white;
line-height: 1.77em;
font-size: 1.13em;
margin-bottom: 1.5em;
}

@media ( max-width : 768px ) {
.info_text_hd{
line-height: 1.77em;
font-size: 0.88em;
}
}

.info_text_ent{
text-align: center;
color: white;
line-height: 1.77em;
font-size: 1.84em;
margin-bottom: 1.5em;
color: #FFF735;
}
.info_text_ent a:link {color: #FFF735;	text-decoration: none;}
.info_text_ent a:visited {	text-decoration: none;	color: #fff;}
.info_text_ent a:hover {	text-decoration: underline;	color: #fff;}
.info_text_ent a:active {	text-decoration: none;	color: #fff;}

@media ( max-width : 768px ) {
.info_text_ent{
text-align: center;
color: white;
line-height: 1.47em;
font-size: 1.14em;
margin-bottom: 1.5em;
color: #FFF735;
}
}



/*----------------------------------------------------
	光るボタン
----------------------------------------------------*/

.button {
	/*background: #ebf4fa;*/
	color: #fff;
	display: inline-block;
	overflow: hidden;
	padding: 20px;
	position: relative;
	text-decoration: none;
}
.button::after {
	animation: 4s 0s shine linear infinite;
	background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,.4) 100%);
	content: '';
	height: 100%;
	left: -100%;
	position: absolute;
	top: 0;
	transform: skewX(-25deg);
	width: 50%;
}
@keyframes shine {
	20% {
		left: 150%;
	}
	100% {
		left: 150%;
	}
}



/*----------------------------------------------------
	コンセプト
----------------------------------------------------*/
.s_concept_title {
width:100%;
max-width: 800px;
margin:0 auto;
}
@media ( max-width : 768px ) {
.s_concept_title {
max-width: 85%;
}
}

/*----------------------------------------------------
	ポジション
----------------------------------------------------*/
.s_position_01 {
width:100%;
max-width: 221px;
margin:0 auto;
}
@media ( max-width : 768px ) {
.s_position_01 {
width:100%;
max-width: 25%;
}
}
/*----------------------------------------------------
	デザイン
----------------------------------------------------*/
@media ( max-width : 768px ) {
.design .bg_lgray .col-pcflex-spflex .lineheight22em {
  line-height: 1.6em;
}
.design .bg_lgray .col-pcflex-spflex .text18px {
    font-size: 2.6vw;
}
}
.s_design_01 {
border-right:solid 1px #ccc;
padding-right:20px;
}
.s_design_02 img {
width:100%;
}
.s_design_03 {
width:55%;
bottom:6%;
left:0;
position:absolute;
}
.s_design_04 {
width:98%;
bottom:6%;
left:0;
position:absolute;
}
.s_bg_design {
background: #fff;
background-image: url("../images/design/bg_design_01.jpg");
background-position: center bottom;
background-repeat: no-repeat;
background-size:cover;
margin: 0 auto;
max-width: 1280px;
}
.s_design_05 {
width:80%;
margin:40px auto;
padding-bottom:25vw;
}
@media ( max-width: 2050px ) {
.s_bg_design {
background: #fff;
background-image: url("../images/design/bg_design_01.jpg");
background-position: center bottom;
background-repeat: no-repeat;
background-size:cover;
margin: 0 auto;
max-width: 1280px;
}
.s_design_05 {
width:80%;
margin:40px auto;
padding-bottom:35vw;
}
}
@media ( max-width: 1600px ) {
.s_bg_design {
background: #fff;
background-image: url("../images/design/bg_design_01.jpg");
background-position: center bottom;
background-repeat: no-repeat;
background-size:cover;
margin: 0 auto;
max-width: 1280px;
}
.s_design_05 {
width:80%;
margin:40px auto;
padding-bottom:40vw;
}
}
@media ( max-width: 1400px ) {
.s_bg_design {
background: #fff;
background-image: url("../images/design/bg_design_01.jpg");
background-position: 60% bottom;
background-repeat: no-repeat;
background-size:100%;
max-width: 1200px;
margin: 0 auto;
}
.s_design_05 {
width:80%;
margin:40px auto;
padding-bottom:45vw;
}
}
@media ( max-width: 1050px ) {
.s_bg_design {
background: #fff;
background-image: url("../images/design/bg_design_01_sp.jpg");
background-position: 60% bottom;
background-repeat: no-repeat;
background-size: cover;
max-width: 2800px;
margin: 0 auto;
}
.s_design_05 {
width:90%;
margin:20px auto;
padding-bottom:100vw;
}
}

@media ( max-width : 768px ) {
.s_design_01 {
border-right:none;
padding-right:0px;
}
.s_design_02 {
text-align: right;
}
.s_design_02 img {
width:80% !important;
}
}
.s_design_06 {
width:55%;
position: relative;
}
.s_design_07 {
width:32%;
padding-right:5%;
padding-top:0em;
}
.s_design_08 {
width:40%;
}
.s_design_08 img {
width:60% !important;
margin-bottom:2em;
}
.s_design_09 {
width:60%;
}
.s_design_10 {
width:50%;
}
@media ( max-width : 768px ) {
.s_design_06 {
width:60%;
}
.s_design_07 {
width:29%;
padding-top:0em;
padding-right:0%;
}
.s_design_08 {
width:40%;
}
.s_design_08 img {
width:60% !important;
margin-bottom:2em;
}
.s_design_09 {
width:50%;
}
.s_design_10 {
width:50%;
}
}
/*----------------------------------------------------
	設備・仕様
----------------------------------------------------*/
.s_equipment_01 {
width:100%;
max-width: 360px;
margin:0 auto;
}
@media ( max-width : 768px ) {
.s_equipment_01 {
width:100%;
max-width: 50%;
}
}

/*----------------------------------------------------
	ブランド
----------------------------------------------------*/
.s_brand_logo {
width:100%;
max-width: 583px;
margin:0 auto;
}
@media ( max-width : 768px ) {
.s_brand_logo {
max-width: 90%;
}
}

/*----------------------------------------------------
	デベロップメント
----------------------------------------------------*/
.development_01 {
width:100%;
max-width: 700px;
margin:4em auto;
background: #fff;
}
.development_02 {
position: absolute;
top:-4em;
left:10%;
width:100%;
max-width: 240px;
}
@media ( max-width : 1300px ) {
.development_02 {
position: absolute;
top:-1.5em;
left:0%;
width:100%;
max-width: 20%;
}
}

/*----------------------------------------------------
	物件概要
----------------------------------------------------*/
.s_outline th,
.s_outline td {
border: solid 1px #cccccc;
padding:0.8em 1em;
font-size:1rem;
line-height: 1.6;
}

.s_outline table {
border-collapse:  collapse;
width:100%;
}

.s_outline th {
width:25%;
font-weight:normal;
background:#dfdfdf;
text-align:left;
white-space:nowrap;
}

.s_outline td {
font-weight:normal;
}
@media ( max-width : 768px ) {
.s_outline th,
.s_outline td {
display: block;
width:100%;
border-bottom:none;
border-top:none;
font-size:0.8rem;
}
.s_outline tr:c {
border-top: solid 1px #cccccc;
}
.s_outline td:last-child {
border-bottom: solid 1px #cccccc;
}
}

/*----------------------------------------------------
	ライフストーリー
----------------------------------------------------*/
.s_lifestyle_01 {
width:60%;
margin-left:25%;
margin-top:40px;
margin-bottom:-10%;
}

@media ( max-width : 768px ) {
.s_lifestyle_01 {
width:80%;
margin-left:15%;
margin-top:20px;
margin-bottom:-10%;
}
}

.s_lifestyle_03 {
width:98%;
bottom:6%;
left:2%;
position:absolute;
}
.s_lifestyle_04 {
width:98%;
bottom:6%;
left:0;
position:absolute;
}
@media ( max-width : 768px ) {
.s_lifestyle_03 {
left:4%;
}
.s_lifestyle_04 {
width:96%;
}
}

.s_lifestyle_05 {
margin-bottom:-12%;
text-align: center;
}
.s_lifestyle_05 img {
width: inherit !important;
height:110px;
}
@media ( max-width : 768px ) {
.s_lifestyle_05 {
margin-bottom:-20%;
text-align: center;
}
.s_lifestyle_05 img {
width: inherit !important;
height:60px;
max-width: 90%;
}
}

.s_lifestyle_06 .active {
opacity: 0.5;
}

/*----------------------------------------------------
	限定ページ
----------------------------------------------------*/
.s_planbox a {
text-decoration: none;
}
.s_plan_inner {

}
.s_plan_inner {
padding:40px;
background:#ffffff;
}
@media ( max-width : 768px ) {
.s_plan {
padding-left:10px;
padding-right:10px;
}
.s_plan_inner {
padding:10px;
}
}
@media (max-width: 1050px) {
.w1050 .s_limited_inner {
padding-left: 15px;
padding-right: 15px;
}
}


table.s_resv_table {
margin: 0px auto 30px;
border-collapse: collapse;
border: solid 2px #595959;
width:100%;
}
table.s_resv_table th {
background:rgba(15,56,90,1);
padding: 0.5em;
width: 12.5%;
border: solid 1px #595959;
color:#ffffff;
vertical-align: middle;
text-align: center;
font-size:16px;
}
table.s_resv_table td {
padding: 0.3em;
width: 12.5%;
border: solid 1px #595959;
font-size:18px;
}
table.s_resv_table td {
vertical-align: middle;
text-align: center;
vertical-align: middle;
text-align: center;
}
table.s_resv_table th.sun {
background:#C45355;
}
table.s_resv_table th.sat {
background:#256ABD;
}
table.s_resv_table th.off {
background:#666666;
}
table.s_resv_table td.sun {
background:#DCB3B4;
}
table.s_resv_table td.sat {
background:#C3D8EC;
}
table.s_resv_table td.off {
background:#dfdfdf;
}
@media ( max-width : 768px ) {
table.s_resv_table {
margin: 0px auto 15px;
}
table.s_resv_table th {
font-size:2vw;
}
table.s_resv_table td {
font-size:3vw;
}
}
/*----------------------------------------------------
	サブタイトル
----------------------------------------------------*/
.s_sub_title {
/*max-width: 340px;*/
width: auto;
margin:-50px auto 0 auto;
display: flex;
text-align: center;
}
.s_sub_title div {
text-align: center;
margin:0 auto;
}
.s_sub_title img {
width: auto;
max-width: 100%;
height: auto;
max-height:100px;
}
@media ( max-width : 768px ) {
.s_sub_title {
margin:-20px auto 0 auto;
}
.s_sub_title img {
max-height:50px;
}
}

a.s_page_navi_btn {
border:solid 2px #0071bc;
color:#0071bc;
text-decoration: none;
width: 100%;
display: block;
}
a.s_page_navi_btn:hover {
color:#ffffff;
text-decoration: none;
background: #0071bc;
}


/*----------------------------------------------------
	工事中
----------------------------------------------------*/

.disable {
position: relative;
pointer-events: none;

}
.disable:hover {
position: relative;
}
.disable img {
width: 100%;
max-width: 700px;
display: block;
margin: 0 auto;
filter: grayscale(100%);
opacity: 0.4;
}
.disable::after {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
margin: auto;
width: 100%;
max-width: 700px;
height: 100%;
background-color: rgba(0,0,0,0.3);
}

.disable p.text {
position: absolute;
top:40%;
left:0%;
right:0%;
text-align: center;
color:#fff;
filter: grayscale(0%);
opacity: 1 !important;
font-size:30px;
}


.gnavi a.link-disable {
pointer-events: none !important;
opacity: 0.3;
}





/*----------------------------------------------------
	スライドキャプション
----------------------------------------------------*/




.contents-mv {
width:100%;
max-width: 1280px;
margin:0 auto;
position: relative;
}
.contents-mv img {
width:100%;
}

.fit-image {
position:relative;
}
.fit-image img {
width:100%;
}
.position-a {
position: absolute;
}
.position-r {
position:relative;
text-align: 
}
.text-align-l {
text-align: left;
}
.text-align-c {
text-align: center;
}
.text-align-r {
text-align: right;
}
.caption-photo-r {
position: absolute;
bottom:0.3em;
right:0.3em;
}
.caption-photo-l {
position: absolute;
bottom:0.3em;
left:0.3em;
}
.caption-mv-r {
position: absolute;
bottom:0em;
right:0em;
padding:0.3em 0.6em 0.3em 1.6em;
color: #ffffff;
background-image: linear-gradient(90deg, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.5) 23%, rgba(0, 0, 0, 0.5));
}
.caption {
padding-top:0.3em 0.3em 0;
}
.caption-photo-r,
.caption-photo-l,
.caption-mv-r,
.caption {
font-size: 1.4rem;
}
@media screen and (max-width: 768px) {
.caption-photo-r,
.caption-photo-l,
.caption-mv-r,
.caption {
font-size: 0.9rem;
}
}
.shadow-text-white {
    text-shadow:
        1px 1px rgba(0, 0, 0, 0.7), /*文字の右下に影を追加*/
        1px -1px rgba(0, 0, 0, 0.7),/*文字の右上に影を追加*/
        -1px 1px rgba(0, 0, 0, 0.7),/*文字の左下に影を追加*/
        -1px -1px rgba(0, 0, 0, 0.7);/*文字の左上に影を追加*/
}



.fbn_end img {
width:100%;
}

@media screen and (max-width: 768px) {
.fbn_end img {
width:100%;
max-width: 330px;
}
}












