@charset "utf-8";





#container {
	background: url(../img/top/bg.jpg) center top no-repeat;
	background-size: 100% auto;
}
@media screen and (max-width: 768px){
	#container {
		background: url(../img/top/bg-sp.jpg) center top no-repeat;
		background-size: 100% auto;
	}
}

/*==========================================================================

	            #top-mv  メインビジュアル
	
============================================================================*/

#top-mv {
	background: url(../img/top/mv-bg.jpg) no-repeat center center / cover;
	position: relative;
	overflow: hidden;
	padding: 350px 0 350px;
	margin: 0 5% 100px;
}

@media screen and (max-width: 768px){
	#top-mv {
		background: url(../img/top/mv-bg-sp.jpg) no-repeat center center / cover;
		padding: 35% 0 35%;
		margin: 0 5% 10%;
	}
}

.top-mv-title {
	width: 80%;
	max-width: 567px;
	margin: 0 auto;
}

#top-mv::before {
	display: block;
	content: '';
	width: 1px;
	height: 16%;
	background-color: #fff;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 15%;
	z-index: 2;
	margin: 0 auto;
	-webkit-animation: movie-scroll 2s infinite;
    animation: movie-scroll 2s infinite;
}
@-webkit-keyframes movie-scroll {
  0% {
    -webkit-transform: translate(0, 0);
	opacity: 0.2;
  }
  50% {
    -webkit-transform: translate(0, 30px);
	opacity: 1;
  }
  100% {
    -webkit-transform: translate(0, 0);
	opacity: 0.2;
  }
}
@keyframes movie-scroll {
  0% {
    transform: translate(0, 0);
	opacity: 0.2;
  }
  50% {
    transform: translate(0, 30px);
	opacity: 1;
  }
  100% {
    transform: translate(0, 0);
	opacity: 0.2;
  }
}

/*==========================================================================

	            #top-nav  途中固定ナビ
	
============================================================================*/

#top-nav {
	border-top: #bb9c5c 3px solid;
	background-color: rgba(255,255,255,0.95);
	position: relative;
}
.top-nav-box {
	height: 70px;
}
#top-nav .h-logo {
	max-width: 90px;
	position: absolute;
	top: 8px;
	left: 5%;
}
#top-nav .nav-pc {
	height: 70px;
	line-height: 70px;
}
#top-nav .nav-pc ul li a:after {
    bottom: 15px;
}

/* JS 有効時は常に固定配置にし、表示切り替えによる本文のずれを防ぐ。 */
#top-nav.is-scroll-nav {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 1000;
	box-shadow: 0 4px 16px rgba(0,0,0,0.04);
	transform: translateY(-100%);
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: transform .35s ease, opacity .35s ease, visibility 0s .35s;
}
#top-nav.is-scroll-nav.is-visible {
	transform: translateY(0);
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	transition-delay: 0s;
}
@media (prefers-reduced-motion: reduce) {
	#top-nav.is-scroll-nav {
		transition: none;
	}
}

@media screen and (max-width: 900px){
	#top-nav {
		display: none;
	}
}


/*----------------------------------- 
      スライダー
-----------------------------------*/

/* #top-mv .swiper {
	padding-bottom: 40px;
    position: relative;
}
#top-mv .slide-img .sp {
	display: none;
}

@media screen and (max-width: 768px){
	#top-mv .swiper {
		padding-bottom: 0;
	}
	#top-mv .slide-img .pc {
		display: none;
	}
	#top-mv .slide-img .sp {
		display: block;
	}
} */


/*--------------------------------
   　　次へ・前へ　ボタン
--------------------------------*/

/* #top-mv .swiper-button-next ,#top-mv .swiper-button-prev {
	width: 80px;
	height: 80px;
	top: calc(50% - 40px);
}
#top-mv .swiper-button-next {
	background: url(../img/common/swiper-next.png) center center no-repeat;
	background-size: contain;
}
#top-mv .swiper-button-prev {
	background: url(../img/common/swiper-prev.png) center center no-repeat;
	background-size: contain;
}
#top-mv .swiper-button-next:after ,#top-mv .swiper-button-prev:after {
	display: none;
}

@media screen and (max-width: 768px){
	#top-mv .swiper-button-next ,#top-mv .swiper-button-prev {
		width: 50px;
		height: 50px;
		top: 50%;
	}
} */

