@charset "UTF-8";

.cf:after {
	content: "";
	display: block;
	clear: both;
}
a:hover {
	opacity: 0.9;
	transition: 0.3s;
}
body {
		min-width: 1170px;
		font-family: YuMincho, 'Yu Mincho', serif;
		box-sizing: border-box;
}
.prata{
	font-family: 'Prata', serif;
}
@media (min-width: 1000px){/*769px*/
	.sp {
		display: none;
	}
}
@media (max-width: 999px){/*999px*/
	body {
		min-width: inherit;
	}
	.pc {
		display: none;
	}
}
 /* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
top
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */

/*上包み*/
@media (min-width: 1000px){
	.wrapper {
		min-width: 1170px;
		padding: 70px 70px 0 0;
	}
}
/*メインビジュアル*/
#mainVis {
	line-height: 0;
	padding-top: 0;
	margin-bottom: 0;
	background: none;
	min-height: calc( 100vh -70px ); /* カスタムプロパティ未対応ブラウザ用のフォールバック */
	min-height: calc( calc(var(--vh, 1vh) * 100) - 70px);
	position: relative;/*Topics表示を最下に固定するため*/
}
#mainVis > ul {
	z-index: -1;
	overflow: hidden;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	min-height: 620px;
	height: 100vh;
}
#mainVis > ul li {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 0;
}
#mainVis > ul li span {
	display: block;
	width: 100%;
	min-height: 620px;
	height: 100vh;
	transform: rotate(0.0001deg);
	-moz-transform: rotate(0.0001deg);
	-webkit-transform: rotate(0.0001deg);
	transition: transform 7s;
	-moz-transition: transform 7s;
	-webkit-transition: transform 7s;
	background-size: cover;
	-moz-background-size: cover;
	-webkit-background-size: cover;
	background-position: center center;
}
#mainVis > ul li.fade span {
	transform: rotate(0.0001deg) scale(1.05);
	-moz-transform: rotate(0.0001deg) scale(1.05);
	-webkit-transform: rotate(0.0001deg) scale(1.05);
}
#mainVis > ul li#mainImg01 span { background-image: url(../images/main01_pc.jpg); }
#mainVis > ul li#mainImg02 span { background-image: url(../images/main02_pc.jpg); }
#mainVis > ul li#mainImg03 span { background-image: url(../images/main03_pc.jpg); }
#mainVis > ul li#mainImg04 span { background-image: url(../images/main04_pc.jpg); }
#mainVis > ul li#mainImg05 span { background-image: url(../images/main05_pc.jpg); }

#mainVis .fader span {
	font-size: 0;
}

#mainVis .bast {
	position: absolute;
	bottom: 150px;
	left: 40px;
}
#mainVis .topics_area {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: auto;
	display: flex;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	-js-display: flex;
	justify-content: flex-start;
	background: rgb(255,255,255);
	background: linear-gradient(180deg, rgba(41, 40, 41,0) 2.838847385272145%,rgba(41, 40, 41,0.09285714285714286) 12.972251867662754%,rgba(41, 40, 41,0.1) 13.347563144788332%,rgba(41, 40, 41,0.19615384615384618) 23.105656350053362%,rgba(41, 40, 41,0.2) 23.105656350053362%,rgba(41, 40, 41,0.295) 34.17733902525791%,rgba(41, 40, 41,0.3) 34.3649946638207%,rgba(41, 40, 41,0.39661016949152544) 45.43667733902525%,rgba(41, 40, 41,0.4) 45.43667733902525%,rgba(41, 40, 41,0.4957142857142857) 58.38491639985771%,rgba(41, 40, 41,0.5) 58.572572038420496%,rgba(41, 40, 41,0.5968749999999999) 70.58253290643898%,rgba(41, 40, 41,0.6) 70.58253290643898%,rgba(41, 40, 41,0.6966666666666667) 81.84187122020633%,rgba(41, 40, 41,0.7) 81.84187122020633%,rgba(41, 40, 41,0.7966101694915255) 92.91355389541087%,rgba(41, 40, 41,0.8) 92.91355389541087%);
	padding-bottom: 1%;
}
#mainVis .topics_area::after {
	position: absolute;
	content: "";
	background: url(../images/icon_scroll.png) no-repeat;
	width: 48px;
	height: 23px;
	bottom: 30px;
	right: 100px;
}

@media (max-width: 768px){
	#mainVis {
		min-height: calc(100vh - 81px); /* カスタムプロパティ未対応ブラウザ用のフォールバック */
		min-height: calc(var(--vh, 1vh) * 100 - 81px);
		position: relative;
	}

	#mainVis > ul li#mainImg01 span { background-image: url(../images/sp/main01.jpg); }
	#mainVis > ul li#mainImg02 span { background-image: url(../images/sp/main02.jpg); }
	#mainVis > ul li#mainImg03 span { background-image: url(../images/sp/main03.jpg); }
	#mainVis > ul li#mainImg04 span { background-image: url(../images/sp/main04.jpg); }
	#mainVis > ul li#mainImg05 span { background-image: url(../images/sp/main05.jpg); }

	#mainVis .bast {
		position: absolute;
		bottom: 25%;
		left: 2%;
		width: 96px;
	}
	#mainVis .topics_area {
		display: block;
		height: 130px;
	}
	#mainVis .topics_area::after {
		background: url(../images/sp/icon_scroll.png) no-repeat;
		width: 40px;
		height: 25px;
		top: 17%;
		right: 5%;
		background-size: contain;
	}
}

/*TOPICS*/
#mainVis .ttl_area {
	width: 200px;
	height: auto;
	color: #c5a886;
	padding: 10px 78px 28px 56px;
	text-align: left;
	box-sizing: border-box;
}
#mainVis .ttl_area h2 {
	font-size: 20px;
	line-height: 20px;
	margin-bottom: 6px;
	position: relative;
}
#mainVis .ttl_area h2::before {
	position: absolute;
	content: "";
	background: #c5a886;
	width: 1px;
	height: 52px;
	top: 0;
	left: -21px;
}
#mainVis .ttl_area .kana {
	font-size: 10px;
	line-height: 10px;
}
#mainVis .text_area {
	width: 100%;
	height: auto;
	color: #fff;
	padding: 1% 11% 0 0;
	text-align: left;
	box-sizing: border-box;
}
#mainVis .text_area a {
	color: #fff;
}
#mainVis .text_area li {
	margin-bottom: 14px;
	display: flex;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	-js-display: flex;
	max-height: 28px;
	overflow: hidden;
}
#mainVis .text_area .date {
	font-size: 12px;
	line-height: 12px;
	margin-right: 32px;
}
#mainVis .text_area .txt {
	font-size: 14px;
	line-height: 14px;
}

@media (max-width: 768px){
	#mainVis .ttl_area {
		width: 100%;
		padding: 2% 6% 2%;
		display: flex;
		justify-content: flex-start;
	}
	#mainVis .ttl_area h2 {
		margin-bottom: 0;
	}
	#mainVis .ttl_area h2::before {
		height: 22px;
		left: -11px;
	}
	#mainVis .ttl_area .kana {
		padding: 2% 0 0 2%;
	}
	#mainVis .text_area {
		padding: 1% 6% 1%;
	}
	#mainVis .text_area li {
		margin-bottom: 3%;
		display: block;
		height: auto;
		max-height: 30px;
	}
	#mainVis .text_area .date {
		margin-right: 0;
		margin-bottom: 2%;
	}
	#mainVis .text_area .txt {
		font-size: 12px;
		line-height: 12px;
	}
}


 /* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 #fair
 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
#fair {
	width: 100%;
	color: #333;
	background: #fff;
	box-sizing: border-box;
}
#fair .inner {
	max-width: 1100px;
	margin: 0 auto 83px;
}
#fair .catch {
	font-size: 18px;
	text-align: center;
	margin-bottom: 24px;
}
#fair .catch02 {
	color: #fff;
	font-size: 18px;
	text-align: center;
	margin-bottom: 10px;
}
#fair .ttl {
	font-size: 40px;
	color: #6e9845;
	text-align: center;
	position: relative;
	margin-bottom: 61px;
}
#fair .ttl::after {
	position: absolute;
	content: "";
	background: #6e9845;
	width: 100px;
	height: 2px;
	top: 60px;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
}

/*.fair00*/
#fair .fair00 .fair_flex {
	/* width: 1100px; */
/* 	display: flex;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	-js-display: flex;
	justify-content: space-between; */
/* 	margin-bottom: 32px; */
	position: relative;
	padding-top: 60px;
	padding-bottom: 60px;
}
#fair .fair00 .fair_flex .slide-arrow{
	position: absolute;
	top: 0;
}

#fair .fair00 .fair_flex .slide-arrow.prev-arrow{
	left: 0;
}
#fair .fair00 .fair_flex .slide-arrow.next-arrow{
	right: 0;
}

#fair .fair00 .item {
	width: 350px;
	height: 350px;
	margin-left: 25px;
	margin-right: 25px;
	box-sizing: border-box;
}
#fair .fair00 .item figure {
	width: 100%;
	height: 350px;
	object-fit: cover;
}
#fair .fair00 .item figure img{
	width: 100%;
	height: 100%;
	max-width: inherit;
}

@media (min-width: 1000px){
	#fair .fair00 .fair_flex::before {
		position: absolute;
		content: "";
		background: #a8bb62;
		width: 1px;
		height: 60px;
		bottom: -50px;
		left: 50%;
	}
}

@media (max-width: 999px){

	#fair .fair00 .fair_flex {
		position: relative;
		padding-top: 40px;
	}
	#fair .fair00 .fair_flex::before {
		position: absolute;
		content: "";
		background: #a8bb62;
		width: 1px;
		height: 60px;
		bottom: -25px;
		left: 50%;
	}
	
	#fair .fair00 .fair_flex .slide-arrow{
		width: 40px;
	}

	#fair .fair00 .fair_flex .slide-arrow.prev-arrow{
		left: 20px;
	}
	#fair .fair00 .fair_flex .slide-arrow.next-arrow{
		right: 20px;
	}

	#fair .fair00 .item {
		width: 270px;
		height: 290px;
		margin-left: 10px;
		margin-right: 10px;
	}
	#fair .fair00 .item figure {
		height: 250px;
	}

/* 	.sp_slider {
		display: flex;
		text-align: left;
		margin-bottom: 40px;
	} */
	.sp_slider .slider_item {
/* 		width: 50%; */
/* 		height: auto; */
		padding: 20px 10px;
	}
	.sp_slider .slider_item:hover {
		cursor: pointer;
		cursor: hand;
		background: #464646;
	}

}

/*.fair01*/

#fair .fair01 .fair_flex {
	width: 1100px;
	display: flex;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	-js-display: flex;
	justify-content: space-between;
	margin-bottom: 13px;
}
#fair .fair01 .item {
	max-width: 350px;
	border: 1px solid #6e9845;
	padding: 30px 29px;
	box-sizing: border-box;
	position: relative;
}
#fair .fair01 .item .date {
	position: absolute;
	top: 30px;
	left: 29px;
	width: 113px;
	height: 58px;
	background: #fff;
	padding: 12px 11px;
	box-sizing: border-box;
}
#fair .fair01 .item .date .month {
	font-size: 20px;
	position: relative;
	top: -15px;
	left: 0;
}
#fair .fair01 .item .date .day {
	font-size: 30px;
	position: relative;
	margin-left: 10px;
}
#fair .fair01 .item .date .day::after {
	position: absolute;
	content: "";
	background: #333333;
	width: 36px;
	height: 1px;
	top: 16px;
	left: -25px;
	transform: rotate(-65deg);
}
#fair .fair01 .item .date .week {
	font-size: 14px;
}
#fair .fair01 .item figure {
	width: auto;
	margin-bottom: 19px;
}
#fair .fair01 .item .week_b {
	color: #3e83b8;
}
#fair .fair01 .item .week_r {
	color: #d34d4d;
}
#fair .fair01 .item .fair_flex-ttl {
	font-size: 14px;
	color: #6e9845;
	border-bottom: 1px solid #6e9845;
	padding: 0 0 15px 0;
	text-align: left;
	margin-bottom: 25px;
}
#fair .fair01 .item .fair_flex-ttl a {
	color: #6e9845;
}
#fair .fair01 .item .txt {
	font-size: 18px;
	text-align: left;
	line-height: 30px;
}
#fair .fair01 .link,
#planBanner .link {
	font-size: 14px;
	text-align: right;
	margin-right: 40px;
	position: relative;
	width: auto;
}
#planBanner .link { margin-top: 20px; }
#fair .fair01 .link::after,
#planBanner .link::after {
	position: absolute;
	content: "";
	background: url(../images/fair_g_arrow.png) no-repeat;
	top: 6px;
	right: -35px;
	width: 26px;
	height: 4px;
}
#fair .fair01 .link a,
#planBanner .link a {
	color: #6e9845;
}
@media (min-width: 1000px){/*旧767px*/
	#fair {
		padding: 91px 0 0 0;
	}
	
}
@media (max-width: 999px){
	#fair {
		padding: 47px 0 0;
	}
	#fair .inner {
		max-width: inherit;
		margin: 0 auto 48px;
	}
	#fair .catch {
		font-size: 14px;
		margin-bottom: 18px;
	}
	#fair .ttl {
		font-size: 30px;
		margin-bottom: 30px;
	}
	#fair .ttl::after {
		width: 72px;
		top: 47px;
	}
	#fair .fair01 .fair_flex {
		width: auto;
		display: block;
		margin-bottom: 16px;
	}
	#fair .fair01 .item {
		width: 90%;
		max-width: inherit;
		padding: 9px;
		margin: 0 auto 11px;
		display: flex;
		justify-content: flex-start;
	}
	#fair .fair01 .item .sp_flex {
		width: 60%;
		margin-left: 21px;
	}

	#fair .fair01 .item .date {
		position: absolute;
		top: 9px;
		left: 9px;
		width: 82px;
		height: 38px;
		background: #fff;
		padding: 8px 5px;
		box-sizing: border-box;
	}
	#fair .fair01 .item .date .month {
		font-size: 14px;
		position: relative;
		top: -15px;
		left: 0;
	}
	#fair .fair01 .item .date .day {
		font-size: 20px;
		position: relative;
		margin-left: 8px;
	}
	#fair .fair01 .item .date .day::after {
		width: 27px;
		height: 1px;
		top: 11px;
		left: -20px;
	}
	#fair .fair01 .item .date .week {
		font-size: 12px;
	}
	#fair .fair01 .item figure {
		width: 50%;
		max-width: 144px;
		margin-bottom: 0;
	}
	#fair .fair01 .item .fair_flex-ttl {
		font-size: 12px;
		padding: 5px 0 5px 0;
		margin-bottom: 11px;
	}
	#fair .fair01 .item .txt {
		font-size: 15px;
		line-height: 25px;
	}
	#fair .fair01 .link,
	#planBanner .link {
		font-size: 12px;
		margin-right: 15%;
	}

	#fair .fair01 .link::after,
	#planBanner .link::after {
		position: absolute;
		content: "";
		background: url(../images/fair_g_arrow.png) no-repeat;
		top: 6px;
		right: -35px;
		width: 26px;
		height: 4px;
	}
}

/*.fair02*/

#fair .fair02 {
	width: 100%;
	background: #333;
	box-sizing: border-box;
}
#fair .fair02 .inner {
	margin: 0 auto;
	box-sizing: border-box;
}
#fair .fair02 .fair_flex {
	display: flex;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	-js-display: flex;
	justify-content: space-between;
}

#fair .fair02 .fair_flex figure {
	width: 100%;
	margin-bottom: 37px;
	position: relative;
}
#fair .fair02 .fair_flex figure::before {
	position: absolute;
	content: "";
	background: #a8bb62;
	width: 1px;
	height: 40px;
	bottom: -19px;
	left: 50%;
}
#fair .fair02 .fair_flex .ttl_sub {
	font-size: 12px;
	color: #b9c965;
	margin-bottom: 17px;
}
#fair .fair02 .fair_flex .ttl {
	font-size: 16px;
	color: #fff;
}
#fair .fair02 .fair_flex .ttl a {
	color: #fff;
}
#fair .fair02 .fair_flex .ttl::after {
	content: none;
}
#fair .fair02 .link_btn a {
	display: block;
	width: 293px;
	height: 53px;
	background: url(../images/fair_btn.png) no-repeat;
	margin: 0 auto;
	color: #fff;
	line-height: 53px;
}
@media (min-width: 1000px){
	#fair .fair02 {
		padding: 70px 0 65px 0;
	}
	#fair .fair02 .inner {
		max-width: 1273px;
		margin: 0 auto;
	}
	#fair .fair02 .fair_flex .item {
		max-width: 410px;
		margin-left: 20px;
	}
	#fair .fair02 .fair_flex .item:first-child {
		margin-left: 0;
	}
}

