/* 店舗紹介用 */
html { /* スクロールバー強制表示・センタリング位置固定用 */
	overflow-y: scroll;
	height: 100%;
}
body{
	height: 100%;
	text-align: center;
	margin: 0;
	padding: 0 auto;
	font-size: 83%;
/*	font-family: "ヒラギノ明朝 ProN W3",serif;*/
	font-family: "ＭＳ Ｐゴシック","ＭＳ Ｐ ゴシック","MS P ゴシック","MS Pゴシック","MS PGothic","MS P Gothic", "HiraginoSans-W0","Hiragino Sans W0","ヒラギノ角ゴシック W0", sans-serif;
	line-height: 1.4;
	color: #0f0000;
	background: #551b34 url(/imgs/back01.jpg) repeat center top fixed;
}

/* 大枠（固定） */
#container {
	width: 90%;
	min-height: 100vh;
	display: flex;
	flex-direction: column;
	max-width: 860px;
	margin: 0;
	margin-left: auto;
	margin-right: auto;
	padding: 0;
	min-height: 100%;
	position: relative;
	text-align: left;
}

/* 基本のリンク */
a{
	color: #900006;
	text-decoration: underline;
	cursor: pointer;
}
a:hover {
	color: #ff3000;
	cursor: pointer;
}

/* 基本の画像 */
img{
	object-fit: scale-down;
	max-width: 100%;
}


/* ヘッダー */
#headbase{
/* ヘッダメニューをfixedにする場合
	position: fixed;
	background: #fff9f6 url(/imgs/wall_orange001.jpg);
*/
}

/* ヘッダー */
#header{
	margin: 0;
	max-width: 860px;
	background: #fff9f6 url(/imgs/wall_orange001.jpg) fixed;
/*	background: url(/imgs/name.gif) 10% center no-repeat;*/
}
#headimg{
	display: block;
	max-width: 860px;
	max-height: 93px;
	margin: 0 auto;
	padding: 5px 0;
	color: #600f3f;
	text-align: center;
	vertical-align: bottom;
}
#headimg img{
	display: inline;
	width: 95%;
	max-width: 640px;
	margin: 0 auto;
	vertical-align: bottom;
}

#headline{
	margin: 0 auto;
	padding: 0;
	width: 100%;
	border-spacing: 0;
	background: rgba(85, 27, 52, 0.15);/*#551b34;*/
	display: flex;
	justify-content: space-between;
	align-items: center;
	box-sizing: border-box;
}
#headline span{
	white-space: nowrap;
	flex: 0 0 auto;
	flex-grow: 0;
	flex-shrink: 0;
	flex-basis: auto;
}
#headline a{
	margin: 0;
	display: inline-block;
	height: 20px;
	padding: 0 5px 2px 5px;
	vertical-align: top;
	font-size: 15px;
	font-weight: bold;
/*	color: #ffffff;*/
}
#headline a:hover{
/*	color: #f6ffc6;*/
}

/* ヘッダーメニュー */
#headmenu {
	width: 100%;
	margin: 0 0 0 auto;
	color: #090f3f;
	padding: 0;
	flex-wrap: wrap;
/*	clear: both;*/
}
/* ヘッダーメニューテキスト */
.headnavi {
	margin: 0 0 0 auto;
	font-size: 123%;
	font-weight: normal;
	font-family: "ＭＳ Ｐゴシック","MS PGothic", "HiraginoSans-W0","Hiragino Sans W0","ヒラギノ角ゴシック W0", sans-serif;
}

.headnavi a{
	padding: 6px 6px 0px 6px;
	margin: 0px;
	font-weight: bold;
	font-family: sans-serif;
	text-decoration: none;
	height: 26px;
	display: block;
	background: #d6e8b6 url(/imgs/headmenu01.gif) repeat-x;
}
.headnavi a:hover {
	color: #f6ffc6;
	text-decoration: none;
	background: #551b34 url(/imgs/headmenu03.gif) repeat-x;
}
/* headnavi_w ： table class="?colmn" で振り分け */
.5column .headnavi_w1{
	width: 172px;
}
.5column .fortop{
	width: 173px;
}
.5column .headnavi_w2{
	width: 170px;
}
.6column .headnavi_w1{
	width: 143px;
}
.6column .headnavi_w2{
	width: 142px;
}
.7column .headnavi_w1{
	width: 122px;
}
.7column .headnavi_w2{
	width: 122px;
}
.8column .headnavi_w1{
	width: 106px;
}
.8column .fortop{
	width: 107px;
}
.8column .headnavi_w2{
	width: 107px;
}