/*--------------------------------
   　　ページネーション
--------------------------------*/

/* #top-mv .swiper-pagination {
    width: 100%;
	text-align: right;
    position: absolute;
    bottom: 0;
    left: inherit;
    right: 0;
	z-index: 99;
}
#top-mv .swiper-pagination-bullet {
    margin: 0 5px;
    width: 11px;
    height: 11px;
	border-radius: 50%;
    background: #d1d1d1;
	opacity: 1;
}
#top-mv .swiper-pagination-bullet-active {
    background: #6ec34a;
}

@media screen and (max-width: 768px){
	#top-mv .swiper-pagination {
		display: none;
	}
} */


/*==========================================================================

	            #top-sec1  CONCEPT
	
============================================================================*/

#top-sec1 {
	background-color: #efebdd;
	padding: 60px 5% 60px;
	overflow: hidden;
}
@media screen and (max-width: 768px){
	#top-sec1 {
		padding: 12% 5% 12%;
	}
}

/*----------------------------------- 
     .top-sec1-box1
-----------------------------------*/

.top-sec1-box1 {
	max-width: 1300px;
	margin: 0 auto;
}
.top-sec1-box1 dl {
    display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
}
.top-sec1-box1 dt {
	width: 38%;
}
.top-sec1-box1 dd {
	max-width: 760px;
	width: 59%;
}
.top-sec1-box1 dt h3 {
	font-family: 游明朝体, "Yu Mincho", YuMincho, メイリオ, Meiryo, serif;
	color: #bb9c5c;
	font-size: clamp(17px, 3vw, 20px);
	letter-spacing: 0.1em;
	line-height: 1.4;
	margin-bottom: 0.4em;
}
.top-sec1-box1 dt h2 {
	font-family: 游明朝体, "Yu Mincho", YuMincho, メイリオ, Meiryo, serif;
	color: #313131;
	font-size: clamp(20px, 3.5vw, 32px);
	letter-spacing: 0.1em;
	line-height: 1.6;
	margin-bottom: 0.6em;
}
.top-sec1-box1 dt p {
	line-height: 2.4;
}
.top-sec1-btn a {
	font-family: 游明朝体, "Yu Mincho", YuMincho, メイリオ, Meiryo, serif;
	display: block;
	width: 14em;
	margin: 2em 0 0;
	padding: 0.7em 0;
	border: #bb9c5c 1px solid;
	color: #ab863a;
	font-size: 15px;
	line-height: 1.5;
	letter-spacing: 0.1em;
	text-align: center;
	text-decoration: none;
	transition: .5s;
}
.top-sec1-btn a:hover  {
	border: #bb9c5c 1px solid;
	background-color: #bb9c5c;
	color: #fff;
	transition: .5s;
}

@media screen and (max-width: 1024px){
	.top-sec1-box1 dl {
		max-width: 760px;
		margin: 0 auto;
	}
	.top-sec1-box1 dt {
		width: 100%;
		text-align: center;
		margin-bottom: 10%;
	}
	.top-sec1-box1 dd {
		width: 90%;
		margin: 0 auto;
	}
	.top-sec1-btn a {
		margin: 2em auto 0;
	}
}
@media screen and (max-width: 768px){
	.top-sec1-box1 dt p {
		line-height: 2;
	}
}


/*==========================================================================

	            #top-sec2  ROOM
	
============================================================================*/

#top-sec2 {
	padding: 80px 0 100px;
	overflow: hidden;
}
@media screen and (max-width: 768px){
	#top-sec2 {
		padding: 8% 0 12%;
	}
}

/*----------------------------------- 
     .top-sec2-box1
-----------------------------------*/