@media (max-width: 999px){
	#fair .fair02 {
		width: 100%;
		background: #333;
		padding: 49px 0 45px;
	}
	#fair .fair02 .inner {
		max-width: inherit;
	}
	#fair .fair02 .fair_flex {
		display: block;
		width: 94%;
		margin: 0 auto;
	}
	#fair .fair02 .fair_flex .item {
		width: 100%;
	}

	#fair .fair02 .fair_flex figure {
		width: 100%;
		margin-bottom: 32px;
	}
	#fair .fair02 .fair_flex figure::before {
		bottom: -19px;
	}

	#fair .fair02 .fair_flex .ttl {
		font-size: 15px;
		margin-bottom: 25px;
	}

	#fair .fair02 .link_btn a {
		font-size: 14px;
		display: block;
		width: 293px;
		height: 53px;
		background: url(../images/fair_btn.png) no-repeat;
		margin: 0 auto;
		color: #fff;
		line-height: 51px;
	}
}


/*.fair03*/
#fair .rec_plan{
padding-top: 50px;	
}

#fair .fair_parallax {
	background-image: url(/resources/images/parallax_test.jpg);
	background-attachment: fixed;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}
#fair .fair_parallax .inner{
	margin: 0 auto 0px;
	padding-bottom: 83px;
}
#fair .fair03 .fair_flex {
	width: 1100px;
	display: flex;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	-js-display: flex;
/* 	justify-content: space-between; */
	margin-bottom: 13px;
	margin-right: -30px;
}
#fair .fair03 .item {
	max-width: 350px;
	width: calc(33.3% - 30px);
	margin-right: 30px;
	flex:  1 1 0;
	/* border: 1px solid #6e9845; */
	background-color: #fff;
	padding: 30px 29px;
	box-sizing: border-box;
	position: relative;
}

#fair .fair03 .item figure {
	width: auto;
	margin-bottom: 19px;
}
#fair .fair03 .item figure a{
	position: relative;
	display: block;
	padding-bottom: 100%;
	object-fit: cover;
}
#fair .fair03 .item figure a img{
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	inset: 0;
}

#fair .fair03 .item .fair_flex-tag {
	font-size: 14px;
	color: #6e9845;
	/* border-bottom: 1px solid #6e9845; */
	padding: 0 0 15px 0;
	text-align: left;
	margin-bottom: 25px;
	position: relative;
}
#fair .fair03 .item .fair_flex-tag a {
	color: #6e9845;
}
#fair .fair03 .item .txt {
	font-size: 18px;
	text-align: left;
	line-height: 30px;
}
#fair .fair03 .link {
	font-size: 14px;
	text-align: right;
	margin-right: 40px;
	position: relative;
	width: auto;
}
#fair .fair03 .link::after {
	position: absolute;
	content: "";
	background: url(../images/w_arrow.png) no-repeat;
	top: 6px;
	right: -35px;
	width: 26px;
	height: 4px;
}
#fair .fair03 .link a {
	color: #fff;
}
@media (min-width: 1000px){/*旧767px*/
	#fair {
		padding: 91px 0 0 0;
	}
	#fair .fair03 .item::before {
		content: "";
		position: absolute;
		transform: rotate(225deg);
		top: -20px;
		left: -20px;
		width: 19px;
		border-left: 19px solid #333;
		border-top: 19px solid transparent;
		border-bottom: 19px solid transparent;
	}	
}
@media (max-width: 999px){
	#fair {
		padding: 47px 0 0;
	}
	#fair .inner {
		max-width: inherit;
		margin: 0 auto 48px;
	}
	#fair .catch {
		font-size: 14px;
		margin-bottom: 18px;
	}
	#fair .ttl {
		font-size: 30px;
		margin-bottom: 30px;
	}
	#fair .ttl::after {
		width: 72px;
		top: 47px;
	}
	#fair .fair03 .fair_flex {
		width: auto;
		display: block;
		margin-right: 0;
		margin-bottom: 16px;
	}
	#fair .fair03 .item {
		width: 90%;
		max-width: inherit;
		padding: 9px;
		margin: 0 auto 11px;
		display: flex;
		justify-content: flex-start;
	}
	#fair .fair03 .item::before {
		content: "";
		position: absolute;
		transform: rotate(225deg);
		top: -13px;
		left: -18px;
		width: 19px;
		border-left: 9px solid #333;
		border-top: 9px solid transparent;
		border-bottom: 9px solid transparent;
	}
	
	#fair .fair03 .item .sp_flex {
		width: 60%;
		margin-left: 21px;
	}

	#fair .fair03 .item .date {
		position: absolute;
		top: 9px;
		left: 9px;
		width: 82px;
		height: 38px;
		background: #fff;
		padding: 8px 5px;
		box-sizing: border-box;
	}
	#fair .fair03 .item .date .month {
		font-size: 14px;
		position: relative;
		top: -15px;
		left: 0;
	}
	#fair .fair03 .item .date .day {
		font-size: 20px;
		position: relative;
		margin-left: 8px;
	}
	#fair .fair03 .item .date .day::after {
		width: 27px;
		height: 1px;
		top: 11px;
		left: -20px;
	}
	#fair .fair03 .item .date .week {
		font-size: 12px;
	}
	#fair .fair03 .item figure {
		width: 50%;
		max-width: 144px;
		margin-bottom: 0;
	}
	#fair .fair03 .item .fair_flex-ttl {
		font-size: 12px;
		padding: 5px 0 5px 0;
		margin-bottom: 11px;
	}
	#fair .fair03 .item .txt {
		font-size: 15px;
		line-height: 25px;
	}
	#fair .fair03 .link {
		font-size: 12px;
		margin-right: 15%;
	}

	#fair .fair03 .link::after {
		position: absolute;
		content: "";
		background: url(../images/fair_g_arrow.png) no-repeat;
		top: 6px;
		right: -35px;
		width: 26px;
		height: 4px;
	}
}



/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#files
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */

#image {
	background: #ccb69c;
}
#image .inner {
	margin: 0 auto;
	max-width: 1000px;
}
#image li > * {
	width: 100%;
}
#image li video {
	aspect-ratio: 16 / 9;
}
@media (min-width: 1000px) {
	#image {
		padding: 70px 0;
		overflow: hidden;
	}
	#image li {
		float: left;
		width: calc(50% - 10px);
	}
	#image li + li {
		margin-left: 20px;
	}
	#image li:only-child {
		width: 100%;
		float: none;
	}
}
@media (max-width: 999px) {
	#image {
		padding: 44px 20px;
	}
	#image li + li {
		margin-top: 10px;
	}
}

/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#concept
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
#concept {
	width: 100%;
	min-height: 587px;
	position: relative;
	overflow: hidden;
}
#concept.big::after {
	position: absolute;
	content: "";
	background: url(../images/concept_bg.jpg) no-repeat;
	width: 100%;
	top: 0;
	left: 0;
	min-height: 587px;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-ms-background-size: cover;
	background-size: cover;
	-webkit-transition: all .3s ease-out;
	-moz-transition: all .3s ease-out;
	-ms-transition: all .3s ease-out;
	transition: all .3s ease-out;
	z-index: -1;
}
#concept .inner {
	margin: 0 auto;
	display: flex;
	justify-content: flex-end;
}
#concept .concept_colorbg {
	position: relative;
	box-sizing: border-box;
}
#concept .concept_colorbg::after {
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	background: #cdb9a2;
	transform: skewX(35deg);
	opacity: 0.9;
}
#concept .concept_txtarea {
	position: relative;
	z-index: 1;
	width: 320px;
	text-align: left;
	/*margin: 125px 0 148px 250px;*/
	/*cursor: pointer;*/
}
#concept .concept_txtarea .ttl {
	font-size: 60px;
	line-height: 60px;
}
#concept .concept_txtarea .ttl_kana {
	display: block;
	font-size: 18px;
	font-weight: bold;
	letter-spacing: 0.12rem;
	line-height: 18px;
}
#concept .concept_txtarea .txt {
	font-size: 14px;
	line-height: 26px;
	margin-bottom: 62px;
}
#concept .concept_txtarea .btn a {
	position: relative;
	display: block;
	width: 159px;
	height: 53px;
	line-height: 45px;
	padding: 0px 50px;
    color: #fff;
    box-sizing: border-box;
}
#concept .concept_txtarea .btn a::after{
	position: absolute;
    content: "";
    background: url(../images/w_arrow.png) no-repeat;
    width: 26px;
    height: 4px;
    right: 0;
    bottom: 0;
    margin: auto;
}
@media (min-width: 1000px){
	#concept .inner {
		width: 1100px;
		height: 100%;
		max-height: 587px;
	}
	#concept .concept_colorbg {
		width: 578px;
		max-height: 587px;
		padding: 125px 0 148px 64px;
	}
	#concept .concept_colorbg::after {
		top: 0;
		right: 0;/*right: -170px;*/
	}
	#concept .concept_txtarea {
		position: relative;
		z-index: 1;
		width: 320px;
		text-align: left;
		/*margin: 125px 0 148px 250px;*/
		/*cursor: pointer;*/
	}
	#concept .concept_txtarea .ttl_kana {
		margin: 36px 0 42px;
	}
	#concept .concept_txtarea .btn a {
		background: url(../images/more_b_btn.png) no-repeat;
	}
	#concept .concept_txtarea .btn a::after{
		top: -7px;
		left: 87px;
	}
}
@media (max-width: 999px){/*768px*/
	#concept {
		min-height: inherit;
	}
	#concept.big::after {
		background: url(../images/sp/concept_bg.jpg) no-repeat;
		width: 100%;
		min-height: 295px;
		background-size: cover;
	}
	#concept .inner {
		width: 90%;
		position: relative;
		box-sizing: border-box;
	}
	#concept .inner::after {
		position: absolute;
		content: "";
		width: 85%;
		height: 295px;
		background: #cdb9a2;
		transform: skewX(35deg);
		top: 0;
		right: -60%;
		opacity: 0.9;
	}
	#concept .concept_colorbg {
		width: 100%;
		min-height: 295px;
		max-height: inherit;
	}
	#concept .concept_colorbg::after {
		content: none;
	}
	#concept .concept_txtarea {
		z-index: 1;
		width: auto;
		margin: 6% 0 5% 0;
	}
	#concept .concept_txtarea .ttl {
		text-align: right;
		font-size: 55px;
		line-height: 67px;
		position: relative;
		right: 13px;
	}
	#concept .concept_txtarea .ttl_kana {
		margin-left: 0;
		margin-top: 11px;
		margin-bottom: 0;
		text-align: right;
	}
	#concept .concept_txtarea .txt {
		line-height: 26px;
		margin-bottom: 30px;
		margin-top: 190px;
		position: relative;
		font-size: 12px;
	}
	#concept .concept_txtarea .btn {
		margin-bottom: 25px;
		text-align: center;
	}
	#concept .concept_txtarea .btn a {
		margin: 0 auto;
		background: url(../images/sp/more_b_btn.png) no-repeat;
		background-size: contain;
		text-align: left;
	}
	#concept .concept_txtarea .btn a::after{
		top: -7px;
		left: 87px;
	}
}


/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#ceremony
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
#ceremony {
	width: 100%;
	min-height: 587px;
	position: relative;
	overflow: hidden;
}
#ceremony.big::after {
	position: absolute;
	content: "";
	background: url(../images/ceremony_bg.jpg) no-repeat;
	background-position: center;
	width: 100%;
	top: 0;
	left: 0;
	min-height: 587px;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-ms-background-size: cover;
	background-size: cover;
	-webkit-transition: all .3s ease-out;
	-moz-transition: all .3s ease-out;
	-ms-transition: all .3s ease-out;
	transition: all .3s ease-out;
	z-index: -1;
}
#ceremony .inner {
	width: 1100px;
	min-height: 587px;
	margin: 0 auto;
	display: flex;
	justify-content: flex-start;
}
#ceremony .ceremony_colorbg {
	width: 700px;
	max-height: 587px;
	position: relative;
}
#ceremony .ceremony_colorbg::after {
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	background: #fff;
	transform: skewX(35deg);
	top: 0;
	left: -200px;
	opacity: 0.9;
}
#ceremony .concept_txtarea {
	position: relative;
	z-index: 1;
	width: 320px;
	text-align: left;
	margin: 125px 0 148px 0;
	/*left: -110px;*/
	/*cursor: pointer;*/
}
#ceremony .concept_txtarea .ttl {
	font-size: 60px;
	margin-bottom: 35px;
	line-height: 60px;
	color: #b9c965;
}
#ceremony .concept_txtarea .ttl_kana {
	display: block;
	font-size: 18px;
	color: #222;
	font-weight: bold;
	letter-spacing: 0.12rem;
	line-height: 18px;
}
#ceremony .concept_txtarea .txt {
	font-size: 14px;
	line-height: 26px;
	margin-bottom: 22px;
}
#ceremony .concept_txtarea .btn a {
	position: relative;
	display: block;
	width: 159px;
	height: 53px;
	line-height: 45px;
	padding: 0px 50px;
    color: #fff;
    box-sizing: border-box;
}
#ceremony .concept_txtarea .btn a::after{
	position: absolute;
    content: "";
    background: url(../images/w_arrow.png) no-repeat;
    width: 26px;
    height: 4px;
    right: 0;
    bottom: 0;
    margin: auto;
}

@media (min-width: 1000px){
	#ceremony .concept_txtarea .ttl_kana {
		margin: 36px 0 42px;
	}
	#ceremony .concept_txtarea .btn a {
		background: url(../images/more_b_btn.png) no-repeat;
	}
	#ceremony .concept_txtarea .btn a::after{
		top: -7px;
		left: 87px;
	}
}

@media (max-width: 999px){
	#ceremony {
		min-height: inherit;
	}
	#ceremony.big::after {
		background: url(../images/sp/ceremony_bg.jpg) no-repeat;
		width: 100%;
		min-height: 295px;
		background-size: cover;
		background-position: center;
	}
	#ceremony .inner {
		width: 90%;
		min-height: 295px;
		position: relative;
		box-sizing: border-box;
	}
	#ceremony .inner::after {
		position: absolute;
		content: "";
		width: 85%;
		height: 295px;
		background: #fff;
		transform: skewX(35deg);
		top: 0;
		left: -60%;
		opacity: 0.9;
	}
	#ceremony .concept_colorbg {
		width: 100%;
		min-height: 295px;
		max-height: inherit;
	}
	#ceremony .concept_colorbg::after {
		content: none;
	}
	#ceremony .ceremony_colorbg {
		width: 100%;
		max-height: 587px;
		position: relative;
	}
	#ceremony .ceremony_colorbg::after {
		content: none;
	}
	#ceremony .concept_txtarea {
		z-index: 1;
		width: auto;
		margin: 185px 0 5%;
		left: 0px;
	}
	#ceremony .concept_txtarea .ttl {
		font-size: 55px;
		margin-bottom: 45px;
		line-height: 67px;
	}
	#ceremony .concept_txtarea .ttl_kana {
		margin-left: 0;
		margin-top: 8px;
		margin-bottom: 0;
		text-align: left;
	}
	#ceremony .concept_txtarea .txt {
		font-size: 12px;
		margin-bottom: 20px;
	}
	#ceremony .concept_txtarea .btn {
		margin-bottom: 48px;
		text-align: center;
	}
	#ceremony .concept_txtarea .btn a {
		margin: 0 auto;
		background: url(../images/sp/more_b_btn.png) no-repeat;
		background-size: contain;
		text-align: left;
	}
	#ceremony .concept_txtarea .btn a::after{
		top: -7px;
		left: 87px;
	}
}
@media (max-width: 768px){
	#ceremony .inner::after {
		position: absolute;
		content: "";
		width: 85%;
		height: 295px;
		background: #fff;
		transform: skewX(35deg);
		top: 0;
		opacity: 0.9;
	}
}

