@charset "utf-8";

/*-----------------------------------------------------------------------------
     General Setting
 -----------------------------------------------------------------------------*/

/* Reset
 ---------------------------------------------*/
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr,
address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var,
b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot,
thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header,
hgroup, menu, nav, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
	font-size: 100%;
	vertical-align: baseline;
	outline: 0;
}
body { line-height: 1; }
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }
nav, ul, ol { list-style: none; }
blockquote, q { quotes: none; }
blockquote:before, blockquote:after, q:before, q:after {
    content: '';
    content: none;
}
a {
    margin: 0;
    padding: 0;
    background: transparent;
    font-size: 100%;
    vertical-align: baseline;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}


/* Base
 ---------------------------------------------*/
body {
	background: #000;
	color: #ccc;
	font: 12px "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
}

a:link {
	color: #1e52a5;
	text-decoration: underline;
	-webkit-transition: 0.5s ease-in-out;
	transition: 0.5s ease-in-out;
}

a:visited { color: #1e52a5; }

a:hover { 
	color: #f44000;
	text-decoration: underline;
}

a:hover img:not(.noneffect) {
	opacity: 0.75;
	-ms-filter: "alpha( opacity=75 )";
	filter: alpha(opacity=75);
	-webkit-transition: 0.5s ease-in-out;
	transition: 0.5s ease-in-out;
}

.left { float: left; }

.right { float: right; }


/* micro Clearfix
 ---------------------------------------------*/
.cf:before,
.cf:after {
	display: table;
	content: "";
}

.cf:after { clear: both; }

.cf { zoom: 1; } /* for IE6/7 */


/* Mouse over animation transparent
 ---------------------------------------------*/
.fade {
	-webkit-transition: 0.5s ease-in-out;
	transition: 0.5s ease-in-out;
}

.fade:hover {
	opacity: 0.6;
	filter: alpha(opacity=60);
}


/*-----------------------------------------------------------------------------
     Main Layout
 -----------------------------------------------------------------------------*/
#container {
	width: 800px;
	height: 100%;
	max-width: 96%;
	margin: 0 auto;
	border-left: 1px solid #444;
	border-right: 1px solid #444;
}

#main {
	padding-bottom: 30px;
	border-bottom: 1px solid #444;
}


/*-----------------------------------------------------------------------------
     Header
 -----------------------------------------------------------------------------*/
header h1 { padding: 10px; }

header nav li {
	float: left;
	width: 160px;
	height: 53px;
}


/*-----------------------------------------------------------------------------
     Content
 -----------------------------------------------------------------------------*/

/* Homepage
 ---------------------------------------------*/
.home > img:first-of-type {	border-bottom: 1px solid #444; }

.home > div { border-bottom: 1px solid #444; }

.home > div section:first-of-type {
	float: left;
	width: 379px;
	padding: 10px;
	border-right: 1px solid #444;
}

.home > div section:first-of-type img {
	display: block;
	margin: 0 auto;
	padding-top: 50px;
}

.home > div section:last-of-type {
	float: left;
	width: 380px;
	padding: 10px;
}

.home > div section:last-of-type img {
	display: block;
	padding-bottom: 10px;
}

.home > div section:last-of-type li {
	margin-bottom: 3px;
	padding-bottom: 3px;
	border-bottom: 1px dotted #333;
}
	.home > div section:last-of-type li:last-of-type {
		margin: 0;
		padding: 0;
		border: none;
	}


/* Common
 ---------------------------------------------*/
#content { padding: 10px; }


/* 料金のご案内（ルームコンセプト）
 ---------------------------------------------*/
.price > img { padding-bottom: 50px; }

.price #content div section:first-of-type {
	float: left;
	width: 258px;
	padding: 10px 0 30px 0;
	border-top: 1px solid #444;
}

.price #content div section:last-of-type {
	float: right;
	width: 519px;
	padding: 10px 0 30px 0;
	border-top: 1px solid #444;
}