.top-sec2-box1 {
	position: relative;
}
.top-sec2-box1::after {
	background: linear-gradient(90deg, #efebdd 0%, #efebdd 10%, #fff 10%, #fff 100%);
	display: block;
	content: '';
	width: 100%;
	height: 110px;
	position: absolute;
	top: -80px;
	left: 0;
	z-index: -1;
}
.top-sec2-box1 h2 {
	font-family: 游明朝体, "Yu Mincho", YuMincho, メイリオ, Meiryo, serif;
	color: #313131;
	font-size: clamp(35px, 5vw, 70px);
	letter-spacing: 0.05em;
	line-height: 1.4;
	text-align: center;
	margin-bottom: 0.5em;
}

@media screen and (max-width: 1100px){
	.top-sec2-box1::after {
		display: none;
	}
}

/*----------------------------------- 
     .top-sec2-box2
-----------------------------------*/

.top-sec2-box2 {
	width: 500px;
	text-align: center;
}
.top-sec2-btn a {
	font-family: 游明朝体, "Yu Mincho", YuMincho, メイリオ, Meiryo, serif;
	display: block;
	width: 17em;
	margin: 1.5em auto 0;
	padding: 0.8em 0;
	border: #bb9c5c 1px solid;
	color: #ab863a;
	font-size: clamp(16px, 3vw, 18px);
	line-height: 1.5;
	letter-spacing: 0.1em;
	text-align: center;
	text-decoration: none;
	transition: .5s;
}
.top-sec2-btn a:hover  {
	border: #bb9c5c 1px solid;
	background-color: #bb9c5c;
	color: #fff;
	transition: .5s;
}

@media screen and (max-width: 1100px){
	.top-sec2-box2 {
		width: 90%;
		padding: 0 5%;
		margin: 8% auto 0;
	}
}


/*----------------------------------- 
      スライダー
-----------------------------------*/

#top-sec2 .swiper2 {
	/* padding-bottom: 70px; */
    position: relative;
}
#top-sec2 .swiper-slide {
    position: relative;
}
#top-sec2 .swiper-slide h3 {
	font-family: 游明朝体, "Yu Mincho", YuMincho, メイリオ, Meiryo, serif;
	color: #fff;
	font-size: clamp(12px, 2.5vw, 14px);
	letter-spacing: 0.1em;
	text-align: center;
	line-height: 1;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 2;
	background-color: rgba(0,0,0,0.6);
	padding: 0.5em 1.2em;
}


/*--------------------------------
   
--------------------------------*/

.swiper2-nav-box {
	max-width: 1100px;
	margin: 0 auto;
	padding-top: 40px;
	display: flex;
	justify-content: space-between;
	align-items: start;
}
.swiper2-nav {
	width: 500px;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 0 10px;
}

@media screen and (max-width: 1100px){
	.swiper2-nav-box {
		padding-top: 20px;
		display: block;
	}
	.swiper2-nav {
		width: 90%;
		max-width: 600px;
		margin: 0 auto;
	}
}

/*--------------------------------
   　　次へ・前へ　ボタン
--------------------------------*/

#top-sec2 .swiper-button-next2 ,#top-sec2 .swiper-button-prev2 {
	width: 20px;
	height: 61px;
	/* position: absolute;
	top: calc(50% - 70px);
	z-index:10; */
	cursor:pointer;
	display:flex;
	align-items:center;
	justify-content:center;
	color:var(--swiper-navigation-color,var(--swiper-theme-color));

	/* position:absolute;
	top:50%;
	width:calc(var(--swiper-navigation-size)/ 44 * 27);
	height:var(--swiper-navigation-size);
	margin-top:calc(0px - (var(--swiper-navigation-size)/ 2));
	z-index:10;
	cursor:pointer;
	display:flex;
	align-items:center;
	justify-content:center;
	color:var(--swiper-navigation-color,var(--swiper-theme-color)); */
}
#top-sec2 .swiper-button-next2 {
	background: url(../img/common/swiper-next2.png) center center no-repeat;
	background-size: contain;
	/* right: 0; */
}
#top-sec2 .swiper-button-prev2 {
	background: url(../img/common/swiper-prev2.png) center center no-repeat;
	background-size: contain;
	/* left: 0; */
}
/* #top-sec2 .swiper-button-next2:after ,#top-sec2 .swiper-button-prev2:after {
	display: none;
} */

@media screen and (max-width: 768px){
	#top-sec2 .swiper-button-next2 ,#top-sec2 .swiper-button-prev2 {
		/* width: 50px;
		height: 50px;
		top: 30%; */
		width: 10px;
		height: 30px;
	}
}

/*--------------------------------
   　　ページネーション
--------------------------------*/

