@charset "UTF-8";

/* !HTML5 elements
---------------------------------------------------------- */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section
{ display: block;}

/* !Reseting
---------------------------------------------------------- */
body {
	font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", "YuMincho", "MS Mincho", "Times New Roman", serif;
	-webkit-text-size-adjust: none;
	font-size: 18px;
	color: #000;
	line-height: 1.6em;
	word-wrap:break-word;/* 英数字折り返し */
	background: #fff;
}
body, div, pre, p, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, form, th, td
{ margin: 0; padding: 0;}

input, textarea
{ margin: 0; font-size: 100%;}

label
{ cursor: pointer;}

table
{ border-collapse: collapse; border-spacing: 0; font-size: 100%;}

img
{ max-width: 100%; width: 100%; height: auto; vertical-align: top;}

ol, ul
{ list-style: none;}

h1, h2, h3, h4, h5, h6
{ font-size: 100%; font-weight: normal;}

a, input
{ outline: none; }

input, textarea
{ border-radius: 0; font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", "YuMincho", "MS Mincho", "Times New Roman", serif; }

input[type="button"],input[type="submit"]
{ -webkit-appearance: none; background: none; border: none; padding: 0; cursor: pointer;}

*
{ -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box;}
/* !Clearfix
---------------------------------------------------------- */
.Clear::after {
	content: "";
	display: block;
	clear: both;
}
.Clear::before {
	content: "";
	display: block;
	clear: both;
}
.Clear {
	display: block;
}

/* !contents
---------------------------------------------------------- */
html {
	overflow-y: scroll;
	scroll-behavior: smooth;
}

a {
	color: #000;
	text-decoration: underline;
}

a:hover {
	color: #000;
	text-decoration: none;
}

.row {
	width:100%;
	max-width: 1280px;
	margin: 0 auto;
}

p {
	margin-top: 0;
}

/* !フルスクリーンナビ設定
---------------------------------------------------------- */
#Navi_Wrap {
	display: flex;
	width: 100%;
}

/* 左側ボタン */
.nav-buttons {
	position: fixed;
	top: 0;
	left: 0;
	width: calc(100% - 74px);
	display: flex;
	gap: 0;
	z-index: 9998;
}

.nav-btn1,
.nav-btn2 {
	flex: 1;
	height: 74px;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
}

.nav-btn1 {
	flex: 0 0 14%;
	font-size: 14px;
	font-family: 'M PLUS 1p', sans-serif;
	font-weight: 500;
	color: #fff;
	background: #005130;
	line-height: 1.2em;
	text-decoration: none;
	transition: 0.3s;
}

.nav-btn1:hover {
	color: #fff;
	text-decoration: none;
	background: #11845c;
}

.nav-btn2 {
	flex: 0 0 14%;
	font-size: 14px;
	font-family: 'M PLUS 1p', sans-serif;
	font-weight: 600;
	color: #00462a;
	line-height: 1.2em;
	letter-spacing: -0.05em;
	text-decoration: none;
	background: #cec47b;
	transition: 0.3s;
}

.nav-btn2:hover {
	color: #00462a;
	text-decoration: none;
	background: #b4a665;
}

.nav-btn_logo {
	flex: 0 0 72%;
	background-color: rgba(255, 255, 255, 0.8);
	backdrop-filter: blur(6px);
	display: flex;
	align-items: center;
	pointer-events: none;
}

.nav-btn_logo img {
	width: 200px;
	margin-left: 22px;
	pointer-events: auto;
}

/* 右のハンバーガー */
.openbtn{
	position: fixed;
	top: 0;
	right: 0;
	width: 74px;
	height: 74px;
	z-index: 9999;
	background: #000;
}

.openbtn:hover{
	cursor: pointer;
	display: block;
	-webkit-transition: all .3s;
	transition: all .3s;
	background: #b9ad7a;
}

.openbtn span{
	display: inline-block;
	transition: all .4s;
	position: absolute;
	left: 22px;
	height: 3px;
	border-radius: 2px;
	background-color: #fff;
	width: 40%;
}

.openbtn span:nth-of-type(1) {
	top:27px;
}

.openbtn span:nth-of-type(2) {
	top:35px;
}

.openbtn span:nth-of-type(3) {
	top:43px;
}

.openbtn.active span:nth-of-type(1) {
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%) rotate(-45deg);
	width: 36%;
}

.openbtn.active span:nth-of-type(2) {
	opacity: 0;
}

.openbtn.active span:nth-of-type(3){
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%) rotate(45deg);
	width: 36%;
}

/*---ナビ オーバーレイ画面---*/
#g-nav{
	position:fixed;
	z-index: 9999;
	top:74px;
	right: -120%;
	width:300px;
	height: calc(100vh - 74px);
	overflow-y: auto;
	background-color: rgba(255, 255, 255, 0.96);
	backdrop-filter: blur(6px);
	box-shadow: 0 1px 10px rgba(0, 0, 0, 0.1), 0 0 50px rgba(128, 128, 128, 0.1);
}

#g-nav.panelactive {
	right: 0;
	animation: fadeIn 0.4s ease forwards;
}

#g-nav .Cont {
	width: 100%;
	padding: 40px 0;
	text-align: center;
}

/* ロゴ */
#g-nav .Cont img {
	width: 180px;
	display: block;
	margin: 0 auto 24px;
}

/*--- フェードイン ---*/
@keyframes fadeIn {
	from { opacity: 0; }
	to { opacity: 1; }
}

/* リンク基本 */
#g-nav a {
	color: #000;
	text-decoration: none;
}

#g-nav a:hover {
	text-decoration: underline;
}

/* !メニュー
---------------------------------------------------------- */
.nav-menu {
	display: inline-block;
	text-align: left;
	margin-bottom: 16px;
	width: 220px;
}

/* タイトル */
.nav-menu .titleLink {
	position: relative;
	display: flex;
	align-items: center;
	font-size: 15px;
	font-weight: bold;
}

/* 右向き三角 */
.nav-menu .titleLink::before {
	content: "";
	display: inline-block;
	width: 0;
	height: 0;
	border-top: 4px solid transparent;
	border-bottom: 4px solid transparent;
	border-left: 6px solid #b4a66b;
	margin-right: 8px;
}

/* サブメニュー */
.nav-menu .submenu {
	font-size: 13px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.nav-menu .submenu li a {
	display: flex;
	align-items: center;
	padding-left: 4px;
	transition: color 0.2s, background-color 0.2s;
}

.nav-menu .submenu li a::before {
	content: "";
	display: inline-block;
	width: 6px;
	height: 1px;
	background: #000;
	margin-right: 6px;
}

/*--- 固定メニュー ---*/
#fixed_right_menu{
	position: fixed;
	z-index: 999;
	top: 89px;
	right: 15px;
	width: 60px;
}

.bnr_weather {
	background: url("common/img/icon_weather_on.png") no-repeat;
	background-size:cover;
}

.bnr_weather a {
	display: inline-block;
}

.bnr_weather a:hover img {
	visibility: hidden;
}

/* !Footer
---------------------------------------------------------- */
footer {
	padding-top: 60px;
}

footer a {
	color: #000;
	text-decoration: underline;
}

footer a:hover {
	color: #000;
	text-decoration: none;
}

/*--- エリア分け（ボタン等） ---*/
#Btn_Box {
	width: 100%;
	max-width: 960px;
	margin: 40px auto 0;
	display: flex;
}

#Frame_Tel,
#Frame_Recruit {
	width: 50%;
	height: 100px;
	box-sizing: border-box;
}

/*--- 枠（電話番号） ---*/
#Frame_Tel {
	width: 100%;
	height: 100px;
	display: grid;
	grid-template-columns: 36px 1fr;
	align-items: center;
	background: #005130;
	color: #fff;
}

#Frame_Tel .icon {
	width: 36px;
	height: auto;
	margin-left: 50px;
}

#Frame_Tel .text {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
}

#Frame_Tel .label {
	font-size: 14px;
}

#Frame_Tel .number {
	font-size: 32px;
	font-weight: bold;
	font-style: italic;
	letter-spacing: 0.05em;
	line-height: 1;
}

/*--- 枠（お問い合わせ） ---*/
#Frame_Contact {
	width: 100%;
	height: 100px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	position: relative;
	text-align: center;
	background: #000;
	color: #fff;
	text-decoration: none;
	transition: background-color .3s ease;
}

#Frame_Contact:hover {
	background: #b9ad7a;
	color: #fff;
	text-decoration: none;
}

#Frame_Contact .title {
	font-size:20px;
	font-family: "Cinzel", serif;
	font-optical-sizing: auto;
	font-weight: 600;
	font-style: normal;
	line-height: 1.2em;
	letter-spacing: 0.16rem;
	margin-top: 6px;
}

#Frame_Contact .title::first-letter {
	font-size: 1.2em;
}

#Frame_Contact .sub_tit {
	font-size:14px;
	letter-spacing: 0.16rem;
}

#Frame_Contact .icon {
	position: absolute;
	left: 50px;
	top: 50%;
	transform: translateY(-50%);
	width: 30px;
	height: auto;
}

/*--- エリア分け（住所等） ---*/
#Company_Box {
	font-size:16px;
	text-align: center;
	padding: 60px 0 40px;
	position: relative;
}

#FtrLogo {
	display: block;
	width: 340px;
	margin:0 auto;
}

.ftr_links {
	display: flex;
	justify-content: center;
	gap: 20px;
	margin-top: 20px;
}

#Copy {
	height: 78px;
	font-size: 12px;
	color: #fff;
	padding: 0 40px;
	border-top: 10px solid #b9ad75;
	background: #005130;
	display: flex;
	align-items: center;
}

/*--- ボタン（採用情報） ---*/
.btn_recruit {
	position: absolute;
	right: 80px;
	bottom: 90px;
	width: 140px;
	display: block;
	text-align: center;
	color: #fff;
	text-decoration: none;
	background: #b4a66b;
	padding: 20px 0;
}

.btn_recruit:hover {
	color: #fff;
	text-decoration: none;
	background: #cdc481;
	transition: all .3s;
}

.btn_recruit .title {
	font-size:16px;
	font-family: "Cinzel", serif;
	font-optical-sizing: auto;
	font-weight: 600;
	font-style: normal;
	line-height: 1.2em;
	letter-spacing: 0.04rem;
}