@media (max-width: 414px){
	#ceremony .concept_colorbg::after {
		left: -350px;
	}
	
}
@media (max-width: 375px){
	#ceremony .concept_colorbg::after {
		left: -330px;
	}
}



/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#party
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
#party {
	width: 100%;
	min-height: 587px;
	position: relative;
	overflow: hidden;
}
#party.big::after {
	position: absolute;
	content: "";
	background: url(../images/party_bg.jpg) no-repeat;
	width: 100%;
	top: 0;
	left: 0;
	min-height: 587px;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-ms-background-size: cover;
	background-size: cover;
	-webkit-transition: all .3s ease-out;
	-moz-transition: all .3s ease-out;
	-ms-transition: all .3s ease-out;
	transition: all .3s ease-out;
	z-index: -1;
}
#party.big::after {
	position: absolute;
	content: "";
	background: url(../images/party_bg.jpg) no-repeat;
	width: 100%;
	top: 0;
	left: 0;
	min-height: 587px;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-ms-background-size: cover;
	background-size: cover;
	-webkit-transition: all .3s ease-out;
	-moz-transition: all .3s ease-out;
	-ms-transition: all .3s ease-out;
	transition: all .3s ease-out;
	z-index: -1;
}

#party .inner {
	margin: 0 auto;
	display: flex;
	justify-content: flex-end;
}
#party .party_colorbg {
	position: relative;
	box-sizing: border-box;
}
#party .party_colorbg::after {
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	background: #cdb9a2;
	transform: skewX(35deg);
	opacity: 0.9;
}
#party .party_txtarea {
	position: relative;
	z-index: 1;
	width: 320px;
	text-align: left;
	/*margin: 125px 0 148px 250px;*/
	/*cursor: pointer;*/
}
#party .party_txtarea .ttl {
	font-size: 60px;
	line-height: 60px;
}
#party .party_txtarea .ttl_kana {
	display: block;
	font-size: 18px;
	font-weight: bold;
	letter-spacing: 0.12rem;
	line-height: 18px;
}

#party .party_txtarea .party_imgflex{
	display: flex;
}	

#party .party_txtarea .txt {
	font-size: 14px;
	line-height: 26px;
	margin-bottom: 62px;
}

#party .party_txtarea .btn a {
	position: relative;
	display: block;
	width: 159px;
	height: 53px;
	line-height: 45px;
	padding: 0px 50px;
    color: #fff;
    box-sizing: border-box;
}
#party .party_txtarea .btn a::after{
	position: absolute;
    content: "";
    background: url(../images/w_arrow.png) no-repeat;
    width: 26px;
    height: 4px;
    right: 0;
    bottom: 0;
    margin: auto;
}
@media (min-width: 1000px){
	#party .inner {
		width: 1100px;
		height: 100%;
		max-height: 587px;
	}
	#party .party_colorbg {
		width: 578px;
		max-height: 587px;
		padding: 125px 0 148px 64px;
	}
	#party .party_colorbg::after {
		top: 0;
		right: 0;/*right: -170px;*/
	}
	#party .party_txtarea {
		position: relative;
		z-index: 1;
		width: 320px;
		text-align: left;
		/*margin: 125px 0 148px 250px;*/
		/*cursor: pointer;*/
	}
	#party .party_txtarea .ttl_kana {
		margin: 36px 0 42px;
	}	

	#party .party_txtarea .party_ttflex{
		width: 380px;
		display: flex;
		justify-content: space-between;
	}		
	#party .party_txtarea .party_imgflex{
		width: 490px;
	}	

	#party .party_txtarea .party_imgflex li{
		margin-right: 15px;
	}
	#party .party_txtarea .party_imgflex li img{
		margin-bottom: 15px;
	}

	#party .party_txtarea .btn a {
		background: url(../images/more_b_btn.png) no-repeat;
	}
	#party .party_txtarea .btn a::after{
		top: -7px;
		left: 87px;
	}
}
@media (max-width: 999px){/*768px*/
	#party {
		min-height: inherit;
	}
	#party.big::after {
		background: url(../images/sp/party_bg.jpg) no-repeat;
		width: 100%;
		min-height: 295px;
		background-size: cover;
	}

	#party .inner {
		width: 90%;
		position: relative;
		box-sizing: border-box;
	}
	#party .inner::after {
		position: absolute;
		content: "";
		width: 85%;
		height: 295px;
		background: #cdb9a2;
		transform: skewX(35deg);
		top: 0;
		right: -60%;
		opacity: 0.9;
	}
	#party .party_colorbg {
		width: 100%;
		min-height: 295px;
		max-height: inherit;
	}
	#party .party_colorbg::after {
		content: none;
	}
	#party .party_txtarea {
		z-index: 1;
		width: auto;
		margin: 6% 0 5% 0;
	}
	#party .party_txtarea .ttl {
		text-align: right;
		font-size: 55px;
		line-height: 67px;
		position: relative;
		right: 13px;
	}
	#party .party_txtarea .ttl_kana {
		margin-left: 0;
		margin-top: 11px;
		margin-bottom: 0;
		text-align: right;
	}

	#party .party_txtarea .party_imgflex li{
		width: 100px;
		font-size: 11px;
	}
	#party .party_txtarea .party_imgflex li img{
		margin-bottom: 10px;
	}
	#party .party_txtarea .party_imgflex{
		width: 326px;
		justify-content: space-between;
		margin: auto;
	}	

	#party .party_txtarea .txt {
		line-height: 26px;
		margin-bottom: 30px;
		margin-top: 190px;
		position: relative;
		font-size: 12px;
	}
	#party .party_txtarea .btn {
		margin-top: 20px;
		margin-bottom: 25px;
		text-align: center;
	}
	#party .party_txtarea .btn a {
		margin: 0 auto;
		background: url(../images/sp/more_b_btn.png) no-repeat;
		background-size: contain;
		text-align: left;
	}
	#party .party_txtarea .btn a::after{
		top: -7px;
		left: 87px;
	}
}


 /* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#mansion
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */

#mansion {
	width: 100%;
	background: #eee;
	padding-top: 37px;
}
#mansion .sab {
	font-size: 12px;
	color: #ccb69c;
	text-align: left;
	margin-left: 2%;
}
#mansion .inner.orange::before {
	position: absolute;
	content: "";
	bottom: 0;
	right: 211px;
	border-right: 100px solid transparent;
	border-bottom: 150px solid #e2bf96;
	border-left: 100px solid transparent;
	z-index: 10;
	opacity: 0.5;
}
#mansion .inner.green::before {
	position: absolute;
	content: "";
	top: 0;
	left: 211px;
	border-right: 100px solid transparent;
	border-top: 150px solid #b9c965;
	border-left: 100px solid transparent;
	z-index: 10;
	opacity: 0.5;
}
#mansion .catch {
	font-size: 40px;
	color: #222;
	margin: 30px 0 82px;
}

@media (max-width: 999px){/**/
	#mansion {
		background: transparent;
		padding-top: 0;
	}
	#mansion .bg_gray{
		background: #eee;
		padding-top: 37px;
	}
	#mansion .sab {
		font-size: 10px;
		margin-left: 7%;
	}
	#mansion .catch {
		font-size: 30px;
		color: #222;
		margin: 22px auto 0;
		padding-bottom: 32px;
		text-align: left;
		width: 87%;
	}
}

/*fairyCourt*/

#mansion .fairyCourt {
	width: 100%;
	position: relative;
	overflow: hidden;
}
#mansion .fairyCourt_flex{
	display: flex;
	width: 100%;
	position: relative;
	overflow: hidden;
}
#mansion .fairyCourt_flex::before{
	position: absolute;
	content: "";
	width: 35%;
	height: 100%;
	background: #eee;
	transform: skewX(35deg);
	top: 0;
	right: 175px;
	z-index: 1;
}
#mansion .fairyCourt .photo_area {
	width: 65%;
	min-height: 500px;
	overflow: hidden;
	margin: 0;
	padding: 0;
	background: #000;
	position: relative;
}
#mansion .fairyCourt .photo_area::before {
	position: absolute;
	content: "";
	background: url(../images/fairyCourt_bg.jpg) no-repeat;
	background-position: center right;
	width: 100%;
	top: 0;
	left: 0;
	min-height: 500px;
	background-size: cover;
	-webkit-transition: all .3s ease-out;
	-moz-transition: all .3s ease-out;
	-ms-transition: all .3s ease-out;
	transition: all .3s ease-out;
}
#mansion .fairyCourt .photo_area::after {
	position: absolute;
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 7.5vw 10.7vw 7.5vw;
	border-color: transparent transparent #e2bf96 transparent;
	z-index: 10;
	opacity: 0.5;
	bottom: 0;
	right: 0;
	z-index: 0;
}
#mansion .fairyCourt .diagonal_area {
	width: 35%;
	background: #eee;
	position: relative;
}
#mansion .fairyCourt .diagonal_area .text_area_flexItem {
	position: absolute;
	top: 60px;
	left: -110px;
	z-index: 20;
	text-align: left;
	/*cursor: pointer;*/
}
#mansion .fairyCourt .catch_sab {
	display: block;
	font-size: 14px;
	line-height: 14px;
	color: #8b8b8b;
	margin-bottom: 18px;
	text-align: right;
}
#mansion .fairyCourt .ttl {
	font-size: 60px;
	margin-bottom: 42px;
	line-height: 52px;
}
#mansion .fairyCourt .txt {
	font-size: 20px;
	margin-bottom: 42px;
	line-height: 28px;
}
#mansion .text_area_flexItem .btn a {
	position: relative;
	display: block;
	width: 159px;
	height: 53px;
	line-height: 45px;
	padding: 0px 50px;
    color: #fff;
    box-sizing: border-box;
}
#mansion .text_area_flexItem .btn a::after{
	position: absolute;
    content: "";
    background: url(../images/w_arrow.png) no-repeat;
    width: 26px;
    height: 4px;
    right: 0;
    bottom: 0;
    margin: auto;
}
@media (min-width: 1000px){
	#mansion .text_area_flexItem .btn a {
		background: url(../images/more_b_btn.png) no-repeat;
	}
	#mansion .text_area_flexItem .btn a::after{
		top: -7px;
		left: 87px;
	}
}
@media (max-width: 999px){/**/
	#mansion .fairyCourt_flex{
		flex-wrap: wrap;
	}
	#mansion .fairyCourt::before{
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	background: #eee;
	transform-origin: 0 0;
	transform: skewX(37.1deg);
	top: 0;
	z-index: 1;
	}

	#mansion .fairyCourt_flex::before{
		content: none;
	}
	#mansion .fairyCourt .photo_area {
		width: 100%;
		min-height: 250px;
	}
	#mansion .fairyCourt .photo_area::before {
		background: url(../images/sp/fairyCourt_bg.jpg) no-repeat;
		min-height: 250px;
		background-size: cover;
		background-position: center;
	}
	#mansion .fairyCourt .photo_area::after {
		/*content: none;*/
		border-width: 0 22vw 30vw 22vw;
		border-color: transparent transparent #e2bf96 transparent;
		right: 0;
	}
	#mansion .fairyCourt .diagonal_area {
		width: 100%;
		height: 194px;
	}
	#mansion .fairyCourt .diagonal_area .text_area_flexItem {
		position: absolute;
		top: 0;
		left: 0;
		z-index: 20;
		width: 100%;
	}
	#mansion .fairyCourt .diagonal_area .sp_order_flex {
		display: flex;
		width: 100%;
		flex-wrap: wrap;
		position: relative;
	}
	#mansion .fairyCourt .diagonal_area .sp_order01 {
		display: block;
		width: auto;
		order: 1;
		position: absolute;
		top: calc( -125px - 26px);
		right: 7.2%;
		text-indent: -2rem;
		padding-left: 2rem;
	}
	#mansion .fairyCourt .diagonal_area .sp_order02 {
		display: block;
		width: 100%;
		order: 2;
		text-align: center;
		margin-top: 15px;
		color: #ccb69c;
		font-size: 12px;
		text-indent: 0;
	}
	#mansion .fairyCourt {
		width: 100%;
		position: relative;
	}
	#mansion .fairyCourt .ttl {
		font-size: 46px;/**/
		margin-bottom: 0;
		line-height: 52px;
		text-indent: -5rem;
	}
	#mansion .fairyCourt .txt {
		font-size: 13px;
		line-height: 20px;
		width: 90%;
		margin: 0 auto;
		text-align: center;
		margin-bottom: 25px;
		color: #222;
	}
	#mansion .fairyCourt .catch_sab {
		font-size: 12px;
		margin-bottom: 18px;
		text-align: right;
	}
	#mansion .fairyCourt .btn {
		margin-bottom: 28px;
		text-align: center;
	}
	#mansion br.tb {
		display: none;
	}
	#mansion .text_area_flexItem .btn a {
		margin: 0 auto;
		background: url(../images/sp/more_b_btn.png) no-repeat;
		background-size: contain;
		text-align: left;
	}
	#mansion .text_area_flexItem .btn a::after{
		top: -7px;
		left: 87px;
	}

}
@media (max-width: 768px){
	#mansion .fairyCourt .ttl {
		font-size: 40px;/**/
	}
	#mansion .fairyCourt .photo_area::after {
		border-color: transparent transparent #e2bf96 transparent;
		right: 0;
	}
	#mansion .fairyCourt .diagonal_area .sp_order01 {
		display: block;
		width: auto;
		order: 1;
		position: absolute;
		top: inherit;
		bottom: 170px;
		left: 53vw;/*170px*/
		text-indent: -2rem;
		padding-left: 2rem;
	}
	#mansion br.tb {
		display: block;
	}
}

@media (max-width: 390px){

	#mansion .fairyCourt::before{
		top: 0;
		left: 43.466%;
	}
	#mansion .fairyCourt .photo_area::after {
		border-width: 0px 21vw 33vw 21vw;
	}
}
@media (max-width: 375px){
	#mansion .fairyCourt_flex::before {
		transform: skewX(36deg);
		right: -34.5%;
	}
	#mansion .fairyCourt .photo_area::after {
		border-width: 0px 22vw 35vw 22vw;
	}
}

/*.eternalHouse*/

#mansion .eternalHouse {
	width: 100%;
	position: relative;
	overflow: hidden;
}
#mansion .eternalHouse .eternalHouse_flex{
	display: flex;
	width: 100%;
	position: relative;
}
#mansion .eternalHouse .eternalHouse_flex::before{
	position: absolute;
	content: "";
	width: 35%;
	height: 100%;
	background: #eee;
	transform: skewX(35deg);
	top: 0;
	left: 175px;
	z-index: 1;
}
#mansion .eternalHouse .photo_area {
	width: 65%;
	min-height: 500px;
	overflow: hidden;
	margin: 0;
	padding: 0;
	background: #000;
	position: relative;
}
#mansion .eternalHouse .photo_area::before {
	position: absolute;
	content: "";
	background: url(../images/eternalHouse_bg.jpg) no-repeat;
	background-position: center right;
	width: 100%;
	top: 0;
	left: 0;
	min-height: 500px;
	background-size: cover;
	-webkit-transition: all .3s ease-out;
	-moz-transition: all .3s ease-out;
	-ms-transition: all .3s ease-out;
	transition: all .3s ease-out;
}
#mansion .eternalHouse .photo_area::after {
	position: absolute;
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 10.7vw 7.5vw 0 7.5vw;
	border-color: #b2d29f transparent transparent transparent;
	z-index: 0;
	opacity: 0.5;
	top: 0;
	left: 0;
}
#mansion .eternalHouse .diagonal_area {
	width: 35%;
	background: #eee;
	position: relative;
}

#mansion .eternalHouse .diagonal_area .text_area_flexItem {
	position: absolute;
	bottom: 60px;
	right: -190px;
	z-index: 20;
	text-align: left;
	/*cursor: pointer;*/
}
#mansion .eternalHouse .catch_sab {
	display: block;
	font-size: 14px;
	line-height: 14px;
	color: #8b8b8b;
	margin-bottom: 10px;
	text-align: left;
}
#mansion .eternalHouse .ttl {
	font-size: 60px;
	margin-bottom: 42px;
	line-height: 52px;
}
#mansion .eternalHouse .txt {
	font-size: 20px;
	margin-bottom: 42px;
	line-height: 28px;
}

