@charset "utf-8";


/* ----------------------------------------------------------------------
	home
---------------------------------------------------------------------- */

/* mainimg */
#home #mainimg {
	background: url(../img/bg_01.jpg) 0 0 repeat-x;
	padding: 5px 0 0;
}

#home #mainimg img {
	max-width: 100%;
	width: 100%;
	height: auto;
}

#home #mainimg div { position: relative; }

#home #mainimg p.maincatch {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}

@media screen and (max-width: 959px) {
	#home #mainimg p.maincatch img { width: 30vw; }
}

@media screen and (max-width: 767px) {
	
	#home #mainimg p.maincatch {
		left: 6vw;
		transform: translate(0,-50%);
	}
	
	#home #mainimg p.maincatch img { width: 46vw; }
}


/* alert-box */
#home .alert-box {}

#home .alert-box dl {
	font-size: 15px;
	font-size: 1.5rem;
	padding: 14px 0;
	margin: 0 auto;
	width: 960px;
}

#home .alert-box dl dt,
#home .alert-box dl dd { display: inline-block; }

#home .alert-box dl dd a { text-decoration: none; }

#home .alert-box dl dt {
	font-weight: bold;
	color: #7c0000;
	width: 140px;
}

#home .alert-box dl dt:before {
	content: "!";
	color: #fff;
	font-size: 1.4rem;
	text-align: center;
	line-height: 20px;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background: #7c0000;
	display: inline-block;
	margin-right: 10px;
}

@media screen and (max-width: 959px) {
	#home .alert-box dl {
		padding: 14px 30px;
		width: auto;
	}
}

@media screen and (max-width: 767px) {
	#home .alert-box dl { padding: 14px 15px; }
	
	#home .alert-box dl dt,
	#home .alert-box dl dd { display: block; }
	
	#home .alert-box dl dt { margin: 0 0 0.4em; }
}


/* saryo-box */
#home .saryo-box {
	padding: 60px 0;
	border-top: 1px solid #eee;
	border-bottom: 1px solid #eee;
	display: none;
}

#home .saryo-box .inner {
	position: relative;
	margin: 0 auto;
	width: 100%;
	max-width: 1200px;
	display: flex;
	justify-content: space-between;
	flex-direction: row-reverse;
}

#home .saryo-box p.ph {
	background-image: url("../../banquet/img/mainimg_saryo.jpg?=20210628");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	width: calc(100% - 440px);
	height: 520px;
}

#home .saryo-box .box {
	text-align: center;
	padding: 35px 40px 0 40px;
	width: 360px;
}

#home .saryo-box ul { margin: 0 0 25px; }

#home .saryo-box ul li {
	padding-left: 15px;
	float: left;
}

#home .saryo-box ul li:first-child { padding: 0; }

#home .saryo-box p.ttl { margin: 0 0 30px; }

#home .saryo-box p.ttl img { width: 320px; }

#home .saryo-box p.open { margin: 0 0 35px; }

#home .saryo-box p.open img { width: 320px; }

#home .saryo-box p.catch { margin: 0 0 35px; }

#home .saryo-box p.btn a {
	color: #381004;
	font-size: 18px;
	font-size: 1.8rem;
	text-align: center;
	text-decoration: none;
	line-height: 56px;
	height: 56px;
	border: 1px solid #381004;
	display: block;
}

#home .saryo-box p.btn a:hover {
	background: #381004;
	color: #fff;
}

#home .saryo-box p.txt {
	position: absolute;
	right: 20px;
	bottom: -32px;
}

@media screen and (max-width: 1025px) {
	#home .saryo-box p.ph { width: calc(100% - 420px); }

	#home .saryo-box .box { padding: 35px 30px 0 30px; }
}

@media screen and (max-width: 959px) {
	#home .saryo-box {
		padding: 30px;
		display: block;
	}

	#home .saryo-box .inner { display: block; }

	#home .saryo-box p.ph {
		padding-top: 60%;
		width: 100%;
		height: auto;
	}

	#home .saryo-box .box {
		text-align: center;
		padding: 0;
		margin: -40px auto 0;
		width: 360px;
	}

	#home .saryo-box p.txt { display: none; }
}