.btn_recruit .title::first-letter {
	font-size: 1.2em;
}

.btn_recruit .sub_tit {
	font-size:14px;
	line-height: 1.6em;
	letter-spacing: 0.16rem;
}

/*--- ページの先頭へ ---*/
#back-top {
	position:fixed;
	right:14px;
	bottom:14px;
	z-index: 5;
	background: #cec47b;
	border-radius: 50%;
	width: 40px;
	height: 40px;
}

#back-top span {
	box-sizing: border-box;
	display: block;
	position: relative;
	top: 52%;
	left: 50%;
	width: 10px;
	height: 10px;
	border-style: solid;
	border-color: #fff;
	border-width: 2px 0 0 2px;
	transform: translate(-50%, -50%) rotate(45deg);
}

#back-top:hover {
	background: #b4a665;
	transition: all .3s;
}

/* !汎用コンテンツ
---------------------------------------------------------- */
/*--- 見出し ---*/
h2 .title {
	font-size:32px;
	font-family: "Cinzel", serif;
	font-optical-sizing: auto;
	font-weight: 600;
	font-style: normal;
	line-height: 1.2em;
	letter-spacing: 0.16rem;
}

h2 .title::first-letter {
	font-size: 1.2em;
}

h2 .sub_tit {
	font-size:16px;
	letter-spacing: 0.16rem;
}

h2 span {
	display: block;
}

h3 {
	font-size: 26px;
	line-height: 1em;
	font-weight: bold;
	color: #000;
	border-left: 4px solid #005130;
	padding: 5px 0 8px 12px;
}

h4 {
	display: flex;
	align-items: center;
}

h4::before {
	content: "";
	width: 15px;
	height: 15px;
	background: #005130;
	margin-right: 5px;
	transform: translateY(1px);
}

/*--- インデント ---*/
.indent {
	margin-left: 24px;
}

.indent p {
	margin-top: 6px;
}

/* !Box
----------------------------------------------------------- */
/*--- 2カラム用（余りは中央に配置） ---*/
.two_column {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 20px 2%;
}

.two_column .col:last-child:nth-child(odd) {
	grid-column: 1 / -1;
	justify-self: center;
	width: 50%;
}

@media screen and (max-width: 811px) {
	.two_column {
		grid-template-columns: 1fr;
		gap: 20px;
	}
	.two_column .col {
		width: 100%;
		max-width: 100%;
		justify-self: stretch;
		grid-column: auto;
	}
	.two_column .col:last-child:nth-child(odd) {
		width: 100%;
		justify-self: stretch;
		grid-column: auto;
	}
}

/*--- リスト（黒丸） ---*/
.Disc {
	margin-left:20px;
}

.Disc li {
	list-style-type:disc;
	line-height: 1.6em;
	margin-bottom: 6px;
}

/*--- テーブル（横スクロール表示） ---*/
@media only screen and (min-width: 441px) {
	.scroll-note {
		display: none;
	}
}

@media screen and (max-width: 441px) {
	.table-scroll {
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}
	.table-scroll > table {
		min-width: 800px;
		border-collapse: collapse;
		margin-bottom: 12px;
	}
	.scroll-note {
		font-size: 10px;
		color: #555;
		margin-bottom: 10px;
	}
}

/* !Fonts -------------------------------------------------------------- */
.fwB { font-weight: bold;}
.fz14 { font-size: 14px;}
.fz16 { font-size: 16px;}
.fcWhite { color: #fff !important;}
.fcWhite_spBlack { color: #fff !important;}
.fcBlack { color: #000 !important;}
.fcGreen { color: #005130 !important;}
.fcBeige { color: #b9ad75 !important;}
.fcRed { color: #c1272d !important;}

/* !Margin ------------------------------------------------------------------ */
.mt10 { margin-top:10px !important;}
.mt20 { margin-top:20px !important;}
.mt40 { margin-top:40px !important;}
.mt60 { margin-top:60px !important;}
.mt80 { margin-top:80px !important;}
.mt100 { margin-top:100px !important;}
.mt120 { margin-top:120px !important;}

/* !Inline Align ------------------------------------------------------------ */
.taC { text-align: center !important;}
.taC_spL { text-align: center !important;}
.taL_spC { text-align: left !important;}
.taL { text-align: left !important;}
.taR { text-align: right !important;}
.ImgC { display: block; margin-left: auto; margin-right: auto;}

/* !Floats ------------------------------------------------------------------ */
.flL { display: inline; float: left;}
.flR { display: inline; float: right;}

/* ==========================================================
トップページ
========================================================== */
/*--- オープニング・アニメ ---*/
.loading {
	width: 100vw;
	height: 100vh;
	transition: all 1s;
	background: #005130;
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 99999;
	opacity: 1;
	visibility: visible;
}

.loading img {
	width: 180px;
}

.loading.is-active {
	opacity: 0;
	visibility: hidden;
}

.loading-animation {
	width: 100vw;
	height: 100vh;
	transition: all 1s;
	background: #005130;
	z-index: 99999;
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 0;
	visibility: hidden;
}

.loading-animation.is-active {
	opacity: 1;
	visibility: visible;
}

/*--- カバー画像 ---*/
#Cover_Main {
	width: 100%;
	height: 100dvh;
	position: relative;
}

#MainSlider .splide__track,
#MainSlider .splide__list,
#MainSlider .splide__slide {
	height: 100vh;
}

#MainSlider .splide__slide img {
	width: 100%;
	height: 100% !important;
	object-fit: cover;
	display: block;
}

#Cover_Main .logo_mark {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	max-width: 180px;
	height: auto;
	z-index: 10;
}

/* !お知らせ
---------------------------------------------------------- */
#News {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	max-width: 360px;
	background: #005130;
	padding: 24px;
	z-index: 10;
	display: flex;
	flex-direction: column;
}

#News .Title {
	align-items: center;
	justify-content: center;
	text-align: center;
	border-bottom: 1px solid #b9ad75;
	padding-bottom: 10px;
	margin-bottom: 10px;
}

#News .title {
	font-size:26px;
	font-family: "Cinzel", serif;
	font-optical-sizing: auto;
	font-weight: 600;
	font-style: normal;
	line-height: 1em;
	letter-spacing: 0.16rem;
}

#News .title::first-letter {
	font-size: 1.2em;
}

#News .sub_tit {
	font-size:14px;
	letter-spacing: 0.16rem;
}

#News .Cont {
	width: 100%;
}

/*--- レイアウト ---*/
.News_box {
	margin: 0;
}

.frame_news {
	display: flex;
	padding: 18px 0;
	border-bottom: 1px solid #b3b3b3;
}

.frame_news .date {
	min-width: 86px;
	font-size: 14px;
	color: #fff;
}

.frame_news .cont {
	flex: 1;
	font-size: 14px;
	color: #fff;
	/*--- 文字数制限 ---*/
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
}

.News_box a {
	text-decoration: none;
	color: inherit;
	display: block;
}

.News_box a:hover .cont {
	transition: 0.3s;
	color: #cec47b;
}

/*--- View More ---*/
#Link_More {
	margin-top: 16px;
	text-align: right;
}

#Link_More a {
	display: inline-block;
	font-size: 13px;
	line-height: 1em;
	color: #b9ad75;
	text-decoration: none;
	position: relative;
	padding-left: 24px;
	transition: color 0.3s;
}

#Link_More a::before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 16px;
	height: 16px;
	background: #fff;
	box-sizing: border-box;
	border-radius: 2px;
}

#Link_More a::after {
	content: "";
	position: absolute;
	left: 6px;
	top: 50%;
	transform: translateY(-50%);
	width: 0;
	height: 0;
	border-top: 4px solid transparent;
	border-bottom: 4px solid transparent;
	border-left: 6px solid #005130;
}

#Link_More a:hover {
	color: #fff;
}

/* !コンセプト
---------------------------------------------------------- */
#Area_Concept {
	width: 100%;
	height: 76vh;
	background: url(common/img/concept.jpg) no-repeat center top;
	background-size: cover;
	padding-top: 200px;
}

#Area_Concept .Lead {
	font-size: 32px;
	line-height: 1em;
	font-weight: bold;
	text-align: center;
}

/* !各種リンクバナー
---------------------------------------------------------- */
#Area_Bg_Black {
	background: #f4f2e8;
	padding: 20px 0 33px 0;
}

.Link {
	display: grid;
	gap: 20px;
	margin-bottom: 20px;
}

/*--- 2カラム ---*/
.Link.col2 {
	grid-template-columns: repeat(2, 1fr);
}

.Link.col2 h2 .title {
	font-size:32px;
	font-family: "Cinzel", serif;
	font-optical-sizing: auto;
	font-weight: 600;
	font-style: normal;
	line-height: 1.2em;
	letter-spacing: 0.16rem;
}

.Link.col2 h2 .title::first-letter {
	font-size: 1.2em;
}

.Link.col2 h2 .sub_tit {
	font-size:16px;
	letter-spacing: 0.16rem;
}

/*--- 3カラム ---*/
.Link.col3 {
	grid-template-columns: repeat(3, 1fr);
}

.Link.col3 h2 .title {
	font-size:24px;
	font-family: "Cinzel", serif;
	font-optical-sizing: auto;
	font-weight: 600;
	font-style: normal;
	line-height: 1.2em;
	letter-spacing: 0.16rem;
}

.Link.col3 h2 .title::first-letter {
	font-size: 1.2em;
}

.Link.col3 h2 .sub_tit {
	font-size:14px;
	letter-spacing: 0.16rem;
}

@media (max-width: 768px) {
	.Link.col2,
	.Link.col3 {
		grid-template-columns: 1fr;
	}
}

/*--- 枠（アスペクト比 5:3） ---*/
.Ratio_5-3 {
	aspect-ratio: 5 / 3;
	position: relative;
}

.Ratio_5-3 a:hover .img-wrapper img {
	transform: scale(1.06);
}

/*--- 枠（アスペクト比 4:2） ---*/
.Ratio_4-2 {
	aspect-ratio: 4 / 2;
	position: relative;
}

.Ratio_4-2 a:hover .img-wrapper img {
	transform: scale(1.06);
}

/*--- 枠（アスペクト比 5:2） ---*/
.Ratio_5-2 {
	aspect-ratio: 5 / 2;
	position: relative;
}

.Ratio_5-2 a:hover .img-wrapper img {
	transform: scale(1.06);
}

