/* ==========================================================================
トップ
========================================================================== */

/*クロスフェード*/
.mainimg-area{
	position: fixed;
	}
	#bgCrossFade {
		width:100vw;
		height:100vh;
		position:relative;
		}
		#bgCrossFade li{
			height:100vh;
			}

			/*メイン画像スライド*/
			#bgCrossFade .main-img{
				position: absolute;
			    content: "";
			    display: block;
			    width: 100vw;
				height:100vh;
			    top: 0;
			    background-size:cover !important;
				opacity: 0;
			    }
			    #bgCrossFade .delay-img1{
			    	background: url(../images/index-main01.jpg) no-repeat center center;
			    	}
			    #bgCrossFade .delay-img2{
			    	background: url(../images/index-main02.jpg) no-repeat center center;
			    	}
			    #bgCrossFade .delay-img3{
			    	background: url(../images/index-main03.jpg) no-repeat center center;
			    	}
				#bgCrossFade .delay-img4{
			    	background: url(../images/index-main04.jpg) no-repeat center center;
			    	}
				#bgCrossFade .delay-img5{
					background: url(../images/index-main05.jpg) no-repeat center center;
					}
				#bgCrossFade .delay-img6{
					background: url(../images/index-main06.jpg) no-repeat center center;
					}
				#bgCrossFade .delay-img7{
					background: url(../images/index-main07.jpg) no-repeat center center;
					}
			/*黒フィルタ*/
			#bgCrossFade div.blk-filter{
				position:absolute;
				width: 100vw;
				height: 100vh;
				background-color: rgba(0,0,0,0.2);
				animation: none;
				z-index: 20;
				}

			/*メイン画像用テキスト*/
			#bgCrossFade .main-txt{
				position: absolute;
				z-index: 30;
				padding-top: calc(50vh - 33px);
				width: 100vw;
				}
				#bgCrossFade .main-txt p{
					color: #fff;
					text-align: center;
					font-size: 36px;
					line-height: 1.5;
					opacity: 0;
					font-family: 'Noto Serif JP', serif;
					font-weight:400;
					}
					/*順番設定 10秒間隔*/
					.delay-txt1{
						position: absolute;
						width: 100%;
						opacity: 1 !important;
						/* animation: logo-fadeinout 8s forwards;
						animation-delay: 2s; */
						}
						@keyframes logo-fadeinout{
							0%{
								opacity: 0;
							}
							35%,
							70%{
								opacity:1;
							}
							100%{
								opacity:1;
							}
						}
					/* 21.8.18非表示
					.delay-txt2{
						animation: txt-fadein 2s forwards;
						animation-delay: 10s;
						text-shadow: 1px 1px 3px #333;
						}
						@keyframes txt-fadein{
							0%{
								opacity: 0;
							}
							100%{
								opacity:1;
							}
						}
					.delay-txt3{
						animation: txt-fadein 2s forwards;
						animation-delay: 13s !important;
						text-shadow: 1px 1px 3px #333;
						}
						@keyframes txt-fadein{
							0%{
								opacity: 0;
							}
							100%{
								opacity:1;
							}
						} */

			/*スクロールダウンアニメ*/
			#bgCrossFade .arrowWrap {
				position: absolute;
				left: 20px;
				bottom: 0;
				height: 200px !important;
				z-index: 20;
				}
				#bgCrossFade .arrowInner p {
					font-size: 12px;
					text-align: end;
					transform: rotate(90deg);
					color: #fff;
					}
				#bgCrossFade .arrow {
					width: 1px;
					height: 100px;
					margin: 30px auto 0;
					background-color: #eee;
					position: relative;
					overflow: hidden;
					}
				#bgCrossFade .arrow::before {
					content: '';
					width: 1px;
					height: 100px;
					margin: 50px auto 0;
					background-color: rgba(0,0,0,0.5);
					position: absolute;
					top: -150px;
					left: 0;
					animation: arrow 2.5s ease 0s infinite normal;
					}
				@keyframes arrow {
					0% {
						transform: translate3d(-50%, 0, 0);
					}

					60% {
						transform: translate3d(-50%, 100px, 0);
					}

					100% {
						transform: translate3d(-50%, 100px, 0);
					}
				}
/* informationバナー本体 */
/* バナー本体 */

.news-area .news-area-inn .news-banner  {
	position: absolute;
	z-index: 30;
	width: 100vw;
  display:flex;
  height: 30px;
  width: 100%;
  background-color: #fff;
  overflow: hidden;
	max-width: 900px;
	transform: translateY(calc(-100vh + 100px));
	margin: -15px auto; /* 中央寄せ */
	left: 0;
	right: 0;

}


/* バナー内 先頭四角 */
.news-area .news-area-inn .news-banner .news-banner_title {
background-color: #9a3334;
color: #fff;
z-index: 100;
padding-left: 40px;
padding-right: 40px;
padding: 0 40px 5px;
line-height: 30px;
}

/* バナー内テキスト */
.news-area .news-area-inn .news-banner .news-banner_text {
	width: 90;
  display: flex;
  color: #333;
  line-height: 30px;
  padding-left: 100%;
  white-space: nowrap;
  animation: animate-banner 20s linear infinite;
	z-index: 40;
}

.news-area .news-area-inn .news-banner .news-banner_text p .text_info {
	line-height: 30px;
}

/* バナー内の要素をすべて選択 */
#bgCrossFade .news-banner__content > * {
  display: inline-block;
}

/* 横にスクロールさせるアニメーション */
@keyframes animate-banner {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-100%);
  }
}