@media screen and (max-width: 767px) {
	#home .saryo-box { padding: 15px 15px 30px; }
	
	#home .saryo-box .box {
		text-align: center;
		padding: 0;
		margin: -30px auto 0;
		width: auto;
	}
	
	#home .saryo-box ul {
		padding: 0 5px;
		margin: 0 0 20px; 
	}
	
	#home .saryo-box ul li,
	#home .saryo-box ul li:first-child {
		padding: 0 5px;
		width: 33.33333333%;
		box-sizing: border-box;
	}
	
	#home .saryo-box ul li img { width: 100%; }
	
	#home .saryo-box p.ttl { margin: 0 0 20px; }
	
	#home .saryo-box p.ttl img { width: 260px; }
	
	#home .saryo-box p.open { margin: 0 0 25px; }
	
	#home .saryo-box p.open img { width: 260px; }
	
	#home .saryo-box p.catch { margin: 0 0 25px; }
	
	#home .saryo-box p.catch img { width: 220px; }
}


/* bn-photo-wedding */
/*#home .bn-photo-wedding {
	background: url("../img/bg_04.gif");
	padding: 50px 0;
}

#home .bn-photo-wedding .inner {
	background: #fff;
	margin: 0 auto;
	width: 960px;
	display: table;
	transition: 0.7s;
}

#home .bn-photo-wedding .inner:hover { background: #f2efed; }

#home .bn-photo-wedding .inner a {
	color: #381004;
	text-decoration: none;
	display: block;
}

#home .bn-photo-wedding .inner a:hover img {
	filter: alpha(opacity=100);
	opacity: 1;
}

#home .bn-photo-wedding p.ph,
#home .bn-photo-wedding .box {
	display: table-cell;
	vertical-align: middle;
}

#home .bn-photo-wedding .box {
	background: url("../../img/photo_wedding_bg.gif") center 0 repeat-y;
	width: 280px;
	padding: 0 100px;
	text-align: center;
}

#home .bn-photo-wedding p.ttl {
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 1.4;
	margin: 0 0 0.6em;
}

#home .bn-photo-wedding p.ttl .en {
	text-shadow: 0 0 5px #fff;
	font-size: 40px;
	font-size: 4rem;
	display: block;
}

#home .bn-photo-wedding dl dt {
	background: url("../../img/photo_wedding_plan_bg.gif") center center repeat-x;
	background-size: 150px 1px;
	font-size: 26px;
	font-size: 2.6rem;
	letter-spacing: 0.06em;
	margin: 0 0 0.1em;
}

#home .bn-photo-wedding dl dt span {
	background: #fff;
	padding: 0 10px 0 15px;
	transition: 0.7s;
}

#home .bn-photo-wedding .inner:hover dl dt span { background: #f2efed; }

#home .bn-photo-wedding dl dd {
	font-size: 15px;
	font-size: 1.5rem;
	margin: 0 0 0.8em;
}

#home .bn-photo-wedding p.btn {
	background: #381004;
	color: #fff;
	font-size: 18px;
	font-size: 1.8rem;
	line-height: 42px;
	text-align: center;
	text-decoration: none;
	margin: 0 0 14px;
	height: 42px;
}

@media screen and (max-width: 959px) {
	#home .bn-photo-wedding { padding: 30px; }

	#home .bn-photo-wedding .inner {
		padding: 20px 0 20px 20px;
		width: auto;
	}
	
	#home .bn-photo-wedding p.ph { width: 58%; }
	
	#home .bn-photo-wedding p.ph img {
		width: 100%;
		height: auto;
	}
	
	#home .bn-photo-wedding p.ttl .en {
		font-size: 36px;
		font-size: 3.6rem;
	}
	
	#home .bn-photo-wedding .box {
		width: 42%;
		padding: 0 20px;
		box-sizing: border-box;
	}
	
	#home .bn-photo-wedding p.ttl { margin-top: -1.6em; }
	
	#home .bn-photo-wedding dl dt {
		font-size: 24px;
		font-size: 2.4rem;
	}
	
	#home .bn-photo-wedding dl dd {
		font-size: 13px;
		font-size: 1.3rem;
	}
}

@media screen and (max-width: 767px) {
	#home .bn-photo-wedding { padding: 15px; }
	
	#home .bn-photo-wedding .inner,
	#home .bn-photo-wedding p.ph,
	#home .bn-photo-wedding .box { display: block; }
	
	#home .bn-photo-wedding .inner { padding: 0; }
	
	#home .bn-photo-wedding p.ph,
	#home .bn-photo-wedding .box { width: 100%; }
	
	#home .bn-photo-wedding .box { padding: 0 20px 20px; }
	
	#home .bn-photo-wedding p.btn { margin: 0 ; }
}*/