/*--- タイトル（位置指定） ---*/
.LinkTit {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	color: #fff;
	text-align: center;
	z-index: 1;
}

/*--- 画像 hover ---*/
.img-wrapper {
	cursor: pointer;
	overflow: hidden;
}

.img-wrapper img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform .3s ease;
}

/*--- リンク（ボタン並び） ---*/
#Link_Btn {
	padding: 3px 33px 0 33px;
}

/*--- ボタン（緑色） ---*/
.btn_green {
	width: 100%;
	display: block;
	text-align: center;
	color: #fff;
	text-decoration: none;
	background: #005130;
	padding: 16px 0;
	margin: 30px 0;
}

.btn_green:hover {
	color: #fff;
	text-decoration: none;
	background: #11845c;
	transition: all .3s;
}

.btn_green .title {
	font-size:18px;
	font-family: "Cinzel", serif;
	font-optical-sizing: auto;
	font-weight: 600;
	font-style: normal;
	line-height: 1.2em;
	letter-spacing: 0.16rem;
}

.btn_green .title::first-letter {
	font-size: 1.2em;
}

.btn_green .sub_tit {
	font-size:14px;
	letter-spacing: 0.16rem;
}

/* ==========================================================
第二階層共通
========================================================== */
/*--- カバー画像（表示幅の設定） ---*/
#Cover_Common {
	width: 100%;
	height: 56vh;
	min-height: 540px;
	background-size: cover;
	position: relative;
}

/*--- カバー画像（お知らせ／お問い合わせ） ---*/
#Cover_Common.page-cmn {
	background-image: url(common/img/cmn_cover.jpg);
}

/*--- タイトル（位置指定） ---*/
#Cover_Common .TitPosi {
	position: absolute;
	top: 44%;
	left: 50%;
	transform: translate(-50%, -50%);
	color: #fff;
	text-align: center;
	z-index: 1;
}

#Cover_Common .TitPosi02 {
	position: absolute;
	top: 54%;
	left: 50%;
	transform: translate(-50%, -50%);
	color: #fff;
	text-align: center;
	z-index: 1;
}

/*--- 見出し ---*/
#Cover_Common h2 .title {
	font-size:54px;
	font-family: "Cinzel", serif;
	font-optical-sizing: auto;
	font-weight: 600;
	font-style: normal;
	line-height: 1.2em;
	letter-spacing: 0.16rem;
}

#Cover_Common h2 .title::first-letter {
	font-size: 1.2em;
}

#Cover_Common h2 .sub_tit {
	font-size:20px;
	line-height: 1em;
	letter-spacing: 0.16rem;
	white-space: nowrap;
	margin-top: 20px;
}

/*--- 背景パターン01（ご利用案内／アクセス／クラブ概要／お知らせ／会員募集／お問い合わせ／プレーヤー名連絡フォーム／よくある質問／プライバシーポリシー） ---*/
#Pattern01 .Bg_Black {
	width: 100%;
	min-height: 320px;
	background: linear-gradient(to bottom, #e0debd 0%, #e0debd calc(100% - 160px), #fff calc(100% - 160px), #fff 100%);
}

#Pattern01 .Bg_Beige {
	max-width: 1280px;
	margin: -160px auto 0;
	background: #f4f2e8;
	position: relative;
	z-index: 2;
}

#Pattern01 .Bg_Beige .Cont {
	width:100%;
	max-width: 960px;
	margin: 0 auto;
	border-top: 10px solid #005130;
	padding: 80px 0 120px;
}

/*--- 背景パターン02（レストラン） ---*/
#Pattern02 .Bg_Black {
	width: 100%;
	min-height: 320px;
	background: linear-gradient(to bottom, #e0debd 0%, #e0debd calc(100% - 160px), #fff calc(100% - 160px), #fff 100%);
}

#Pattern02 .Bg_Maroon {
	max-width: 1280px;
	margin: -160px auto 0;
	background: #6b4c52;
	position: relative;
	z-index: 2;
}

#Pattern02 .Bg_Maroon .Cont {
	width:100%;
	max-width: 960px;
	margin: 0 auto;
	padding: 80px 0 100px;
}

#Pattern02 .Bg_Navy {
	max-width: 1280px;
	margin: -160px auto 0;
	background: #3a414a;
	position: relative;
	z-index: 2;
}

#Pattern02 .Bg_Navy .Cont {
	width:100%;
	max-width: 960px;
	margin: 0 auto;
	padding: 80px 0 100px;
}

#Pattern02 .Bg_Green {
	max-width: 1280px;
	margin: 0 auto;
	background: #44503e;
	position: relative;
	z-index: 2;
}

#Pattern02 .Bg_Green .Cont {
	width:100%;
	max-width: 960px;
	margin: 0 auto;
	padding: 80px 0 100px;
}

#Pattern02 .Bg_Brown {
	max-width: 1280px;
	margin: 0 auto;
	background: #6a5a46;
	position: relative;
	z-index: 2;
}

#Pattern02 .Bg_Brown .Cont {
	width:100%;
	max-width: 960px;
	margin: 0 auto;
	padding: 80px 0 100px;
}

/*--- 背景パターン03（ご宴会・ショップ） ---*/
#Pattern03 .Bg_Black {
	width: 100%;
	min-height: 320px;
	background: linear-gradient(to bottom, #e0debd 0%, #e0debd calc(100% - 160px), #fff calc(100% - 160px), #fff 100%);
}

#Pattern03 .Bg_Purple {
	max-width: 1280px;
	margin: -160px auto 0;
	background: #5b404b;
	position: relative;
	z-index: 2;
}

#Pattern03 .Bg_Purple .Cont {
	width:100%;
	max-width: 960px;
	margin: 0 auto;
	padding: 80px 0 120px;
}

/*--- 背景パターン04（各ホール詳細） ---*/
#Pattern04 .Bg_Green {
	width: 100%;
	min-height: 320px;
	background: #005130;
	padding-bottom: 120px;
}

#Pattern04 .Bg_Gray {
	max-width: 1280px;
	margin: -160px auto 0;
	background: #e6e6e6;
	position: relative;
	z-index: 2;
}

#Pattern04 .Bg_Gray .Cont {
	width:100%;
	max-width: 960px;
	margin: 0 auto;
	padding: 0 0 100px;
}

/* ==========================================================
施設紹介
========================================================== */
/*--- カバー画像 ---*/
#Cover_Common.page-facilities {
	background: url(common/img/facilities/cover.jpg) no-repeat center;
	background-size: cover;
}

/*--- メニュー ---*/
#Facilities_Index_Menu {
	display: flex;
	gap: 10px;
	justify-content: center;
}

#Facilities_Index_Menu .btn {
	width: 120px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size:14px;
	font-family: "Cinzel", serif;
	font-optical-sizing: auto;
	font-weight: 600;
	color: #005130;
	line-height: 1;
	text-align: center;
	text-decoration: none;
	background: #fff;
	padding: 12px 0 10px;
	box-sizing: border-box;
}

#Facilities_Index_Menu .btn:hover {
	color: #005130;
	text-decoration: none;
	background: #b9ad75;
	transition: all .3s;
}

/*--- レイアウト ---*/
#Layout_Facilities .Bg_Ivory {
	width: 100%;
	min-height: 320px;
	color: #000;
	background: linear-gradient(to bottom, #e0debd 0%, #e0debd calc(100% - 160px), #fff calc(100% - 160px), #fff 100%);
	padding-top: 40px;
}

/*--- クラブハウス ---*/
#Area_Clubhouse {
	width:100%;
	max-width: 1280px;
	margin: 60px auto 0;
}

#Area_Clubhouse_Lead {
	width:100%;
	max-width: 960px;
	margin: 0 auto;
	display: flex;
	gap: 60px;
	align-items: flex-start;
}

#Area_Clubhouse_Lead .Title {
	width: 320px;
	height: 320px;
	background: #005130;
	display: flex;
	align-items: center;
	justify-content: center;
}

#Area_Clubhouse_Lead .Explain {
	flex: 1;
	font-size:16px;
	padding-top: 30px;
}

#Area_Clubhouse_Lead .Explain span {
	font-size:24px;
}

/*--- レストラン ---*/
#Area_Restaurant {
	width:100%;
	max-width: 1480px;
	background: #005130;
	margin: -215px auto -160px;
	padding: 250px 0 220px;
}

#Area_Restaurant .Cont {
	width:100%;
	max-width: 1280px;
	margin: 0 auto;
	position: relative;
}

#Area_Restaurant .Title {
	width:100%;
	max-width: 360px;
	background: #000;
	margin: 0 auto -160px;
	padding: 60px 0 220px;
}

/*--- ご宴会 ---*/
#Area_Party {
	width:100%;
	max-width: 1280px;
	margin: 0 auto;
	color: #000;
	background: #fff;
	padding: 40px 40px 60px;
}

/*--- ショップ ---*/
#Area_Shop {
	width:100%;
	max-width: 1280px;
	margin: 60px auto 0;
}

#Area_Shop .Title {
	width:100%;
	max-width: 360px;
	background: #005130;
	margin: 0 auto -160px;
	padding: 60px 0 220px;
}

/*--- 練習場 ---*/
#Area_Driving {
	width:100%;
	max-width: 1480px;
	margin: 60px auto 0;
	color: #fff;
	background: #005130;
	padding: 70px 0 80px;
}

#Area_Driving .Cont {
	width:100%;
	max-width: 1280px;
	margin: 0 auto;
}

#Area_Driving_Lead {
	width:100%;
	max-width: 960px;
	margin: 0 auto;
	display: flex;
	gap: 60px;
	align-items: flex-start;
}

#Area_Driving_Lead .Title {
	width: 320px;
	height: 260px;
	background: #000;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
}

#Area_Driving_Lead .Explain {
	flex: 1;
	font-size:14px;
	padding-top: 40px;
}

#Area_Driving_Lead .Explain span {
	font-size:24px;
	line-height: 1.8em;
}

/*--- 説明文（2カラム用） ---*/
.Photo_Explain {
	display: flex;
	gap: 30px;
	align-items: center;
	margin-top: 20px;
}

.Photo_Title {
	display: flex;
	font-size:24px;
	color: #cec47b;
	line-height: 1em;
}

.Photo_Detail {
	flex: 1;
	font-size:14px;
	line-height: 1.6em;
}

