@charset "utf-8";

/*------------------------------------------------------------
	メインビジュアル
------------------------------------------------------------*/

@media (max-width: 812px) {
	
	.page-id-10842 .main-vis-inner {
		background-image:  url('../img/stay/main_royal_sp.jpg');
	}
	
	.page-id-10863 .main-vis-inner {
		background-image:  url('../img/stay/main_suite_sp.jpg');
	}
	
	.page-id-10883 .main-vis-inner {
		background-image:  url('../img/stay/main_modern_sp.jpg');
	}

	.page-id-10893 .main-vis-inner {
		background-image:  url('../img/stay/main_twin_sp.jpg');
	}
	
	.page-id-15049 .main-vis-inner {
		background-image:  url('../img/stay/main_theater_sp.jpg');
	}

	.page-id-78 .main-vis-inner {
		background-image:  url('../img/stay/main_arbre_sp.jpg');
	}
	
	.page-id-14375 .main-vis-inner {
		background-image:  url('../img/stay/main_maisonette_sp.jpg');
	}
	
	.page-id-14377 .main-vis-inner {
		background-image:  url('../img/stay/main_terrace_sp.jpg');
	}
		
}

@media (min-width: 813px) {
	
	.page-id-10842 .main-vis-inner {
		background-image:  url('../img/stay/main_royal@1x.jpg');
	}
	
	.page-id-10863 .main-vis-inner {
		background-image:  url('../img/stay/main_suite@1x.jpg');
	}
	
	.page-id-10883 .main-vis-inner {
		background-image:  url('../img/stay/main_modern@1x.jpg');
	}
	
	.page-id-10893 .main-vis-inner {
		background-image:  url('../img/stay/main_twin@1x.jpg');
	}
	
	.page-id-15049 .main-vis-inner {
		background-image:  url('../img/stay/main_theater@1x.jpg');
	}
	
	.page-id-78 .main-vis-inner {
		background-image:  url('../img/stay/main_arbre@1x.jpg');
	}
	
	.page-id-14375 .main-vis-inner {
		background-image:  url('../img/stay/main_maisonette@1x.jpg');
	}
	
	.page-id-14377 .main-vis-inner {
		background-image:  url('../img/stay/main_terrace@1x.jpg');
	}	
	
}

@media
(min-width: 813px) and (-webkit-min-device-pixel-ratio: 2),
(min-width: 813px) and (min-resolution: 2dppx) {
	
	.page-id-10842 .main-vis-inner {
		background-image:  url('../img/stay/main_royal@2x.jpg');
	}
	
	.page-id-10863 .main-vis-inner {
		background-image:  url('../img/stay/main_suite@2x.jpg');
	}
	
	.page-id-10883 .main-vis-inner {
		background-image:  url('../img/stay/main_modern@2x.jpg');
	}
	
	.page-id-10893 .main-vis-inner {
		background-image:  url('../img/stay/main_twin@2x.jpg');
	}
	
	.page-id-15049 .main-vis-inner {
		background-image:  url('../img/stay/main_theater@2x.jpg');
	}
	
	.page-id-78 .main-vis-inner {
		background-image:  url('../img/stay/main_arbre@2x.jpg');
	}
	
	.page-id-14375 .main-vis-inner {
		background-image:  url('../img/stay/main_maisonette@2x.jpg');
	}
	
	.page-id-14377 .main-vis-inner {
		background-image:  url('../img/stay/main_terrace@2x.jpg');
	}
	
}



/*------------------------------------------------------------
	英語見出し 位置調整（アルブル用）
------------------------------------------------------------*/

@media only screen and (min-width: 813px) {
	
	.wide-intro p.english {
		right: -19px;
	}
	
}



/*------------------------------------------------------------
	【部屋写真】カルーセル
------------------------------------------------------------*/

.carusel-stay-single .slick-slide img {
	max-width: 98%;
	margin: 0 1%;
}

@media only screen and (max-width: 813px) {
	
	.carusel-stay-single .slick-dots {
		padding: 10px 0 0;
	}
	
}