.price section {
	width: 780px;
	padding: 10px 0 30px 0;
	border-top: 1px solid #444;
}

.price section > h1 {
	padding-bottom: 30px;
}

.price section > h1 > img {
	display: block;
	margin: 0 auto;
}

.price section > img:first-of-type {
	padding-bottom: 15px;
}

.price section > img:last-of-type {
	padding-bottom: 10px;
}

.price section p:nth-of-type(2) {
	font: 14px "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
	text-align: right;
}


/* ドリンク＆フード
 ---------------------------------------------*/
.drink > img { padding-bottom: 50px; }

.drink #content > section {
	width: 780px;
	padding: 10px 0 30px 0;
	border-top: 1px solid #444;
}

.drink #content > section > h1 {
	padding-bottom: 30px;
}

.drink #content > section > h1 > img {
	display: block;
	margin: 0 auto;
}

.drink #content > section > div {
	padding-bottom: 20px;
}

.drink #content > section > div > img {
	display: block;
	float: left;
	padding-right: 20px;
}

.drink #content > section > div > div {
	float: left;
	width: 380px;
}

.drink #content > section > div > div section {
	padding-bottom: 20px;
}

.drink #content > section > div > div section h1 {
	padding-bottom: 5px;
}

.drink #content > section > div > div section dt {
	float: left;
	clear: both;
}

.drink #content > section > div > div section dd {
	float: right;
}


.drink #content > section > section {
	padding-bottom: 20px
}

.drink #content > section > section h1 {
	padding-bottom: 5px;
}

.drink #content > section > section dl {
	width: 380px;
	
}

.drink #content > section > section dl:first-of-type {
	float: left;
}
.drink #content > section > section dl:last-of-type {
	float: right;
}


.drink #content > section > section dt {
	float: left;
	clear: both;
}

.drink #content > section > section dd {
	float: right;
}


/* コース
 ---------------------------------------------*/
.course > img { padding-bottom: 50px; }


/* ご予約受付
 ---------------------------------------------*/
.reserve3 > img { padding-bottom: 50px; }

.reserve3 #content > section {
	width: 780px;
	padding: 10px 0 30px 0;
	border-top: 1px solid #444;
}

.reserve3 #content > section > h1 {
	padding-bottom: 30px;
}

.reserve3 #content > section > h1 > img {
	display: block;
	margin: 0 auto;
}

.reserve3 dl {
	margin-bottom: 1px;
	padding: 10px 20px;
	background: #111;
}

.reserve3 dt {
	float: left;
	width: 130px;
	padding-left: 10px;
	font: bold 13px "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
}

.reserve3 dd {
	float: left;
	width: 600px;
	color: #fff;
}

.reserve3 dd span { color: #ff0; }

/* 210310 CLUBJoy予約受付ページ改修対応 */
.reservesp > img {
	padding-bottom: 50px;
}

.reservesp section {
    padding: 10px 0 30px 0;
    border-top: 1px solid #444;
}

.reserve3-ttl{
	text-align: center;
	padding-bottom: 30px;
}

.reserve3-desc{
	margin-bottom: 20px;
	font-size: 14px;
	font-weight: bold;
	text-align: center;
}

.reserve3-detail01{
	text-align: center;
}

.reserve3-detail01 p{
	margin-bottom: 20px;
}

.reserve3-detail02{
	text-align: center;
}

.reserve3-btn{
	position: relative;
	display: flex;
	margin: 0 auto 20px;
	width: 280px;
	height: 44px;
	font-size: 14px;
	align-items: center;
	justify-content: center;
	color: #fff!important;
	background: #d70c19;
	text-decoration: none!important;
}

.reserve3-btn::after{
	content: "";
	position: absolute;
	right: 27px;
    width: 8px;
    height: 8px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

.reserve3-btn:hover{
	opacity: 0.8;
}

/*-----------------------------------------------------------------------------
     Footer
 -----------------------------------------------------------------------------*/
footer {
	padding: 10px;
	text-align: right;
}

footer small { font: 10px "Hiragino Kaku Gothic ProN", Meiryo, sans-serif; }







/* ご予約フォーム
------------------------------------------------------------ */

/* table基本設定 */
#reservationForm table {
	width: 100%;
	border-collapse: collapse;
}

#reservationForm table th.subt {
	color: #fff;
	font-weight: bold;
	text-align: center;
	background-color: #222;
	padding: 5px 0;
}

