@charset "UTF-8";
html {
    color: #666261;
    font-size: 10px;
    line-height: 1;
}
::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}
::selection {
    background: #b3d4fc;
    text-shadow: none;
}
hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}
audio,
canvas,
iframe,
img,
svg,
video {
    vertical-align: middle;
}
fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}
textarea {
    resize: vertical;
}
a {
	color:#666261;
}
a:hover img { opacity:0.7; }
img {
	max-width:100%;
}
.ac { text-align:center; }

.sp { display:none !important; }

h2 { margin-top:0; }

@media only screen and (max-width: 42em) {
  .pc { display:none !important; }
  .sp { display:block !important; }
}

body {
  font-family: 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
  font-size: 4em;
}
@media only screen and (max-width: 67.5em) {
  body {
    font-size: 3.65vw;
  }
}
@media only screen and (max-width: 42em) {
  body {
    font-size: 6.25vw;
  }
}

.clearfix:after {
  clear: both;
  content: '';
  display: block;
}

p {
	font-size:.4em;
	line-height:1.8em;
}

@media only screen and (max-width: 42em) {
	p {
		font-size:14px;
	}
}


/* ======================================================

	header

========================================================= */
header {
	background-color:#fff;
	position:fixed;
	width:100%;
	top:0;
/*	padding:.5em 1.3em .5em .75em;	*/
	padding:.5em 2vw;
	box-sizing:border-box;
	z-index:9999;
}
header .logo {
	width:4.7em;
	float:left;
}
header nav {
	float:left;
	margin-left:.5em;
/*	width:24.275em;	*/
	width:71vw;
}
header nav ul {
	list-style-type:none;
	padding-left:0;
	margin-top:.4em;
	margin-left:.6em;
	margin-bottom:0;
}
header nav li {
	font-size:.4em;
	float:left;
	padding:0 2.255vw;
/*	
	padding-left:1.925em;
	padding-right:1.925em;
*/
}
header nav li a {
	text-decoration:none;
}
header nav li:hover a {
	color:transparent;
}
header nav li:nth-child(2):hover {
	background:url(../images/nav_concept_hover.png) no-repeat center;
}
header nav li:nth-child(3):hover {
	background:url(../images/nav_facility_hover.png) no-repeat center;
}
header nav li:nth-child(4):hover {
	background:url(../images/nav_cuisine_hover.png) no-repeat center;
}
header nav li:nth-child(5):hover {
	background:url(../images/nav_fair_hover.png) no-repeat center;
}
header nav li:nth-child(6):hover {
	background:url(../images/nav_plan_hover.png) no-repeat center;
}
header nav li:nth-child(7):hover {
	background:url(../images/nav_gallery_hover.png) no-repeat center;
}
header nav li:nth-child(8):hover {
	background:url(../images/nav_report_hover.png) no-repeat center;
}
header nav li:last-child:hover {
	background:url(../images/nav_access_hover.png) no-repeat center;
}
.headIcon {
    display: flex;
	float:right;
	margin-top:.25em;
}
.headIcon .ist img, .headIcon .line img {
	width:.7em;
}
.headIcon .line {
	align-items: center;
	display: flex;
	margin-right: 10px;
}
.headIcon .line span {
	font-size: 10px;
	margin-right: 2px;
}

/* 1480px以下 */
@media only screen and (max-width: 92.5em) {
}

/* 1297px以下 */
@media only screen and (max-width: 81.063em) {
	header {
		padding:.5em .75em .5em .75em;
	}
}