.spliter {
	background: #d2e8c6;
	width: 1px;
}
.headnow a{
	background: #f8e4c0 url(/imgs/headmenu02.gif) repeat-x;
}

.titlelink{
	line-height: 1;
	display: block;
	text-decoration: none;
}
/* タイトル用アンダーライン */
.c_title{
	margin: 0 0 20px -20px;
}
/* サブタイトル用 */
.cs_title{
	height: 3px;
	width: 645px;	/* 元画像は800px */
	margin: 0 15px 20px -5px;
}
.undertitle{
	margin: 0 0 20px 0;
	height: 5px;
	background: #3f0f1b linear-gradient(60deg, #3f0f1b, #3f0f1b, #6f0f4b 5%, #cf0f6f 10%, #c00f66 5%, #3f0f1b);
/*	border-top: 5px solid #3f0f1b;*/
}

/* コンテンツベース */
.main{
	flex-grow: 1;
	padding: 5px;
	font-size: 113%;
	background: #fff9f6 url(/imgs/wall_orange001.jpg) fixed;
}

.course_btmsp{
	height: 120px;
}


/********************************************************************/
/* フッターーメニューレイアウト設定 */
#footer {
	margin: 0 auto;
	padding: 3px 0;
	text-align: center;
	font-family: sans-serif;
	line-height: 1;
	width: 100%;
	max-width: 860px;
/*	position: absolute;*/
	background: #d2e8c6 url(/imgs/footer01.gif);
	clear: both;
}

#copyright { /* コピーライト */
	margin: 8px auto auto auto;
	padding: 0 ;
	line-height: 1;
}





/********************************************************************/
/* 基本テーブル設定 */
table{
	border: 0px;
	margin: 0px;
	padding: 0px;
	text-align: left;
	border-collapse: collapse;
	font-size: 100%;
}
th, td {
border: 0px;
margin: 0px;
padding: 0px;
border-collapse: collapse;
vertical-align: top;
}
/*
td {}
th {white-space: nowrap;}
*/




/* 基本タイトル */
h1 {
	padding: 0px;
	margin: 0px;
	font-size: 223%;
	text-align: left;
}
h2 {
	padding: 0px;
	margin: 0px;
	font-size: 186%;
	text-align: left;
}
h3 {
	padding: 0px;
	margin: 0px;
	font-size: 153%;
	text-align: left;
}
h4 {
	padding: 0px;
	margin: 0px;
	font-size: 126%;
	text-align: left;
}
h2 a{
	margin-top: 11px;
}




/* 基本のリスト */
ul{
	list-style-type: square;
	color: #000033;
}



/* 基本の段落 */
p{
	line-height: 1.4;
	margin: 5px 0px;
	padding: 2px 0px;
}


hr{
	border: 0;
	height: 1px;
	color: #305093;
	background-color: #305093;
}




/* コンテンツエリア */

.corner{
	margin: 15px 1% 50px 1%;
}

.wcorner{
	padding: 6px 6px 10px 6px;
}




/* 講義内容エリア */
.detail{
	margin: 1.5em auto;
	width: 100%;
}
.detail td{
	vertical-align: top;
}




/* 各種フォント設定 */
strong{ font-weight: bold; }/* フォントボールド */
.strong{ font-weight: bold; }/* フォントボールド */