#reservationForm table th.items {
	width: 180px;
	text-align: left;
	border: 1px solid #222;
	border-left: none;
	padding: 7px 10px;
	vertical-align: top;
}

#reservationForm table td {
	line-height: 1.6;
	text-align: left;
	border: 1px solid #222;
	border-right: none;
	padding: 7px 10px;
}

#reservationForm select,
#reservationForm textarea,
#reservationForm input {
	border: 1px solid #555;
	background: #000;
	color: #fff;
}

#reservationForm input[type="submit"],
#reservationForm input[type="button"] {
	background: #666;
	font: bold 12px "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
}

/* table項目設定 */
#reservationForm table th.items span.must { color: #ff2626; font-size: 11px; } /* 必須※ */

#reservationForm table td input  { padding: 2px;} /* input共通 */
#reservationForm table td select { padding: 2px;} /* select共通 */

#reservationForm table td input#sei, #reservationForm table td input#mei{ width: 100px; margin-left: 3px;} /*姓名*/
#reservationForm table td input#seiKana, #reservationForm table td input#meiKana { width: 130px; margin-left: 3px;} /*フリガナ*/
#reservationForm table td input#group {	width: 200px;} /*団体名（法人名）*/
#reservationForm table td input#age { margin-right: 3px;} /*年齢*/
#reservationForm table td input#email, #reservationForm table td input#email2 { width: 380px;} /*メールアドレス*/
#reservationForm table td input#tel1, #reservationForm table td input#tel2, #reservationForm table td input#tel3 { width: 40px;} /*電話番号*/
#reservationForm table td input.purpose, #reservationForm table td input.route { margin-right: 3px;} /*当ホームページを知ったきっかけ*/

#reservationForm table td select#under18 { margin-left: 3px;} /*18歳未満*/

/*日時*/
#reservationForm table td select#useMonth, #reservationForm table td select#useDay,
#reservationForm table td select#visitHour, #reservationForm table td select#visitMinute,
#reservationForm table td select#useHour, #reservationForm table td select#useMinute,
#reservationForm table td select#useNumber, #reservationForm table td select#under {
	margin-right: 3px;
}

#reservationForm input#useYear, #reservationForm input#useMonth, #reservationForm input#useDay { width: 40px; }

#reservationForm table td textarea#etc { width: 380px; font-size: 12px; padding: 3px;} /*その他*/

/* ボタン設定 */
#reservationForm p.button {
	text-align: center;
	margin: 15px 0;
}

#reservationForm p.button input.transmit {
	width: 150px;
	margin-right: 10px;
}

/* table内リンク設定 */
#reservationForm table a:link	 { text-decoration: underline; color: #3A5998;}
#reservationForm table a:visited { text-decoration: underline; color: #3A5998;}
#reservationForm table a:hover   { text-decoration: none; color: #3A5998;}
#reservationForm table a:active  { text-decoration: none; color: #3A5998;}

/* thanksページ */
#reservationForm p.thanks {
	width: 680px;
	font-size: 12px;
	color: #000;
	line-height: 1.6;
	text-align: center;
	margin-bottom: 7px;
}

#reservationForm p.thanks a:link	{ text-decoration: underline; color: #3A5998;}
#reservationForm p.thanks a:visited { text-decoration: underline; color: #3A5998;}
#reservationForm p.thanks a:hover   { text-decoration: none; color: #3A5998;}
#reservationForm p.thanks a:active  { text-decoration: none; color: #3A5998;}