/*トップメインアニメ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/

/*画像スライド*/
#bgCrossFade .main-img{
	animation: img-fadein-out 28s infinite;/*10s × 4枚*/
	}
	/*keyframesのパーセントは画像枚数に依存*/	
	@keyframes img-fadein-out{
		0% {
			opacity: 0;
			}
		7% {
			opacity: 1;
			}
		/*4枚なので100/4=25%で次のフェードアウト開始 */	
		14% {
			opacity: 1;
			}
		21%{
			opacity: 0;
			z-index:9;
			}
		100% {
			opacity: 0 ;
			}
		}

	/*順番設定 10秒間隔*/
	.delay-img1{
		}
		.delay-img2{
			animation-delay: 4s !important;
			}
		.delay-img3{
			animation-delay: 8s !important;
			}
		.delay-img4{
			animation-delay: 12s !important;
			}
		.delay-img5{
			animation-delay: 16s !important;
		}
		.delay-img6{
			animation-delay: 20s !important;
		}
		.delay-img7{
			animation-delay: 24s !important;
		}

		
					

/*トップお知らせ*/
.news-area{
	padding-top: 100vh;
	}	

/*トップメインボタン*/
.top-contents-area{	
	position: relative;
	z-index: 40;
	background-color: #fff;
	}
	.top-contents-area ul {
		display: flex;
		flex-wrap: wrap;
		max-width: 1200px;
		width: 100vw;
		margin:0 auto;
		padding-bottom: 50px;
		}
		.top-contents-area ul a{
			display: block;
			max-width: 400px;
			width: 33vw;
			flex-grow: 1;
			overflow: hidden;
			position: relative;
			height: calc(400px * 0.4);
			}
			.top-contents-area ul div{
				text-align: center;
				transition: 1s;
				background-size: cover;
					height: calc(400px * 0.4);
				}
			.top-contents-area ul li{
				background-color: rgba(0,0,0,0.4);
				position: absolute;
				color: #fff;
				top: 0;
				left: 0;
				width:100%;
					height: calc(400px * 0.4);
				transition: 1s;
				}
				.top-contents-area ul li h2{
					font-size: 24px;
					position: absolute;
					width: 100%;
					text-align:center;
					top: calc(400px * 0.15);
					transition: 1s;
					}
				.top-contents-area ul li p{
					position: absolute;
					width: 100%;
					text-align:center;
					top: calc((400px * 0.15) + 29px);
					transition: 1s;
					}
				.top-contents-area ul li .p-readmore{
					position: absolute;
					bottom: 70px;
					left: calc(200px - 85px);
					opacity: 0;
					}
					.top-contents-area a:hover .p-readmore{
						opacity: 1;
						}

		.top-contents-area ul a:hover{
			
			}
			.top-contents-area ul a:hover div{
				transition: 1s;
				}
			.top-contents-area ul a:hover li{
				background-color: rgba(0,0,0,0.2);
				transition: 1s;
				}
			/*	ホバーエフェクト無効
			.top-contents-area ul  a:hover li h2{
				top: 110px;
				transition: 1s;
				}
				.top-contents-area ul  a:hover li p{
					top: 150px;
					transition: 1s;
					}*/

			/*read more 矢印*/
			.top-contents-area ul a:hover .p-readmore--long span::before {
        		animation: _p-readmore--long-before 0.8s ease forwards 0s; 
				}
			.top-contents-area ul a:hover .p-readmore--long span::after {
				animation: _p-readmore--long-after 0.8s ease forwards 0s; 
				} 	
	
	/*当クラブについて*/
	#top-aboutus div{
		background-image: url(../images/bg-top-aboutus.jpg);
		background-position: center bottom -30px;
		}
	/*コース紹介*/
	#top-course div{
		background-image: url(../images/bg-top-course.jpg);
		}
	/*料金案内*/
	#top-guide div{
		background-image: url(../images/bg-top-guide.jpg);
		background-position: center bottom -30px;
		}
	/*会員専用*/
	#top-member div{
		background-image: url(../images/bg-top-member.jpg);
		background-position: center bottom -30px;
		}
	/*施設紹介*/
	#top-facility div{
		background-image: url(../images/bg-top-facility.jpg);
		}
	/*レストラン*/
	#top-restaurant div{
		background-image: url(../images/bg-top-restaurant.jpg);
		}
	
	
/* ==========================================================================
当クラブについて
========================================================================== */
/*タイトル*/
#aboutus .pagetitle{
	background-image:url(../images/bg-aboutus.jpg);
	background-position-y: center;
	margin-bottom: 100px;
	}

#aboutus #aboutus-area{
	max-width: 1200px;
	width: 100vw;
	margin:0 auto;
	padding-bottom: 30px;
	}
	#aboutus .top-aboutus{
		display: flex;
		}
		#aboutus .txt-aboutus{
			flex-grow: 1;
			}
			#aboutus .txt-aboutus .subtitle{
				text-align: left;
				padding-bottom: 10px;
				}
			#aboutus .txt-aboutus .subtitle-sub{
				text-align: left;
				padding-bottom: 20px;
				color: #999;
				}
		#aboutus .photo-aboutus{
			width: 500px;
			}
		#aboutus .photo-aboutus img{
			width: 500px;
			}

/* ==========================================================================
コース紹介
========================================================================== */
/*タイトル out*/
#course .pagetitle{
	background-image:url(../images/bg-course-out.jpg);
	background-position-y: center;
	margin-bottom: 30px;
	}

/*in/out切替ボタン*/
.course-btn{
	display: flex;	
	text-align: center;
	width: 600px;
	margin: 0 auto 30px;
	padding-top: 50px;
	}
	.course-btn p,
	.course-btn a{
		display: block;
		width: 300px;
		line-height: 60px;
		}
	.course-btn p,
	.course-btn a:hover{
		background-color:rgba(154, 51, 52, 1);
		color: #fff;
		font-size: 18px;
		}
	.course-btn a{
		background-color: #eee;
		color: #000;
		}

	.text-golf{
		text-align:center;
		padding-bottom:30px;
		font-size:14px;
		}

/*概要*/
#course #course-summery{
	max-width: 1200px;
	width: 100vw;
	margin:0 auto;
	}
	#course #course-summery .table-common{
		}
	/*コースレート*/
	#course-summery table{
		margin-bottom: 30px;
		}	
		#course-summery .table-course tbody th{
			vertical-align: middle;
			background-color: #f5f5f5 !important;
			}
		#course-summery .table-course tbody td{
			background-color: #fff !important;
			}