@media only screen and (max-width: 42em) {
	header nav ul {
		margin-left:0;
		margin-top:0;
	}
	header nav li {
		font-size:14px;
		float:none;
		margin-left:0;
		padding:0;
		border-bottom:1px solid #ede5e0;
		overflow: hidden;
	    text-indent: 100%;
	    white-space: nowrap;
	}
	header nav li a {
		display:block;
		padding:1.15em;
		background:url(../images/nav_drawer_arrow.png) no-repeat 90%;
	}
	header nav li:first-child {
		background:url(../images/nav_home_sp.png) no-repeat 2em;
	}
	header nav li:nth-child(2) {
		background:url(../images/nav_concept_hover.png) no-repeat 2em;
	}
	header nav li:nth-child(3) {
		background:url(../images/nav_facility_hover.png) no-repeat 2em;
	}
	header nav li:nth-child(4) {
		background:url(../images/nav_cuisine_hover.png) no-repeat 2em;
	}
	header nav li:nth-child(5) {
		background:url(../images/nav_fair_hover.png) no-repeat 2em;
	}
	header nav li:nth-child(6) {
		background:url(../images/nav_plan_hover.png) no-repeat 2em;
	}
	header nav li:nth-child(7) {
		background:url(../images/nav_gallery_hover.png) no-repeat 2em;
	}
	header nav li:nth-child(8) {
		background:url(../images/nav_report_hover.png) no-repeat 2em;
	}
	header nav li:last-child {
		background:url(../images/nav_access_hover.png) no-repeat 2em;
	}
	header nav li:hover {
		background-position:2em !important;
	}
	.headIcon {
		margin-right:.5em;
		margin-top:0;
	}
	.headIcon a {
		margin-right:1em;
	}
	.headIcon .line {
		margin-right: .5em;
	}
	.headIcon .line span {
		display: none;
	}
	.headIcon .line a {
		margin-right: 0;
	}
	.headIcon .ist img {
		width:inherit;
	}
	.headIcon .line img {
		height: 28px;
		width: auto;
	}
}






/* ======================================================

	main

========================================================= */
.main-slick {
	position:relative;
}
.main-slick .border_top, .mainVisual .border_top {
	position:absolute;
	top:2.35em;
	z-index:1;
}
.main-slick .border_bottom, .mainVisual .border_bottom {
	position:absolute;
	bottom:.1em;
}
.main-slick h1 img {
	position:absolute;
	top:0;
	bottom:0;
	left:0;
	right:0;
	margin:auto;
	width:5.025em;
}

#topBridal {
	text-align:center;
	background:url(../images/top_fair_bg.png) no-repeat;
	background-size:cover;
	padding-top:1.5em;
	padding-bottom:1.6em;
}
#topBridal h2 {
	margin-bottom:.7em;
}
#topBridal h2 img {
	width:3.3169em;
}
#topBridal ul {
	list-style-type:none;
	padding-left:0;
	width:26.8em;
	margin:0 auto 1.4em;
}
#topBridal li {
	float:left;
	width:8em;
	margin-right:1.4em;
}
#topBridal li:last-child {
	margin-right:0;
}
#topBridal li a {
	text-decoration:none;
}
#topBridal li img {
	border:.2em solid #fff;
	box-sizing:border-box;
	box-shadow:0 0 8px rgba(197, 181, 161, .2);
}
#topBridal li span {
	background-color:#fff;
	display:block;
	width:100%;
	border:1px solid #7da477;
	border-radius:.625em;
	font-size:.4em;
	line-height:1.5em;
	padding:.6em 0;
	position:relative;
	margin-top:1.6em;
	box-sizing:border-box;
}
#topBridal li:hover span {
	background-color:#7da477;
	color:#fff;
}
#topBridal li span:before, #topBridal li span:after {
	content: '';
	position: absolute;
	left: 0;
	right:0;
	margin:auto;
	display: block;
	width: 0;
	height: 0;
	border-right: 10px solid transparent;
	border-left: 10px solid transparent;
}
#topBridal li span:before {
	top: -12px;
	border-bottom: 12px solid #7da477;
}
#topBridal li span:after {
	top: -11px;
	border-bottom: 12px solid #fff;
}
#topBridal li:hover span:after {
	border-bottom-color:#7da477;
}
#topBridal .more img, #topNews .more {
	width:11.825em;
}