.red{color: #FF2000;} /* フォント赤 */
.orange{color: #FF9000;} /* フォントオレンジ */
.blue{color: #0000FF;} /* フォント青 */
.green{color: #009f36;} /* フォント緑#006600 */
.glay{color: #666666;} /* フォントグレー */
.gray{color: #666666;} /* フォントグレー */
.white{color: #ffffff;} /* フォント白 */
.black{color: #000000;} /* フォント黒 */


/********************************************************************/

.center{text-align: center;} /* センター */
.right{text-align: right;} /* 右 */
.left{text-align: left;} /* 左 */
.vtop{vertical-align: top;}/* テキスト縦上 */
.middle{vertical-align: middle;}/* テキスト縦中央 */
.bottom{vertical-align: bottom;}/* テキスト縦下 */
.float_right{float: right;}
.float_left{float: left;}
.float_mrgnr{margin-left: 5px;}
.float_mrgnl{margin-right: 5px;}






/* 画像の周り込み解除 */
.clear_both {
	clear: both;
	font-size: 1px;
	visibility: hidden;
	overflow: hidden;
	height: 1px;
}


/* 見やすさ用スペースなど */
.btm_spc3{
	padding-bottom: 3px;
}
.btm_spc5{
	padding-bottom: 5px;
}
.btm_spc8{
	padding-bottom: 8px;
}



.backcolor{ background: #305093; }

.bdrl{ border-top: 1px solid #305093; }
.bdrr{ border-right: 1px solid #305093; }
.bdrb{ border-bottom: 1px solid #305093; }
.bdrl{ border-left: 1px solid #305093; }


.w100{ width: 100%; }
.notlink{ cursor: default; }

/********************************************************************/




/* テーブル余白設定 */
/* 余白5px */
.tbl5 th { padding: 5px;}
.tbl5 td { padding: 5px;}
.tbl5 .border { border: 1px solid #305093;}

/* 余白3px */
.tbl3 th { padding: 3px;}
.tbl3 td { padding: 3px;}
.tbl3 .border { border: 1px solid #305093;}

.tblborder td { border: 1px solid #305093;}

/* 余白0 */
.tbl0 td { padding: 0px;}
/* 余白1 */
.tbl1 td { padding: 1px;}

.left_head{ padding-right: 5px; }



.schedules{
/*	font-family: monospace;*/
	letter-spacing: 1px;/* monospace かこれかどちらか */
}
.schedule_t{
	display: block;
	width: 4.2em;
	float: left;
}
.schedule_c{
	display: inline-block;
	padding-bottom: 8px;
	width: calc(100% - 4.3em);
}

.vhidden{
	visibility: hidden;
}

/* xxxxxxxxx */

.entryimg{margin-left: 5px;}

.imgsp{
	margin: 0 5px 5px 5px;
	max-width: 45%;
}
.courceimg_area{
	max-width: 240px;
	width: 45%;
}
.courceimg{
	margin: 0 auto 3px auto;
	width: 100%;
	border: 0;
}


/* original for Freearea */
.noline, .noline a, .noline a:hover { /* リンク下線なし */
	text-decoration: none;
}
a.noline_a, a:hover.noline_a {
	text-decoration: none;
}
.uline,.uline a{
	text-decoration: underline;
}
del{
	text-decoration: line-through;
}




/* フォントサイズ */
.mrsmall{ font-size: 76%; }
.small	{ font-size: 86%; }
small	{ font-size: 86%; }
.ss		{ font-size: 93%; }
.sbig	{ font-size:106%; }
.big	{ font-size:116%; }
.s_ttl	{ font-size:123%; }
.ms_ttl	{ font-size:146%; }
.m_ttl	{ font-size:166%; }
.bs_ttl	{ font-size:196%; }
.b_ttl	{ font-size:256%; }
.xb_ttl	{ font-size:283%; }


.nowrp{
	white-space: nowrap;
}

.padg4{
	padding: 4px;
}

.linkhed  { line-height:1.1; }
.line_h10 { line-height:1; }
.line_h11 { line-height:1.1; }
.line_h12 { line-height:1.2; }
.line_h14 { line-height:1.4; }
.line_h16 { line-height:1.6; }
.line_h20 { line-height:2; }
.line_nrml{ line-height:1.02; }
.line_big{ line-height: 1.6; }
.line_mbig{ line-height: 1.8; }


.listindent{
	margin-left: 1em;
	text-indent: -1em;
}
.nrmlindent{
	text-indent: 1em;
}
.divindent{
	width: 93%;
	padding-left: 0.5em;
}
.black_hr {
	border-top: 1px solid #000;
	height: 1px;
	margin: 7px 0;
}

.spcoursemrgn{
	margin-left: 0 auto;
}


.yellow{ color: #ffcc00; }
.dyellow{ color: #999900; }
.yorange{ color: #ffcc00; } /* 黄味オレンジ */
.rorange{ color: #ff4600; } /* 赤味オレンジ */
.crimson{ color: #900000; }
.cream{ color: #ffff9f; }
.lblue{ color: #3399ff; }
.nblue{ color: #0030c0; }
.dblue{ color: #000099; }
.dark{ color: #303039; }
.dgreen{ color: #006000; }
.rpurple{ color: #cc0066; }
.purple{ color: #9f006f; }
.bpurple{ color: #6f009f; }
.pink{ color: #f36060; }
.gpink{ color: #f09490; }
.brown{ color: #9f6000; }

/* フォントタイプ */
.serif{ font-family: "ＭＳ Ｐ明朝","ヒラギノ明朝 Pro W3",serif; }	/* 明朝系 */
.sans{ font-family: sans-serif; }	/* ゴシック系 */
.mono,tt{ font-family: monospace; }	/* 等間隔系 ほとんどのブラウザで字が小さくなるので非推奨 スマホはそもそも等間隔font */
.fantasy{ font-family: fantasy; }	/* 装飾系 */
.fnormal{font-weight: normal !important;}/* ボールド解除 */

/* ↓letter-spacing  Aタグのばあい設定済みにつき、内側spanで対応すること */
.ls_m{letter-spacing: -0.05em;}
.ls_m1{letter-spacing: -0.1em;}
.ls_m2{letter-spacing: -0.2em;}
.ls_m3{letter-spacing: -0.3em;}
.ls_m4{letter-spacing: -0.4em;}
.ls_m1p{letter-spacing: -1px;}
.ls_m2p{letter-spacing: -2px;}
.ls_m3p{letter-spacing: -3px;}

.ls_w1{letter-spacing: 0.2em;}
.ls_w2{letter-spacing: 0.4em;}












.top_catchphrase {
	color: #6f0000;
	font-size: 103%;
}
.top_clear_both {
	font-size: 1px;
	visibility: hidden;
	overflow: hidden;
	height: 1px;
}

.topdesign {
	width: 92%;
	margin: auto;
}
.top_delicious {
	display: inline;
	width: 46%;
	max-width: 268px;
	padding: 10px 0 0 0;
	position: relative;
	/*background: #fcfcfc;*/
	z-index: 1;
}
.top_delicious_img {
	top:20%;
}
.top_mess {
	width: calc(90% - 26px);
	margin: auto;
	border: 3px double #f8e4c0;
	padding: 10px;
	color: #6f0000;
}
.teachers {
	max-width: 90%;
	margin: auto;
	font-size: 103%;
}









#coursebase{
margin: 0 -9px 0 0;
z-index: 1;
}
#coursebase .area{
width: 100%;
margin: 10px 0 20px 0;
}
.c_corner{
margin-top: 0 !important;
padding: 0 6px 10px 6px;
}
.c_notice{
margin: 0;
padding: 0;
color: #c00060;
font-weight: bold;
line-height: 110%;
}

#coursebase td{
margin: 0;
padding: 0;
/*background: #cf9996;*/
}
#coursebase .tarea{
width: 25%;
}
.cbox{
position: relative;
display: inline-block;
padding: 3px 3px 0 3px;
}
.cbox a{
color: #300030;
}

.course_area{
width: calc(100% - 16px);
margin: 0 8px 10px 0;
background: rgb(255,201,198, 0.6)/*#ffc9c6*/;
color: #900006;
}
.course_area div{
font-size: 283%;
line-height: 1;
}
.coursebox{
width: calc(100%/3 - 18px);/* 8px*2+border分2px */
float: left;
margin: 0 10px 10px 0;
background: url() rgb(255,255,255, 0.8);
border:1px solid #cf6936;/* フチ #ffc9c6よりも濃く */
}
.coursebox div{
font-size: 143%;
}
.coursebox a{
cursor: pointer;
}
.course_past{
color: #900006;
}
.course_to_view {
	position: absolute;
	right: 2px;
	bottom: 1px;
	font-size: 0.75em;
	background-color: rgba(255, 255, 255, 0.7);
	padding: 2px 5px;
	border-radius: 3px;
	color: #c00009;
	z-index: 2;
}
.cbox img{
width: 100%;
margin: 0;
}
.cbox div{
position: absolute;
top: 0;
left: 0;
display: block;
/*height: calc(100% - 10px);*/
width: calc(100% - 10px);
margin:0;
padding:5px 3px 5px 5px;
}

/* 終了したセミナーの表示 */
.passed{
opacity: 0.5;
}
.passed .course_to_view{
color: #000000;
font-size: 106%;
}

/* 期区切り表示時のエリア分けボーダー */
.area_border {
	clear: both;
	font-size: 1px;
	margin: -5px 10px 8px auto;
	border-top: 1px solid #ffc9c6;
}
.time_border {
	clear: both;
	font-size: 1px;
	margin: -12px 10px 15px auto;
	border-top: 1px solid #ffc9c6;
}





.c_detail_wrap{
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100svh;
	margin: 0;
	padding: 8px 20px 18px 0;
	background: rgb(0, 0, 0, 0.3);
/*	background: #551b34 url(/imgs/back01.jpg) repeat center top fixed;*/
/*	font-size: 123%;	*/
	z-index: 200;
	opacity: 0;
	transition: opacity 0.7s ease/*ease-in-out*/;
}
.c_detail_base {
	display: block;
	position: relative;
	width: 85%;/* calc(90% - 20px);containerのwidthが90%。スクロールバー20px */
	max-width: 840px;
	height: calc(100svh - 16px -2px);
	margin: 12px auto auto auto;
	padding: 0;
/*	border: 2px outset #fff9f6;*/
	box-sizing: border-box;
	background: rgb(255, 255, 255, 0.95);
/*	background: #fff9f6 url(/imgs/wall_orange001.jpg) fixed;*/
	box-shadow: 2px 2px 15px rgb(0, 0, 0, 0.60);
	font-size: 112%;
}
#c_detail {
	display: block;
	width: calc(100% - 20px);
	max-width: 840px;
	height: calc(100svh - 52px);/* c_detail_footの高さに合わせて縦サイズを減らす */
	margin: 0;
	padding: 8px 10px;
	text-align: left;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	z-index: 210;
}
.c_content {
	line-height: 180%;
}
.c_detail_content {
}
.c_detail_content .left_head{
	white-space: nowrap;
}
.c_detail_close{
	display: inline-block;
	position: absolute;
	top: -18px;
	right: 15px;
	/*width: 120px;*/
	/*height: 30px;*/
	margin: 0 0 0 auto;
	padding: 0 2px;
	text-align: center;
	font-size: 22px;
	font-weight: bold;
	background: #ffffff;
	border: 1px solid #900030;
	border-radius: 15px;
	line-height: 1;
	box-shadow: 2px 2px 5px rgb(144, 0, 48, 0.60);
	z-index: 250;
}
.c_detail_close .c_detail_bg{
	padding: 0 0 5px 5px;
}
.c_detail_close a{
	text-decoration: none;
	cursor: pointer;
	vertical-align: 3px;
	color: #900030;
}
.c_detail_close_str{
	display: inline-block;
	margin-left: 2px;
	font-size: 13px;
	vertical-align: 2px;
	letter-spacing: 2px;
}
.close_overflow{
	display: inline-block;
	margin: -5px -1px -3px -6px;
}



#outplace {
	font-size: 107%;
}


#coursesake {
	font-size: 107%;
}


#evevnt {
}


#access {
	font-size: 103%;
}








@media (min-width: 920px) {
	.top_catchphrase {
		display:inline-block;
		margin: 0 -11% auto -14%;
		width:23%;
		padding-top: 100px;
		text-align:left;
		z-index: 9;
	}

	.course_to_view {
		font-size: 1em;
	}
}

@media (max-width: 919px) {
	.top_catchphrase {
		display:inline-block;
		margin: 0 -10% auto -11%;
		width:18%;
		padding-top: 100px;
		text-align:left;
		z-index: 9;
	}
	.top_delicious {
		margin: 10px 0 0 ;
	}
	.top_mess {
		width: calc(96% - 26px);
	}
	.teachers {
		max-width: 96%;
	}
}
@media (max-width: 859px) {
	.course_area div{
	font-size: 203%;
	}
	.coursebox div{
	font-size: 113%;
	}

	.top_clear_both {
		clear: both;
		font-size: 1px;
		visibility: hidden;
		overflow: hidden;
		height: 1px;
	}

	.top_catchphrase {
		display: inline-block;
		margin: auto;
		width: auto;
		padding-top: 10px;
		text-align: center
	}
	.top_delicious{
		margin: 30px 0 0 0;
	}
	.top_delicious_img {
		top:25%;
	}
	.topdesign {
		margin: auto;
		width: 95%;
	}
	.top_mess {
		width: calc(100% - 26px);
	}
	.teachers {
		max-width: 100%;
	}
}
@media (min-width: 800px) {
	.top_delicious_img {
		top:21%;
	}
	.top_mess {
		font-size: 107%;
	}
}



/* PC */
@media (min-width: 681px) {

	.c_detail_wrap{
		font-size: 123%;
	}

	.top_enjoywine {
		position:relative;
		top: 10px;
		color: #6f0000;
		font-size: 113%;
	}

	#c_detail {
		font-size: 0.85em;
	}

}


/* smp */
@media (max-width: 680px) {

	#headline a{
		width: auto;
		height: auto;
		vertical-align: middle;
		font-size: 88%;
	}
	/* ヘッダーメニュー */
	.headnavi {
		margin: 0;
		text-align: center;
		font-size: 103%;
	}
	.headnavi a{
		display: flex;
		align-items: center;
		justify-content: center;
		font-size: 83%;
		margin: 0;
		padding: 0 1px;
		line-height: 1;
		vertical-align: bottom;
	}
	.headnavi a span{
		display: inline-block;
		margin: auto 0;
		padding: 0;
		vertical-align: middle;
	}



	.top_enjoywine {
		color: #6f0000;
		padding-top: 10px;
		font-size: 103%;
	}

	.top_catchphrase {
		width: 90%;
	}



	.c_corner{
	margin-top: -10px !important;
	}

	.course_area div{
	font-size: 183%;
	}
	.coursebox div{
	font-size: 103%;
	}
}

@media (max-width: 479px) {


	h1 {
		font-size: 207%;
	}
	h2 {
		font-size: 176%;
	}
	h3 {
		font-size: 146%;
	}
	h4 {
		font-size: 126%;
	}


	.top_enjoywine {
		display: inline-block;
		width: 50%;
		margin: 0 -2px;
		padding-top: 0;
		font-size: 78%;
		line-height: 1.2;
	}



	#coursebase .area{
		margin: 20px 0 5px 0;
	}

	#coursebase{
	margin: 0 -6px 0 0;
	}
	#coursebase .tarea{
	width: 33.3%;/* ブラウザによるかも知れないが小数点以下効く */
	}
	.cbox{
	position: relative;
	display: inline-block;
	margin: 0 6px 6px 0;
	padding: 2px;
	}
	.cbox div{
	position: absolute;
	top: 0;
	left: 0;
	display: inline-block;
	width: calc(100% - 10px);
	margin:0;
	padding:5px 3px 5px 5px;
	line-height: 110%;
	}
	.course_area{
	width: calc(100% - 10px);
	/*border: 2px solid #fff9f6;*/
	background: rgb(255,201,198, 0.8)/*#ffc9c6*/;
	color: #900006;
	}
	.course_area div{
	font-size: 173%;
	}
	.coursebox{
	width: calc(100%/2 - 12px);/* 100%/2 -border2px*2 */
	float: left;
	background: url() rgb(255,255,255, 0.8);
	}
	.coursebox div{
	font-size: 100%;
	}
	#footer {
	font-size: 93%;
	}

}
@media (max-width: 400px) {
	.longstr{
		font-size:88% !important;
	}
}