@media only screen and (min-width: 813px) {
	
	.carusel-stay-single {
		margin-bottom: 30px;
	}
	
}


/*------------------------------------------------------------
	アルブル｜アルブルについて
------------------------------------------------------------*/

#arbre-01 {
	width: 92%;
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	margin: 0 auto;
	padding: 30px 0;
}

#arbre-01 .one-half {
	padding: 15px 0 0;
}

#arbre-01 .one-half h4 {
	text-align: center;
}

@media only screen and (min-width: 813px) {
	
	#arbre-01 {
		width: 100%;
		max-width: 1140px;
		padding: 50px 0;
	}
	
	#arbre-01 .one-half {
		padding: 30px;
	}

	
	#arbre-01 .one-half h4 {
		font-size: 1.8rem;
		margin: 20px 0;
	}
	
}


/*------------------------------------------------------------
	アルブル｜７つの特徴
------------------------------------------------------------*/

h5 {
	font-size: 2rem;
    font-family: Georgia,游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
	font-style: italic;
	letter-spacing: 0.5px;
	color: #fff;
	text-align: center;
	margin-bottom: 25px;
	position: relative;
}

h5 span {
	display: block;
	font-size: 1.1rem;
	font-style: normal;
	margin-top: 30px;
}

h5:after {
	content: '';
	background: #fff;
	width: 30px;
	height: 2px;
	position: absolute;
	top: 32px;
	left: 50%;
	margin-left: -15px;
}

@media only screen and (min-width: 813px) {
	
	h5 {
		font-size: 2.8rem;
		margin-bottom: 40px;
	}
	
	h5 span {
		font-size: 1.4rem;
		letter-spacing: 1px;
		margin-top: 38px;
	}
	
	h5:after {
		top: 46px;
	}	
	
}

.contents-blk {
	background: #111 url(../common/img/noise_2.png) left top repeat;
	background-size: 200px 200px;
}

.contents-blk-inner {
	padding: 35px 0 0;
	
}

.contents-blk-inner h3,
.contents-blk-inner h4 {
	color: #fff;
}

.contents-blk-inner p {
	color: #c3c3c3;
}

.contents-blk-inner h5 + p {
	width: 92%;
	font-size: 1.1rem;
	color: #fff;
	margin: 0 auto 25px;
}

#arbre-02 {
	margin-bottom: 40px;
}

#arbre-02 figure {
	background: url(../img/villa/arbre_01.jpg) center bottom no-repeat;
	background-size: cover;
	width: 100%;
	height: 68vw;
}

@media only screen and (max-width: 812px) {
	
	#arbre-02 .inner-box {
		padding: 20px 4vw 25px;
	}
	
}

#arbre-02 .border-box {
	border: 1px solid #555;
	width: 92%;
	margin: 0 auto;
}

#arbre-02 .border-box img {
	width: 20%;
	height: auto;
	float: left;
}

#arbre-02 .border-box dl {
	width: 80%;
	padding-left: 15px;
	float: right;
}

#arbre-02 .border-box dl dt {
	font-weight: 500;
	line-height: 1.7;
	color: #fff;
	margin-bottom: 5px;
}

#arbre-02 .border-box dl dd {
	font-size: 1rem;
	line-height: 1.8;
	text-align: justify;
	color: #c3c3c3;
}

#arbre-03 {
	background: #1f1f1f;
}
	
#arbre-03 figure {
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}

#arbre-03 figure:first-of-type {
	background-image: url(../img/villa/arbre_02.jpg);
}

#arbre-03 figure:nth-of-type(2) {
	background-image: url(../img/villa/arbre_03.jpg);
}

#arbre-03 figure:nth-of-type(3) {
	background-image: url(../img/villa/arbre_04.jpg);
}

#arbre-03 figure:nth-of-type(4) {
	background-image: url(../img/villa/arbre_05.jpg);
}