@media (max-width: 999px){/*768*/
	#mansion .eternalHouse::before {
		position: absolute;
		content: "";
		width: 53%;/*66%*/
		height: 100%;
		background: #eee;
		transform-origin: 0 0;
		transform: skewX(37deg);
		top: 0;
		left: -200px;
		z-index: 1;
	}
	#mansion .eternalHouse .eternalHouse_flex{
		flex-wrap: wrap;
		padding-bottom: 200px;
		background: #eee;
	}
	#mansion .eternalHouse .eternalHouse_flex::before{
		content: none;
	}
	#mansion .eternalHouse .photo_area {
		width: 100%;
		min-height: 250px;
	}
	#mansion .eternalHouse .photo_area::before {
		background: url(../images/sp/eternalHouse_bg.jpg) no-repeat;
		min-height: 250px;
		background-size: cover;
		background-position: center;
	}
	#mansion .eternalHouse .photo_area::after {
		border-width: 28vw 22vw 0 22vw;
		border-color: #b2d29f transparent transparent transparent;
	}
	#mansion .eternalHouse .diagonal_area {
		width: 100%;
		background: transparent;
		position: absolute;
		top: 100px;
	}
	#mansion .eternalHouse .ttl_area_flexItem_02 {
		position: absolute;
		bottom: 40%;
		left: 18%;
		z-index: 10;
	}

	#mansion .eternalHouse .diagonal_area .text_area_flexItem {
		position: absolute;
		top: 0;
		left: 0;
		z-index: 20;
		width: 100%;
	}
	#mansion .eternalHouse .diagonal_area .sp_order2_01 {
		order: 1;
	}
	#mansion .eternalHouse .diagonal_area .sp_order2_02 {
		order: 2;
		position: absolute;
		top: 200px;
		left: 0;
		font-size: 13px;
		color: #222;
		margin-bottom: 25px;
		line-height: 20px;
		text-align: center;
		width: 100%;
	}
	#mansion .eternalHouse .diagonal_area .sp_order_flex {
		display: flex;
		width: 100%;
		flex-wrap: wrap;
		position: relative;
		top: 150px;
		left: 0;
		height: 190px;
	}
	#mansion .eternalHouse .diagonal_area .sp_order01 {
		display: block;
		width: auto;
		order: 1;
		position: absolute;
		top: calc( -125px - 23px);
		left: 25px;
		text-indent: -2rem;
		padding-left: 2rem;
	}
	#mansion .eternalHouse .diagonal_area .sp_order02 {
		display: block;
		width: 100%;
		order: 2;
		text-align: center;
		margin-top: 22px;
		color: #ccb69c;
		font-size: 12px;
		text-indent: 0;
	}

	#mansion .eternalHouse .ttl {
		font-size: 46px;
		margin-bottom: 42px;
		line-height: 52px;
		text-indent: -5rem;
	}
	#mansion .eternalHouse .catch_sab {
		font-size: 12px;
		margin-bottom: 18px;
		text-align: right;
	}
	#mansion .eternalHouse .btn {
		text-align: center;
		position: absolute;
		width: 100%;
		bottom: -340px;
	}
	
}
@media (max-width: 768px){
	#mansion .eternalHouse .ttl {
		font-size: 40px;
	}
	#mansion .eternalHouse .photo_area::after {
		border-color: #b2d29f transparent transparent transparent;
	}
	#mansion .eternalHouse .diagonal_area .sp_order01 {
		display: block;
		width: 100%;
		order: 1;
		position: absolute;
		top: -110px;
		left: 25px;
		text-indent: -2rem;
		padding-left: 2rem;
	}
}
@media (max-width: 390px){
	#mansion .eternalHouse::before {
		left: -66%;
		width: 66%;
	}
	#mansion .eternalHouse .photo_area::after {
		border-width: 33vw 21vw 0 21vw;
	}
	
}
@media (max-width: 375px){
	.iPhone #mansion .eternalHouse .eternalHouse_flex::before {
		left: -41.6%;
	}
	#mansion .eternalHouse .eternalHouse_flex::before {
		transform: skewX(35.7deg);
		left: -40.6%;
	}
}
@media (max-width: 360px){
	#mansion .eternalHouse::before {
		left: -64%;
	}
	#mansion .eternalHouse .photo_area::after {
		border-width: 35vw 22vw 0 22vw;
	}
}


/*BreezeGarden*/

#mansion .breezeGarden {
	width: 100%;
	position: relative;
	overflow: hidden;
}
#mansion .breezeGarden_flex{
	display: flex;
	width: 100%;
	position: relative;
	overflow: hidden;
}
#mansion .breezeGarden_flex::before{
	position: absolute;
	content: "";
	width: 35%;
	height: 100%;
	background: #eee;
	transform: skewX(35deg);
	top: 0;
	right: 175px;
	z-index: 1;
}
#mansion .breezeGarden .photo_area {
	width: 65%;
	min-height: 500px;
	overflow: hidden;
	margin: 0;
	padding: 0;
	background: #000;
	position: relative;
}
#mansion .breezeGarden .photo_area::before {
	position: absolute;
	content: "";
	background: url(../images/breezeGarden_bg.jpg) no-repeat;
	background-position: center right;
	width: 100%;
	top: 0;
	left: 0;
	min-height: 500px;
	background-size: cover;
	-webkit-transition: all .3s ease-out;
	-moz-transition: all .3s ease-out;
	-ms-transition: all .3s ease-out;
	transition: all .3s ease-out;
}
#mansion .breezeGarden .photo_area::after {
	position: absolute;
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 7.5vw 10.7vw 7.5vw;
	border-color: transparent transparent #b14a7f transparent;
	z-index: 10;
	opacity: 0.5;
	bottom: 0;
	right: 0;
	z-index: 0;
}
#mansion .breezeGarden .diagonal_area {
	width: 35%;
	background: #eee;
	position: relative;
}
#mansion .breezeGarden .diagonal_area .text_area_flexItem {
	position: absolute;
	top: 60px;
	left: -110px;
	z-index: 20;
	text-align: left;
	/*cursor: pointer;*/
}
#mansion .breezeGarden .catch_sab {
	display: block;
	font-size: 14px;
	line-height: 14px;
	color: #8b8b8b;
	margin-bottom: 18px;
	text-align: right;
}
#mansion .breezeGarden .ttl {
	font-size: 60px;
	margin-bottom: 42px;
	line-height: 52px;
}
#mansion .breezeGarden .txt {
	font-size: 20px;
	margin-bottom: 42px;
	line-height: 28px;
}
#mansion .text_area_flexItem .btn a {
	position: relative;
	display: block;
	width: 159px;
	height: 53px;
	line-height: 45px;
	padding: 0px 50px;
    color: #fff;
    box-sizing: border-box;
}
#mansion .text_area_flexItem .btn a::after{
	position: absolute;
    content: "";
    background: url(../images/w_arrow.png) no-repeat;
    width: 26px;
    height: 4px;
    right: 0;
    bottom: 0;
    margin: auto;
}
@media (min-width: 1000px){
	#mansion .text_area_flexItem .btn a {
		background: url(../images/more_b_btn.png) no-repeat;
	}
	#mansion .text_area_flexItem .btn a::after{
		top: -7px;
		left: 87px;
	}
}
@media (max-width: 999px){/**/
	#mansion .breezeGarden_flex{
		flex-wrap: wrap;
	}
	#mansion .breezeGarden::before{
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	background: #eee;
	transform-origin: 0 0;
	transform: skewX(37.1deg);
	top: 0;
	z-index: 1;
	}

	#mansion .breezeGarden_flex::before{
		content: none;
	}
	#mansion .breezeGarden .photo_area {
		width: 100%;
		min-height: 250px;
	}
	#mansion .breezeGarden .photo_area::before {
		background: url(../images/sp/breezeGarden_bg.jpg) no-repeat;
		min-height: 250px;
		background-size: cover;
		background-position: center;
	}
	#mansion .breezeGarden .photo_area::after {
		/*content: none;*/
		border-width: 0 22vw 30vw 22vw;
		border-color: transparent transparent #e2bf96 transparent;
		right: 0;
	}
	#mansion .breezeGarden .diagonal_area {
		width: 100%;
		height: 194px;
	}
	#mansion .breezeGarden .diagonal_area .text_area_flexItem {
		position: absolute;
		top: 0;
		left: 0;
		z-index: 20;
		width: 100%;
	}
	#mansion .breezeGarden .diagonal_area .sp_order_flex {
		display: flex;
		width: 100%;
		flex-wrap: wrap;
		position: relative;
	}
	#mansion .breezeGarden .diagonal_area .sp_order01 {
		display: block;
		width: auto;
		order: 1;
		position: absolute;
		top: calc( -125px - 26px);
		right: 7.2%;
		text-indent: -2rem;
		padding-left: 2rem;
	}
	#mansion .breezeGarden .diagonal_area .sp_order02 {
		display: block;
		width: 100%;
		order: 2;
		text-align: center;
		margin-top: 15px;
		color: #ccb69c;
		font-size: 12px;
		text-indent: 0;
	}
	#mansion .breezeGarden {
		width: 100%;
		position: relative;
	}
	#mansion .breezeGarden .ttl {
		font-size: 46px;/**/
		margin-bottom: 0;
		line-height: 52px;
		text-indent: -5rem;
	}
	#mansion .breezeGarden .txt {
		font-size: 13px;
		line-height: 20px;
		width: 90%;
		margin: 0 auto;
		text-align: center;
		margin-bottom: 25px;
		color: #222;
	}
	#mansion .breezeGarden .catch_sab {
		font-size: 12px;
		margin-bottom: 18px;
		text-align: right;
	}
	#mansion .breezeGarden .btn {
		margin-bottom: 28px;
		text-align: center;
	}
	#mansion br.tb {
		display: none;
	}
	#mansion .text_area_flexItem .btn a {
		margin: 0 auto;
		background: url(../images/sp/more_b_btn.png) no-repeat;
		background-size: contain;
		text-align: left;
	}
	#mansion .text_area_flexItem .btn a::after{
		top: -7px;
		left: 87px;
	}

}
@media (max-width: 768px){
	#mansion .breezeGarden .ttl {
		font-size: 40px;/**/
	}
	#mansion .breezeGarden .photo_area::after {
		border-color: transparent transparent #e2bf96 transparent;
		right: 0;
	}
	#mansion .breezeGarden .diagonal_area .sp_order01 {
		display: block;
		width: auto;
		order: 1;
		position: absolute;
		top: inherit;
		bottom: 170px;
		left: 53vw;/*170px*/
		text-indent: -2rem;
		padding-left: 2rem;
	}
	#mansion br.tb {
		display: block;
	}
}

@media (max-width: 390px){

	#mansion .breezeGarden::before{
		top: 0;
		left: 43.466%;
	}
	#mansion .breezeGarden .photo_area::after {
		border-width: 0px 21vw 33vw 21vw;
	}
}
@media (max-width: 375px){
	#mansion .breezeGarden_flex::before {
		transform: skewX(36deg);
		right: -34.5%;
	}
	#mansion .breezeGarden .photo_area::after {
		border-width: 0px 22vw 35vw 22vw;
	}
}



 /* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#partyReport
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */

#partyReport {
	width: 100%;
	background: #333333;
	padding: 46px 0 65px;
	color: #fff;
}
#partyReport .ttl {
	font-size: 40px;
	text-align: center;
}
#partyReport .ttl_kana {
	display: block;
    font-size: 12px;
    font-weight: bold;
    letter-spacing: 0.12rem;
    line-height: 12px;
}
/*slider (スライダー)*/
.slider {
	display: flex;
	text-align: left;
	margin-bottom: 40px;
}
.slider a {
	display: block;
	color: #fff;
}
.slider .slider_item {
	width: 510px;
	height: auto;
	padding: 20px;
	margin-right: 20px;
	box-sizing: border-box;
}
.slider .slider_item:hover {
	cursor: pointer;
	cursor: hand;
	background: #464646;
}
.slider .slider_item:focus {
	outline: none;
}
.slider .flex {
	display: flex;
}
.slider figure {
	width: 230px;
}
.slider .text_area {
	width: 240px;
	padding: 24px 0 23px 26px;
	box-sizing: border-box;
}
.slider .text_area .date {
	height: 22px;
	font-size: 16px;
	margin-bottom: 20px;
}
.slider .text_area .date small {
	font-size: 13px;
}
.slider .text_area .tag {
	font-size: 12px;
	color: #333333;
	background: #ccb69c;
	width: 188px;
	height: 20px;
	margin-bottom: 20px;
	text-align: center;
	line-height: 21px;
}
.slider .text_area .txt {
	font-size: 16px;
}
.slider .text_area .txt span {
	display: block;
	font-size: 13px;
	margin-top: 18px;
}
@media (min-width: 1000px){
	#partyReport .ttl_kana {
		margin: 3px 0 33px;
	}
}
@media (max-width: 768px){
	#partyReport {
		padding: 50px 0 46px;
	}
	#partyReport .ttl {
		font-size: 30px;
		text-align: center;
		margin-bottom: 5px;
	}
	#partyReport .ttl_kana {
		margin: 6px 0 49px;
	}

	/*slider (スライダー)*/
	.slider {
		display: flex;
		text-align: left;
		margin-bottom: 40px;
	}
	.slider .slider_item {
		width: 50%;
		height: auto;
		padding: 20px 10px;
		margin-right: 0;
	}
	.slider .slider_item:hover {
		cursor: pointer;
		cursor: hand;
		background: #464646;
	}
	.slider .flex {
		display: block;
	}
	.slider figure {
		width: 230px;
		margin: 0 auto;
	}

	.slider .text_area {
		width: 230px;
		padding: 10% 0 0 5%;
		box-sizing: border-box;
	}
	.slider .text_area .date {
		height: 20px;
		font-size: 18px;
	}
	.slider .text_area .date small {
		font-size: 15px;
	}
	.slider .text_area .tag {
		font-size: 12px;
		color: #333333;
		background: #ccb69c;
		width: 188px;
		height: 25px;
		margin-bottom: 20px;
		text-align: center;
		line-height: 26px;
	}
	.slider .text_area .txt {
		font-size: 20px;
	}
	.slider .text_area .txt span {
		display: block;
		font-size: 14px;
		margin-top: 37px;
	}
}

/*スリックCSSの上書き*/

#partyReport .slider .prev-arrow {
	display: block;
	position: absolute;
	top: -80px;
	left: 10%;
	cursor: pointer;
}
#partyReport .slider .next-arrow {
	display: block;
	top: -30%;
	right: 10%;
	position: absolute;
	cursor: pointer;
}

#partyReport .btn a {
	display: block;
	width: 296px;
	height: 57px;
	background: url(../images/partyReport_btn.png) no-repeat;
	margin: auto;
	color: #fff;
	line-height: 50px;
	text-align: left;
	padding-left: 40px;
	box-sizing: border-box;
}

@media (max-width: 768px){
	#partyReport .slider .prev-arrow {
		display: block;
		position: absolute;
		top: -22%;
		left: 8%;
		cursor: pointer;
		width: 12%;
	}
	#partyReport .slider .next-arrow {
		display: block;
		top: -21.5%;
		right: 9%;
		position: absolute;
		cursor: pointer;
		width: 11%;
	}
}


 /* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#flow
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */

#flow {
	width: 100%;
	min-height: 466px;
	color: #222222;
}
#flow .flow_flex{
	display: flex;
	width: 100%;
	position: relative;
}
#flow .photo_area {
	width: 55%;
	min-height: 500px;
	overflow: hidden;
	margin: 0;
	padding: 0;
	background: #ccb69c;
	position: relative;
}
#flow .photo_area::before {
	position: absolute;
	content: "";
	background: url(../images/flow_bg.jpg) no-repeat;
	background-position: center right;
	width: 100%;
	top: 50px;
	left: 0;
	height: 385px;
	background-size: cover;
	-webkit-transition: all .3s ease-out;
	-moz-transition: all .3s ease-out;
	-ms-transition: all .3s ease-out;
	transition: all .3s ease-out;
}
#flow .diagonal_area {
	width: 45%;
	background: #ccb69c;
	position: relative;
}
#flow .diagonal_area .text_area_flexItem {
	position: absolute;
	top: 147px;
	left: 80px;
	z-index: 20;
	text-align: left;
	/*cursor: pointer;*/
}
#flow .catch_sab {
	font-size: 14px;
	color: #8b8b8b;
	margin-bottom: 18px;
	text-align: right;
}
#flow .ttl {
	font-size: 40px;
	margin-bottom: 15px;
	line-height: 36px;
}
#flow .txt {
	font-size: 20px;
	margin-bottom: 90px;
	line-height: 20px;
}
#flow .text_area_flexItem .btn a,
#flow .text_area_flexItem_02 .btn a {
	position: relative;
	display: block;
	width: 159px;
	height: 53px;
	line-height: 45px;
	padding: 0px 50px;
    color: #fff;
    box-sizing: border-box;
}
#flow .text_area_flexItem .btn a::after,
#flow .text_area_flexItem_02 .btn a::after{
	position: absolute;
    content: "";
    background: url(../images/b_arrow.png) no-repeat;
    width: 26px;
    height: 4px;
    right: 0;
    bottom: 0;
    margin: auto;
}
@media (min-width: 1000px){
	#flow .text_area_flexItem .btn a {
		color: #222222;
		background: url(../images/more_w_btn.png) no-repeat;
	}
	#flow .text_area_flexItem .btn a::after{
		top: -7px;
		left: 87px;
	}
}
@media (max-width: 999px){/*768*/
	#flow {
		width: 100%;
		min-height: 385px;
	}
	#flow .flow_flex{
		display: flex;
		width: 100%;
		position: relative;
	}
	#flow .photo_area {
		width: 80%;
		min-height: 221px;
	}
	#flow .photo_area::before {
		background: url(../images/sp/flow_bg.jpg) no-repeat;
		background-position: center right;
		background-size: cover;
		width: 100%;
		/*top: 16%;*/
		left: 0;
		height: 150px;
	}
	#flow .diagonal_area {
		width: 20%;
	}
	#flow .text_area_flexItem_02 {
		background: #ccb69c;
		padding: 0.8% 5% 15%;
	}
	#flow .ttl {
		font-size: 30px;
		margin-bottom: 0;
		line-height: 30px;
		text-align: left;
	}
	#flow .txt {
		font-size: 12px;
		font-weight: bold;
		margin-bottom: 20px;
		line-height: 20px;
		text-align: left;
	}
	#flow .text_area_flexItem_02 .btn a {
		color: #222222;
		margin: 0 auto;
		background: url(../images/sp/more_w_btn.png) no-repeat;
		background-size: contain;
		text-align: left;
	}
	#flow .text_area_flexItem_02 .btn a::after{
		top: -7px;
		left: 87px;
	}
}


/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#cuisine
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */

#cuisine {
	width: 100%;
	position: relative;
	overflow: hidden;
}
#cuisine .cuisine_flex{
	display: flex;
	width: 100%;
	position: relative;
	overflow: hidden;
}
#cuisine .cuisine_flex::before {
	position: absolute;
	content: "";
	width: 35%;
	height: 100%;
	background: #fff;
	transform: skewX(35deg);
	top: 0;
	right: 175px;
	z-index: 1;
}
#cuisine .photo_area {
	width: 65%;
	min-height: 500px;
	overflow: hidden;
	margin: 0;
	padding: 0;
	background: #000;
	position: relative;
}
#cuisine .photo_area::before {
	position: absolute;
	content: "";
	background: url(../images/cuisine_bg.jpg) no-repeat;
	background-position: center right;
	width: 100%;
	top: 0;
	left: 0;
	min-height: 500px;
	background-size: cover;
	-webkit-transition: all .3s ease-out;
	-moz-transition: all .3s ease-out;
	-ms-transition: all .3s ease-out;
	transition: all .3s ease-out;
}
#cuisine .photo_area::after {
	position: absolute;
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 7.5vw 10.7vw 7.5vw;
	border-color: transparent transparent #e2bf96 transparent;
	z-index: 0;
	opacity: 0.5;
	bottom: 0;
	right: 0;
}
#cuisine .diagonal_area {
	width: 35%;
	background: #fff;
	position: relative;
}

#cuisine .diagonal_area .text_area_flexItem {
	position: absolute;
	top: 106px;
	left: -120px;
	z-index: 20;
	text-align: left;
	/*cursor: pointer;*/
}
#cuisine .ttl_kana {
	display: block;
	font-size: 14px;
	margin-bottom: 14px;
	line-height: 14px;
	color: #333;
}
#cuisine .ttl {
	font-size: 60px;
	margin-bottom: 60px;
	line-height: 52px;
	color: #b0c34f;
}
#cuisine .txt {
	font-size: 16px;
	margin-bottom: 55px;
	line-height: 24px;
}
#cuisine .text_area_flexItem .btn a {
	position: relative;
	display: block;
	width: 159px;
	height: 53px;
	line-height: 45px;
	padding: 0px 50px;
    color: #fff;
    box-sizing: border-box;
}
#cuisine .text_area_flexItem .btn a::after{
	position: absolute;
    content: "";
    background: url(../images/w_arrow.png) no-repeat;
    width: 26px;
    height: 4px;
    right: 0;
    bottom: 0;
    margin: auto;
}
@media (min-width: 1000px){
	#cuisine .text_area_flexItem .btn a {
		background: url(../images/more_b_btn.png) no-repeat;
	}
	#cuisine .text_area_flexItem .btn a::after{
		top: -7px;
		left: 87px;
	}
}
@media (max-width: 999px){
	#cuisine {
		background: transparent;
		padding-top: 0;
		width: 100%;
		position: relative;
	}
	#cuisine::before {
		background: #fff;
		top: 0;
		position: absolute;
		content: "";
		width: 100%;
		height: 100%;
		transform-origin: 0 0;
		transform: skewX(37.1deg);
		z-index: 1;
	}
	#cuisine .cuisine_flex{
		flex-wrap: wrap;
	}
	#cuisine .cuisine_flex::before{
		content: none;
	}

	#cuisine .photo_area {
		width: 100%;
		min-height: 250px;
	}
	#cuisine .photo_area::before {
		background: url(../images/sp/cuisine_bg.jpg) no-repeat;
		min-height: 250px;
		background-size: cover;
		background-position: center;
	}
	#cuisine .photo_area::after {
		border-width: 0 22vw 30vw 22vw;
		/*border-width: 0 17vw 22vw 17vw;*/
		border-color: transparent transparent #e2bf96 transparent;
	}
	#cuisine .diagonal_area {
		width: 100%;
		height: 200px;
		background: #fff;
	}

	#cuisine .diagonal_area .text_area_flexItem {
		position: absolute;
		top: 0;
		left: 0;
		z-index: 20;
		width: 100%;
	}
	#cuisine .diagonal_area .sp_order_flex {
		display: flex;
		width: 100%;
		flex-wrap: wrap;
		position: relative;
		margin-bottom: 0;
	}
	#cuisine .diagonal_area .sp_order01 {
		display: block;
		width: auto;
		order: 1;
		position: absolute;
		top: calc( -125px - 23px );
		right: 10%;
		text-indent: -2rem;
		padding-left: 2rem;
	}
	#cuisine .diagonal_area .sp_order02 {
		display: block;
		width: 100%;
		order: 2;
		text-align: center;
		margin-top: 15px;
		color: #8b8b8b;
		font-size: 12px;
		text-indent: 0;
	}
	#cuisine .ttl_kana {
		font-size: 12px;
		margin-bottom: 15px;
	}
	#cuisine .ttl {
		font-size: 46px;
		margin-bottom: 16px;
		line-height: 46px;
		text-indent: -5rem;
	}
	#cuisine .text_area_flexItem .catch_sab {
		font-size: 12px;
		color: #ccb69c;
		margin-bottom: 14px;
		line-height: 12px;
		text-align: center;
	}
	#cuisine .text_area_flexItem .txt {
		font-size: 13px;
		color: #222;
		margin-bottom: 25px;
		line-height: 20px;
		text-align: center;
	}
	#cuisine .text_area_flexItem .btn {
		margin-bottom: 28px;
		text-align: center;
	}
	#cuisine .text_area_flexItem .btn a {
		margin: 0 auto;
		background: url(../images/sp/more_b_btn.png) no-repeat;
		background-size: contain;
		text-align: left;
	}
	#cuisine .text_area_flexItem .btn a::after{
		top: -7px;
		left: 87px;
	}
}
@media (max-width: 768px){
	#cuisine .diagonal_area .sp_order01 {
		display: block;
		width: 100%;
		order: 1;
		position: absolute;
		top: inherit;
		bottom: 210px;
		left: 58vw;
		text-indent: -2rem;
		padding-left: 2rem;
	}
	#cuisine .ttl {
		font-size: 40px;
	}
}

@media (max-width: 390px){

	#cuisine::before {
		top: 0;
		left: 43.466%;
	}
	#cuisine .photo_area::before {
		background: url(../images/sp/cuisine_bg.jpg) no-repeat;
		min-height: 250px;
		background-size: cover;
		background-position: center;
	}
	#cuisine .photo_area::after {
		border-width: 0px 21vw 33vw 21vw;
	}
}
@media (max-width: 375px){
	#cuisine .cuisine_flex::before {
		transform: skewX(36deg);
		right: -34.5%;
	}
	#cuisine .photo_area::after {
		border-width: 0px 0 70vw 44vw;
	}
}

/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#dress
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */

#dress {
	width: 100%;
	position: relative;
	overflow: hidden;
}
#dress .dress_flex{
	display: flex;
	width: 100%;
	position: relative;
}
#dress .dress_flex::before {
	position: absolute;
	content: "";
	width: 35%;
	height: 100%;
	background: #eee;
	transform: skewX(35deg);
	top: 0;
	left: 175px;
	z-index: 1;
}
#dress .photo_area {
	width: 65%;
	min-height: 500px;
	overflow: hidden;
	margin: 0;
	padding: 0;
	background: #000;
	position: relative;
}
#dress .photo_area::before {
	position: absolute;
	content: "";
	background: url(../images/dress_bg.jpg) no-repeat;
	background-position: center right;
	width: 100%;
	top: 0;
	left: 0;
	min-height: 500px;
	background-size: cover;
	-webkit-transition: all .3s ease-out;
	-moz-transition: all .3s ease-out;
	-ms-transition: all .3s ease-out;
	transition: all .3s ease-out;
}
#dress .photo_area::after {
	position: absolute;
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 10.7vw 7.5vw 0 7.5vw;
	border-color: #b2d29f transparent transparent transparent;
	z-index: 0;
	opacity: 0.5;
	top: 0;
	left: 0;
}
#dress .diagonal_area {
	width: 35%;
	background: #eee;
	position: relative;
}

#dress .diagonal_area .text_area_flexItem {
	position: absolute;
	bottom: 60px;
	z-index: 20;
	text-align: left;
	/*cursor: pointer;*/
}
#dress .ttl_kana {
	display: block;
	font-size: 14px;
	margin-bottom: 14px;
	line-height: 14px;
	color: #333;
}
#dress .ttl {
	font-size: 60px;
	margin-bottom: 60px;
	line-height: 52px;
	color: #b0c34f;
}
#dress .txt {
	font-size: 16px;
	margin-bottom: 55px;
	line-height: 24px;
}
#dress .text_area_flexItem .btn a {
	position: relative;
	display: block;
	width: 159px;
	height: 53px;
	line-height: 45px;
	padding: 0px 50px;
    color: #fff;
    box-sizing: border-box;
}
#dress .text_area_flexItem .btn a::after{
	position: absolute;
    content: "";
    background: url(../images/w_arrow.png) no-repeat;
    width: 26px;
    height: 4px;
    right: 0;
    bottom: 0;
    margin: auto;
}
@media (min-width: 1000px){
	#dress .diagonal_area .text_area_flexItem,
	#voice .diagonal_area .text_area_flexItem,
	#lunch .diagonal_area .text_area_flexItem {
		width: 414px;
		right: -190px;
	}
	#dress .text_area_flexItem .btn a {
		background: url(../images/more_b_btn.png) no-repeat;
	}
	#dress .text_area_flexItem .btn a::after{
		top: -7px;
		left: 87px;
	}
}
@media (max-width: 999px){/*768px*/
	
	#dress {
		background: transparent;
		padding-top: 0;
		width: 100%;
		position: relative;
	}
	#dress::before {
		position: absolute;
		content: "";
		width: 53%;
		height: 100%;
		background: #eee;
		transform-origin: 0 0;
		transform: skewX(37deg);
		top: 0;
		left: -200px;
		z-index: 1;
	}
	#dress .dress_flex {
		flex-wrap: wrap;
		padding-bottom: 200px;
		background: #eee;
	}
	#dress .dress_flex::before{
		content: none;
	}

	#dress .photo_area {
		width: 100%;
		min-height: 250px;
	}
	#dress .photo_area::before {
		background: url(../images/sp/dress_bg.jpg) no-repeat;
		min-height: 250px;
		background-size: cover;
		background-position: center;
	}
	#dress .photo_area::after {
		border-width: 30vw 22vw 0 22vw;
		border-color: #b2d29f transparent transparent transparent;
	}
	#dress .diagonal_area {
		width: 100%;
		background: transparent;
		position: absolute;
		top: 100px;
	}
	#dress .ttl_area_flexItem {
		position: absolute;
		bottom: 40%;
		left: 18%;
		z-index: 10;
	}
	#dress .diagonal_area .text_area_flexItem {
		position: absolute;
		top: 0;
		left: 0;
		z-index: 20;
		width: 100%;
	}
	#dress .diagonal_area .sp_order2_01 {
		order: 1;
	}
	#dress .diagonal_area .sp_order2_02 {
		order: 2;
		position: absolute;
		top: 200px;
		left: 0;
		font-size: 13px;
		color: #222;
		margin-bottom: 25px;
		line-height: 20px;
		text-align: center;
		width: 100%;
	}
	#dress .diagonal_area .sp_order_flex {
		display: flex;
		width: 100%;
		flex-wrap: wrap;
		position: relative;
		top: 150px;
		left: 0;
		height: 190px;
	}
	#dress .diagonal_area .sp_order01 {
		display: block;
		width: auto;
		order: 1;
		position: absolute;
		top: calc( -125px - calc( 23px - 6px));
		left: 8.4%;
		text-indent: -2rem;
		padding-left: 2rem;
	}
	#dress .diagonal_area .sp_order02 {
		display: block;
		width: 100%;
		order: 2;
		text-align: center;
		margin-top: 22px;
		color: #8b8b8b;
		font-size: 12px;
		text-indent: 0;
	}
	#dress .catch_sab {
		font-size: 12px;
		margin-bottom: 18px;
		text-align: right;
	}
	
	#dress .text_area_flexItem .catch_sab {
		font-size: 12px;
		color: #ccb69c;
		margin-bottom: 14px;
		line-height: 12px;
		text-align: center;
	}
	#dress .text_area_flexItem .txt {
		font-size: 13px;
		color: #222;
		margin-bottom: 25px;
		line-height: 20px;
	}
	#dress .text_area_flexItem .ttl {
		font-size: 46px;
		margin-bottom: 42px;
		line-height: 46px;
		text-indent: -5rem;
	}
	#dress .text_area_flexItem .catch_sab {
		font-size: 12px;
		margin-bottom: 18px;
		text-align: right;
	}
	#dress .text_area_flexItem .btn {
		text-align: center;
		position: absolute;
		width: 100%;
		bottom: -310px;
	}
	#dress .text_area_flexItem .btn a {
		margin: 0 auto;
		background: url(../images/sp/more_b_btn.png) no-repeat;
		background-size: contain;
		text-align: left;
	}
	#dress .text_area_flexItem .btn a::after{
		top: -7px;
		left: 87px;
	}

}
@media (max-width: 768px){
	#dress .diagonal_area .sp_order01 {
		display: block;
		width: 100%;
		order: 1;
		position: absolute;
		top: -70px;
		left: 50px;
		text-indent: -2rem;
		padding-left: 2rem;
	}
	#dress .ttl {
		font-size: 40px;
	}
}
@media (max-width: 390px){
	#dress::before {
		left: -66%;
		width: 66%;
	}
	#dress .photo_area::after {
		border-width: 70vw 44vw 0 0vw;
	}
}
@media (max-width: 375px){
	#dress .dress_flex::before {
		transform: skewX(35.7deg);
		left: -40.6%;
	}
}