/*--- 説明文（1カラム用） ---*/
.Photo_Explain02 {
	display: flex;
	gap: 30px;
	align-items: center;
	margin-top: 20px;
}

.Photo_Title02 {
	display: flex;
	font-size:24px;
	color: #cec47b;
	line-height: 1em;
}

.Photo_Detail02 {
	flex: 1;
	font-size:14px;
	line-height: 1.6em;
}

/*--- 説明文（タイトルのみ） ---*/
.Photo_Explain03 {
	text-align: center;
	margin-top: 6px;
}

/*--- ボタン（ベージュ色） ---*/
.btn_beige {
	width: 240px;
	display: block;
	margin: 0 auto;
	font-size:16px;
	font-family: "Cinzel", serif;
	font-optical-sizing: auto;
	font-weight: 600;
	color: #005130;
	line-height: 1em;
	letter-spacing: 0.1rem;
	text-align: center;
	text-decoration: none;
	background: #cec47b;
	padding: 16px 0;
}

.btn_beige::first-letter {
	font-size: 1.2em;
}

.btn_beige:hover {
	color: #005130;
	text-decoration: none;
	background: #b9ad75;
	transition: all .3s;
}

/* ==========================================================
施設紹介（レストラン）
========================================================== */
/*--- カバー画像 ---*/
#Cover_Common.page-facilities_restaurant {
	background: url(common/img/facilities/restaurant/cover.jpg) no-repeat center;
	background-size: cover;
}

/*--- メニュー（上部） ---*/
#Restaurant_Index_Menu {
	display: flex;
	gap: 10px;
	justify-content: center;
	position: absolute;
	top: -18px;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}

#Restaurant_Index_Menu .btn {
	width: 120px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size:14px;
	font-family: "Cinzel", serif;
	font-optical-sizing: auto;
	font-weight: 600;
	color: #005130;
	line-height: 1;
	text-align: center;
	text-decoration: none;
	background: #fff;
	padding: 12px 0 10px;
	box-sizing: border-box;
}

#Restaurant_Index_Menu .btn:hover {
	color: #005130;
	text-decoration: none;
	background: #b9ad75;
	transition: all .3s;
}

/*--- メニュー（各項） ---*/
.Restaurant_Menu {
	display: flex;
	gap: 10px;
	justify-content: center;
	position: relative;
	top: 40px;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}

.Restaurant_Menu .btn {
	width: 120px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size:14px;
	font-family: "Cinzel", serif;
	font-optical-sizing: auto;
	font-weight: 600;
	color: #005130;
	line-height: 1;
	text-align: center;
	text-decoration: none;
	background: #fff;
	padding: 12px 0 10px;
	box-sizing: border-box;
}

.Restaurant_Menu .btn:hover {
	color: #005130;
	text-decoration: none;
	background: #b9ad75;
	transition: all .3s;
}

/*--- 見出し ---*/
.Txt_Line_bottom_Center {
	font-size:26px;
	color: #fff;
	text-align: center;
	position: relative;
	display: block;
	margin: 0 auto 20px;
}

.Txt_Line_bottom_Center:before {
	content: '';
	position: absolute;
	left: 50%;
	bottom: -20px;
	display: inline-block;
	width: 60px;
	height: 3px;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	background-color: #cec47b;
}

/*--- 注意書き ---*/
.Txt_Attention {
	color: #fff;
	font-size:14px;
}

/*--- メニュー ---*/
.Menu_Box a {
	text-decoration: none;
}

/*--- 画像の比率 ---*/
.Menu_Photo {
	aspect-ratio: 5 / 3;
	overflow: hidden;
}

.Menu_Photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.Menu_Wrap {
	color: #000;
	background: #fff;
	padding: 14px 14px 20px 14px;
	line-height: 1.4em;
}

.Menu_Wrap .name {
	font-size:18px;
}

.Menu_Wrap .price {
	font-size:16px;
	margin-top: 4px;
}

.Menu_Wrap .tax {
	font-size:14px;
}

.Menu_Wrap .cont {
	font-size:14px;
	line-height: 1.6em;
	margin-top: 10px;
}

/*--- テーブル枠 ---*/
.Frame_Menu {
	background: #f4f2e8;
	padding: 20px 20px 50px;
}

.Frame_Menu .Tit {
	display: block;
	font-weight: bold;
	text-align: center;
}

/*--- テーブル（レストラン） ---*/
.table_restaurant {
	width: 100%;
	color: #000;
	margin-top: 20px;
}

.table_restaurant tr {
	border-bottom: 1px solid #cec47b;
}

.table_restaurant tr:first-child {
	border-top: 1px solid #cec47b;
}

.table_restaurant th {
	font-weight: normal;
	text-align: left;
	padding: 10px 0;
}

.table_restaurant td {
	text-align: right;
	padding: 10px 0;
}

.table_restaurant .name {
	font-size:18px;
}

.table_restaurant .note {
	font-size:14px;
}

.table_restaurant .price {
	font-size:18px;
}

.table_restaurant .tax {
	font-size:14px;
}
@media screen and (max-width:811px){
	.table_restaurant {
		width: 100%;
		margin-top: 2px;
	}
	.table_restaurant,
	.table_restaurant thead,
	.table_restaurant tbody,
	.table_restaurant tr,
	.table_restaurant th,
	.table_restaurant td {
		width: 100%;
		display: block;
	}
	.table_restaurant th,
	.table_restaurant td {
		border: none;
	}
	.table_restaurant th {
		text-align: left;
		padding: 10px 0 0;
	}
	.table_restaurant td {
		text-align: left;
		padding: 0 0 10px;
	}
	.table_restaurant .name {
		font-size:16px;
	}
	.table_restaurant .note {
		font-size:14px;
	}
	.table_restaurant .price {
		font-size:16px;
	}
	.table_restaurant .tax {
		font-size:14px;
	}
}
@media screen and (max-width:441px){
	.table_restaurant {
		width: 100%;
		margin-top: 2px;
	}
}

/* ==========================================================
施設紹介（ご宴会）
========================================================== */
/*--- カバー画像 ---*/
#Cover_Common.page-facilities_party {
	background: url(common/img/facilities/party/cover.jpg) no-repeat center;
	background-size: cover;
}

/*--- テーブル（ご宴会） ---*/
.table_party {
	width: 100%;
	font-size: 14px;
	margin-bottom: 6px;
}

.table_party tr {
	vertical-align: top;
}

.table_party td:first-child {
	width: 14%;
	color: #a67c52;
	text-align: left;
	font-weight: normal;
	padding: 2px 0;
}

.table_party td {
	text-align: left;
	padding: 2px 0;
}
@media screen and (max-width:811px){
	.table_party {
		width: 100%;
		margin-top: 2px;
	}
	.table_party,
	.table_party thead,
	.table_party tbody,
	.table_party tr,
	.table_party td {
		width: 100%;
		display: block;
	}
	.table_party td {
		border: none;
	}
	.table_party td:first-child {
		width: 100%;
		text-align: left;
		padding: 2px 0 0 0;
	}
	.table_party td:last-child {
		text-align: left;
		padding: 0 0 2px 0;
	}
}

/*--- キャンセルポリシー ---*/
#Area_Cancel {
	background: #fff;
	padding: 40px;
	margin-top: 50px;
}

/* ==========================================================
施設紹介（ショップ）
========================================================== */
/*--- カバー画像 ---*/
#Cover_Common.page-facilities_shop {
	background: url(common/img/facilities/shop/cover.jpg) no-repeat center;
	background-size: cover;
}

/*--- コメント ---*/
.Menu_Comment {
	color: #000;
	background: #fff;
	padding: 0 14px 24px;
	line-height: 1.4em;
}

/* ==========================================================
コースガイド
========================================================== */
/*--- カバー画像 ---*/
#Cover_Common.page-course {
	background: url(common/img/course/cover.jpg) no-repeat center;
	background-size: cover;
}

#Area_Course_Lead {
	background: #e0debd;
	padding: 60px 0;
}

#Area_Course_Lead .Cont {
	width:100%;
	max-width: 960px;
	margin: 0 auto;
	font-size:16px;
	color: #000;
}

#Area_Course_Lead .Cont span {
	display: block;
	font-size:24px;
	text-align: center;
}

/*--- 西コース ---*/
#Area_Westcourse {
	background: linear-gradient(
		to bottom,
		#e0debd 0px,
		#e0debd 120px,
		#005130 120px,
		#005130 100%
	);
	padding-bottom: 0;
}

#Area_Westcourse .Cont {
	width:100%;
	max-width: 960px;
	margin: 0 auto;
	color: #fff;
	position: relative;
}

#Area_Westcourse_Lead {
	width:100%;
	max-width: 960px;
	margin: 0 auto;
	display: flex;
	gap: 60px;
	align-items: flex-start;
}

#Area_Westcourse_Lead .Title {
	position: absolute;
	top: -100px;
	width: 320px;
	height: 320px;
	background: #000;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
}

#Area_Westcourse_Lead .Explain {
	flex: 1;
	font-size:15px;
	padding-top: 40px;
}

/*--- 東コース ---*/
#Area_Eastcourse {
	background: linear-gradient(
		to bottom,
		#005130 0px,
		#005130 120px,
		#e0debd 120px,
		#e0debd 100%
	);
	padding-bottom: 0;
}

#Area_Eastcourse .Cont {
	width:100%;
	max-width: 960px;
	margin: 0 auto;
	color: #000;
	position: relative;
}

#Area_Eastcourse_Lead {
	width:100%;
	max-width: 960px;
	margin: 0 auto;
	display: flex;
	gap: 60px;
	align-items: flex-start;
}

#Area_Eastcourse_Lead .Title {
	position: absolute;
	top: -100px;
	width: 320px;
	height: 320px;
	background: #005130;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	order: 2;
}

#Area_Eastcourse_Lead .Explain {
	flex: 1;
	font-size:15px;
	padding-top: 40px;
	order: 1;
}

/*--- ボタン（横並び） ---*/
.btn_wrap {
	display: flex;
	gap: 20px;
	justify-content: flex-start;
	margin-top: 24px;
}

.btn_detail {
	width: 240px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 4px;
	font-size:16px;
	font-family: "Cinzel", serif;
	font-optical-sizing: auto;
	font-weight: 600;
	color: #005130;
	line-height: 1em;
	letter-spacing: 0.1rem;
	text-align: center;
	text-decoration: none;
	background: #fff;
	padding: 16px 0;
	box-sizing: border-box;
}