/* ボタン設定 */
.button {
	text-align: center;
	margin: 15px 0;
}

.submit {
	width: 240px;
	border: 1px solid #7AB127;
	background: #8ac52c;
	background: -webkit-gradient(linear, left top, left bottom, from(#A3D03E), to(#60AD19));
	background: -webkit-linear-gradient(top, #A3D03E, #60AD19);
	background: -moz-linear-gradient(top, #A3D03E, #60AD19);
	background: -ms-linear-gradient(top, #A3D03E, #60AD19);
	background: -o-linear-gradient(top, #A3D03E, #60AD19);
	margin-bottom: 7px;
	padding: 10px 0;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	border-radius: 8px;
	-webkit-box-shadow: rgba(0,0,0,1) 1px 1px 3px;
	-moz-box-shadow: rgba(0,0,0,1) 1px 1px 3px;
	box-shadow: rgba(0,0,0,1) 2px 2px 6px;
	text-shadow: rgba(0,0,0,.4) 1px 1px 2px;
	color: white;
	font-size: 16px;
	font-weight: bold;
	text-decoration: none;
	vertical-align: middle;
}
.submit:hover {
	border-color: #b8e32a;
	background: #b8e32a;
	color: #444;
}
.reset {
	width: 120px;
	border: 1px solid #aaa;
	background: #ccc;
	background: -webkit-gradient(linear, left top, left bottom, from(#ddd), to(#ccc));
	background: -webkit-linear-gradient(top, #ddd, #ccc);
	background: -moz-linear-gradient(top, #ddd, #ccc);
	background: -ms-linear-gradient(top, #ddd, #ccc);
	background: -o-linear-gradient(top, #ddd, #ccc);
	margin-left: 10px;
	padding: 5px 0;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	border-radius: 6px;
	text-shadow: rgba(0,0,0,.4) 1px 1px 2px;
	color: white;
	font-size: 14px;
	font-weight: bold;
	text-decoration: none;
	vertical-align: middle;
}
.reset:hover {
	border-color: #ccc;
	background: #eee;
	color: #444;
}


#reserveHowto {
	margin-bottom: 20px;
	padding: 20px;
	border: solid 1px #CC0000;
}

	#reserveHowto h1 {
		padding-bottom: 15px;
		font: bold 14px sans-serif;
		text-align: center;
	}

	#reserveHowto dt {
		float: left;
		clear: left;
		padding: 0 15px 10px 0; 
		color: #F60;
		font: bold 12px sans-serif;
	}
	
	#reserveHowto dd {
		float: left;
		padding: 0 0 10px 0;
		font: 12px/1.3 sans-serif;
		letter-spacing: 0.2em;
	}
	
.markRequired {
	color: #f00;
	font: bold 12px sans-serif;
}

/* 2026-10-17 SEO・AIO改修で足したテキスト節 */
.cj-text{clear:both;padding:24px 30px;line-height:1.8;font-size:14px;color:#ccc}
.cj-text h2{font-size:18px;margin:0 0 10px;color:#fff}
.cj-text h3{font-size:15px;margin:18px 0 6px;color:#fff}
.cj-text p{margin:0 0 10px}
.cj-text dt{font-weight:bold;margin-top:12px;color:#fff}
.cj-text dd{margin:2px 0 0}
.cj-text ul{margin:6px 0 0 1.2em;list-style:disc}
.cj-text a:link,.cj-text a:visited,.cj-tel a:link,.cj-tel a:visited,footer small a:link,footer small a:visited{color:#8fb4ff}
.cj-text a:hover,.cj-tel a:hover,footer small a:hover{color:#f44000}
.cj-capacity{margin-top:6px;font-weight:bold}
.cj-group-note{padding:12px 30px;line-height:1.8;font-size:14px;color:#fff}
.cj-group-note a:link,.cj-group-note a:visited{color:#8fb4ff}