/* topics-box */
#home .topics-box {
	width: 960px;
	padding: 20px 0;
	margin: 0 auto;
}

#home .topics-box h2 {
	font-size: 14px;
	font-size: 1.4rem;
	font-weight: normal;
	width: 200px;
	float: left;
}

#home .topics-box h2 .en {
	font-size: 28px;
	font-size: 2.8rem;
    line-height: 1.4;
}

#home .topics-box .box {
	padding: 12px 0 12px 29px;
	width:730px;
	float: right;
	border-left: 1px solid #eee;
}

@media screen and (max-width: 959px) {
	#home .topics-box {
		width: 100%;
		padding: 20px 30px;
		-webkit-box-sizing: border-box;
		-ms-box-sizing: border-box;
		-o-box-sizing: border-box;
		box-sizing: border-box;
	}
	
	#home .topics-box h2 {
		width: auto;
		text-align: center;
		margin: 0 0 1em;
		float: none;
	}
	
	#home .topics-box .box {
		padding: 0;
		width: auto;
		float: none;
		border: none;
	}
}

@media screen and (max-width: 767px) {
	#home .topics-box { padding: 20px 15px; }
}


/* topics-box02 */
#home .topics-box02 {
	background: url("../img/bg_03.jpg");
	padding: 80px 0;
}

#home .topics-box02 .inner {
	width: 960px;
	margin: 0 auto;
}

#home .topics-box02 h2 {
	font-size: 14px;
	font-size: 1.4rem;
	font-weight: normal;
	text-align: center;
	margin-bottom: 15px;
}

#home .topics-box02 h2 .en {
	font-size: 28px;
	font-size: 2.8rem;
    line-height: 1.4;
	display: block;
}

#home .topics-box02 p.btn {
	margin: 0 auto;
	width: 300px;
}

#home .topics-box02 p.btn a {
	background: #381004;
	color: #fff;
	font-size: 18px;
	font-size: 1.8rem;
	line-height: 56px;
	text-align: center;
	text-decoration: none;
	height: 56px;
	display: block;
}

#home .topics-box02 p.btn a:hover {
	filter: alpha(opacity=80);
	-moz-opacity:0.8;
	opacity:0.8;
	-webkit-transition: 0.7s;
	-moz-transition: 0.7s;
	-o-transition: 0.7s;
	transition: 0.7s;
}

@media screen and (max-width: 959px) {
	#home .topics-box02 { padding: 30px 15px 40px; }

	#home .topics-box02 .inner {
		width: auto;
		margin: 0 auto;
	}
	
	#home .topics-box02 p.btn {
		width: 33.333333333%;
		padding: 0 15px;
		box-sizing: border-box;
	}
}

@media screen and (max-width: 767px) {
	#home .topics-box02 { padding: 40px 15px; }
		
	#home .topics-box02 p.btn {
		width: auto;
		padding: 0;
	}
}


/* report-box */
#home .report-box {
	background: url(../../img/home/report_bg.jpg) center center no-repeat;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
	background-attachment: fixed;
	padding: 80px 0;
}

#home .report-box h2 {
	color: #fff;
	margin-bottom: 30px;
}

#home .report-box a {
	color: #fff;
	text-decoration: none;
}

#home .report-box .box-inner {
	position: relative;
	margin: 0 0 30px;
}

#home .report-box p.btn-prev,
#home .report-box p.btn-next {
	position: absolute;
	top: 120px;
	background: #fff;
	font-size: 28px;
	font-size: 2.8rem;
	text-align: center;
	line-height: 1;
	width: 36px;
	height: 36px;
	cursor: pointer;
	border-radius: 18px;
}
#home .report-box p.btn-prev { left: 20px; }
#home .report-box p.btn-next { right: 20px; }

#home .report-box .slide .box {
	text-align: center;
	margin: 0 15px;
}

#home .report-box .slide .box figure span {
	background: #fff;
	display: block;
}

#home .report-box .slide .box figure span img {
	height: 300px;
	object-fit: cover;
}

#home .report-box .slide .box figcaption { margin: 15px 0 0; }