.btn_detail:hover {
	color: #005130;
	text-decoration: none;
	background: #b9ad75;
	transition: all .3s;
}

.btn_icon_pdf a::after {
	content: "";
	width: 16px;
	height: 16px;
	display: inline-block;
	background: url("common/img/icon_pdf.png") no-repeat center center / contain;
	flex-shrink: 0;
	transform: translateY(-1px);
}

/* ==========================================================
コースガイド（西コース・東コース）
========================================================== */
#Course_Rate {
	text-align: center;
}

#Course_Rate span {
	font-size:24px;
}

#Course_Rate p {
	margin-top: 20px;
}

/*--- タブ ---*/
.tab_course-box {
	margin-top: 60px;
}

.tab_course-box .link_area {
	display: flex;
	justify-content:center;
	border-bottom: 1px solid #000;
}

.tab_course-box .tab_link {
	width: 100%;
	padding: 20px 0;
	color: #000;
	background: #fff;
	text-align: center;
	cursor: pointer;
	transition: all 0.2s ease 0s;
	line-height: 1.4em;
}

.tab_course-box .tab_link span {
	font-size:24px;
	font-family: "Cinzel", serif;
	font-optical-sizing: auto;
	font-weight: 600;
	letter-spacing: 0.1rem;
}

.tab_course-box .tab_link::first-letter {
	font-size: 1.2em;
}

.tab_course-box .tab_link:hover {
	background: #ddd;
}

.tab_course-box .tab_link.active {
	background:#000;
	color:#fff;
}

.tab_course-box .course-panel_area {
	padding: 0;
}

.tab_course-box .tab_course-panel {
	display:none;
}

.tab_course-box .tab_course-panel.active {
	display:block;
}

/*--- テーブル ---*/
.Area_Table {
	background:#fff;
	padding: 40px;
}

.table_course {
	width: 100%;
	font-size:14px;
	color: #000;
	table-layout: fixed;
}

.table_course tr {
	border-bottom: 1px solid #005130;
}

.table_course td {
	text-align: center;
	padding: 6px 0;
}
@media screen and (max-width:811px){
	.Area_Table {
		background:#fff;
		padding: 20px;
	}
	.table_course {
		width: 100%;
		font-size:12px;
		color: #000;
		table-layout: fixed;
	}
	.table_course tr {
		border-bottom: 1px solid #005130;
	}
	.table_course td {
		line-height: 1.2em;
		text-align: center;
		padding: 10px 0;
	}
}

/*--- コース一覧 ---*/
.Area_Course_List {
	margin-top: 40px;
}

.Course_Wrap {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
}

/*--- レイアウト ---*/
.hole_card {
	width: 100%;
	background: #fff;
	box-sizing: border-box;
}

.hole_header {
	display: flex;
	align-items: flex-start;
	gap: 16px;
	font-family: "Cinzel", serif;
	font-optical-sizing: auto;
	font-weight: 600;
	font-style: normal;
	margin-bottom: 10px;
}

.hole_no {
	background: #000;
	color: #fff;
	width: 80px;
	height: 80px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	line-height: 1;
}

.hole_no_green {
	background: #005130;
	color: #fff;
	width: 80px;
	height: 80px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	line-height: 1;
}

.hole_label {
	font-size: 14px;
	letter-spacing: 0.1em;
	line-height: 1.4em;
}

.hole_number {
	font-size: 28px;
	font-weight: bold;
}

.hole_rate {
	height: 80px;
	display: flex;
	align-items: center;
	font-size: 18px;
	font-weight: bold;
	line-height: 1.4em;
	color: #000;
}

.hole_card img {
	width: 100%;
	display: block;
}

.hole_card a {
	color: #000;
	text-decoration: none;
	cursor: pointer;
}

.hole_card:hover .hole_no {
	background: #b9ad75;
	transition: background .3s;
}

.hole_card:hover .hole_no_green {
	background: #b9ad75;
	transition: background .3s;
}

/*--- ボタン（黒色） ---*/
.btn_black {
	width: 280px;
	display: block;
	margin: 0 auto;
	font-size:14px;
	font-family: "Cinzel", serif;
	font-optical-sizing: auto;
	font-weight: 600;
	color: #fff;
	line-height: 1em;
	letter-spacing: 0.1rem;
	text-align: center;
	text-decoration: none;
	background: #000;
	padding: 16px 0;
}

.btn_black::first-letter {
	font-size: 1.2em;
}

.btn_black:hover {
	color: #fff;
	text-decoration: none;
	background: #b9ad75;
	transition: all .3s;
}

/* ==========================================================
コースガイド（各ホール詳細）
========================================================== */
/*--- カバー画像（西コース） ---*/
#Cover_Common.page-west-course {
	background: url(common/img/course/cover_west_course.jpg) no-repeat center top;
	background-size: cover;
}

/*--- カバー画像（東コース） ---*/
#Cover_Common.page-east-course {
	background: url(common/img/course/cover_east_course.jpg) no-repeat center top;
	background-size: cover;
}

/*--- タイトル（西コース） ---*/
#West_Course_Wrap .Title {
	position: absolute;
	top: -180px;
	left: 50%;
	transform: translateX(-50%);
	width: 260px;
	height: 260px;
	color: #fff;
	background: #000;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	margin-bottom: -180px;
}

/*--- タイトル（東コース） ---*/
#East_Course_Wrap .Title {
	position: absolute;
	top: -180px;
	left: 50%;
	transform: translateX(-50%);
	width: 260px;
	height: 260px;
	color: #fff;
	background: #005130;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	margin-bottom: -180px;
}

/*--- レイアウト ---*/
#Course_Cont {
	width:100%;
	max-width: 860px;
	margin: 40px auto 0;
}

/*--- ホール名 ---*/
#Hole_Info {
	display: flex;
	align-items: center;
	font-size:24px;
	font-family: "Cinzel", serif;
	font-optical-sizing: auto;
	font-weight: 600;
	font-style: normal;
	line-height: 1.2em;
}

#Hole_Info span {
	font-size:84px;
	color: #005130;
	margin-left: 10px;
}

#Hole_Info > div {
	padding: 30px 20px;
	display: flex;
	align-items: center;
	justify-content: center;
}

#Hole_Info > div:first-child {
	border-right: 1px solid #005130;
}

/*--- ホール詳細 ---*/
#Hole_Detail {
	font-size:16px;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	background: #fff;
	padding: 60px 40px;
}

#Hole_Detail .ContL {
	width: 35%;
}

#Hole_Detail .ContR {
	width: 65%;
}

#Hole_Detail .Illust img {
	display: block;
	margin: 0 auto;
	width: 80%;
	height: auto;
	border: 1px solid #e6e6e6;
}

/*--- テーブル（西コース・レート） ---*/
.table_rate_west {
	width: 100%;
	font-size:15px;
	background: #fff;
	border-collapse: collapse;
}

.table_rate_west th {
	font-weight: normal;
	text-align: center;
	color: #fff;
	background: #000;
	border: 1px solid #e6e6e6;
	padding: 10px 0;
	width: 50%;
}

.table_rate_west td {
	text-align: center;
	border: 1px solid #e6e6e6;
	border-left: none;
	padding: 10px 0;
}
@media screen and (max-width:811px){
	.table_rate_west {
		width: 100%;
		font-size:14px;
		background: #fff;
		border-collapse: collapse;
	}
	.table_rate_west th {
		font-weight: normal;
		text-align: center;
		color: #fff;
		background: #000;
		border: 1px solid #e6e6e6;
		padding: 8px 0;
		width: 50%;
	}
	.table_rate_west td {
		text-align: center;
		border: 1px solid #e6e6e6;
		border-left: none;
		padding: 8px 0;
	}
}

/*--- テーブル（東コース・レート） ---*/
.table_rate_east {
	width: 100%;
	font-size:15px;
	background: #fff;
	border-collapse: collapse;
}

.table_rate_east th {
	font-weight: normal;
	text-align: center;
	color: #fff;
	background: #005130;
	border: 1px solid #e6e6e6;
	padding: 10px 0;
	width: 50%;
}

.table_rate_east td {
	text-align: center;
	border: 1px solid #e6e6e6;
	border-left: none;
	padding: 10px 0;
}
@media screen and (max-width:811px){
	.table_rate_east {
		width: 100%;
		font-size:14px;
		background: #fff;
		border-collapse: collapse;
	}
	.table_rate_east th {
		font-weight: normal;
		text-align: center;
		color: #fff;
		background: #005130;
		border: 1px solid #e6e6e6;
		padding: 8px 0;
		width: 50%;
	}
	.table_rate_east td {
		text-align: center;
		border: 1px solid #e6e6e6;
		border-left: none;
		padding: 8px 0;
	}
}

/*--- ページ送り ---*/
#Pagenation_Hole {
	display: flex;
	gap: 10px;
	justify-content: center;
	margin-top: 60px;
}

#Pagenation_Hole a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	background: #fff;
	border-radius: 50%;
	text-decoration: none;
	font-size: 12px;
	font-weight: bold;
	color: #000;
	font-family: sans-serif;
	transition: 0.3s;
}

#Pagenation_Hole a:hover {
	background: #000;
	color: #fff;
}

#Pagenation_Hole .current {
	background: #005130;
	color: #fff;
	pointer-events: none;
}

/* !Splide
----------------------------------------------------------- */
.splide {
	position: relative;
}

/* 左ボタンの位置 */
.splide__arrow--prev {
	left: -22px !important;
}

/* 右ボタンの位置 */
.splide__arrow--next {
	right: -22px !important;
}

/* 矢印のクリック範囲など */
.button {
	background: #fff !important;
	height: 50px !important;
	width: 50px !important;
	border-radius: 50%;
}

/* 矢印共通のスタイル */
.button::before {
	content: "";
}

/* 前の矢印 */
.prev::before {
	border-bottom: solid 3px #000;
	border-left: solid 3px #000;
	width: 10px;
	height: 10px;
	transform: rotate(45deg);
	position: absolute;
	left: 40%;
}

/* 次の矢印 */
.next::before {
	border-top: solid 3px #000;
	border-right: solid 3px #000;
	width: 10px;
	height: 10px;
	transform: rotate(45deg);
	position: absolute;
	right: 40%;
}