#arbre-03 figure:nth-of-type(5) {
	background-image: url(../img/villa/arbre_06.jpg);
}

#arbre-03 figure:nth-of-type(6) {
	background-image: url(../img/villa/arbre_07.jpg);
}

#arbre-03 .inner-box {
	padding: 30px;
	position: relative;
}

#arbre-03 .inner-box:after {
	content: '';
	border-left: 20px solid transparent;
	border-right: 20px solid transparent;
	border-bottom: 15px solid #1f1f1f;
	position: absolute;
	top: -15px;
	left: 50%;
	margin: 0 0 0 -20px;
	z-index: 10;
}

#arbre-03 .inner-box {
	font-size: 1.3rem;
	line-height: 1.8;
	text-align: justify;
}


.contents-fullwidth {
	width: 100%;
}

.contents-fullwidth figure {
	background: url(../img/villa/img_stars.jpg) center center no-repeat;
	background-size: cover;
	width: 100%;
	height: 133vw;
}

.contents-fullwidth div.contents-fullwidth-txt {
	width: 100%;
}

.contents-fullwidth div.contents-fullwidth-txt h4 {
	font-size: 1.7rem;
	text-align: center;
}

.contents-fullwidth div.contents-fullwidth-txt-inner {
	padding: 30px 6vw;
}

.contents-fullwidth div.contents-fullwidth-txt p {
	margin-bottom: 15px;
}

@media only screen and (min-width: 813px) {
	
	.contents-fullwidth {
		margin-bottom: 120px;
	}
	
	.contents-fullwidth figure {
		width: 50%;
		height: 100vh;
		max-height: 920px;
	}
	
	.contents-fullwidth div.contents-fullwidth-txt {
		width: 50%;
		position: relative;
	}
	
	.contents-fullwidth div.contents-fullwidth-txt h4 {
		font-size: 2.1rem;
		letter-spacing: 1px;
		margin-bottom: 30px;
	}
	
	.contents-fullwidth div.contents-fullwidth-txt p {
		margin-bottom: 15px;
		text-align: justify;
	}
	
	.contents-fullwidth div.contents-fullwidth-txt-inner {
		width: 430px;
		height: 520px;
		position: absolute;
		margin: auto;
		top: 0;
		right: 0;
		left: 0;
		bottom: 0;
		padding: 0;
	}
	
}


@media only screen and (min-width: 813px) {
	
	.contents-blk-inner {
		width: 100%;
		max-width: 1140px;
		margin: 0 auto;
		padding: 80px 0 90px;
	}
	
	.contents-blk-inner h5 + p {
		width: 92%;
		font-size: 1.4rem;
		letter-spacing: 0.5px;
		text-align: center;
		margin: 0 auto 40px;
	}
	
	#arbre-02 {
		margin-bottom: 90px;
	}
	
	#arbre-02 figure {
		height: 600px;
	}
	
	#arbre-02 h4 {
		font-size: 2rem;
	}

	#arbre-02 .border-box {
		width: 50%;
		margin-top: 50px;
	}
	
	#arbre-02 .border-box img {
		width: 30%;
	}
	
	#arbre-02 .border-box dl {
		width: 70%;
		padding: 5px 0 0 30px;
	}
	
	#arbre-02 .border-box dl dt {
		font-size: 1.4rem;
		line-height: 2;
		margin-bottom: 20px;
	}
	
	#arbre-02 .border-box dl dd {
		font-size: 1.3rem;
		line-height: 2;
	}
	
	#arbre-03 .fig-box {
		min-height: 250px;
	}
	
	#arbre-03 .inner-box {
		padding: 50px 32px;
		line-height: 2;
	}
	
	#arbre-03 .inner-box:nth-child(4):after,
	#arbre-03 .inner-box:nth-child(8):after {
		border-top: 20px solid transparent;
		border-left: 15px solid #1f1f1f;
		border-right: none;
		border-bottom: 20px solid transparent;
		position: absolute;
		top: 50%;
		left: auto;
		right: -15px;
		margin: -20px 0 0;
	}
		
	#arbre-03 .inner-box:nth-child(2):after,
	#arbre-03 .inner-box:nth-child(12):after {
		border-top: 20px solid transparent;
		border-left: none;
		border-right: 15px solid #1f1f1f;
		border-bottom: 20px solid transparent;
		position: absolute;
		top: 50%;
		left: -15px;
		margin: -20px 0 0;
	}
	
}