/*ヤーデージ*/
.course-yard{
	margin:0 auto;
	max-width: 1200px;
	width: 100vw;
	}
.table-course{
	margin:0 auto 5px;
	max-width: 1200px;
	width: 100vw;
	}
	.table-course thead th{
		background-color:rgba(154, 51, 52, 1);
		color:#fff;
		vertical-align:middle;
		width:100px;
		}
		.table-course thead tr:nth-of-type(2) th{
			font-size:14px;
			}
	.table-course tbody{
		border-left:solid 1px #ccc;
		}
		.table-course tbody tr:nth-child(odd){
			background-color:#eee;
			}
		.table-course tbody th,
		.table-course tbody td{
			border-right:solid 1px #ccc;
			border-bottom:solid 1px #ccc;
			text-align:center;
			}

	#course .ul-dot,
	#incourse .ul-dot{
		max-width: 1200px;
		width: 100vw;
		margin: 0 auto;
		padding-bottom: 30px;
		}

/*コース詳細*/
.courseflex{
	max-width: 1200px;
	width: 100vw;
	margin: 0 auto;
	display: flex;
	/*折り返す*/
	flex-wrap: wrap;
	/*左右の間隔を均等*/
	justify-content: space-around;
	}

	/*個別ホール画像・テキスト*/
	.coursehole{
		flex-basis: calc(100% / 3);
		padding-bottom: 20px;
		position: relative;
		}
		
	/*ホール画像*/
	.holeimg{
		border-top: 3px solid #caddc2;
		border-left: 3px solid #caddc2;
		border-bottom: 3px solid #caddc2;
		background-color: #f5f8f1;
		
		/*水玉の色*/
		background-image: radial-gradient(#e1eddc 25%, transparent 25%),
		radial-gradient(#e1eddc 25%, transparent 25%);
		
		/*水玉のサイズ*/
		background-size: 20px 20px;
		
		/*水玉サイズの半分で設定*/
		background-position: 0 0, 10px 10px;
		height: 400px;
		text-align: center;
		transition: 0.5s;
		}
		/*右端のホール*/
		.rightimg{
			border-right: 3px solid #d4e2d1;
			}

	/*youtube*/	
	.holeimg iframe{
		position: absolute;
		top:3px;
		left:0;
		opacity:0;
		width:100%;
		height: 400px;
		z-index:-1;
		transition: 0.5s;
		}
		
	/*hover時の動き　画像 Youtube*/
	.holeimg:hover{
		background:none;
		transition: 0.5s;
		}
	.courseflex div .holeimg:hover img{
		opacity:0;
		transition: 0.5s;
		}
		.courseflex div .holeimg:hover a{
			display:none;
			transition: 0.5s;
			}
	.holeimg:hover iframe{
		opacity:1;
		z-index:100;
		transition: 0.5s;
		}

	/*ちらつかせないため、IE Edgeはzindex -1 */
	@media all and (-ms-high-contrast: none){
		.holeimg:hover iframe{
			z-index:-1;
			}
		} 	
	@supports (-ms-ime-align: auto) {
		.holeimg:hover iframe{
			z-index:-1;
			}
		}
	/*IE,Edgeのみモーダル*/
	@media all and (-ms-high-contrast: none){
		.courseflex div .holeimg:hover a{
			display:block;
			position: relative;
			z-index: 10;
			}
	} 
	@supports (-ms-ime-align: auto) {
		.courseflex div .holeimg:hover a{
			display:block;
			position: relative;
			z-index: 10;
			}
			}

	/*ホールテキスト*/
	.holetext{
		padding: 5px 10px;
		font-size: 14px;
		line-height: 1.5em;
		}

/*印刷*/
@media print {


	/*ホール画像*/
	.holeimg{
		border-top: 3px solid #caddc2;
		border-left: 3px solid #caddc2;
		border-bottom: 3px solid #caddc2;
		background-color: #f5f8f1;
		
		/*水玉の色*/
		background-image: none;
		height: 270px;
		text-align: center;
		}
		.holeimg img{
			width: 200px;
			}
		.holetext{
			font-size: 10px;
			}
	.course-btn{
		page-break-before :always
		}
		
	}

/*IE*/
@media print and (-ms-high-contrast: none) {
	.courseflex{
		display: block;
		}
		.coursehole{
			float: left;
			width: 210px;
			}
		.coursehole:nth-of-type(3n + 1){
			clear: left;
			}
}
	

/* ==========================================================================
施設紹介
========================================================================== */
/*タイトル*/
#facility .pagetitle{
	background-image:url(../images/img-facility1.jpg);
	background-position-y: center;
	margin-bottom: 100px;
	}

	/*スライド*/
	.p-facilities-slide{
		max-width: 1200px;
		width: 100vw;
		margin:0 auto 200px;
		}
		#facility .shop{
			margin-bottom:50px;
		}
		.p-facilities-slide .slide__inner{
			position:relative;
			max-width: 1200px;
			width: 100vw;
			overflow: hidden;
			}
		.p-facilities-slide .slide__caption{
			position:absolute;
			bottom:15px;
			right:0px;
			width:250px;
			display:block;
			text-align:center;
			background:rgba(0,0,0,0.4);
			line-height:1;
			font-size:14px;
			}
			.p-facilities-slide .slide__caption span{
				color:#fff;
				padding:10px 0;
				display:block;
				font-size:16px;
				}

	/*施設紹介 slick*/
	.p-facilities-slide .slick-dots{
		display:flex;
		align-items: flex-start;
		}
		.p-facilities-slide .slick-dots li{
			height:120px;
			border-right:solid 3px #666;
			border-top:solid 3px #666;
			border-bottom:solid 3px #666;
			cursor:pointer;
			position:relative;
			margin:0;
			top:95px;
			flex-grow:1;

			/*背景画像*/
			background-size: cover!important;
			background-position: center!important;
			}
			.p-facilities-slide .slick-dots li:first-child{
				border-left:solid 3px #666;
				}
			.p-facilities-slide .slick-dots li:after{
				content:"";
				width:100%;
				height:120px;
				background:rgba(255, 255, 255, 0.8);
				display:block;
				position:absolute;
				top:0;
				left:0;
				opacity:0;
				}

		.p-facilities-slide .slick-dots li img{
			display:none;
			}
			.p-facilities-slide .slick-dots li.slick-active:after{
				opacity:1
				}