/* ==========================================================
ご利用案内
========================================================== */
/*--- カバー画像 ---*/
#Cover_Common.page-guide {
	background: url(common/img/guide/cover.jpg) no-repeat center;
	background-size: cover;
}

/*--- 横並び（クレジットカード） ---*/
#Payment {
	display: flex;
	gap: 14px;
	margin-top: 20px;
	width: 100%;
}

#Payment img {
	flex: 1 1 0;
	min-width: 0;
	max-width: 100%;
	height: auto;
	display: block;
}

/*--- テーブル（ご利用案内） ---*/
.table_guide {
	width: 100%;
	background: #fff;
	border-collapse: collapse;
	font-size:16px;
	line-height: 1.6em;
	text-align: center;
	margin-top: 10px;
}

.table_guide td {
	border: 1px solid #c7b299;
	padding: 20px;
}

.table_guide tr:first-child td {
	border-top: none;
}

.table_guide tr:last-child td {
	border-bottom: none;
}

.table_guide td:first-child {
	border-left: none;
}

.table_guide td:last-child {
	border-right: none;
}

.table_guide .row-end td {
	border-top: none;
}

.table_guide .rowspan-cell {
	border-bottom: none;
}

.table_guide .bg_brown {
	background: #e4dbd4;
}

.table_guide .taL {
	text-align: left !important;
}
@media screen and (max-width:811px){
	.table_guide {
		width: 100%;
		background: #fff;
		border-collapse: collapse;
		font-size:14px;
		line-height: 1.4em;
		text-align: center;
		margin-top: 10px;
	}
	.table_guide td {
		border: 1px solid #c7b299;
		padding: 10px;
	}
}

/*--- テーブル02 ---*/
.table_guide02 {
	width: 100%;
	background: #fff;
	border-collapse: collapse;
	font-size:16px;
	line-height: 1.6em;
	text-align: center;
	margin-top: 10px;
}

.table_guide02 td {
	border: 1px solid #c7b299;
	padding: 20px;
}

.table_guide02 tr:first-child td {
	border-top: none;
}

.table_guide02 tr:last-child td {
	border-bottom: none;
}

.table_guide02 td:first-child {
	border-left: none;
}

.table_guide02 td:last-child {
	border-right: none;
}

.table_guide02 .row-end td {
	border-top: none;
}

.table_guide02 .rowspan-cell {
	border-bottom: none;
}

.table_guide02 .bg_brown {
	background: #e4dbd4;
}

.table_guide02 .taL {
	text-align: left !important;
}
@media screen and (max-width: 811px) {
	.table_guide02,
	.table_guide02 tbody,
	.table_guide02 tr,
	.table_guide02 td {
		display: block;
		width: 100%;
		font-size:14px;
		line-height: 1.4em;
	}
	.table_guide02 tr {
		margin-bottom: 15px;
	}
	.table_guide02 td {
		box-sizing: border-box;
		border: none;
		padding: 10px;
	}
}

/* !利用約款
---------------------------------------------------------- */
/*--- 見出し ---*/
.Terms_Title {
	font-size: 26px;
	line-height: 1em;
	font-weight: bold;
	text-align: center;
}

/*--- レイアウト ---*/
.Cont_Terms {
	display: flex;
	margin-top: 20px;
	font-size:16px;
	line-height: 1.6em;
}

.Cont_Terms .ContL {
	width: 90px;
	color: #005130;
	font-weight: bold;
	flex-shrink: 0;
}

.Cont_Terms .ContR {
	flex: 1;
}

/*--- リスト（カッコ数字） ---*/
.Bracket li {
	list-style: none;
	counter-increment: item;
	line-height: 1.6em;
	position: relative;
	padding-left: 1.5em;
	margin-bottom: 4px;
}

.Bracket li::before {
	content: "(" counter(item) ")";
	position: absolute;
	left: 0;
	width: 2.5em;
}

/*--- リスト（入れ子調整） ---*/
.adj_inline {
	display: inline;
}

/*--- ①用 ---*/
.adj_indent {
	display: flex;
}

.adj_indent .num {
	flex: 0 0 auto;
	margin-right: 0.2em;
}

/*--- (1)用 ---*/
.adj_indent02 {
	display: flex;
}

.adj_indent02 .num {
	flex: 0 0 auto;
	margin-right: 0.3em;
}

/*--- リスト（数字） ---*/
.Decimal_Terms {
	margin-left:24px;
}

.Decimal_Terms li {
	list-style-type:decimal;
	margin-bottom: 4px;
}

/* ==========================================================
アクセス
========================================================== */
/*--- カバー画像 ---*/
#Cover_Common.page-access {
	background: url(common/img/access/cover.jpg) no-repeat center;
	background-size: cover;
}

/*--- 地図 ---*/
#Map iframe {
	display: block;
	height: 580px;
}

#Frame_Green {
	display: flex;
	color: #fff;
	background: #005130;
	padding: 26px 0 30px;
}

#Frame_Green p {
	margin: 0;
	padding: 0 30px;
}

#Frame_Green p:first-child {
	flex: 0 0 40%;
	border-right: 1px solid #fff;
	box-sizing: border-box;
	text-align: right;
}

#Frame_Green p:last-child {
	flex: 0 0 60%;
	box-sizing: border-box;
}

/* ==========================================================
クラブ概要
========================================================== */
/*--- カバー画像 ---*/
#Cover_Common.page-profile {
	background: url(common/img/profile/cover.jpg) no-repeat center;
	background-size: cover;
}

/*--- テーブル（クラブ概要） ---*/
.table_profile {
	width: 100%;
}

.table_profile tr {
	border-bottom: 1px solid #005130;
}

.table_profile th {
	width:30%;
	color: #005130;
	font-weight: bold;
	text-align: right;
	padding: 20px 30px 20px 0;
}

.table_profile td {
	text-align: left;
	padding: 20px 0 20px 30px;
}
@media screen and (max-width:811px){
	.table_profile {
		width: 100%;
		margin-top: 2px;
	}
	.table_profile,
	.table_profile thead,
	.table_profile tbody,
	.table_profile tr,
	.table_profile th,
	.table_profile td {
		width: 100%;
		display: block;
	}
	.table_profile th,
	.table_profile td {
		border: none;
	}
	.table_profile th {
		text-align: left;
		padding: 10px 20px 0 20px;
	}
	.table_profile td {
		text-align: left;
		padding: 0 20px 10px 20px;
	}
}

/* ==========================================================
お知らせ
========================================================== */
/*--- 一覧 ---*/
#Area_News_List {
	width: 100%;
	max-width: 960px;
	margin: 0 auto;
	background: #fff;
	padding:70px 50px;
}

.News_List a {
	display: flex;
	border-bottom:1px solid #e0e0e0;
	padding: 30px 60px;
	line-height: 1em;
	cursor: pointer;
}

.News_List:first-child {
	border-top: 1px solid #e0e0e0;
}

.News_List a {
	color: #000;
	background: #fff;
	text-decoration: none;
}

.News_List a:hover {
	background: #fdfbf0;
	transition: all .3s;
}

.contL {
	width: 140px;
	flex-shrink: 0;
}

.contR {
	flex: 1;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

/*--- 詳細 ---*/
#News_Cont {
	width: 100%;
	padding:50px;
	background: #fff;
}

#News_Cont .date {
	text-align: right;
	font-size: 14px;
	line-height: 1em;
}

#News_Cont .tit {
	font-size: 24px;
	line-height: 1.4em;
	margin: 16px 0 24px;
	padding-bottom: 12px;
	border-bottom:1px solid #005130;
}

#News_Post p {
	margin: 10px 0;
}

/*--- ボタン ---*/
.btn_news {
	display: block;
	width: 180px;
	margin: 40px auto 0;
	font-size:14px;
	color: #fff;
	line-height: 1em;
	text-align: center;
	text-decoration: none;
	background: #000;
	padding: 12px 0;
}

.btn_news:hover {
	color: #fff;
	text-decoration: none;
	background: #b9ad75;
	transition: all .3s;
}

/* ==========================================================
会員募集
========================================================== */
/*--- カバー画像 ---*/
#Cover_Common.page-membership {
	background: url(common/img/membership/cover.jpg) no-repeat center;
	background-size: cover;
}

/*--- 文字 ---*/
.txt_tel {
	font-size: 32px;
	font-weight: bold;
	color: #005130;
	letter-spacing: 0.16rem;
	margin-top: 30px;
}

.txt_tel span {
	font-size: 46px;
}

/*--- テーブル（会員募集） ---*/
.table_membership {
	width: 100%;
	background: #fff;
	border-top: 2px solid #005130;
	border-bottom: 2px solid #005130;
}

.table_membership tr {
	border-bottom: 1px solid #005130;
}

.table_membership tr:last-child {
	border-bottom: none;
}

.table_membership th {
	width:20%;
	color: #005130;
	font-weight: bold;
	text-align: right;
	padding: 20px 30px 20px 0;
}

.table_membership td {
	text-align: left;
	padding: 20px 0 20px 30px;
}
@media screen and (max-width:811px){
	.table_membership {
		width: 100%;
		margin-top: 2px;
	}
	.table_membership,
	.table_membership thead,
	.table_membership tbody,
	.table_membership tr,
	.table_membership th,
	.table_membership td {
		width: 100%;
		display: block;
	}
	.table_membership th,
	.table_membership td {
		border: none;
	}
	.table_membership th {
		text-align: left;
		padding: 10px 20px 0 20px;
	}
	.table_membership td {
		text-align: left;
		padding: 0 20px 10px 20px;
	}
}

/* ==========================================================
お問い合わせ
========================================================== */
#Tel_Box {
	width: fit-content;
	margin: 40px auto;
	transform: translateX(50px);
}

#Tel_Box div {
	font-size: 16px;
	line-height: 2.8em;
	margin: 6px 0;
}

#Tel_Box span {
	font-size: 46px;
	color: #005130;
	font-style: italic;
	font-weight: bold;
	letter-spacing: 0.05em;
	margin-left: 8px;
	position: relative;
	top: 3px;
}

/* ==========================================================
プレーヤー名連絡フォーム
========================================================== */
/*--- カバー画像 ---*/
#Cover_Common.page-player {
	background: url(common/img/player/cover.jpg) no-repeat center;
	background-size: cover;
}