#home .report-box p.btn {
	width: 260px;
	margin: 0 auto;
}

#home .report-box p.btn a {
	background: #e6b422;
	font-size: 18px;
	font-size: 1.8rem;
	line-height: 56px;
	text-align: center;
	height: 56px;
	display: block;
}

#home .report-box p.btn a:hover {
	filter: alpha(opacity=80);
	-moz-opacity:0.8;
	opacity:0.8;
	-webkit-transition: 0.7s;
	-moz-transition: 0.7s;
	-o-transition: 0.7s;
	transition: 0.7s;
}


@media screen and (max-width: 959px) {
	#home .report-box { background-attachment: scroll; }
}

@media screen and (max-width: 767px) {
	#home .report-box { padding: 60px 0; }
	
	#home .report-box p.btn-prev { left: 30px; }
	#home .report-box p.btn-next { right: 30px; }
	
	#home .report-box .slide .box { margin: 0 10px; }

	
	#home .report-box .slide .box figure span img {
		width: 280px;
		height: 190px;
	}
	
	#home .report-box p.btn-prev,
	#home .report-box p.btn-next { top: 80px; }
	
	#home .report-box p.btn {
		margin: 0 15px;
		width: auto;
	}
}


/* fair-box */
#home .fair-box { background: url(../img/bg_01.jpg) center 0; }

#home .fair-box h2 { margin-bottom: 25px; }

#home .fair-box .box-inner {
	background: url(../../img/home/fair_bg.png) center 0 no-repeat;
	background-attachment: fixed;
	padding: 80px 0;
}

#home .fair-box .box-inner .inner {
	background: rgba(255,255,255,0.6);
	padding: 15px;
	margin: 0 auto 30px;
	width: 930px;
}

#home .fair-box .box-inner .inner div {
	background: #fff;
	padding: 15px;
}

#home .fair-box .box {
	margin-left: 30px;
	width: 300px;
	float: left;
}

#home .fair-box .box:first-child { margin-left: 0; }

#home .fair-box .box p { margin: 0 0 15px; }

#home .fair-box .box dl dt {
	font-size: 14px;
	font-size: 1.4rem;
	margin: 0 0 0.8em;
}

#home .fair-box dl dt { margin: 0 0 15px; }

#home .fair-box p.btn {
	width: 260px;
	margin: 0 auto;
}

#home .fair-box p.btn a {
	background: #381004;
	color: #fff;
	font-size: 18px;
	font-size: 1.8rem;
	line-height: 56px;
	text-align: center;
	text-decoration: none;
	height: 56px;
	display: block;
}

#home .fair-box p.btn a:hover {
	filter: alpha(opacity=80);
	-moz-opacity:0.8;
	opacity:0.8;
	-webkit-transition: 0.7s;
	-moz-transition: 0.7s;
	-o-transition: 0.7s;
	transition: 0.7s;
}

@media screen and (max-width: 959px) {
	#home .fair-box .box-inner {
		background-position: center -130px;
		-webkit-background-size: 1400px 588px;
		-moz-background-size: 1400px 588px;
		-o-background-size: 1400px 588px;
		background-size: 1400px 588px;
	}
	
	#home .fair-box .box-inner { background-attachment: scroll; }
	
	#home .fair-box .box-inner .inner {
		width: auto;
		margin: 0 30px 30px;
	}
	
	#home .fair-box iframe { width: 100%; }
	
	#home .fair-box .box {
		margin-left: 0;
		width: 33.333%;
		padding: 0 15px;
		box-sizing: border-box;
	}
}

@media screen and (max-width: 767px) {
	#home .fair-box .box-inner{
		background-position: center -30px;
	
		-webkit-background-size: 800px 336px;
		-moz-background-size: 800px 336px;
		-o-background-size: 800px 336px;
		background-size: 800px 336px;
		
		padding: 40px 0;
	}
	
	#home .fair-box .box-inner .inner {
		padding: 0;
		margin: 0 15px 30px;
	}
	
	#home .fair-box .box {
		padding: 0 0 15px;
		margin: 0 0 15px;
		width: auto;
		float: none;
		border-bottom: 1px dotted #381004;
	}
	
	#home .fair-box .box:last-child { margin: 0; }
	
	#home .fair-box .box p { text-align: center; }
	
	#home .fair-box p.btn {
		margin: 0 15px;
		width: auto;
	}
}