/*サムネール用画像*/
		#facility1 .slick-dots li:nth-of-type(1){
			background:url(../images/img-facility1-1.jpg);
			}
			#facility1 .slick-dots li:nth-of-type(2){
				background:url(../images/img-facility1-5.jpg);
				}
			#facility1 .slick-dots li:nth-of-type(3){
				background:url(../images/img-facility1-6.jpg);
				}
			#facility1 .slick-dots li:nth-of-type(4){
				background:url(../images/img-facility1-2.jpg);
				}
			#facility1 .slick-dots li:nth-of-type(5){
				background:url(../images/img-facility1-4.jpg);
				}
		
				
		#facility2 .slick-dots li:nth-of-type(1){
			background:url(../images/img-facility2-1.jpg);
			}
			#facility2 .slick-dots li:nth-of-type(2){
				background:url(../images/img-facility2-2.jpg);
				}
			#facility2 .slick-dots li:nth-of-type(3){
				background:url(../images/img-facility2-3.jpg);
				}

			#facility3 .slick-dots li:nth-of-type(1){
			background:url(../images/img-facility3-1.jpg);
			}
			#facility3 .slick-dots li:nth-of-type(2){
				background:url(../images/img-facility3-2.jpg);
				}
			#facility3 .slick-dots li:nth-of-type(3){
				background:url(../images/img-facility3-3.jpg);
				}
			#facility3 .slick-dots li:nth-of-type(4){
				background:url(../images/img-facility3-4.jpg);
				}
			#facility3 .slick-dots li:nth-of-type(5){
				background:url(../images/img-facility3-5.jpg);
				}
			#facility3 .slick-dots li:nth-of-type(6){
				background:url(../images/img-facility3-6.jpg);
				}

			#facility4 .slick-dots li:nth-of-type(1){
			background:url(../images/img-facility4-1.jpg);
			}
			#facility4 .slick-dots li:nth-of-type(2){
				background:url(../images/img-facility4-2.jpg);
				}
			#facility4 .slick-dots li:nth-of-type(3){
				background:url(../images/img-facility4-3.jpg);
				}
			#facility4 .slick-dots li:nth-of-type(4){
				background:url(../images/img-facility4-4.jpg);
				}

		/*表*/
	#facility .table-common{	
		max-width: 1200px;
		width: 100vw;
		margin: -50px auto 50px;
		}

		/* ==========================================================================
ライブカメラ
========================================================================== */
/*タイトル*/
#livecamera .pagetitle{
	background-image:url(../images/img-facility1.jpg);
	background-position-y: center;
	margin-bottom: 100px;
}

#livecamera #info-area{
	max-width: 1000px;
	width: 100vw;
	margin: 0 auto;
	margin-bottom: 100px;
}

#livecamera .livecamera-img img {
	width: 100%; 
	max-width: 1000px; 
	height: auto; 
}

/* スライダーの左右矢印 (.slick-prev, .slick-next) を確実に表示し、最低限の可視化を行う */
	.p-facilities-slide .slick-prev,
	.p-facilities-slide .slick-next {
	display: block !important; /* 非表示設定を強制的に上書き */
	visibility: visible !important;
	opacity: 1 !important;
	z-index: 100 !important; /* 他の要素の下に隠れないように最前面へ */
	top: calc(50% + 15px) !important; /* 中央位置(50%)からさらに15px下に移動 */
	transform: translateY(-50%) !important; /* 矢印自身の高さの半分だけ上にずらして中央に揃える */
	
	/* 矢印が見えるように色とサイズを強制設定 (テスト用) */
	background: rgba(0, 0, 0, 0.5) !important; /* 背景を半透明の黒に */
	color: #fff !important; /* 矢印の文字色を白に */
	width: 30px !important;
	height: 30px !important;
	line-height: 30px !important;
	font-size: 0 !important; /* 元の文字を非表示 */
	text-align: center !important;
	}

	/* 矢印アイコンが文字で表示されるよう設定 */
	.p-facilities-slide .slick-prev:before {
			content: '◀' !important; /* 左矢印 */
			font-size: 16px !important; 
			line-height: 30px !important;
			color: #fff !important;
	}
	.p-facilities-slide .slick-next:before {
			content: '▶' !important; /* 右矢印 */
			font-size: 16px !important;
			line-height: 30px !important;
			color: #fff !important;
	}
	
	/* 矢印の位置調整 */
	.p-facilities-slide .slick-prev {
			left: 5px !important; /* 左端から5px */
	}
	.p-facilities-slide .slick-next {
			right: 5px !important; /* 右端から5px */
	}


/* ==========================================================================
レストラン
========================================================================== */
/*タイトル画像*/
#restaurant{
	background-color: rgb(238, 215, 181);
	}
	#restaurant .pagetitle{
		background-image:url(../images/bg-restaurant.jpg);
		background-position-y: bottom;
		}
	#restaurant .pagetitle-inn{
		background-color: rgba(116, 86, 42, 0.4);
		}