/*------------------------------------------------------------
	各部屋共通｜基本の部屋紹介
------------------------------------------------------------*/

#basic-info .two-third h4 {
	font-size: 1.8rem;
	margin-bottom: 15px;
}

#basic-info dl.floor-plan {
	margin: 20px 0 30px;
}

#basic-info dl.floor-plan dt,
#basic-info table caption,
#basic-info dl.related-blog > dt {
	font-size: 1.4rem;
	font-weight: 500;
	line-height: 1;
	color: #000;
	text-align: left;
	border-bottom: 1px solid #2d2d2d;
	margin-bottom: 10px;
	padding-bottom: 15px;
	position: relative;
}

#basic-info dl.floor-plan dt:after,
#basic-info table caption:after,
#basic-info dl.related-blog > dt:after {
	content: '';
	background: #2d2d2d;
	width: 100%;
	height: 2px;
	position: absolute;
	bottom: 1px;
	left: 0;
}

#basic-info table {
	width: 100%;
	font-size: 1.2rem;
	margin-bottom: 40px;
}

#basic-info table tbody tr {
	border-bottom: 1px solid #ccc;
}

#basic-info table tbody td {
	text-align: center;
	padding: 10px 15px;
}

#basic-info dl.accordion-menu {
	border: 1px solid #ccc;
	border-top: none;
	margin-bottom: 0;
}

#basic-info dl.accordion-menu:first-of-type {
	margin-top: 20px;
	border-top: 1px solid #ccc;
}

#basic-info dl.accordion-menu:last-of-type {
	margin-bottom: 30px;
}

#basic-info dl.accordion-menu dt {
	font-weight: 500;
	color: #000;
	padding: 10px 20px;
	position: relative;
}

#basic-info dl.accordion-menu dt.active,
#basic-info dl.accordion-menu dt:hover {
	background: #f0f0f0;
	cursor: pointer;
}

#basic-info dl.accordion-menu dd {
	display: none;
	padding: 15px 20px;
}

#basic-info dl.accordion-menu dd ul li {
	line-height: 1.7;
	text-indent: -1em;
	padding-left: 1em;
	margin-bottom: 3px;
}

#basic-info dl.accordion-menu dt:after {
	content: "\f105";
	font-size: 1.8rem;
	font-family: "Font Awesome 5 Pro";
	color: #000;
	position: absolute;
	top: 50%;
	right: 20px;
	margin-top: -16px;
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
	-webkit-transition: all, 0.25s, linear;
	transition: all, 0.25s, linear; 
 }
  
#basic-info dl.accordion-menu dt.active:after {
	-webkit-transform: translate(0, 50%);
	transform: translate(0, 50%);
	-webkit-transform: rotate(-90deg);
	transform: rotate(-90deg);
	margin-top: -18px;
}

#basic-info .notice-box {
	font-size: 1.1rem;
	color: #000;
	margin: 20px 0 40px;
	padding: 15px;
	border: 1px solid #346556;
	position: relative;
}

#basic-info .notice-box div:not(:last-child) {
	margin-bottom: 15px;
	padding-bottom: 15px;
	border-bottom: 1px solid #346556;
}

#basic-info .notice-box:after {
	content: '';
	background: url(../img/stay/icon_pick.svg) left top no-repeat;
	background-size: 38px 38px;
	width: 46px;
	height: 46px;
	position: absolute;
	top: -10px;
	left: -10px;
}

#basic-info .notice-box figure {
	width: 40%;
	float: left;
}

#basic-info .notice-box ul {
	width: 60%;
	float: left;
	padding-left: 15px;
}
	