/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#plan
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */

#plan {
	width: 100%;
	position: relative;
	overflow: hidden;
}

#plan .plan_flex {
	display: flex;
	width: 100%;
	position: relative;
	overflow: hidden;
}
#plan .plan_flex::before {
	position: absolute;
	content: "";
	width: 35%;
	height: 100%;
	background: #fff;
	transform: skewX(35deg);
	top: 0;
	right: 175px;
	z-index: 1;
}
#plan .photo_area {
	width: 65%;
	min-height: 500px;
	overflow: hidden;
	margin: 0;
	padding: 0;
	background: #000;
	position: relative;
}
#plan .photo_area::before {
	position: absolute;
	content: "";
	background: url(../images/plan_bg.jpg) no-repeat;
	background-position: center right;
	width: 100%;
	top: 0;
	left: 0;
	min-height: 500px;
	background-size: cover;
	-webkit-transition: all .3s ease-out;
	-moz-transition: all .3s ease-out;
	-ms-transition: all .3s ease-out;
	transition: all .3s ease-out;
}
#plan .photo_area::after {
	position: absolute;
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 7.5vw 10.7vw 7.5vw;
	border-color: transparent transparent #e2bf96 transparent;
	z-index: 0;
	opacity: 0.5;
	bottom: 0;
	right: 0;
}
#plan .diagonal_area {
	width: 35%;
	background: #fff;
	position: relative;
}

#plan .diagonal_area .text_area_flexItem {
	position: absolute;
	top: 106px;
	left: -120px;
	z-index: 20;
	text-align: left;
	/*cursor: pointer;*/
}
#plan .ttl_kana {
	display: block;
	font-size: 14px;
	margin-bottom: 14px;
	line-height: 14px;
	color: #333;
}
#plan .ttl {
	font-size: 60px;
	margin-bottom: 60px;
	line-height: 52px;
	color: #b0c34f;
}
#plan .txt {
	font-size: 16px;
	margin-bottom: 55px;
	line-height: 24px;
}
#plan .text_area_flexItem .btn a {
	position: relative;
	display: block;
	width: 159px;
	height: 53px;
	line-height: 45px;
	padding: 0px 50px;
    color: #fff;
    box-sizing: border-box;
}
#plan .text_area_flexItem .btn a::after{
	position: absolute;
    content: "";
    background: url(../images/w_arrow.png) no-repeat;
    width: 26px;
    height: 4px;
    right: 0;
    bottom: 0;
    margin: auto;
}
@media (min-width: 1000px){
	#plan .text_area_flexItem .btn a {
		background: url(../images/more_b_btn.png) no-repeat;
	}
	#plan .text_area_flexItem .btn a::after{
		top: -7px;
		left: 87px;
	}
}
@media (max-width: 999px){/*768px*/
	#plan {
		background: transparent;
		padding-top: 0;
		width: 100%;
		position: relative;
	}
	#plan::before {
		top: 0;
		position: absolute;
		content: "";
		width: 100%;
		height: 100%;
		background: #fff;
		transform-origin: 0 0;
		transform: skewX(37.1deg);
		z-index: 1;
	}
	#plan .plan_flex {
		flex-wrap: wrap;
	}
	#plan .plan_flex::before {
		content: none;
	}

	#plan .photo_area {
		width: 100%;
		min-height: 250px;
	}
	#plan .photo_area::before {
		background: url(../images/sp/plan_bg.jpg) no-repeat;
		min-height: 250px;
		background-size: cover;
		background-position: center;
	}
	#plan .photo_area::after {
		border-width: 0 22vw 30vw 22vw;
		border-color: transparent transparent #e2bf96 transparent;
	}
	#plan .diagonal_area {
		width: 100%;
		height: 200px;
		background: #fff;
	}

	#plan .diagonal_area .text_area_flexItem {
		position: absolute;
		top: 0;
		left: 0;
		z-index: 20;
		width: 100%;
	}
	#plan .diagonal_area .sp_order_flex {
		display: flex;
		width: 100%;
		flex-wrap: wrap;
		position: relative;
		margin-bottom: 0;
	}
	#plan .diagonal_area .sp_order01 {
		display: block;
		width: auto;
		order: 1;
		position: absolute;
		top: calc( -125px - calc( 23px + 6px));
		right: 10.13%;
		text-indent: -2rem;
		padding-left: 2rem;
	}
	#plan .diagonal_area .sp_order02 {
		display: block;
		width: 100%;
		order: 2;
		text-align: center;
		margin-top: 15px;
		color: #8b8b8b;
		font-size: 12px;
		text-indent: 0;
	}
	#plan .ttl_kana {
		font-size: 12px;
		margin-bottom: 15px;
	}
	#plan .ttl {
		font-size: 46px;
		margin-bottom: 16px;
		line-height: 46px;
		text-indent: -5rem;
	}
	#plan .text_area_flexItem .catch_sab {
		font-size: 12px;
		color: #ccb69c;
		margin-bottom: 14px;
		line-height: 12px;
		text-align: center;
	}
	#plan .text_area_flexItem .txt {
		font-size: 13px;
		color: #222;
		margin-bottom: 25px;
		line-height: 20px;
		text-align: center;
	}
	#plan .text_area_flexItem .btn {
		margin-bottom: 28px;
		text-align: center;
	}
	#plan .text_area_flexItem .btn a {
		margin: 0 auto;
		background: url(../images/sp/more_b_btn.png) no-repeat;
		background-size: contain;
		text-align: left;
	}
	#plan .text_area_flexItem .btn a::after{
		top: -7px;
		left: 87px;
	}
}

@media (max-width: 768px){
	#plan .diagonal_area .sp_order01 {
		display: block;
		width: 100%;
		order: 1;
		position: absolute;
		top: inherit;
		bottom: 210px;
		left: 58vw;
		text-indent: -2rem;
		padding-left: 2rem;
	}
	#plan .ttl {
		font-size: 40px;
	}
}

@media (max-width: 390px){
	#plan::before {
		top: 0;
		left: 43.466%;
	}
	#plan .photo_area::after {
		border-width: 0px 0 70vw 44vw;
	}
}
@media (max-width: 375px){
	#plan .plan_flex::before {
		transform: skewX(36deg);
		right: -34.5%;
	}
}

/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#voice
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */

#voice {
	width: 100%;
	position: relative;
	overflow: hidden;
}
#voice .voice_flex{
	display: flex;
	width: 100%;
	position: relative;
}
#voice .voice_flex::before {
	position: absolute;
	content: "";
	width: 35%;
	height: 100%;
	background: #eee;
	transform: skewX(35deg);
	top: 0;
	left: 175px;
	z-index: 1;
}
#voice .photo_area {
	width: 65%;
	min-height: 500px;
	overflow: hidden;
	margin: 0;
	padding: 0;
	background: #000;
	position: relative;
}
#voice .photo_area::before {
	position: absolute;
	content: "";
	background: url(../images/voice_bg.jpg) no-repeat;
	background-position: center right;
	width: 100%;
	top: 0;
	left: 0;
	min-height: 500px;
	background-size: cover;
	-webkit-transition: all .3s ease-out;
	-moz-transition: all .3s ease-out;
	-ms-transition: all .3s ease-out;
	transition: all .3s ease-out;
}
#voice .photo_area::after {
	position: absolute;
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 10.7vw 7.5vw 0 7.5vw;
	border-color: #b2d29f transparent transparent transparent;
	z-index: 0;
	opacity: 0.5;
	top: 0;
	left: 0;
}
#voice .diagonal_area {
	width: 35%;
	background: #eee;
	position: relative;
}

#voice .diagonal_area .text_area_flexItem {
	position: absolute;
	bottom: 60px;
	z-index: 20;
	text-align: left;
	/*cursor: pointer;*/
}
#voice .ttl_kana {
	display: block;
	font-size: 14px;
	margin-bottom: 14px;
	line-height: 14px;
	color: #333;
}
#voice .ttl {
	font-size: 60px;
	margin-bottom: 60px;
	line-height: 52px;
	color: #b0c34f;
}
#voice .txt {
	font-size: 16px;
	margin-bottom: 55px;
	line-height: 24px;
}
#voice .text_area_flexItem .btn a {
	position: relative;
	display: block;
	width: 159px;
	height: 53px;
	line-height: 45px;
	padding: 0px 50px;
    color: #fff;
    box-sizing: border-box;
}
#voice .text_area_flexItem .btn a::after{
	position: absolute;
    content: "";
    background: url(../images/w_arrow.png) no-repeat;
    width: 26px;
    height: 4px;
    right: 0;
    bottom: 0;
    margin: auto;
}
@media (min-width: 1000px){
	#voice .text_area_flexItem .btn a {
		background: url(../images/more_b_btn.png) no-repeat;
	}
	#voice .text_area_flexItem .btn a::after{
		top: -7px;
		left: 87px;
	}
}
@media (max-width: 999px){/*768px*/
	#voice {
		background: transparent;
		padding-top: 0;
		width: 100%;
		position: relative;
	}
	#voice::before {
		position: absolute;
		content: "";
		width: 53%;
		height: 100%;
		background: #eee;
		transform-origin: 0 0;
		transform: skewX(37deg);
		top: 0;
		left: -200px;
		z-index: 1;
	}
	#voice .voice_flex {
		flex-wrap: wrap;
		padding-bottom: 200px;
		background: #eee;
	}
	#voice .voice_flex::before{
		content: none;
	}

	#voice .photo_area {
		width: 100%;
		min-height: 250px;
	}
	#voice .photo_area::before {
		background: url(../images/sp/voice_bg.jpg) no-repeat;
		min-height: 250px;
		/*background-size: cover;*/
		background-position: center right;
	}
	#voice .photo_area::after {
		border-width: 30vw 22vw 0 22vw;
		border-color: #b2d29f transparent transparent transparent;
	}
	#voice .diagonal_area {
		width: 100%;
		background: transparent;
		position: absolute;
		top: 100px;
	}
	#voice .ttl_area_flexItem {
		position: absolute;
		bottom: 40%;
		left: 18%;
		z-index: 10;
	}
	#voice .diagonal_area .text_area_flexItem {
		position: absolute;
		top: 0;
		left: 0;
		z-index: 20;
		width: 100%;
	}
	#voice .diagonal_area .sp_order2_01 {
		order: 1;
	}
	#voice .diagonal_area .sp_order2_02 {
		order: 2;
		position: absolute;
		top: 200px;
		left: 0;
		font-size: 13px;
		color: #222;
		margin-bottom: 25px;
		line-height: 20px;
		text-align: center;
		width: 100%;
	}
	#voice .diagonal_area .sp_order_flex {
		display: flex;
		width: 100%;
		flex-wrap: wrap;
		position: relative;
		top: 150px;
		left: 0;
		height: 190px;
	}
	#voice .diagonal_area .sp_order01 {
		display: block;
		width: auto;
		order: 1;
		position: absolute;
		top: calc( -125px - calc( 23px - 6px));
		left: 7.73%;
		text-indent: -2rem;
		padding-left: 2rem;
	}
	#voice .diagonal_area .sp_order02 {
		display: block;
		width: 100%;
		order: 2;
		text-align: center;
		margin-top: 22px;
		color: #8b8b8b;
		font-size: 12px;
		text-indent: 0;
	}
	#voice .ttl {
		font-size: 40px;
		margin-bottom: 42px;
		line-height: 52px;
		text-indent: -5rem;
	}
	#voice .catch_sab {
		font-size: 12px;
		margin-bottom: 18px;
		text-align: right;
	}
	#voice .text_area_flexItem .catch_sab {
		font-size: 12px;
		color: #ccb69c;
		margin-bottom: 14px;
		line-height: 12px;
		text-align: center;
	}
	#voice .text_area_flexItem .txt {
		font-size: 13px;
		color: #222;
		margin-bottom: 25px;
		line-height: 20px;
	}
	#voice .text_area_flexItem .ttl {
		font-size: 46px;
		margin-bottom: 42px;
		line-height: 46px;
		text-indent: -5rem;
	}
	#voice .text_area_flexItem .catch_sab {
		font-size: 12px;
		margin-bottom: 18px;
		text-align: right;
	}
	#voice .text_area_flexItem .btn {
		text-align: center;
		position: absolute;
		width: 100%;
		bottom: -310px;
	}
	#voice .text_area_flexItem .btn a {
		margin: 0 auto;
		background: url(../images/sp/more_b_btn.png) no-repeat;
		background-size: contain;
		text-align: left;
	}
	#voice .text_area_flexItem .btn a::after{
		top: -7px;
		left: 87px;
	}
}
@media (max-width: 768px){
	#voice .photo_area::before {
		background: url(../images/sp/voice_bg.jpg) no-repeat;
		min-height: 250px;
		background-size: cover;
		background-position: center;
	}
	#voice .diagonal_area .sp_order01 {
		display: block;
		width: 100%;
		order: 1;
		position: absolute;
		top: -70px;
		left: 50px;
		text-indent: -2rem;
		padding-left: 2rem;
	}
	#voice .text_area_flexItem .ttl {
		font-size: 40px;
	}
}
@media (max-width: 390px){
	#voice::before {
		left: -66%;
		width: 66%;
	}
	#voice .photo_area::after {
		border-width: 70vw 44vw 0 0vw;
	}
}
@media (max-width: 375px){
	#voice .voice_flex::before {
		transform: skewX(35.7deg);
		left: -40.6%;
	}
}

/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#staff
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */

#staff {
	width: 100%;
	position: relative;
	overflow: hidden;
}
#staff .staff_flex {
	display: flex;
	width: 100%;
	position: relative;
	overflow: hidden;
}
#staff .staff_flex::before {
	position: absolute;
	content: "";
	width: 35%;
	height: 100%;
	background: #fff;
	transform: skewX(35deg);
	top: 0;
	right: 175px;
	z-index: 1;
}
#staff .photo_area {
	width: 65%;
	min-height: 500px;
	overflow: hidden;
	margin: 0;
	padding: 0;
	background: #000;
	position: relative;
}
#staff .photo_area::before {
	position: absolute;
	content: "";
	background: url(../images/staff_bg.jpg) no-repeat;
	background-position: center right;
	width: 100%;
	top: 0;
	left: 0;
	min-height: 500px;
	background-size: cover;
	-webkit-transition: all .3s ease-out;
	-moz-transition: all .3s ease-out;
	-ms-transition: all .3s ease-out;
	transition: all .3s ease-out;
}
#staff .photo_area::after {
	position: absolute;
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 7.5vw 10.7vw 7.5vw;
	border-color: transparent transparent #e2bf96 transparent;
	z-index: 0;
	opacity: 0.5;
	bottom: 0;
	right: 0;
}
#staff .diagonal_area {
	width: 35%;
	background: #fff;
	position: relative;
}