#Area_Form {
	color: #000;
	background: #fff;
	padding: 80px 40px 40px;
	margin-top: 60px;
}

#Area_Form .Atten {
	width:100%;
	max-width: 800px;
	margin: 40px auto;
	font-size: 16px;
	color: #000;
	background: #f4f2e8;
	padding: 30px 40px 40px;
}

#Area_Form .Atten .Tit {
	font-size: 24px;
	text-align: center;
}

#Area_Form .Atten .Fax {
	font-size: 24px;
	line-height: 1.6em;
}

.Atten_Red {
	text-align: center;
	font-size: 24px;
	color: #c1272d;
	line-height: 2em;
}

/* ==========================================================
よくある質問
========================================================== */
/*--- カバー画像 ---*/
#Cover_Common.page-qa {
	background: url(common/img/qa/cover.jpg) no-repeat center;
	background-size: cover;
}

/*--- 目次リスト ---*/
#List_Text ul {
	display: flex;
	justify-content: center;
	margin: 0 auto 6px;
	padding: 0;
	list-style: none;
}

#List_Text ul li {
	position: relative;
	padding: 0 20px;
	display: flex;
	align-items: center;
}

#List_Text ul li::after {
	content: "";
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 1px;
	height: 1em;
	background: #000;
}

#List_Text ul li:last-child::after {
	display: none;
}

#List_Text ul li a {
	font-size: 18px;
	color: #000;
	text-decoration: none;
}

#List_Text ul li a:hover {
	text-decoration: underline;
}

/*--- アンカー移動時のマージン設定 ---*/
.anchor {
	scroll-margin-top: 120px;
}

.anchor02 {
	scroll-margin-top: -120px;
}

.anchor03 {
	scroll-margin-top: 40px;
}

/* !アコーディオン（よくある質問）
----------------------------------------------------------- */
.accordion-area {
	list-style: none;
	width: 100%;
	margin-top: 10px;
}

.accordion-area > li {
	padding: 14px 0;
}

/* アコーディオンタイトル */
.tit_question {
	position: relative;
	cursor: pointer;
	padding: 16px 40px 16px 16px;
	transition: all .3s ease;
	font-size: 18px;
	color: #fff;
	line-height: 1.4em;
	background: #005130;
}

.tit_question:hover {
	background: #11845c;
}

.tit_question .areaL {
	width: 5%;
	float: left;
}

.tit_question .areaL span {
	font-size: 24px;
	font-weight: bold;
	font-family: 'M PLUS 1p', sans-serif;
	line-height: 1em;
}

.tit_question .areaR {
	width: 95%;
	float: left;
}

/* アイコンの＋と× */
.tit_question::before,
.tit_question::after{
	position: absolute;
	content:'';
	width: 8px;
	height: 2px;
	background-color: #fff;
	z-index:99;
	transition: .1s;
}
.tit_question::before{
	position: absolute;
	top:49%;
	right: 25px;
	transform: rotate(45deg);
}
.tit_question::after{
	position: absolute;
	top:49%;
	right: 20px;
	transform: rotate(-45deg);
}

/* closeというクラスがついたら形状変化 */
.tit_question.close::before{
	position: absolute;
	top:48%;
	right: 25px;
	transform: rotate(-45deg);
}

.tit_question.close::after{
	position: absolute;
	top:48%;
	right: 20px;
	transform: rotate(45deg);
}

/* アコーディオンで現れるエリア */
.box_cont {
	display: none;
	margin:0;
	padding: 20px 10px 30px 54px;
	font-size: 18px;
	line-height: 1.6em;
	background: #fff;
}

.box_cont .areaL {
	width: 5%;
	float: left;
}

.box_cont .areaL span {
	font-size: 32px;
	font-weight: bold;
	font-family: 'M PLUS 1p', sans-serif;
	color: #005130;
}

.box_cont .areaR {
	width: 95%;
	float: left;
	font-size: 16px;
}

/* マージン */
.box_cont .areaR .Disc {
	margin-top: 10px;
}

.box_cont .areaR p {
	margin-top: 10px;
}

/* 会員専用ページ使用 */
.diff_color {
	background: #066941;
}

.diff_frame {
	border-left: 1px solid #066941;
	border-right: 1px solid #066941;
	border-bottom: 1px solid #066941;
}

/* ==========================================================
プライバシーポリシー
========================================================== */
/*--- カバー画像 ---*/
#Cover_Common.page-privacy {
	background: url(common/img/privacy/cover.jpg) no-repeat center;
	background-size: cover;
}

/*--- 見出し ---*/
.Privacy_Title {
	font-size: 20px;
	line-height: 1em;
	font-weight: bold;
	text-align: center;
	border-bottom: 1px solid #005130;
	padding-bottom: 24px;
	margin-bottom: 24px;
}

.Privacy_Lead {
	font-size: 16px;
	line-height: 1.6em;
}

/*--- リスト（数字） ---*/
.Decimal_Privacy {
	margin-left:24px;
	font-size: 16px;
	line-height: 1.6em;
}

.Decimal_Privacy li {
	list-style-type:decimal;
	margin-bottom: 40px;
}

.Decimal_Privacy li::marker {
	font-weight: bold;
}

.Decimal_Privacy li p {
	margin-top: 6px;
}

/* ==========================================================
会員専用
========================================================== */
/* !共通
---------------------------------------------------------- */
/*--- ナビ ---*/
#Members_Navi {
	width: 100%;
}

#Members_Logo {
	height:100px;
	width:100%;
	display: flex;
	align-items: center;
	justify-content: center;
}

#Members_Logo img {
	width: 250px;
}

#Menu_List {
	display: flex;
	gap: 40px;
	justify-content: center;
	height:60px;
	background: #005130;
}

#Menu_List a {
	display: flex;
	align-items: center;
	font-size: 18px;
	color: #fff;
	text-decoration: none;
	transition: 0.3s;
}

#Menu_List a:hover {
	text-decoration: underline;
}

/*--- 見出し ---*/
.Members_Title {
	font-size: 26px;
	line-height: 1em;
	font-weight: bold;
	color: #005130;
	text-align: center;
}

.Members_Title_Ul {
	font-size: 26px;
	line-height: 1em;
	font-weight: bold;
	color: #005130;
	text-align: center;
	border-bottom: 1px solid #005130;
	padding-bottom: 24px;
	margin-bottom: 24px;
}

/*--- エリア分け（白背景） ---*/
#Area_Bg_White {
	width: 100%;
	background: #fff;
}

#Area_Bg_White .Cont {
	width:100%;
	max-width: 960px;
	margin: 0 auto;
	padding: 80px 0 60px;
}

/* !トップページ
---------------------------------------------------------- */
/*--- リード文 ---*/
#Area_Lead {
	width: 100%;
	background: #fff;
}

#Area_Lead .Cont {
	width:100%;
	max-width: 760px;
	margin: 0 auto;
	padding: 60px 0;
}

/*--- お知らせ ---*/
#Area_Info {
	width: 100%;
	background: #fff;
}

#Area_Info .Cont {
	width:100%;
	max-width: 860px;
	margin: 0 auto;
	padding: 60px 0 0;
}

#Info_Title {
	display: flex;
	justify-content: space-between;
	font-size: 18px;
	color: #fff;
	background: #005130;
	padding: 10px 30px;
}

.arrow a {
	display: inline-flex;
	align-items: center;
	font-size: 15px;
	color: #fff;
	text-decoration: none;
}

.arrow a:hover {
	text-decoration: underline;
}

.arrow a::after {
	content: "";
	display: inline-block;
	margin-left: 10px;
	width: 0;
	height: 0;
	border-left: 8px solid #fff;
	border-top: 5px solid transparent;
	border-bottom: 5px solid transparent;
	transform: translateY(1px);
}

#Info_Frame {
	border-left: 1px solid #005130;
	border-right: 1px solid #005130;
	border-bottom: 1px solid #005130;
	padding: 20px 60px 30px;
}

.info_box {
	border-top: 1px solid #e0e0e0;
	padding: 12px 0;
}

.info_box:first-child {
	border-top: none;
}

.info_box a {
	text-decoration: none;
	color: inherit;
	display: block;
}

.info_box a:hover .cont {
	transition: 0.3s;
	color: #000;
	text-decoration: underline;
}

.flex_info {
	display: flex;
	padding: 4px 0;
}

.flex_info .date {
	min-width: 100px;
	font-size: 16px;
	color: #000;
}

.flex_info .cont {
	flex: 1;
	font-size: 16px;
	color: #000;
	/*--- 文字数制限 ---*/
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
}

/*--- リンク集 ---*/
#Area_Link {
	width: 100%;
	background: #f6f8fa;
}

#Area_Link .Cont {
	width:100%;
	max-width: 760px;
	margin: 0 auto;
	padding: 60px 0;
}

#Area_Link a {
	text-decoration: none;
	color: inherit;
}

/*--- カラム表示 ---*/
.btn_square_wrap {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
}

/*--- ボタン ---*/
.btn_square {
	aspect-ratio: 1 / 1;
	border: 1px solid #005130;
	background: #fff;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	text-decoration: none;
	color: #000;
	box-sizing: border-box;
	border-radius: 6px;
	transition: 0.3s;
}

.btn_square img {
	max-width: 54px;
	height: auto;
	margin-bottom: 20px;
}

.btn_square p {
	margin: 0;
	font-size: 16px;
	text-align: center;
}

.btn_square:hover {
	background: #fff7cb;
}

/* !リクエスト予約
---------------------------------------------------------- */
/*--- テーブル ---*/
.table_reservation {
	font-size:16px;
}
.table_reservation th,
.table_reservation td {
	text-align: left;
	vertical-align: top;
	padding: 20px 0;
	border-bottom: 1px solid #d3d3d3;
}
.table_reservation tr:first-child th,
.table_reservation tr:first-child td {
	border-top: 1px solid #d3d3d3;
}
.table_reservation th {
	font-weight: bold;
}
@media screen and (max-width:811px){
	.table_reservation {
		font-size:14px;
	}
	.table_reservation th,
	.table_reservation td {
		width: 100%;
		display: block;
		text-align: left;
		vertical-align: top;
		padding: 16px 0;
		border-bottom: 1px solid #d3d3d3;
	}
	.table_reservation tr:first-child td {
		border-top: none;
	}
	.table_reservation th {
		padding-left: 8px;
		background: #fafafa;
		font-weight: bold;
	}
}