#basic-info .notice-box ul li a.button {
	display: none;
}

.other-ttl {
	font-size: 1.3rem;
	font-weight: 600;
	line-height: 1;
	color: #000;
	border-bottom: 1px solid #2d2d2d;
	padding-bottom: 15px;
	margin-bottom: 15px!important;
	position: relative;
}

.other-ttl:after {
	content: '';
	background: #2d2d2d;
	width: 100%;
	height: 2px;
	position: absolute;
	bottom: 1px;
	left: 0;
}

#other-page {
	margin: 0;
	padding: 0;
	border: none;
}

#other-page div {
	border-bottom: 1px solid #ccc;
	padding-bottom: 20px;
}


@media only screen and (max-width: 812px) {
	
	#basic-info .notice-box ul li {
		font-size: 1.1rem;
		line-height: 1.7;
	}

}

@media only screen and (min-width: 813px) {
	
	#basic-info table {
		font-size: 1.3rem;
		margin-bottom: 50px;
	}
	
	#basic-info .two-third {
		padding: 0 8% 0 0;
	}
	
	#basic-info .two-third h4 {
		font-size: 2.2rem;
		margin-bottom: 25px;
		letter-spacing: 1px;
	}
	
	#basic-info dl.floor-plan {
		margin: -12px 0 50px;
	}
	
	#basic-info dl.floor-plan dt,
	#basic-info dl.related-blog > dt {
		padding-bottom: 20px;
		margin-bottom: 20px;
	}
	
	#basic-info dl.floor-plan dd a:hover img {
		opacity: 0.8;
	}
	
	#basic-info dl.floor-plan dd p {
		font-size: 1.2rem;
		line-height: 1;
		margin: 10px 0;
	}
	
	#basic-info dl.accordion-menu:first-of-type {
		margin-top: 30px;
	}
	
	#basic-info dl.accordion-menu:last-of-type {
		margin-bottom: 40px;
	}
	
	#basic-info dl.accordion-menu dt {
		letter-spacing: 0.5px;
		padding: 15px 25px;
	}

	#basic-info dl.accordion-menu dd {
		padding: 25px;
	}
	
	#basic-info .notice-box {
		font-size: 1.3rem;
		margin: 40px 0 60px;
		padding: 25px;
	}
	
	#basic-info .notice-box:after {
		background-size: 48px 48px;
		width: 48px;
		height: 48px;
		top: -20px;
		left: -20px;
	}
	
	#basic-info .notice-box div:not(:last-child) {
		margin-bottom: 20px;
		padding-bottom: 20px;
	}
	
	#basic-info .notice-box figure {
		width: 38%;
	}
	
	#basic-info .notice-box ul {
		width: 62%;
		padding-left: 25px;
	}
	
	#basic-info .notice-box ul li a.button {
		display: block;
		margin: 15px auto 0;
	}
	
	.other-ttl {
		font-size: 1.4rem;
		margin-bottom: 20px!important;
	}
	
	#other-page div.one-half {
		margin-bottom: 20px;
	}
	
	#other-page div dl dd {
	    font-size: 1.1rem;
	    line-height: 1.8;
    }


	
}



/*------------------------------------------------------------
	関連するブログ
------------------------------------------------------------*/

dl.related-blog article {
	margin: 15px 0;
	padding-bottom: 15px;
	border-bottom: 1px solid #ddd;
}

dl.related-blog article figure {
	width: 30%;
}

dl.related-blog article figure a:hover img {
	opacity: 0.8;
}

dl.related-blog article dl {
	width: 70%;
	padding-left: 15px;
	line-height: 1.7;
}

dl.related-blog article dl dd a {
	font-size: 1.2rem;
	color: #000;
}

dl.related-blog article dl dt {
	font-size: 1rem;
	color: #999;
	margin-bottom: 5px;
}

@media only screen and (min-width: 813px) {
	
	dl.related-blog article dl dt {
		font-size: 1.1rem;
	}

	
}