/*レストランタイトル*/
.restaurant-sbtarea{
	width: 800px;
	margin: 0 auto;
	padding-bottom: 50px;
	text-align: center;
	}
	#grandmenu .restaurant-sbtarea p{
		color: #fff;
		}
	.restaurant-sbtarea p:nth-of-type(1){
		padding: 70px 0 20px;
		font-weight: 400;
		font-size: 24px;
		line-height: 1.2;
		}
	.restaurant-sbtarea p:nth-of-type(2){
		font-weight: 200;
		font-size: 14px;
		}
	h2.restaurant-sbt{
		padding:0 0 30px 0;
		position: relative;
		text-align: center;
		}

	.monthlymenu ul{
		display:flex;
		justify-content: center;
		flex-wrap: wrap;
		max-width: 1500px;
		min-width: 1000px;
		margin: 0 auto;
 		}
		.monthlymenu ul li{
			padding:0 0 30px 0;
			width:333px;
			}
			.monthlymenu ul li img{
				width:300px;
				height: inherit;
				vertical-align:bottom;
				margin-bottom: 20px;
				box-shadow: 3px 3px 10px  #666;
				}
		.monthlymenu ul li div:last-child{
			}
			.monthlymenu ul li div h3{
				font-size:18px;
				font-weight: 400;
				padding-bottom:5px;
				text-align: center;
				}
			.monthlymenu ul li div p{
				text-align: center;
				font-size:14px;
				}

/*グランドメニュー*/	
.grandmenu{
	text-align:center;
	background-color: rgb(116, 86, 42);
	}
	.grandmenu h2{
		text-align:center;
		padding:40px 0;
		}
	.grandmenu ul{
		display:flex;
		justify-content: center;
		/* max-width: 1500px; メニュー4項目並べるパターン*/
		max-width: 1300px;/* 朝食メニューを一列にするため */
		min-width: 1000px;
		margin: 0 auto;
		flex-wrap: wrap;
		}
		.grandmenu ul li{
			width:333px;
			padding-bottom:30px;
			color: #fff;
			}
			.grandmenu ul li img{
				width:300px;
				height: auto;
				}
			.grandmenu ul li p:nth-of-type(1){
				font-size: 18px;
				}
			.grandmenu ul li p:nth-of-type(2){
				font-size: 14px;
				}
		.grandmenu ul:after{
			display:block;
			width:100%;
			content:url(../images/icn-menu-end.png);
			text-align:center;
			padding-bottom:40px;
			}

/*デザート*/	
.dessert{
	text-align:center;
	}
	.dessert h2{
		text-align:center;
		padding:40px 0;
		}
	.dessert ul{
		display:flex;
		justify-content: center;
		max-width: 1500px;
		min-width: 1000px;
		margin: 0 auto;
		flex-wrap: wrap;
		}
		.dessert ul li{
			width:333px;
			padding-bottom:30px;
			}
			.dessert ul li img{
				width:300px;
				height: auto;
				}
			.dessert ul li p:nth-of-type(1){
				font-size: 18px;
				}
			.dessert ul li p:nth-of-type(2){
				font-size: 14px;
				}
		.dessert ul:after{
			display:block;
			width:100%;
			content:url(../images/icn-menu-end-br.png);
			text-align:center;
			padding-bottom:40px;
			}


/*その他1行目*/	
.other{
	display:flex;
	width:1000px;
	margin:0 auto;
	}
	.other .drink-area,
	.other .otsumami-area{
		width: 500px;	
		}
	.other h2{
		padding:40px 0 20px;
		font-weight: 400;
		font-size: 24px;
		text-align:center;
		}
	.other div div{
		text-align: center;
		background-image:url(../images/icn-menu-end-br.png);
		background-position:center  bottom;
		background-repeat: no-repeat;
		padding-bottom: 20px;
		margin-bottom: 5px;
		}
		.other div img{
			width: 400px;
			margin-bottom: 10px;
			}

		.other li{
			display: flex;
			}
			.other li span:nth-of-type(1){
				text-align: left;
				width:300px;
				padding-left: 50px;
				}
			.other li span:nth-of-type(2){
				text-align: right;
				width:100px;
				padding-right: 50px;
				}

/*コンペパーティ*/
.compemenu-area{
	width: 900px;
	margin: 0 auto;
	}
	.sbt-compe{
		text-align: center;	
		padding-top: 80px;
		padding-bottom: 40px;
		}
	.img-compeparty{
		width: 500px;
		margin: 0 auto;
		text-align: center;
		padding-bottom: 40px;
		}
		.img-compeparty img{

			}
		.img-compeparty p{
			font-size: 14px;
			}
	
	.compemenu-area table{
		width: 900px;
		}
		.compemenu-area th{
			background-color: rgb(116, 86, 42);
			color: #fff;
			width: 300px !important;
			}
			.compemenu-area th,
			.compemenu-area td{
				border-color: rgb(173, 145, 101);
				}
		.compemenu-area .ul-dot{
			padding-bottom: 30px;
			}

	.other .drink-area-sub{
		padding-bottom: 50px;
		}
	.other .drink-area-sub h2{
		text-align: center;
		background-image:url(../images/icn-menu-end-br.png);
		background-position:center top;
		background-repeat: no-repeat;
		padding-top: 30px;
		}


/* ==========================================================================
アクセス
========================================================================== */
#access .pagetitle{
	background-image:url(../images/bg-access.jpg);
	background-position-y: center;
	}

.mapsum-area{
	text-align:center;
	max-width: 1200px;
	width: 100vw;
	padding: 50px 0 ;
	margin: 0 auto;
	}
.map-area{
	text-align:center;
	max-width: 1200px;
	width: 100vw;
	margin: 0 auto;
	}
	.map-area img{
		width:800px;
		margin:0 0;
		}
	.subtxt-map{
		width: 800px;
		margin: 0 auto;
		text-align: right;
		padding-bottom: 50px;
		}
	#access .btn-area{
		margin-bottom: 80px;
		}

/* .sub-btnarea{
	text-align: center;
	padding-left: 375px;
	padding-top: 5px;
	margin-bottom: 80px;
	} */


#clubbus-area{
	max-width: 1200px;
	width: 100vw;
	margin: 0 auto;
	}
	#clubbus-area p{
		text-align:center;
		padding-bottom:30px;
		}
	#clubbus-area .option-area{
		border-top:solid 1px #ccc;
		padding-top:10px;
		margin-bottom:5px !important;
		}
		#clubbus-area .option-area li:first-child{
			border-bottom:dashed 1px #ccc;
			padding-bottom:5px;
			}
			#clubbus-area .option-area li:last-child{
				padding-top:5px;
				}
		#clubbus-area .option-area li span:last-child{
			text-align:left;
			}

	#clubbus-area table{
		max-width: 1200px;
		width: 100vw;
		}
	#clubbus-area tbody td img{
		margin-right: 10px;
		}

	#clubbus-area .td-bg{
		text-align: center;
		color: #8f1e1e;
		}

	#clubbus-area .ul-dot,
	#clubbus-area .table-common:nth-of-type(2){
		margin-bottom: 50px;
		}