#staff .diagonal_area .text_area_flexItem {
	position: absolute;
	top: 106px;
	left: -120px;
	z-index: 20;
	text-align: left;
	/*cursor: pointer;*/
}
#staff .ttl_kana {
	display: block;
	font-size: 14px;
	margin-bottom: 14px;
	line-height: 14px;
	color: #333;
}
#staff .ttl {
	font-size: 60px;
	margin-bottom: 60px;
	line-height: 52px;
	color: #b0c34f;
}
#staff .txt {
	font-size: 16px;
	margin-bottom: 55px;
	line-height: 24px;
}
#staff .text_area_flexItem .btn a {
	position: relative;
	display: block;
	width: 159px;
	height: 53px;
	line-height: 45px;
	padding: 0px 50px;
    color: #fff;
    box-sizing: border-box;
}
#staff .text_area_flexItem .btn a::after{
	position: absolute;
    content: "";
    background: url(../images/w_arrow.png) no-repeat;
    width: 26px;
    height: 4px;
    right: 0;
    bottom: 0;
    margin: auto;
}
@media (min-width: 1000px){
	#staff .text_area_flexItem .btn a {
		background: url(../images/more_b_btn.png) no-repeat;
	}
	#staff .text_area_flexItem .btn a::after{
		top: -7px;
		left: 87px;
	}
}
@media (max-width: 999px){/*768px*/
	#staff {
		background: transparent;
		padding-top: 0;
		width: 100%;
		position: relative;
	}
	#staff::before {
		top: 0;
		position: absolute;
		content: "";
		width: 100%;
		height: 100%;
		background: #fff;
		transform-origin: 0 0;
		transform: skewX(37.1deg);
		z-index: 1;
	}
	#staff .staff_flex{
		flex-wrap: wrap;
	}
	#staff .staff_flex::before{
		content: none;
	}

	#staff .photo_area {
		width: 100%;
		min-height: 250px;
	}
	#staff .photo_area::before {
		background: url(../images/sp/staff_bg.jpg) no-repeat;
		min-height: 250px;
		background-size: cover;
		background-position: center;
	}
	#staff .photo_area::after {
		border-width: 0 22vw 30vw 22vw;
		border-color: transparent transparent #e2bf96 transparent;
	}
	#staff .diagonal_area {
		width: 100%;
		height: 200px;
		background: #fff;
	}

	#staff .diagonal_area .text_area_flexItem {
		position: absolute;
		top: 0;
		left: 0;
		z-index: 20;
		width: 100%;
	}
	#staff .diagonal_area .sp_order_flex {
		display: flex;
		width: 100%;
		flex-wrap: wrap;
		position: relative;
		margin-bottom: 0;
	}
	#staff .diagonal_area .sp_order01 {
		display: block;
		width: auto;
		order: 1;
		position: absolute;
		top: calc( -125px - calc( 23px + 6px));
		right: 9.333%;
		text-indent: -2rem;
		padding-left: 2rem;
	}
	#staff .diagonal_area .sp_order02 {
		display: block;
		width: 100%;
		order: 2;
		text-align: center;
		margin-top: 15px;
		color: #8b8b8b;
		font-size: 12px;
		text-indent: 0;
	}

	#staff .ttl_kana {
		font-size: 12px;
		margin-bottom: 15px;
	}
	#staff .ttl {
		font-size: 46px;
		margin-bottom: 16px;
		line-height: 46px;
		text-indent: -5rem;
	}
	#staff .text_area_flexItem .catch_sab {
		font-size: 12px;
		color: #ccb69c;
		margin-bottom: 14px;
		line-height: 12px;
		text-align: center;
	}
	#staff .text_area_flexItem .txt {
		font-size: 13px;
		color: #222;
		margin-bottom: 25px;
		line-height: 20px;
		text-align: center;
	}
	#staff .text_area_flexItem .btn {
		margin-bottom: 28px;
		text-align: center;
	}
	#staff .text_area_flexItem .btn a {
		margin: 0 auto;
		background: url(../images/sp/more_b_btn.png) no-repeat;
		background-size: contain;
		text-align: left;
	}
	#staff .text_area_flexItem .btn a::after{
		top: -7px;
		left: 87px;
	}
}
@media (max-width: 768px){
	#staff .diagonal_area .sp_order01 {
		display: block;
		width: 100%;
		order: 1;
		position: absolute;
		top: inherit;
		bottom: 210px;
		left: 58vw;
		text-indent: -2rem;
		padding-left: 2rem;
	}
	#staff .ttl {
		font-size: 40px;
	}
}
@media (max-width: 390px){
	#staff::before {
		top: 0;
		left: 43.466%;
	}
	#staff .photo_area::after {
		border-width: 0px 0 70vw 44vw;
	}
}

@media (max-width: 375px){
	#staff .staff_flex::before {
		transform: skewX(36deg);
		right: -34.5%;
	}
}

/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#lunch
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */

#lunch {
	width: 100%;
	position: relative;
	overflow: hidden;
}
#lunch .lunch_flex {
	display: flex;
	width: 100%;
	position: relative;
}
#lunch .lunch_flex::before {
	position: absolute;
	content: "";
	width: 35%;
	height: 100%;
	background: #eee;
	transform: skewX(35deg);
	top: 0;
	left: 175px;
	z-index: 1;
}
#lunch .photo_area {
	width: 65%;
	min-height: 500px;
	overflow: hidden;
	margin: 0;
	padding: 0;
	background: #000;
	position: relative;
}
#lunch .photo_area::before {
	position: absolute;
	content: "";
	background: url(../images/lunch_bg.jpg) no-repeat;
	background-position: center right;
	width: 100%;
	top: 0;
	left: 0;
	min-height: 500px;
	background-size: cover;
	-webkit-transition: all .3s ease-out;
	-moz-transition: all .3s ease-out;
	-ms-transition: all .3s ease-out;
	transition: all .3s ease-out;
}
#lunch .photo_area::after {
	position: absolute;
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 10.7vw 7.5vw 0 7.5vw;
	border-color: #b2d29f transparent transparent transparent;
	z-index: 0;
	opacity: 0.5;
	top: 0;
	left: 0;
}
#lunch .diagonal_area {
	width: 35%;
	background: #eee;
	position: relative;
}

#lunch .diagonal_area .text_area_flexItem {
	position: absolute;
	bottom: 60px;
	z-index: 20;
	text-align: left;
	/*cursor: pointer;*/
}
#lunch .ttl_kana {
	display: block;
	font-size: 14px;
	margin-bottom: 14px;
	line-height: 14px;
	color: #333;
}
#lunch .ttl {
	font-size: 60px;
	margin-bottom: 60px;
	line-height: 52px;
	color: #b0c34f;
}
#lunch .txt {
	font-size: 16px;
	margin-bottom: 55px;
	line-height: 24px;
}
#lunch .text_area_flexItem .btn a {
	position: relative;
	display: block;
	width: 159px;
	height: 53px;
	line-height: 45px;
	padding: 0px 50px;
    color: #fff;
    box-sizing: border-box;
}
#lunch .text_area_flexItem .btn a::after{
	position: absolute;
    content: "";
    background: url(../images/w_arrow.png) no-repeat;
    width: 26px;
    height: 4px;
    right: 0;
    bottom: 0;
    margin: auto;
}
@media (min-width: 1000px){
	#lunch .text_area_flexItem .btn a {
		background: url(../images/more_b_btn.png) no-repeat;
	}
	#lunch .text_area_flexItem .btn a::after{
		top: -7px;
		left: 87px;
	}
}
@media (max-width: 999px){/*768px*/
	#lunch {
		background: transparent;
		padding-top: 0;
		width: 100%;
		position: relative;
	}
	#lunch::before {
		position: absolute;
		content: "";
		width: 53%;
		height: 100%;
		background: #eee;
		transform-origin: 0 0;
		transform: skewX(37deg);
		top: 0;
		left: -200px;
		z-index: 1;
	}
	#lunch .lunch_flex {
		flex-wrap: wrap;
		padding-bottom: 200px;
		background: #eee;
	}
	#lunch .lunch_flex::before{
		content: none;
	}

	#lunch .photo_area {
		width: 100%;
		min-height: 250px;
	}
	#lunch .photo_area::before {
		background: url(../images/sp/lunch_bg.jpg) no-repeat;
		min-height: 250px;
		background-size: cover;
		background-position: center;
	}
	#lunch .photo_area::after {
		border-width: 30vw 22vw 0 22vw;
		border-color: #b2d29f transparent transparent transparent;
	}
	#lunch .diagonal_area {
		width: 100%;
		background: transparent;
		position: absolute;
		top: 100px;
	}
	#lunch .ttl_area_flexItem {
		position: absolute;
		bottom: 40%;
		left: 18%;
		z-index: 10;
	}
	#lunch .diagonal_area .text_area_flexItem {
		position: absolute;
		top: 0;
		left: 0;
		z-index: 20;
		width: 100%;
	}
	#lunch .diagonal_area .sp_order2_01 {
		order: 1;
	}
	#lunch .diagonal_area .sp_order2_02 {
		order: 2;
		position: absolute;
		top: 200px;
		left: 0;
		font-size: 13px;
		color: #222;
		margin-bottom: 25px;
		line-height: 20px;
		text-align: center;
		width: 100%;
	}
	#lunch .diagonal_area .sp_order_flex {
		display: flex;
		width: 100%;
		flex-wrap: wrap;
		position: relative;
		top: 150px;
		left: 0;
		height: 190px;
	}
	#lunch .diagonal_area .sp_order01 {
		display: block;
		width: auto;
		order: 1;
		position: absolute;
		top: calc( -125px - calc( 23px - 6px));
		left: 8.533%;
		text-indent: -2rem;
		padding-left: 2rem;
	}
	#lunch .diagonal_area .sp_order02 {
		display: block;
		width: 100%;
		order: 2;
		text-align: center;
		margin-top: 22px;
		color: #8b8b8b;
		font-size: 12px;
		text-indent: 0;
	}
	#lunch .ttl {
		font-size: 40px;
		margin-bottom: 42px;
		line-height: 52px;
		text-indent: -5rem;
	}
	#lunch .catch_sab {
		font-size: 12px;
		margin-bottom: 18px;
		text-align: right;
	}
	#lunch .text_area_flexItem .catch_sab {
		font-size: 12px;
		color: #ccb69c;
		margin-bottom: 14px;
		line-height: 12px;
		text-align: center;
	}
	#lunch .text_area_flexItem .txt {
		font-size: 13px;
		color: #222;
		margin-bottom: 25px;
		line-height: 20px;
	}
	#lunch .text_area_flexItem .ttl {
		font-size: 46px;
		margin-bottom: 42px;
		line-height: 46px;
		text-indent: -5rem;
	}
	#lunch .text_area_flexItem .catch_sab {
		font-size: 12px;
		margin-bottom: 18px;
		text-align: right;
	}
	#lunch .text_area_flexItem .btn {
		text-align: center;
		position: absolute;
		width: 100%;
		bottom: -310px;
	}
	#lunch .text_area_flexItem .btn a {
		margin: 0 auto;
		background: url(../images/sp/more_b_btn.png) no-repeat;
		background-size: contain;
		text-align: left;
	}
	#lunch .text_area_flexItem .btn a::after{
		top: -7px;
		left: 87px;
	}
}
@media (max-width: 768px){
	#lunch .diagonal_area .sp_order01 {
		display: block;
		width: 100%;
		order: 1;
		position: absolute;
		top: -70px;
		left: 50px;
		text-indent: -2rem;
		padding-left: 2rem;
	}
	#lunch .text_area_flexItem .ttl {
		font-size: 40px;
	}
}
@media (max-width: 390px){
	#lunch::before {
		left: -66%;
		width: 66%;
	}
	#lunch .photo_area::after {
		border-width: 70vw 44vw 0 0vw;
	}
}
@media (max-width: 375px){
	#lunch .lunch_flex::before {
		transform: skewX(35.7deg);
		left: -40.6%;
	}
}
/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
more btn
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
@media (max-width: 999px){
	#top .btn img {
		max-width: 158px;
		height: auto;
	}
}
/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#topics
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */

#topics {
	width: 100%;
	box-sizing: border-box;
}
#topics a:hover {
	color: #b0c34f;
}
#topics .bg_area {
	margin: 0 auto;
	background: #eee;
	box-sizing: border-box;
}
#topics .ttl {
	font-size: 40px;
	color: #684011;
}
#topics .ttl_kana {
	display: block;
	font-size: 18px;
	font-weight: bold;
	letter-spacing: 0.12rem;
	line-height: 18px;
}
#topics .list {
	margin: 0 auto;
}
#topics .list li {
	display: flex;
	justify-content: flex-start;
	font-size: 14px;
	margin-bottom: 30px;
	position: relative;
}
#topics .list li:last-child {
	margin-bottom: 38px;
}

#topics .list li .date {
	position: relative;
}
#topics .list li .date::before {
	position: absolute;
	content: "";
	top: 9px;
	left: 0;
	background: #684011;
	width: 8px;
	height: 1px;
}
#topics .list li .txt {
	width: 630px;
	text-align: left;
}
#topics .link_area {
	width: 1000px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
}
#topics .link_area figure {
	width: 490px;
}
#topics .topics_btn .list_link {
	position: relative;
}
#topics .topics_btn .list_link::before {
	position: absolute;
    content: "";
    top: 0;
    bottom: 0;
    margin: auto;
    border-bottom: 1px solid #333;
    border-left: 1px solid #333;
	transform: rotate(225deg);
    -webkit-transform: rotate(225deg);
    -ms-transform: rotate(225deg);
}
#topics .topics_btn .list_link::after {
	position: absolute;
    content: "";
	width: 100%;
    height: 1px;
    margin: auto;
    background: #333;
}

@media (min-width: 1000px){
	#topics {
		padding: 87px 0 68px 0;
	}
	#topics .list li .date {
		width: 140px;
	}
	#topics .list li .tag {
		width: 230px;
	}
	#topics .list {
		width: 1000px;
	}
	#topics .bg_area {
		width: auto;
		padding: 3.333% 9.7094% 3.5435% 8.9298%;
	}
	#topics .topics_btn {
		margin-bottom: 38px;
	}
	#topics .topics_btn .list_link {
		margin-right: 12px;
		font-size: 16px;
	}
	#topics .topics_btn .list_link::before {
		width: 8px;
		height: 8px;
		right: -12px;
	}
	#topics .topics_btn .list_link::after {
		left: 0;
		bottom: -11px;
	}
	#topics .ttl .ttl_kana {
		margin: 3px 0 47px;
	}
}
@media (min-width: 1270px){
	#topics .bg_area {
		max-width: 1270px;
		padding: 3.333% 9.7094% 3.5435% 8.9298%;
	}
}

@media (max-width: 999px){/*768px*/
	#topics {
		width: 100%;
		padding: 17px 0 68px;
	}
	#topics .list {
		width: auto;
	}
	#topics .bg_area {
		width: 90%;
		padding: 3.333% 9.7094% 3.5435% 8.9298%;
	}
	#topics .ttl {
		font-size: 30px;
	}
	#topics .ttl_kana {
		font-size: 12px;
		margin: 6px 0 31px;
	}
	#topics .list {
		width: auto;
		text-align: left;
	}
	#topics .list li {
		display: flex;
		justify-content: flex-start;
		font-size: 12px;
		margin-bottom: 30px;
		position: relative;
		flex-wrap: wrap;
		padding-left: 1rem;
	}
	#topics .list li:last-child {
		margin-bottom: 30px;
	}
	#topics .list li .date {
		width: 80px;
	}
	#topics .list li .tag {
		width: 160px;
	}
	#topics .list li .date::before {
		top: 45%;
		left: -20%;
	}
	#topics .list li .txt {
		width: auto;
	}
	#topics .link_area {
		width: auto;
		display: block;
	}
	#topics .link_area figure {
		width: auto;
		margin-bottom: 14px;
	}
	#topics .topics_btn {
		margin-bottom: 38px;
	}
	#topics .topics_btn .list_link {
		margin-right: 10px;
		font-size: 15px;
	}
	#topics .topics_btn .list_link::before {
		width: 6px;
		height: 6px;
		right: -10px;
	}
	#topics .topics_btn .list_link::after {
		left: 0;
		bottom: -5px;
	}
}
@media (max-width: 768px){
	#topics .bg_area {
		width: 90%;
		padding: 9.6% 4% 12% 4%;
	}
	#topics .list li .date {
		width: 25%;
		margin-bottom: 2%;
	}
	#topics .list li .tag {
		width: 75%;
		margin-bottom: 2%;
	}
}

/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#reservation
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
#reservation {
	width: 100%;
	position: relative;
	color: #fff;
	box-sizing: border-box;
}
#reservation::after {
	width: 100%;
	height: 100%;
	position: absolute;
	content: "";
	display: block;
	background: url(../images/reservation_bg.jpg) no-repeat;
	background-size: cover;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	margin: auto;
	z-index: -10;
}
#reservation .ttl_kana {
	display: block;
	font-size: 12px;
	font-weight: bold;
	letter-spacing: 0.12rem;
	line-height: 18px;
}
#reservation .link_area {
	display: flex;
	justify-content: space-between;
	margin: 0 auto;
	font-weight: bold;
	text-align: center;
}
#reservation .link_area li {
	z-index: 0;
	height: auto;
	box-sizing: border-box;
	position: relative;
}
#reservation .link_area li.reserve::before {
	position: absolute;
	content: "";
	display: block;
	background: url(../images/icon_reserve.png) no-repeat;
	width: 21px;
	height: 23px;
	top: 0;
	bottom: 0;
	left: 0;
	right: 41%;
	margin: auto;
	z-index: 100;
}
#reservation .link_area li.document::before {
	position: absolute;
	content: "";
	display: block;
	background: url(../images/icon_document.png) no-repeat;
	width: 20px;
	height: 29px;
	top: 0;
	bottom: 3px;
	left: 0;
	right: 43%;
	margin: auto;
	z-index: 100;
}
#reservation .link_area li.tel::before {
	position: absolute;
	content: "";
	display: block;
	background: url(../images/icon_tel.png) no-repeat;
	width: 28px;
	height: 22px;
	top: 0;
	bottom: 0;
	left: 0;
	right: 57%;
	margin: auto;
	z-index: 100;
}
#reservation .link_area li:hover {
	background: rgb(255,255,255, 0.3);
	cursor: pointer;
	opacity: 0.9;
	transition: 0.3s;
}
#reservation .link_area li a {
	display: block;
	background: #fff;
	box-sizing: border-box;
	color: #684011;
}