/* movie-box */
#home .movie-box {
	text-align: center;
	padding: 80px 0;
	border-bottom: 1px solid #eee;
}

#home .movie-box iframe { vertical-align: bottom; }

@media screen and (max-width: 767px) {
	#home .movie-box { padding: 40px 15px; }
	
	#home .movie-box .iframe-wrap {
		position: relative;
		width: 100%;
		padding-top: 56.25%;
	}

	#home .movie-box .iframe-wrap iframe {
		position: absolute;
		top: 0;
		right: 0;
		width: 100%;
		height: 100%;
	}
}


/* wrap-box */
#home .wrap-box {
	width: 960px;
	padding: 80px 0;
	margin: 0 auto;
}

@media screen and (max-width: 959px) {
	#home .wrap-box {
		padding: 0;
		width: auto;
	}
}


/* blog-box */
#home .blog-box {
	width: 465px;
	float: left;
}

#home .blog-box .box-inner {
	margin: 0 0 22px;
	height: 330px;
	overflow: auto;
	border-top: 1px solid #eee;
}

#home .blog-box .box { background: url(../img/line_02.gif) 0 bottom repeat-x; }

#home .blog-box .box a {
	text-decoration: none;
	padding: 10px 0;
	display: block;
}

#home .blog-box dl {
	background: url(../img/line_02.gif) 0 bottom repeat-x;
	padding: 15px 0;
}

#home .blog-box .box p.ph {
	margin-right: 15px;
	height: 50px;
	float: left;
	overflow: hidden;
}

#home .blog-box p.btn {
	width: 260px;
	margin: 0 auto;
}

#home .blog-box p.btn a {
	background: #381004;
	color: #fff;
	font-size: 18px;
	font-size: 1.8rem;
	line-height: 56px;
	text-align: center;
	text-decoration: none;
	height: 56px;
	display: block;
}

#home .blog-box p.btn a:hover {
	filter: alpha(opacity=80);
	-moz-opacity:0.8;
	opacity:0.8;
	-webkit-transition: 0.7s;
	-moz-transition: 0.7s;
	-o-transition: 0.7s;
	transition: 0.7s;
}

@media screen and (max-width: 959px) {
	#home .blog-box {
		padding: 0 30px 40px;
		margin: 0 0 20px;
		width: 100%;
		float: none;
		border-bottom: 1px solid #eee;
		box-sizing: border-box;
	}
	
	#home .blog-box .box-inner {
		height: auto;
		overflow: visible;
	}
}

@media screen and (max-width: 767px) {
	#home .blog-box { padding: 40px 15px; }
	
	#home .blog-box p.btn {
		width: auto;
		margin: 0;
	}
}


/* intro-box */
#home .intro-box {
	width: 465px;
	float: right;
}

#home .intro-box p.ph {
	text-align: center;
	margin: 0 0 18px;
}

#home .intro-box p.txt {  margin: 0 0 14px; }

#home .intro-box p.btn {
	width: 260px;
	margin: 0 auto;
}

#home .intro-box p.btn a {
	background: #381004;
	color: #fff;
	font-size: 15px;
	font-size: 1.5rem;
	font-weight: bold;
	line-height: 56px;
	text-align: center;
	text-decoration: none;
	height: 56px;
	display: block;
}
#home .intro-box p.btn a:hover {
	filter: alpha(opacity=80);
	-moz-opacity:0.8;
	opacity:0.8;
	-webkit-transition: 0.7s;
	-moz-transition: 0.7s;
	-o-transition: 0.7s;
	transition: 0.7s;
}

#home .intro-box p.btn a span {
	font-size: 16px;
	font-size: 1.6rem;
}

@media screen and (max-width: 959px) {
	#home .intro-box {
		padding: 0 30px;
		width: 100%;
		float: none;
		box-sizing: border-box;
	}
	
	#home .intro-box p.ph {
		padding-right: 15px;
		margin: 0 0 20px;
		width: 50%;
		float: left;
		box-sizing: border-box;
	}
}

@media screen and (max-width: 767px) {
	#home .intro-box {
		padding: 40px 15px;
	}
	
	#home .intro-box p.ph {
		padding-right: 0;
		margin: 0 0 20px;
		width: 100%;
		float: none;
	}
	
	#home .intro-box p.btn {
		width: auto;
		margin: 0;
	}
}