#top-sec2 .swiper-pagination2 {
	/* width: 550px;
	margin: 0 auto;
	padding-right: 550px; */
    /* width: 100%; */
	width: inherit;
	text-align: center;
    /* position: absolute;
    bottom: 0;
    left: 0;
	z-index: 99; */
}
#top-sec2 .swiper-pagination-bullet {
    margin: 0 3px;
    width: 8px;
    height: 8px;
	border-radius: 50%;
    background: #d7cca4;
	opacity: 1;
	vertical-align: middle;
}
#top-sec2 .swiper-pagination-bullet-active {
	width: 10px;
    height: 10px;
    background: #bb9c5c;
}

@media screen and (max-width: 768px){
	#top-sec2 .swiper-pagination2 {
		/* display: none; */
	}
	#top-sec2 .swiper-pagination-bullet {
		margin: 0 2px;
		width: 6px;
		height: 6px;
	}
	#top-sec2 .swiper-pagination-bullet-active {
		width: 8px;
		height: 8px;
	}
}



/*==========================================================================

	            #top-sec3  ACCESS
	
============================================================================*/

#top-sec3 {
	background: url(../img/top/sec3-bg.jpg) left top no-repeat;
	background-size: 90% auto;
	padding: 80px 5% 100px;
	overflow: hidden;
}
@media screen and (max-width: 1024px){
	#top-sec3 {
		background: url(../img/top/sec3-bg-sp.jpg) center top no-repeat;
		background-size: cover;
	}
}
@media screen and (max-width: 768px){
	#top-sec3 {
		padding: 10% 5% 10%;
	}
}

/*----------------------------------- 
     .top-sec3-box1
-----------------------------------*/

.top-sec3-box1 {
    max-width: 1100px;
	margin: 0 auto;
}
.top-sec3-box1 dl {
	background-color: #e3d9b4;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
}
.top-sec3-box1 dt {
	max-width: 550px;
	width: 50%;
}
.top-sec3-box1 dt img.sp {
	display: none;
}
.top-sec3-box1 dd {
	width: 50%;
	padding: 0 4%;
	box-sizing: border-box;
}
.top-sec3-box1 dd h3 {
	font-family: 游明朝体, "Yu Mincho", YuMincho, メイリオ, Meiryo, serif;
	color: #fff;
	font-size: clamp(26px, 4vw, 40px);
	letter-spacing: 0.1em;
	line-height: 1.4;
	margin-bottom: 0.1em;
}
.top-sec3-box1 dd h2 {
	font-family: 游明朝体, "Yu Mincho", YuMincho, メイリオ, Meiryo, serif;
	color: #313131;
	font-size: clamp(18px, 3vw, 26px);
	letter-spacing: 0.05em;
	line-height: 1.4;
	margin-bottom: 0.6em;
}
.top-sec3-box1 dd p {
	line-height: 2.4;
}
.top-sec3-btn a {
	font-family: 游明朝体, "Yu Mincho", YuMincho, メイリオ, Meiryo, serif;
	display: block;
	width: 14em;
	margin: 1.5em 0 0;
	padding: 0.7em 0;
	border: #bb9c5c 1px solid;
	color: #ab863a;
	font-size: 15px;
	line-height: 1.5;
	letter-spacing: 0.1em;
	text-align: center;
	text-decoration: none;
	transition: .5s;
}
.top-sec3-btn a:hover  {
	border: #bb9c5c 1px solid;
	background-color: #bb9c5c;
	color: #fff;
	transition: .5s;
}

@media screen and (max-width: 1024px){
	.top-sec3-box1 dl {
		max-width: 760px;
		margin: 0 auto;
	}
	.top-sec3-box1 dt {
		max-width: inherit;
		width: 100%;
	}
	.top-sec3-box1 dt img.pc {
		display: none;
	}
	.top-sec3-box1 dt img.sp {
		display: block;
	}
	.top-sec3-box1 dd {
		width: 100%;
		padding: 5% 5% 8%;
	}
	.top-sec3-box1 dd h3 {
		text-align: center;
	}
	.top-sec3-box1 dd h2 {
		text-align: center;
	}
	.top-sec3-box1 dd p {
		line-height: 2;
	}
	.top-sec3-btn a {
		margin: 1.5em auto 0;
	}
}
@media screen and (max-width: 768px){
	.top-sec3-box1 dd p {
		line-height: 2;
	}
}