#topPlan {
	background-image:url(../images/top_plan_bg.jpg);
	background-attachment: fixed;
	background-size: cover;
}
#topPlan .inner {
	width:31.5em;
	margin:auto;
	padding-top:5em;
	padding-bottom:3em;
	position:relative;
}
#topPlan .inner .left {
	background-color:rgba(255, 255, 255, .9);
	width:12em;
	padding:1.25em;
	box-sizing:border-box;
	position:relative;
	z-index:1;
}
#topPlan .inner .left h2 {
	text-align:center;
	margin-bottom:.7em;
}
#topPlan .inner .left h2 img {
	width:2.6168em;	
}
#topPlan .inner .left h3 {
	font-size:.55em;
	font-weight:normal;
	color:#666261;
	line-height:1.6em;
}
#topPlan .inner .left .price {
	font-size:.6em;
	color:#b53f3f;
	margin:0;
}
#topPlan .inner .left .subtitle {
	font-size:.45em;
	color:#b68f4a;
}
#topPlan .inner .left .attention {
	font-size:.3em;
}
#topPlan .inner .right {
	position:absolute;
	top:2.8em;
	right:0;
	width:24em;
}
#topPlan .inner .right .img {
	border:.2em solid #fff;
	box-sizing:border-box;
	box-shadow:0 0 49px rgba(174, 180, 186, .4);
}
#topPlan .inner .right a {
	float:right;
	margin-top:1em;
	margin-right:-.3em;
}

#topConcept {
	background-color:#2e1800;
	padding-top:1.5em;
}
#topConcept h2, #topNews h2, #topAccess h2, #topGallery h2 {
	text-align:center;
	margin-bottom:0;
}
#topConcept .inner {
	width:96%;
	max-width:1600px;
	margin:auto;
	position:relative;
	background:url(../images/leaf01.png) no-repeat 1em top, url(../images/leaf02.png) no-repeat 88% bottom;
	padding-top:2.5em;
	padding-bottom:2.85em;
	margin-top:-1em;
}
#topConcept .inner > img {
	border:.2em solid #fff;
	box-sizing:border-box;
	box-shadow:0 0 49px rgba(27, 30, 15, .3);
}
#topConcept .inner .caption {
	position:absolute;
	right:5%;
	bottom:19%;
}
#topConcept .inner .caption img {
	width:6.25em;
	max-width:250px;
}
#topConcept ul {
	list-style-type:none;
	padding-left:0;
	width:90%;
	max-width:1498px;
	margin:auto;
}
#topConcept li {
	float:left;
	width:47.5%;
	max-width:720px;
	position:relative;
	padding-top:.35em;
	padding-bottom:2em;
}
#topConcept li:first-child {
	background:url(../images/leaf03.png) no-repeat 60% top, url(../images/leaf04.png) no-repeat center 98%;
	background-size:86%;
}
#topConcept li:last-child {
	float:right;
	background:url(../images/leaf05.png) no-repeat center 98%;
	background-size:86%;
}
#topConcept li a {
	display:block;
	padding-top:1.7em;
}
#topConcept li a .tt {
	position:absolute;
	top:.5em;
	left:-1.3em;
	width:60%;
}

.bgFix {
	background-image:url(../images/top_concept_bg02.jpg);
	background-attachment: fixed;
	background-size: cover;
	padding-top:19.65em;
}
#topNews {
	background:url(../images/top_news_bg.jpg) no-repeat center;
	background-size:cover;
	padding-top:1.75em;
	padding-bottom:2.2em;
}

.width {
	width:25em;
	margin:auto;
}

#topNews dl {
	margin-bottom:1.2em;
}
#topNews dl:last-child {
	margin-bottom:2em;
}
#topNews dt, #topNews dd {
	float:left;
	font-size:.4em;
}
#topNews dt {
	width:8.313em;
	text-align:center;
	color:#fff;
	font-weight:bold;
	padding:0.563em 0 .5em;
	margin-left:2em;
}
#topNews dt.news {
	background:url(../images/news_icon.png) no-repeat;
	background-size:100%;
}
#topNews dt.fair {
	background:url(../images/fair_icon.png) no-repeat;
	background-size:100%;
}
#topNews dd {
	margin-right:2em;
	margin-left:2em;
	margin-top:.3em;
	line-height:1.7em;
	width:48em;
}
#topNews .more {
	display:block;
	margin:auto;
}
#topNews .more.tagBnr {
  margin-bottom: 1em;
  width: 14.075em;
}