/*クラブバス帰り*/
#clubbus-area2{
	width: 500px;
	margin: 0 auto;
	}
	#clubbus-area2 table{
		margin-bottom: 50px;
		width: 500px;
		}
		#clubbus-area2 th{
			width: 150px ;
			}
		#clubbus-area2 .td-bg{
			text-align: center;
			color: #8f1e1e;
			}


/* ==========================================================================
ご利用案内
========================================================================== */
/*タイトル*/
#guide .pagetitle{
	background-image:url(../images/bg-guide.jpg);
	background-position-y: bottom -25vw;
	margin-bottom: 30px;
	}
	/* chrome safari opera */
	@media screen and (-webkit-min-device-pixel-ratio: 0) {
		#guide .pagetitle{
			background-position:center !important;
		}
	}

#guide #info-area,
#guide #manner-area,
#guide #price-area,
#guide #friend-area,
#guide #selfday-area,
#guide #pro-area{
	max-width: 1200px;
	width: 100vw;
	margin: 0 auto;
	}

/*営業時間*/
#guide #info-area{
	max-width: 1200px;
	width: 100vw;
	margin: 0 auto;
	}
	#guide #info-area .btn-area{
		padding: 30px 0 50px;
		}
		#guide #info-area .btn-area a{
			min-width:300px; 
		}

/*マナー*/
#guide #manner-area p{
	text-align: center;
	}
	#guide #manner-area .btn-area{
		padding: 30px 0;
		}
	#guide #manner-area h3{
		padding-bottom: 20px;
		}
	#guide #manner-area ol{
		padding-bottom: 30px;
		width: 800px;
		margin:0 auto;
		}
	#guide #manner-area .visitor-btn{
		padding: 0 0 50px;
		}

/*料金情報*/
#guide #price-area .ul-dot{
	padding-bottom:30px;
	}
	#guide #price-area  .txt-credit{
		text-align: center;
		padding-bottom: 50px
		}

/*友の会*/
#guide #friend-area .ul-dot{
	padding-bottom:50px;
	}

/*セルフデー*/
#guide #selfday-area .table-common:nth-of-type(1){
	margin-bottom: 30px;
	}
	#guide #selfday-area ul{
		padding-bottom: 50px;
		}

/*プロ*/
#guide #pro-area table{
	margin-bottom: 50px;
	}
	#guide #pro-area .img-pro{
		text-align: center;
		padding-bottom: 30px;
		}
	#guide #pro-area .txt-pro{
		text-align: center;
		padding-bottom: 30px;
		}

/* ==========================================================================
ご予約案内
========================================================================== */
/*タイトル*/
#reservation-guide .pagetitle{
	background-image:url(../images/bg-guide.jpg);
	background-position-y: bottom -25vw;
	margin-bottom: 30px;
	}
	/* chrome safari opera */
	@media screen and (-webkit-min-device-pixel-ratio: 0) {
		#reservation-guide .pagetitle{
			background-position:center !important;
		}
	}

#reservation-guide #info-area{
	max-width: 1200px;
	width: 100vw;
	margin: 0 auto;
	padding-bottom: 50px;
	}
	#reservation-guide #info-area .btn-area a{
		min-width: 250px;	
		}
	#reservation-guide #info-area .btn-area span{
		display: inline-block;
		max-width: 50%;
		min-width:250px;
		border:solid 1px #ccc;
		padding:10px 10px;
		margin: 0 10px;
		color: #666;
		transition: 0.5s;
		}
	#reservation-guide #info-area .btn-area span::before{
			display: none;
			}

/* ボタン群と電話番号をまとめて制御するラッパー */
.reservation-stack-wrapper {
    max-width: 835px; 
    margin: 0 auto;
    padding: 0 10px; 
}

/* ボタン群 (横並び中央揃え) */
.reservation-stack-wrapper .reservation-buttons-centered {
    text-align: center;
    margin: 0 0 10px 0; /* 下に電話番号との余白 */
    padding: 0;
}

/* 予約電話 (ボタン群の左端に揃える) */
.reservation-stack-wrapper .reservation-phone-aligned  {
    text-align: left; 
    margin: 0; 
    padding: 0;
}

/* ボタン間の間隔（必要に応じて調整） */
.reservation-stack-wrapper .reservation-buttons-centered a {
    margin: 0 5px;
}


/* 予約電話 (spanタグにボタンのデザインを適用) */
.reservation-phone-aligned .phone-display-btn {
    display: inline-block;
    max-width: 50%;
    min-width: 250px;
    border: solid 1px #ccc;
    padding: 10px 10px;
    color: #666;
    transition: 0.5s;
    margin: 0; 
}

/* 既存の p.reservation-phone-aligned の設定はそのまま */
.reservation-stack-wrapper .reservation-phone-aligned {
    text-align: left; /* 親要素は左揃えを維持 */
    margin: 0; 
    padding: 0;
}

.btn-area-left .reservation-phone-aligned span{
	text-align: center;
}
	#reservation-guide .gray-area{
		margin: 30px 0 30px;
		}
/* 予約電話 (spanタグにボタンのデザインと中央寄せを適用) */
.reservation-phone-aligned .phone-display-btn {
  text-align: center; 
}
/* （WEB予約サイト）のタイトルをPCで左寄せにする */
.web-reserve-title {
    text-align: left;
}

	/*コンペ申し込み表*/
	#reservation-guide .table-common td{
		padding:30px 0;
		}
		#reservation-guide .table-common td .btn-area a{
			border-color: #fff;
			}