@media (min-width: 1000px){
	#reservation {
		height: 380px;
		padding: 45px 0 120px 0;
	}
	#reservation .ttl {
		font-size: 40px;
		margin-bottom: 14px;
	}
	#reservation .ttl_kana {
		margin: 0 0 34px;
	}
	#reservation .link_area {
		width: 1000px;
	}
	#reservation .link_area li {
		width: 316px;
		padding: 8px;
	}
	#reservation .link_area li a {
		width: 300px;
		height: 91px;
		font-size: 20px;
		line-height: 92px;
		padding-left: 10%;
		letter-spacing: 0.12rem;
	}
	#reservation .link_area li.tel a {
		padding-left: 12%;
	}
}

@media (max-width: 999px){
	#reservation {
		height: 435px;
		padding: 50px 0 65px;
	}
	#reservation::after {
		background: url(../images/sp/reservation_bg.jpg) no-repeat;
		background-size: cover;
	}
	#reservation .ttl {
		font-size: 30px;
		margin-bottom: 10px;
		line-height: 30px;
	}
	#reservation .ttl_kana {
		margin-bottom: 18px;
	}
	#reservation .ttl_kana img {
		max-width: 23px;
		height: auto;
	}
	#reservation .link_area {
		display: block;
		width: 80%;
		margin: 0 auto;
		box-sizing: border-box;
	}
	#reservation .link_area li {
		width: auto;
		height: auto;
		padding: 8px;
		box-sizing: border-box;
		position: relative;
	}
	#reservation .link_area li.reserve::before {
		right: 61%;
	}
	#reservation .link_area li.document::before {
		right: 60%;
	}
	#reservation .link_area li.tel::before {
		right: 58%;
	}
	#reservation .link_area li a {
		width: auto;
		height: 66px;
		line-height: 66px;
		padding-left: 0;
		box-sizing: border-box;
	}
}
@media screen and (min-width:767px) and (max-width:999px){
	/*TB*/
	#reservation .link_area {
		display: block;
		width: 80%;
		max-width: 632px;
		margin: 0 auto;
		box-sizing: border-box;
	}
	#reservation .link_area li.reserve::before {
		right: 80%;
	}
	#reservation .link_area li.document::before {
		right: 80%;
	}
	#reservation .link_area li.tel::before {
		right: 79.8%;
	}
}
/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#ex_link
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
#ex_link {
	width: 100%;
	background: #444;
	box-sizing: border-box;
}
#ex_link .link_area {
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
}
#ex_link .link_area li {
	background: #fff;
	box-sizing: border-box;
}
#ex_link .link_area li.Bridal_Gallery a {
	display: block;
}
#ex_link .link_area li.Anniversary_Gallery a {
	display: block;
}
@media (min-width: 1000px){
	#ex_link {
		padding: 20px 0 20px 0;
	}
	#ex_link .link_area {
		width: 593px;
	}
	#ex_link .link_area li {
		width: 271px;
		padding: 10px 15px 12px;
	}
	#ex_link .link_area li.Bridal_Gallery a {
		border: solid 2px #001a5b;
	}
	#ex_link .link_area li.Anniversary_Gallery a {
		border: solid 2px #af0000;
	}
}
@media (max-width: 999px){
	#ex_link {
		padding: 18px 0;
	}
	#ex_link .link_area {
		width: 90%;
	}
	#ex_link .link_area li {
		width: 49%;
		padding: 4px 9px 5px;
	}
	#ex_link .link_area li.Bridal_Gallery a {
		border: solid 1px #001a5b;
	}
	#ex_link .link_area li.Anniversary_Gallery a {
		border: solid 1px #af0000;
	}
}
@media screen and (min-width:767px) and (max-width:999px){
	/*TB*/
	#ex_link .link_area {
		width: 78%;
		max-width: 632px;
	}
}

/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
footer
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.foot {
	width: 100%;
	background: #222;
	color: #d7d7d7;
	box-sizing: border-box;
}

.foot .footer_flex {
	display: flex;
	justify-content: flex-start;
}
.foot .footer_item:first-child {
	border-right: 1px solid #4b4b4b;
	padding-right: 109px;
}
.foot .ttl {
	font-size: 22px;
	color: #4b4b4b;
	margin-bottom: 13px;
}
.foot .ttl span {
	display: block;
	font-size: 12px;
	color: #4b4b4b;
	margin-bottom: 33px;
}
.foot .sns {
	display: flex;
	justify-content: space-between;
	width: 103px;
	margin: 0 auto;
	margin-bottom: 25px;
}
.foot .tel {
	font-size: 20px;
	color: #4b4b4b;
}
.foot .sitemap {
	width: 660px;
	display: flex;
	justify-content: flex-start;
	text-align: left;
	padding-left: 80px;
	font-size: 13px;
	letter-spacing: 0.06rem;
	line-height: 15px;
}
.foot .sitemap ul.in_list {
	width: auto;
	line-height: 17px;
}
.foot .sitemap a{
	color: #d7d7d7;
}
.foot .sitemap a:hover {
	color: #b0c34f;
}
.foot .sitemap li.hyphen  {
	position: relative;
	width: auto;
	padding-left: 1rem;
}
.foot .sitemap li.hyphen::before {
	position: absolute;
	content: "";
	background: #d7d7d7;
	width: 7px;
	height: 1px;
	top: 40%;
	left: 0;
	margin: auto;
}
.foot .sitemap li span.hyphen_01 {
	display: block;
	position: relative;
	padding-left: 2rem;
	margin-bottom: 10px;
}
.foot .sitemap li span.hyphen_01::before {
	position: absolute;
	content: "";
	background: #d7d7d7;
	width: 7px;
	height: 1px;
	top: 40%;
	left: 0;
	margin: auto;
}
.foot .sitemap .in_list {
	padding-left: 2.5rem;
}
.foot .sitemap .in_list li {
	margin-bottom: 13px;
}
.foot .sitemap .in_list li::before {
	content: none;
}
.foot .sitemap .mb_36 {
	margin-bottom: 36px !important;
}

.foot .foot_btm {
	margin: 43px 0 0 0;
	width: 100%;
	display: flex;
	justify-content: flex-end;
}

.foot .link {
	display: flex;
	justify-content: flex-end;
	font-size: 12px;
}
.foot .link li {
	margin-left: 1.5rem;
	margin-bottom: 21px;
}
.foot .link li a {
	color: #d7d7d7;
}
.foot .copy {
	font-size: 12px;
	text-align: right;
}

@media (min-width: 1000px){
	.foot {
		padding: 68px 0 70px 0;
	}
	.foot .inner {
		width: 1000px;
		margin: 0 auto;
		box-sizing: border-box;
		transform: translate(-96px, 0);
	}
	.foot figure.foot_logo {
		width: 194px;
		margin-bottom: 33px;
	}
	.foot .sitemap ul {
		width: 330px;
	}
	.foot .foot_btm_item {
		margin-right: 72px;
	}
}

@media (max-width: 1290px){
	.foot .inner {
		width: 96%;
		margin: 0 auto;
		box-sizing: border-box;
		transform: none;
	}
	.foot .footer_item:first-child {
		padding-right: 79px;
	}
	.foot .sitemap {
		width: 500px;
		padding-left: 60px;
	}
	.foot .sitemap ul {
		width: 50%;
	}
}

@media (max-width: 1440px){
	.foot .foot_btm_item {
		width: 350px;
		white-space: nowrap;
	}
}
@media (max-width: 999px){
	.foot {
		width: 100%;
		background: #222;
		color: #d7d7d7;
		padding: 13% 0 137px;
		box-sizing: border-box;
	}
	.foot .inner {
		width: auto;
	}
	.foot .footer_flex {
		display: block;
	}
	.foot .footer_item:first-child {
		border-right: none;
		border-bottom: 1px solid #4b4b4b;
		padding-right: 0;
		padding-bottom: 49px;
	}
	.foot figure {
		margin-bottom: 32px;
	}
	.foot .ttl {
		color: #fff;
		margin-bottom: 12px;
	}
	.foot .ttl span {
		color: #fff;
		margin-bottom: 32px;
	}
	.foot .sns {
		margin-bottom: -10px;
	}
	.foot .tel {
		color: #fff;
	}
	.foot .tel a {
		color: #fff;
	}
	.foot .sitemap {
		width: auto;
		display: block;
		padding: 13% 7.1% 0;
	}
	.foot .sitemap ul {
		width: 100%;
	}
	
	.foot .sitemap li.hyphen {
		width: auto;
		padding-left: 2rem;
	}
	.foot .sitemap li.hyphen::before {
		top: 40%;
		left: 4%;
	}
	.foot .sitemap li span.hyphen_01 {
		margin-bottom: 12px;
	}
	.foot .sitemap li span.hyphen_01::before {
		top: 40%;
		left: 4%;
	}
	.foot .sitemap .in_list {
		padding-left: 3rem;
	}
	.foot .sitemap .in_list li {
		margin-bottom: 8px;
	}
	.foot .sitemap ul:nth-child(2) {
		margin-top: 8%;
	}
	.foot .sitemap ul.in_list {
		margin-top: 10px;
	}
	.foot .sitemap .mb_10 {
		margin-bottom: 10px !important;
	}
	.foot .sitemap .mb_36 {
		margin-bottom: 23px !important;
	}
	.foot .foot_btm {
		margin: 14% 0 0 0;
	}
	.foot .foot_btm_item {
		margin-right: 5.33%;
	}
	.foot .link {
		font-size: 10px;
	}
	.foot .link li {
		margin-bottom: 31px;
	}
	.foot .link li a {
		color: #fff;
	}
	.foot .copy {
		font-size: 10px;
	}

	.foot .foot_fix {
		position: fixed;
		background: #b9c965;
		width: 100%;
		bottom: 0;
		left: 0;
		z-index: 1000;
	}
	.foot .foot_fix_flex {
		width: 95%;
		min-width: 350px;
		display: flex;
		justify-content: center;
		align-items: flex-end;
		margin: 0 auto;
		box-sizing: border-box;
		padding: 1% 0 4%;
	}
	.foot .foot_fix_flex .braidal {
		width: 130px;
	}
	.foot .foot_fix_flex .braidal img {
		vertical-align: middle;
	}
	.foot .foot_fix_flex .visit,
	.foot .foot_fix_flex .request {
		width: 103px;
		margin-left: 5px;
	}
}
@media screen and (min-width:767px) and (max-width:999px){
	/*TB*/
	.foot .foot_fix_flex {
		width: 78%;
		max-width: 632px;
		display: flex;
		justify-content: center;
		align-items: flex-end;
		margin: 0 auto;
		box-sizing: border-box;
		padding: 1% 0 4%;
	}
	.foot .foot_fix_flex .braidal {
		width: 200px;
	}
	.foot .foot_fix_flex .visit, .foot .foot_fix_flex .request {
		width: 200px;
		margin-left: 15px;
	}
}

/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
ホバー時の処理
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
#concept.big.active::after{
	transform: scale(1.2, 1.2);
}
#concept .concept_colorbg.active::after {
	background: #ddd !important;
}
#ceremony.big.active::after{
	transform: scale(1.2, 1.2);
}
#ceremony .ceremony_colorbg.active::after {
	background: #ddd !important;
}
#party.big.active::after{
	transform: scale(1.2, 1.2);
}
#party .party_colorbg.active::after {
	background: #ddd !important;
}
.photo_area.active::before {
  transform: scale(1.2, 1.2);
}
.diagonal_area.active {
  background: #ddd !important;
}
.fairyCourt_flex.active::before,
.eternalHouse_flex.active::before,
.breezeGarden_flex.active::before,
.flow_flex.active::before,
.cuisine_flex.active::before,
.dress_flex.active::before,
.plan_flex.active::before,
.voice_flex.active::before,
.diagonal_area.active::before,
.staff_flex.active::before,
.lunch_flex.active::before {
  background: #ddd !important;
}
#mansion .fairyCourt .diagonal_area.active {
	background: #ddd !important;
}
@media (max-width: 768px){
	#concept.big.active::after{
		transform: none;
	}
	#concept .concept_colorbg.active::after {
		background: transparent !important;
	}
	#ceremony.big.active::after{
		transform: none;
	}
	#ceremony .ceremony_colorbg.active::after {
		background: transparent !important;
	}
	.photo_area.active::before {
	  transform: none;
	}
	.diagonal_area.active {
	  background: transparent !important;
	}
	.fairyCourt_flex.active::before,
	.eternalHouse_flex.active::before,
	.breezeGarden_flex.active::before,
	.flow_flex.active::before,
	.cuisine_flex.active::before,
	.dress_flex.active::before,
	.plan_flex.active::before,
	.voice_flex.active::before,
	.diagonal_area.active::before,
	.staff_flex.active::before,
	.lunch_flex.active::before {
	  background: transparent !important;
	}
}


/*独自カーソルの指定*/
#concept,
#ceremony,
#party,
.fairyCourt,
.eternalHouse,
#cuisine,
#dress,
#plan,
#voice,
#staff,
#lunch,
.concept_txtarea,
.party_txtarea .btn a,
.text_area_flexItem,
.concept_txtarea .btn a,
.text_area_flexItem .btn a {
	cursor: none;
}
#hov03.text_area_flexItem {
	cursor: default;
}
#hov03.text_area_flexItem .btn a{
	cursor: pointer;
}
.cursor {
	position: fixed;
	top: -5px;
	left: -5px;
	width: 10px;
	height: 10px;
	border-radius: 50%;
	/*background: rgba(0, 0, 0, 0.7); ホバーする前の形状*/
	z-index: 1000;
	transition: width 0.5s, height 0.5s, top 0.5s, left 0.5s;
	transform: translate(0, 0);
	pointer-events: none;
  }
  
/*ホバーした時に見た目変化*/
.cursor.cursor--hover {
top: -20px;
left: -20px;
width: 40px;
height: 40px;
background: rgba(51, 51, 51, 0.5);
}

/* +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
jquery.inview　CSSアニメーションの追加設定
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ */
.delay-time_03 {
	animation-delay: 0.3s;
}
.delay-time_05 {
	animation-delay: 0.5s;
}
.delay-time_06 {
	animation-delay: 0.6s;
}
.delay-time_07 {
	animation-delay: 0.7s;
}
.delay-time_08 {
	animation-delay: 0.8s;
}
.delay-time_09 {
	animation-delay: 0.9s;
}
.delay-time_10 {
	animation-delay: 1.0s;
}
.delay-time_11 {
	animation-delay: 1.1s;
}
.delay-time_12 {
	animation-delay: 1.2s;
}
.delay-time_13 {
	animation-delay: 1.3s;
}
.delay-time_14 {
	animation-delay: 1.4s;
}
.delay-time_15 {
	animation-delay: 1.5s;
}
.delay-time_18 {
	animation-delay: 1.8s;
}

.fadeInTrigger,
.fadeIn {
	opacity: 0;
}


.fadeInAnime {
	animation-name: fadeInAnime;/*アニメーションの定義名*/
	animation-duration:3s;/*アニメーション変化時間 ※デフォルト*/
	animation-fill-mode: forwards;/*アニメーションの開始と終了時の状態を指定*/
	}

	/*アニメーションの開始から終了までを指定する*/
	@keyframes fadeInAnime{
	  0% {
		opacity: 0;
	  }
	  100% {
		opacity: 1;
	  }
	}

@media (min-width: 769px){
	#planBanner { padding-bottom: 70px; }
}