.bgFix02 {
	background-image:url(../images/top_access_bg.jpg);
	background-attachment: fixed;
	background-size: cover;
	padding-top:1.75em;
}

#map {
	width: 100%;
	height: 400px;
	margin-top:1.35em;
	margin-bottom:1.75em;
}
#topGallery {
	background-color:#fff;
	padding-top:1.5em;
	padding-bottom:1.5em;
	background:#fff url(../images/top_gallery_bg.jpg) no-repeat bottom;
	background-size:100%;
}
.slick-box02 {
	width:90%;
	margin:1.3em auto 0;
}
.slick-box02 .slick-slide {
	position:relative;
	margin:0 .3em;
}
/*
.slick-box02 .slick-slide .flame_in {
	position:absolute;
	z-index:-1;
	left:0;
	right:0;
	margin:auto;
	height:92%;
	top:.35em;
}
*/

#topContact {
	margin-top:2em;
	margin-bottom:1em;
}
#topContact .inner {
	width:31.825em;
	margin:auto;
	background:url(../images/top_contact_bg01.png) no-repeat left top, url(../images/top_contact_bg02.png) no-repeat right top;
	background-size:1.625em;
}
#topContact h2 {
	margin-bottom:.45em;
}
#topContact .flexbox {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	width:15.6em;
	margin:.45em auto .55em;
}
#topContact .flexbox p {
	margin-bottom:0;
	margin-top:0;
}
#topContact .flexbox p:first-child {
	width:17.875em;
}
#topContact .flexbox p:last-child {
	width:17.063em;
}
#topContact .flexbox p img {
	margin-top:.6em;
}
#topContact .tel img {
	margin-right:2em;
}
#topContact ul {
	list-style-type:none;
	padding-left:0;
	display:inline-block;
	margin-top:.4em;
}
#topContact li {
	float:left;
	width:8em;
	margin-right:.8em;
}
#topContact li:last-child {
	margin-right:0;
}

.rightFix {
	position:fixed;
	right:0;
	top:30%;
	z-index:100;
}
.rightFix a {
	display:block;
	margin-bottom:.2em;
}
#pagetop {
	position:fixed;
	right:0;
	bottom:2em;
	z-index:100;
}

@media only screen and (max-width: 81.25em) {
	#topPlan .inner {
		width:98%;
	}
	#topPlan .inner .right a {
		margin-right:0;
	}
}

@media only screen and (max-width: 81.063em) {
	#topPlan .inner .right a {
		margin-right:0;
	}
	#topContact .inner {
		width:95%;
	}
	#topContact ul {
		width:94%;
	}
	#topContact li {
		width:31%;
		margin-right:3.5%;
	}
}