/* ==========================================================================
営業カレンダー
========================================================================== */
/*タイトル*/
#calendar .pagetitle{
	background-image:url(../images/bg-guide.jpg);
	background-position-y: bottom -25vw;
	margin-bottom: 30px;
	}
	/* chrome safari opera */
	@media screen and (-webkit-min-device-pixel-ratio: 0) {
		#calendar .pagetitle{
			background-position:center !important;
		}
	}

#calendar-area{
	width: 770px;
	margin:0 auto 30px;
	}
	#calendar-area iframe{
		width: 770px;
		height: 800px;
		}

/* 読み込みカレンダー=================================================================*/
	#if-calendar table th,
	#if-calendar table td{
		font-size: 14px !important;
		width:140px !important;
		}
			#if-calendar table th font B,
			#if-calendar table td font B{
				font-size: 14px !important;
				}


/* ==========================================================================
コンペ・トーナメント
========================================================================== */
/*タイトル*/
#competition .pagetitle{
	background-image:url(../images/bg-guide.jpg);
	background-position-y: bottom -25vw;
	margin-bottom: 30px;
	}
	/* chrome safari opera */
	@media screen and (-webkit-min-device-pixel-ratio: 0) {
		#competition .pagetitle{
			background-position:center !important;
		}
	}


#competition #clubcompe-area,
#competition #tournament-area,
#competition #opencompe-area{
	width: 800px;
	margin: 0 auto;
	padding-bottom: 50px;
	}	
	#competition #clubcompe-area p,
	#competition #tournament-area p,
	#competition #opencompe-area p{
		text-align: center;
		}
	#competition .table-common{
		width: 800px;
		}

/*NCC萬葉会*/
#clubcompe-area p{
	padding-bottom: 30px;
	}
#clubcompe-area td li{
	display: inline-block;
	}
	#clubcompe-area td li:after{
		content: '、';
		}
	#clubcompe-area td li:last-child:after{
		content: none;
		}

/*オープンコンペ*/
#opencompe-area p{
	padding-bottom: 30px;
	}
	#opencompe-area table{
		margin-bottom: 30px;
		}


/* ==========================================================================
個人情報保護
========================================================================== */
#policy-area{
	width:800px;
	margin:0 auto;
	}
	#policy-area dl{
		padding-bottom: 70px;
		}
		#policy-area dt{
			font-weight:bold;
			padding-bottom:10px;
			padding-top:30px;
			}
		#policy-area dd{
			padding-bottom:10px;
			}
			#policy-area dd.dd-sub{
				padding:0 20px 5px 20px;
				position:relative;
				}
			#policy-area dd.dd-sub:before{
				content:'・';
				position:absolute;
				top:0;
				left:0;
				}

/* ==========================================================================
お問い合わせ
========================================================================== */
/*タイトル*/
#inquiry .pagetitle,
#confirm .pagetitle,
#thankyou .pagetitle{
	background-image:url(../images/bg-inquiry.jpg);
	background-position-y: bottom -22vw ;
	}