/*--- リスト ---*/
.Decimal_Reservation {
	margin-left:22px;
	font-size: 16px;
	line-height: 1.6em;
}

.Decimal_Reservation li {
	list-style-type:decimal;
	margin-bottom: 20px;
}

/* !名義変更手続き
---------------------------------------------------------- */
/*--- 見出し ---*/
.Procedure_Title {
	display: flex;
	align-items: center;
	font-size: 20px;
	line-height: 1em;
	font-weight: bold;
}

.Procedure_Title::before {
	content: "";
	width: 15px;
	height: 15px;
	background: #005130;
	margin-right: 6px;
	transform: translateY(1px);
}

/*--- ボタン（横並び） ---*/
.btn_procedure_wrap {
	display: flex;
	gap: 20px;
	justify-content: center;
}

.btn_procedure {
	width: 400px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 4px;
	font-size:16px;
	font-family: "Cinzel", serif;
	font-optical-sizing: auto;
	font-weight: 600;
	color: #005130;
	line-height: 1em;
	letter-spacing: 0.1rem;
	text-align: center;
	text-decoration: none;
	background: #cec47b;
	padding: 24px 0;
	box-sizing: border-box;
}

.btn_procedure:hover {
	color: #005130;
	text-decoration: none;
	background: #b9ad75;
	transition: all .3s;
}

/*--- 区切り線 ---*/
hr {
	width: 820px;
	border: none;
	border-top: 1px solid #d3d3d3;
	margin: 30px auto;
}

/*--- テーブル ---*/
.table_procedure {
	width: 100%;
	margin-top: 30px;
}

.table_procedure tr {
	border-bottom: 1px solid #d3d3d3;
	text-align: left;
}

.table_procedure tr:first-child {
	border-top: 1px solid #d3d3d3;
}

.table_procedure th {
	width: 12%;
	color: #005130;
	font-weight: normal;
	padding: 20px 0;
}

.table_procedure td {
	padding: 20px 0;
}
@media screen and (max-width:811px){
	.table_procedure {
		width: 100%;
		margin-top: 20px;
	}
	.table_procedure th {
		width: 18%;
		color: #005130;
		font-weight: normal;
		padding: 10px 0;
	}
	.table_procedure td {
		padding: 10px 0;
	}
}

/*--- テーブル02 ---*/
.table_procedure02 {
	width: 100%;
	background: #fff;
	border-collapse: collapse;
	font-size:16px;
	margin-top: 20px;
}

.table_procedure02 th {
	width: 50%;
	font-weight: normal;
	text-align: center;
	background: #e6edea;
	border: 1px solid #005130;
	padding: 20px;
}

.table_procedure02 td {
	text-align: left;
	border: 1px solid #005130;
	padding: 20px;
}
@media screen and (max-width:811px){
	.table_procedure02 {
		width: 100%;
		background: #fff;
		border-collapse: collapse;
		font-size:14px;
		margin-top: 20px;
	}
	.table_procedure02 th {
		width: auto;
		font-weight: normal;
		text-align: left;
		background: #e6edea;
		border: 1px solid #005130;
		padding: 12px;
	}
	.table_procedure02 td {
		border: 1px solid #005130;
		padding: 12px;
	}
}

/* !プロアマ大会結果
---------------------------------------------------------- */
/*--- テーブル ---*/
.table_result {
	width: 100%;
}

.table_result tr {
	border-bottom: 1px solid #005130;
}

.table_result tr:first-child {
	border-top: 1px solid #005130;
}

.table_result th {
	width:40%;
	color: #005130;
	font-weight: bold;
	text-align: right;
	padding: 20px;
}

.table_result td {
	text-align: left;
	padding: 20px;
}
@media screen and (max-width:811px){
	.table_result {
		width: 100%;
		margin-top: 2px;
	}
	.table_result,
	.table_result thead,
	.table_result tbody,
	.table_result tr,
	.table_result th,
	.table_result td {
		width: 100%;
		display: block;
	}
	.table_result th,
	.table_result td {
		border: none;
	}
	.table_result th {
		text-align: left;
		padding: 10px 0 0 20px;
	}
	.table_result td {
		text-align: left;
		padding: 0 20px 10px 20px;
	}
}

/* !料金表
---------------------------------------------------------- */
/*--- テーブル ---*/
.table_fee {
	width: 100%;
	background: #fff;
	border-collapse: collapse;
	font-size:16px;
	line-height: 1.6em;
	text-align: center;
	margin-top: 10px;
}

.table_fee td {
	border: 1px solid #005130;
	padding: 10px;
}

.table_fee .bg_green {
	background: #e6edea;
}

/*--- テーブル02 ---*/
.table_fee02 {
	width: 100%;
	margin-top: 60px;
}

.table_fee02 tr {
	border-bottom: 1px solid #005130;
	text-align: left;
}

.table_fee02 tr:first-child {
	border-top: 1px solid #005130;
}

.table_fee02 th {
	width:50%;
	color: #005130;
	font-weight: normal;
	padding: 20px;
}

.table_fee02 td {
	padding: 20px;
}

/* !よくある質問
---------------------------------------------------------- */

/* !お知らせ
---------------------------------------------------------- */
/*--- 一覧 ---*/
#Info_List_Frame {
	width:100%;
	max-width: 860px;
	margin: 0 auto;
	border: 1px solid #005130;
	padding: 30px 60px 40px;
	margin-top: 60px;
}

/*--- 詳細 ---*/
#Info_Cont {
	width:100%;
	max-width: 860px;
	margin: 60px auto 0;
}

#Info_Cont .date {
	text-align: right;
	font-size: 14px;
	line-height: 1em;
}

#Info_Cont .tit {
	font-size: 20px;
	line-height: 1.4em;
	margin: 16px 0 24px;
	padding-bottom: 12px;
	border-bottom:1px solid #005130;
}

#Info_Post p {
	font-size: 16px;
	line-height: 1.4em;
	margin: 10px 0;
}

/*--- ボタン ---*/
.btn_info {
	display: block;
	width: 180px;
	margin: 40px auto 0;
	font-size: 14px;
	color: #fff;
	line-height: 1em;
	text-align: center;
	text-decoration: none;
	background: #005130;
	padding: 12px 0;
	position: relative;
}

.btn_info::after {
	content: "";
	display: inline-block;
	margin-left: 10px;
	width: 0;
	height: 0;
	border-left: 8px solid #fff;
	border-top: 5px solid transparent;
	border-bottom: 5px solid transparent;
}

.btn_info:hover {
	color: #fff;
	text-decoration: none;
	background: #11845c;
	transition: all .3s;
}

/* !会則等
---------------------------------------------------------- */
/*--- 見出し ---*/
.Rule_Title {
	font-size: 18px;
	line-height: 1em;
	font-weight: bold;
	text-align: center;
}

/* ==========================================================
Snow Monkey Forms
========================================================== */
/* フォーム全体 */
.snow-monkey-form,
.smf-form {
	max-width: 960px;
	margin: 0 auto;
	background: #fff;
	font-size: 14px;
}

/* 説明分 */
.smf-item__description {
	font-size: 12px !important;
}

/* アコーディオン（タイトル） */
.wp-block-accordion-heading {
	font-size: 16px !important;
	background: #f5f5f5;
	padding: 0 20px;
	border-radius: 8px;
}

.wp-block-accordion-heading:hover {
	background: #bbb;
	transition: all .3s ease;
}

/* アコーディオン（内部） */
.wp-block-accordion-panel {
	padding-bottom: 40px !important;
}

/* ボックス（日付） */
.smf-form--business select {
	width: 180px;
}

/* ボックス（セレクト） */
.smf-form--business input[type="date"] {
	width: 180px;
}

/* ボックス（テキスト） */
.smf-form--business input[type="text"] {
	width: 100%;
}

/* ボックス（メール） */
.smf-form--business input[type="email"] {
	width: 100%;
}

/* ボックス（tel） */
.smf-form--business input[type="tel"] {
	width: 100%;
}

/* ラジオボタン横並び */
.smf-radio-buttons-control__control {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	line-height: 1.8;
	margin-top: 10px;
}

/* 見出し */
.smf-form h3 {
	font-size: 18px;
	color: #000;
	padding: 10px 20px;
	background: #eee;
	border-left: none;
	border-bottom: none;
	margin-bottom: 16px;
}

/* 必須マーク */
.smf-required {
	background: #e60023;
	color: #fff;
	font-size: 11px;
	font-weight: normal;
	padding: 4px 10px;
	border-radius: 4px;
	margin-right: 6px;
}

/* 任意マーク */
.smf-optional {
	background: #1c80c4;
	color: #fff;
	font-size: 11px;
	font-weight: normal;
	padding: 4px 10px;
	border-radius: 4px;
	margin-right: 6px;
}

/* 区切り線 */
.wp-block-separator.is-style-wide {
	width: 100% !important;
	border-top: 1px solid #e5e5e5 !important;
	margin-top: 24px;
	margin-bottom: 14px;
}
@media (max-width: 639px) {
	/* 区切り線 */
	.wp-block-separator.is-style-wide {
		width: 100% !important;
		border-top: 1px solid #e5e5e5 !important;
		margin-top: 30px;
		margin-bottom: 40px;
	}
}

/* !レイアウト設定
----------------------------------------------------------- */
/* PC表示 */
@media (min-width: 640px) {
	.smf-form--business .smf-item {
		display: flex;
		align-items: stretch;
	}
	
	/* 左側 */
	.smf-form--business .smf-item__col--label {
		flex: 0 0 30% !important;
		max-width: 30% !important;
		background: #eee !important;
		font-size: 16px;
	}
	/* 右側 */
	.smf-form--business .smf-item__col--controls {
		flex: 0 0 70% !important;
		max-width: 70% !important;
	}
}
/* スマホ */
@media (max-width: 639px) {
	.smf-form--business .smf-item {
		display: block;
	}
	.smf-form--business .smf-item__col--label,
	.smf-form--business .smf-item__col--controls {
		max-width: 100% !important;
		width: 100% !important;
	}
}

/* ==========================================================
Cloudflare Turnstile
========================================================== */
.snow-monkey-forms-turnstile {
	display: flex;
	justify-content: center;
	width: 100%;
	margin-top: 50px !important;
}