@media only screen and (max-width: 42em) {
	.main-slick .border_top, .mainVisual .border_top {
		top:2.39em;
	}
	.spNav {
		position:fixed;
		padding:.4em .5em;
		box-sizing:border-box;
		bottom:0;
		background-color:#fff;
		width:100%;
		z-index:999;
		text-align:center;
	}
	.spNav a {
		margin-left:8%;
	}
	.spNav a:first-child {
		margin-left:0;
	}
	.spNav a:first-child img {
		width:26%;
	}
	.spNav a:nth-child(2) img {
		width:24%;
	}
	.spNav a:nth-child(3) img {
		width:19%;
	}
	.spNav a:last-child img {
		width:14%;
	}
	#topBridal ul {
		width:70%;
	}
	#topBridal li {
		margin-left:.5em;
		margin-right:.5em;
	}
	#topBridal li span {
		font-size:13px;
		padding:.6em;
	}
	#topPlan {
		background-repeat:no-repeat;
		background-size:cover !important;
	}
	#topPlan .inner, .width, #topContact .inner, #topPlan .inner .left, #topConcept li, #topNews dd {
		width:100%;
	}
	#topPlan .inner .right {
		position:relative;
		width:95%;
		margin:auto;
		top:.8em;
	}
	#topPlan .inner .left h3, #topNews dt, #topNews dd {
		font-size:14px;
	}
	#topPlan .inner .left .price {
		font-size:18px;
	}
	#topConcept h2 img {
		width:40%;
	}
	#topConcept .inner .caption img {
		width:100%;
	}
	#topConcept .inner .caption {
		right:3%;
		bottom:17%;
		width:59%;	
	}
	#topConcept li {
		float:none;
		padding-bottom:.7em;
	}
	#topNews {
		background:#fff url(../images/top_news_bg_sp.jpg) no-repeat;
		background-size:100%;
	}
	#topNews h2 {
		margin-bottom:1em;
	}
	#topNews h2 img {
		width:50%;
	}
	#topNews dt, #topNews dd {
		margin-left:0;
		margin-right:0;
	}
	#topNews dl {
		width:80%;
		margin-left:auto;
		margin-right:auto;
	}
	#topAccess h2 img {
		width:30%;
	}
	#topGallery {
		background-size:52em;
	}
	#topGallery h2 img {
		width:35%;
	}
	.slick-box02 {
		width:80%;
	}
	.slick-next {
		background-size:100% !important;
	}
	.slick-prev {
		background-size:100% !important;
	}
	.bgFix {
		background-image:url(../images/top_concept_bg02_sp.jpg);
		padding-top:10em;
	}
	.js-parallax {
		background-size: 20em !important;
		background-attachment: scroll !important;
	}
	#topContact .inner {
		background:none;
	}
	#topContact .flexbox p:first-child, #topContact .flexbox p:last-child {
		width:100%;
	}
	#topContact .flexbox {
		display:block;
		margin-top:1em;
	}
	#topContact .flexbox p {
		margin-bottom:2em;
	}
	#topContact h2 img {
		width:35%;
	}
	#topContact .tel img {
		display:block;
		margin:0 auto 1em;
	}
	#topContact ul {
		width:auto;
	}
	#topContact li {
		float:none;
		margin-right:0;
		margin-bottom:1em;
		width:10em;
	}
	.slick-box03 .slick-prev {
		left:-1.5em;
		background-image:url(../images/slide_arrow03.png);
	}
	.slick-box03 .slick-next {
		right:-1.5em;
		background-image:url(../images/slide_arrow04.png);
	}
	.slick-box02 .slick-prev, .slick-box02 .slick-next, .slick-box03 .slick-prev, .slick-box03 .slick-next {
		height:2em;
		background-repeat:no-repeat;
	}
}



/* ======================================================

	footer

========================================================= */
footer {
	background-color:#f2f2f2;
	padding-top:1.5em;
}
footer .width {
	position:relative;
}
.footerInfo, footer ul {
	float:left;
}
.footerInfo .logo {
	margin-bottom:.5em;
}
.footerInfo .rj_logo {
	margin-top:1.2em;
}
footer ul {
	list-style-type:none;
	margin-top:1.9em;
	margin-left:1.3em;
}
footer li {
	font-size:.4em;
	margin-top:1.85em;
}
footer .copyright {
	margin:4.5em 0 0;
	background-color:#7ea37a;
	text-align:center;
	color:#dbe7d1;
	font-size:.35em;
	padding:1em 0;
}
footer .bnr {
	position:absolute;
	top:6.8em;
	left:15.2em;
	width:39vw;
	max-width:563px;
}

@media only screen and (max-width: 67.313em) {
	.footerInfo {
		width:8.9em;
	}
	footer ul {
		margin-left:1em;
	}
}

@media only screen and (max-width: 42em) {
	footer .width {
		width:90%;
		position:relative;
		padding-bottom:2.6em;
	}
	.footerInfo {
		width:100%;
	}
	footer ul {
		padding-left:0;
		margin-top:.5em;
	}
	footer ul.first {
		margin-left:0;
		clear:both;
	}
	.footerInfo .logo {
		width:4.7em;
	}
	.footerInfo .rj_logo {
		position:absolute;
		bottom:0;
		right:0;
		left:0;
		margin:auto;
		width:60%;
	}
	footer .bnr {
		position:relative;
		top:auto;
		left:auto;
	}
}