#contact-area{
	}
	/*フォーム入力についての文*/
	.text-inquiry{
		font-size: 14px;
		text-align:center;
		padding: 30px 0;
		}
		
	/*表部分外枠*/
	.form-area{
		display: flex;
		flex-wrap: wrap;
		border-width: 1px 1px 0 1px;
		border-color: #ccc;
		border-style: solid;
		margin: 0 auto;
		width: 840px;
		}
		/*テーブルのタイトル部分*/
		.form-area dt{
			width: 200px;
			padding: 10px 15px;
			border-bottom: 1px solid #ccc;
			background-color: #eee;
			color: #000;
			font-size: 14px;
			}
			/*タイトル横の「必須」部分*/
			.form-area dt span{
				color: #ff6666;
				padding-left: 10px;
				font-size: 14px;
				}
					
		/*テキスト入力エリアの外枠*/
		.form-area dd{
			width: 580px;
			border-bottom: solid 1px #ccc;
			padding: 10px 15px;
			}
			.form-area input{
				border: 1px solid #ccc;
				padding: 5px 10px 5px 5px;
				font-size: 14px;
				width:560px;
				}
				/*input 入力項目のプレースホルダー*/
				.form-area dd input:placeholder-shown,
				.form-area dd input::-webkit-input-placeholder,
				.form-area dd input::-moz-placeholder,
				.form-area dd input:-ms-input-placeholder,
				.form-area dd input::-ms-input-placeholder{
					color: #999;
					}
					/*input 入力項目のプレースホルダーの消えるタイミング*/
					input:focus:placeholder-shown {
						color: transparent;
						}
					.form-area dd input:focus::-webkit-input-placeholder{
						color: transparent;
						}
					.form-area dd input:focus::-moz-placeholder{
						color: transparent;
						}
					.form-area dd input:focus:-ms-input-placeholder{
						color: transparent;
						}
					.form-area dd input:focus::-ms-input-placeholder{
						color: transparent;
						}
					.input:active{
						carsor: text;
						}
				
				/*生年月日の入力項目*/
				.form-area input.formtel1,
				.form-area input.formtel2,
				.form-area input.formtel3,
				.form-area input.formzip1,
				.form-area input.formzip2{
					width:140px;
					margin:0 10px;
					}
					.form-area input.formtel1,
					.form-area input.formzip1{
						margin-left:0;
						}
				
				/*input type=numberの横のボタンを消す*/
				input[type="number"]::-webkit-outer-spin-button,
				input[type="number"]::-webkit-inner-spin-button {
				    -webkit-appearance: none;
				    margin: 0;
					}
					input[type="number"] {
					    -moz-appearance:textfield;
						}
				
			/*住所変換ボタン*/
			.dd-addressin button{
				background-color:#eee;
				border:solid 1px #ccc;
				padding:0 10px;
				}
			
			/*テーブルの入力部分(textarea)*/
			.form-area textarea{
				border: 1px solid #ccc;
				width: 560px;
				padding: 0 10px 100px 5px;
				resize: none;
				font-size: 14px;
				}
				/*textarea 入力項目のプレースホルダー */
				textarea:placeholder-shown {
					color: #999;
					}
					/*textarea 入力項目のプレースホルダーの消えるタイミング*/
					textarea:focus:placeholder-shown {
						color: transparent;
						}
					
	
	/*個人情報タイトル(divのクラス部分)*/
	.check-privacy{
		width: 840px;
		margin: 0 auto;
		padding-top: 30px;
		}
		.check-privacy h2{
			border-width: 2px 1px 1px 1px;
			border-color: #993333 #ccc #ccc #ccc;
			border-style: solid;
			background-color: #eee;
			padding: 10px;
			font-size: 14px;
			margin-bottom: 5px;
			}
		.check-privacy p{
			font-size: 14px;
			}
		
		/*個人情報チェックボックス*/
		.personaldata-check{
			text-align:center;
			}
			.personaldata input{
				margin-top: 20px;
				margin-right: 20px;
				font-size: 14px;
				}
			.personaldata a:hover{
				text-decoration:underline;
				}

	/*次ページへ移行するボタン*/
	.formbtn{
		display: inline-block;
		max-width: 50%;
		min-width:350px;
		border:solid 1px #ccc;
		padding:10px 10px;
		margin: 10px 10px 50px;
		color: #666;
		transition: 0.5s;
		}
		/*hover時*/
		.formbtn:hover{
			background-color: #ccc;
			transition: 0.3s;
			}
		.inactive{
			opacity: 0.2;
			}
	
	/*ボタンのdiv*/
	.checkbtn{
		text-align: center;
		}
		.checkbtn input{
			font-size: 14px;
			}
		.question{
			vertical-align: top;
			padding-top: 33px !important;
			}
		.checkbtn form{
			display: inline-block;
			padding: 0 30px;
			margin: 50px 0;
			}

	.btn-send{
		border: 3px solid #fff;
		box-shadow: 0 0 0 3px rgba(154, 51, 52, 1);
		color:  rgba(154, 51, 52, 1);
		transition: 0.3s;
		background-color: #fff;
		font-size: 14px;
		}
		.btn-send:hover{
			background-color:  rgba(154, 51, 52, 1);
			box-shadow: 0 0 0 3px  rgba(154, 51, 52, 1);
			transition: 0.3s;
			color: #fff;
			}
		.btn-send:active{
			background-color:  rgba(154, 51, 52, 1);
			box-shadow: 0 0 0 3px  rgba(154, 51, 52, 1);
			transition: 0s;
			}
		.btn-back{
			border: 3px solid #fff;
			box-shadow: 0 0 0 3px #ccc;
			color: #ccc;
			transition: 0.3s;
			background-color: #fff;
			font-size: 14px;
			}
			.btn-back:hover{
				background-color: #ccc;
				transition: 0.3s;
				box-shadow: 0 0 0 3px #ccc;
				color: #fff;
				}
			.btn-back:active{
				background-color: #e8e8e8;
				box-shadow: 0 0 0 3px #e8e8e8;
				transition: 0s;
				}

	.toppad{
		margin: auto;
		}
		.top-pad a{
			margin: 0 30px;
			}
			
		
	/*テーブル 入力部分*/
	.forminput{
		width: 671px;
		}

	.mail-test{
		padding-left: 20px;
		}
	.error{
		margin-bottom: 0;
		}
	.error span{
		font-weight: bold;
		}

	/*エラーページ*/
	.fin-form{
		text-align: center;
		margin: auto;
		width: 700px;
		}
		.fin-form h1{
			font-size: 30px;
			}
		.fin-form p{
			padding: 15px 0;
			}

	.top-pad{
		}
		.topbtn{
			border: 3px solid #fff;
			box-shadow: 0 0 0 3px #2a6cb1;
			color: #2a6cb1;
			padding: 10px 40px;
			font-size: 25px;
			background-color: #fff;
			}
		.topbtn:hover{
			background-color: #2a6cb1;
			color: #fff;
			box-shadow: 0 0 0 3px #2a6cb1;
			transition: 0.3s;
			}
		.topbtn:active{
			background-color: #007df5;
			box-shadow: 0 0 0 3px #007df5;
			color: #fff;
			transition: 0s;
			}
			

/* ==========================================================================
category,single
========================================================================== */
.categorypage-area .news-area,
.categorypage-area .news-area-inn{
	padding-top: 0px;
	}	
	.single-page .subtitle{
		padding-bottom: 10px;
		}
	.single-date{
			text-align:center;
			font-size:18px;
			color:#999;
			}

	.single-text{
		width:800px;
		margin:30px auto 0;
		
		}
		.single-text p{
			font-size:18px;
			}
		/* ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
		.single-text a{
			text-decoration: underline;
			font-size:18px;
			}
		.single-text strong{
			ffont-size:18px;
			font-weight: 600 !important;
			}
		.single-text em,
		.single-text del,
		.single-text ins,
		.single-text li,
		.single-text span{
			font-size:18px;
			font-weight:500;
			}

		.single-text ol{
			padding-left: 30px !important;
			}
			.single-text ol li{
				display: list-item !important;
				list-style-type: decimal !important;
				padding: 0 0 10px;
				font-size:18px;
				}


		.single-text .img-event{
			padding-top:10px;
			}
			.single-text .img-event img{
				width:800px;
				}
		.single-text .btnflex a{
			width:500px;
			text-align:center;
			}
	
	/*お知らせ一覧*/
	.single-content ul{
		width:800px;
		margin:0 auto;
		padding:50px 0 0;
		}
		.single-content li{
				display:flex;
				}	
				.single-content li span{
					display:block;
					}
					.single-content li span:first-child{
						white-space:nowrap;
						margin-right:10px;
						}

/*
**********************************************
エラーページ
**********************************************
*/
.nopage-area{
	width: 800px;
	margin:0 auto;
	}
	.error404url{
		padding: 20px 0;
		}
	.nopage-area *{
		color: #999;
		}
	.nopage-area .link-back{
		padding-bottom: 50px;
		}	
		.nopage-area .link-back a{
			color: #2a6cb1;
			}

