@charset "UTF-8";
/* CSS Document */

.reset,.reset li,.reset th,.reset td,.reset dt,.reset dd{
	margin:0;
	padding:0;
	border:none;
	list-style:none;
	border-collapse:collapse;
}
.clearfix:after{
	content:".";
	display:block;
	clear:both;
	height:0;
	visibility:hidden;
}
a.hover-style:hover img{
	filter: alpha(opacity=80);
	-moz-opacity:0.8;
	opacity:0.8;
}
.serif{
	font-family:serif;
}
.ta-l{
	text-align:left;
}
.ta-r{
	text-align:right;
}
.ta-r_sp{
	text-align:right;
}
.ta-c{
	text-align:center;
}
/*
a.hover-style2:hover img{
	position:relative;
	top:1px;
	left:1px;
}*/

img{
	border:none;
}
* html .clearfix             { zoom: 1; } /* IE6 */
*:first-child+html .clearfix { zoom: 1; } /* IE7 */

.ptn_dot{
	background:url(../img/ptn_dot.png);
	position:fixed;
	width:100%;
	height:100%;
}



#menu{
	background:url(../img/menu_bg.png);
	padding:0 0 4px;
}
#menu h1{
	text-align:center;
	padding:10px 0 10px 0px;
}
#menu ul{
	margin-bottom:4px;
}
#menu ul li{
/*	border-bottom:1px solid #666;*/
	padding:0px 4px;
	margin-bottom:4px;
}
#menu ul li a{
	display:block;
/*	height:38px;*/
	background:#FFF;
	padding:3px 3px;
}
#menu ul li a:hover{
	background:url(../img/menu_on2.png) left top;
}
#menu ul li ul{
	margin-bottom:0;
}
#menu ul li a img{
	padding:0px 0px;
}
#menu ul li ul li{
	border-bottom:none;
	padding:0px 0px;
	margin-bottom:0px;
	background:url(../img/arrow.png) 14px center no-repeat;
}
#menu ul li ul li a{
	height:auto;
	padding:0px 3px;
}
#menu ul li ul li a img{
	padding:0px 0px;
}

#bnr_ec a{
	display:block;
	text-align:center;
	background:#fff;
/*	width:200px;*/
	padding:8px 0px;
	margin:0 auto;
}
#bnr_ec a:hover img{
	filter: alpha(opacity=90);
	-moz-opacity:0.9;
	opacity:0.9;
}



#footer{
	position:fixed;
	background:#000;
	bottom:0;
	width:100%;
	color:#6e6e6e;
	text-align:right;
	font-size:0.7em;
	padding:4px 0;
	z-index:10;
}
#copyright{
	padding-right:20px;
}

#study .harushika-mail{
	display:none;
}
/*
#home .harushika-mail{
	display:block;
}
*/



/* セカンド */
#page-tit-area{
	background:url(../img/bg_bk.png);
	margin-top:1px;
	margin-bottom:1px;
}
#page-tit-area h2{
	float:left;
}
#main-cont{
	background:url(../img/bg_wt.png);
	padding:30px 30px 20px;
}
#page-tit-area{
	padding:0 30px;
}
#page-tit-area h2{
	padding-top:16px;
}
#page-tit-area ul{
	float:right;
	padding-top:23px;
}
#page-tit-area ul li{
	float:left;
	margin-left:15px;
}
.sec{
	margin-bottom:25px;
}
img.fl-r{
	float:right;
	margin:0 5px 5px 5px;
}
img.fl-l{
	float:left;
	margin:0 5px 5px 5px;
}

#profile #sec02,
#philosophy #sec02{
	background:url(../profile/img/glass.png) no-repeat 10px center;
	padding:20px 0 0 110px;
}
#profile .company-name,
#philosophy .company-name{
	margin-bottom:8px;
}

#philosophy #sec01 p{
	margin-bottom:10px;
}
#study #page-tit-area{
/*	height:58px;
	margin-top:1px;
	margin-bottom:1px;*/
}
#study #study_nav ul{
	margin-left:-5px;
	margin-top:-10px;
	margin-bottom:15px;
}
#study #study_nav ul li span img,
#study #study_nav ul li a:hover img{
	filter: alpha(opacity=60);
	-moz-opacity:0.6;
	opacity:0.6;
}
#study #study_info .cont-r{
	line-height:1.4;
	padding-top:5px;
}
#study #study_info .serif{
	font-size:1.2em;
	font-weight:bold;
}

.youtube iframe {
	width: 100%;
	padding: 10px;
	aspect-ratio: 16 / 9;
  }

.sec-tit-box{
	display:block;
	background:#000;
	text-align:center;
	padding:20px 0;
	margin-bottom:10px;
}
.cafe .sec .cont-l span.txt{
	line-height:1.3;
	font-size:0.9em;
}
.cafe h3,
.guide h3{
	margin-bottom:15px;
	font-size:1.2em;
}
.tb_menu th{
	padding:10px;
}

.tb01{
	border-left:1px solid #999;
	border-top:1px solid #999;
	background:#fff;
	width:100%;
}
.tb01 th,.tb01 td{
	border-right:1px solid #999;
	border-bottom:1px solid #999;
	padding:8px;
}
.tb01 th{
	width:95px;
}
.tb02{
	border-right:1px solid #999;
	border-bottom:1px solid #999;
	width:100%;
	margin-bottom:10px;
}
.tb02 th,.tb02 td{
	border-left:1px solid #999;
	border-top:1px solid #999;
	padding:8px;
	background:#fff;
}
.td_trs{
	background:transparent !important;
	border:none !important;
}
.th_gr{
	background:#595959 !important;
	color:#fff;
/*	width:90px;*/
}
.th_yl{
	background:#feeaa6 !important;
}
.td_yl{
	background:#fff6d9 !important;
}
.fs-s{
	font-weight:normal;
	font-size:0.8em;
}
.guide #sec02 .txt{
	font-size:0.9em;
	line-height:1.4;
}
.guide .txt-box{
	background:url(../study/img/bg_brwn.png);
	border-radius:5px;
	-webkit-border-radius:5px;
	-moz-border-radius:5px;
	font-size:0.9em;
	line-height:1.4em;
	padding:10px;
}
.guide #sec04 dl{
	padding-left:36px;
	position:relative;
	margin-bottom:20px;
}
.guide #sec04 dl dt{
	height:29px;
	line-height:29px;
	font-weight:bold;
	font-size:1.1em;
}
.guide #sec04 dl dt img{
	position:absolute;
	top:0;
	left:0;
}
.guide #sec04 dl dd{
	font-size:0.9em;
	line-height:1.6;
	margin-bottom:10px;
}

.shoin-yoyaku-info{
	border:1px solid #808080;
	border-bottom:0px;
	margin-top:10px;
}
.shoin-yoyaku-info th,
.shoin-yoyaku-info td{
	font-size: 0.9em;
	line-height: 1.4;
	background:#FFF;
	border-bottom:1px solid #808080;
	padding:6px 8px;
}
.shoin-yoyaku-info th{
	width:100px;
/*	vertical-align:top;*/
}


#shoin-season-gallery a{
	margin:0px 3px 5px 0px;
}



.fc-red{
	color:#E50000;
}


.name-en{
	margin-bottom:5px;
	font-size:0.9em;
}
.name-jp{
	font-weight:bold;
	margin-bottom:5px;
}


.type-en{
	font-size:0.8em;

}
.btns_quantity{

}
.btns_quantity a{
	color:#444;
	background:#E5E5E5;
	margin-right:5px;
	padding:3px 4px;
	font-size:0.75em;	
	text-decoration:none;
	border-radius:3px;
	-moz-border-radius:3px;
	-webkit-border-radius:3px;
}
.btns_quantity a:hover{
	background:#eee;
}

/* 会社紹介 */
#company .sec{
	margin:0 auto 20px;
}
#company #sec01{
	margin:0 auto 20px;
}
#company .sec-tit{
	border-bottom:1px solid #C7B299;
	padding:0 0 4px 0;
	margin-bottom:5px;
}
#company .tb_01 th,.company .tb_01 td{
	padding:3px 5px;
}
#company .tb_01 th{
	width:100px;
	font-weight:normal;
	text-align:left;
	vertical-align:top;
}
#company .btn_access-map{
	display:block;
}
#company #sec04 .sec-cont{
	text-align:center;
}
#company .tb_access-info{
	border-top:1px solid #777;
	border-bottom:1px solid #777;
}
#company .tb_access-info td{
	padding:10px 15px;
}
#company .tb_access-info td b{
	display:block;
	color:#1D2088;
}

/* 喫茶 */
.sub_txt{
	margin: 0 0 10px;
	padding: 0 0 10px;
	font-size:0.9em;
	line-height:1.4;
	display: block;
}	

table.others {
	margin: 10px 0 0;
	padding: 0;

}

img.space {
	margin: 0 0 10px;
	padding: 0;

}

.event-box {
	margin: 0 10px 0 0;
	padding: 0;
	float: left;
}
.event-box:nth-child(2){
	margin: 0;
}

.menu-box {
	width:100%;
	margin: 0;
	padding: 0;
	display: block;
	overflow: hidden;
}
.menu-box img{
	margin: 0;
	padding: 0;
	display: block;
	overflow: hidden;
}
.box1 {
	margin: 0;
	padding: 0;
	width: 50%;
	height: 350px;
	float: left;
	}
.box2 {
	margin: 0;
	padding: 0;
	width: 48%;
	height: 350px;
	float: right;
	position:relative;
}
.box2 p {
position:absolute;
top: 25%;
}
.box3 {
	margin: 0;
	padding: 0;
	width: 50%;
/* 	height: 195px; */
	float: right;
	clear: both;
}
.box4 {
	margin: 0;
	padding: 0;
	width: 48%;
	height: 195px;
	float: left;
	position:relative;
}
.box4 p {
	width: 100%;
	position:absolute;
    top: 20%;
    text-align: right;
}
.box5 {
	margin: 0;
	padding: 0;
	width: 50%;
	height: 230px;
	float: left;
	}
.box6 {
	margin: 0;
	padding: 0 0 0 10px;
	width: 48%;
	height: 230px;
	float: right;
	position:relative;
}
.box6 p {
    position:absolute;
/*
    top: 25%;
*/
}
.box7 {
	margin: 0;
	padding: 0;
	width: 50%;
	height: auto;
	float: right;
}

.pc { display: block !important; }
.sp { display: none !important; }



#bg { 
	position: fixed; 
	top: 0%;
	left: 0%;
	width: 100%;
	height: 100%;
	object-fit: cover;
}


/*===============================================
画面の横幅が769px以上（パソコン用）
===============================================*/
@media screen and (min-width: 641px){
	.sp-img{
		display:none !important;
	}


	html{
	}
	body{
		background:url(../img/bg.jpg) repeat-x top #000000;
		margin:0;
		padding:0;
		line-height:1.8;
		font-size:14px;
	}

	#bg { 
		position: fixed; 
		top: 0%;
		left: 0%;
		width: 100%;
	    height: 100%;
	    object-fit: cover;
	}
	.bgwidth { 
		width: 100%;
		min-width:1024px;
	}
	.bgheight {
		height: 100%;
		min-height:762px;
	}
	
	#wrapper{
		width:100%;
	}
	#cont {
	  position: relative;
	  width:1050px;
	  padding-bottom: 100px;
	  margin:0 auto;
	}

	#menu{
		width:224px;
		float:left;
/* 		position:fixed; */
	}

	#main{
		float:right;
		width:760px;
		margin-top:20px;
		margin-bottom:30px;
		background:url(../img/bg_wt.png) repeat-x top;
		padding-top:40px;
/*
		position: fixed;
		right: 5%;
*/
	}
	#home #main{
		background:none !important;
		padding-top:0 !important;
		margin-top:0 !important;
		margin-bottom:0 !important;
	}
	
	#top_txt{
		text-align:right;
		padding:20px 95px 0 0;
	}
	

	#bnr_ec{
		padding:0px 4px;
	}
	
	
	
	/* セカンド */
	#page-tit-area{
		height:60px;
	}
	#page-tit-area{
		position:relative;
	}


	.cont-l{
		float:left;
	}
	.cont-r{
		float:right;
		line-height:1.6;
	}

	#profile .cont-l,#philosophy .cont-l{
		width:330px;
	}
	#profile .cont-r,#philosophy .cont-r{
		width:330px;
		line-height:1.6;
	}
	#profile #sec02,
	#philosophy #sec02{
		height:80px;
	}
	#study #study_nav ul li span,
	#study #study_nav ul li a{
		display:block;
		background:#fff;
	}
	#study #study_nav ul li{
		float:left;
		margin-left:10px;
	}
	#study #study_nav ul li span,
	#study #study_nav ul li a{
		width:223px;
		height:40px;
	}
	#study #sec01 .cont-l{
		width:410px;
	}
	#study #study_info .cont-r{
		width:590px;
	}
	.cafe #sec01 .cont-l,
	.cafe #sec02 .cont-l,
	.cafe #sec03 .cont-l{
		width:135px !important;
	}
	.cafe #sec01 .cont-r,
	.cafe #sec02 .cont-r{
		width:550px !important;
		font-weight:bold;
	}
	.cafe #sec03 .cont-r{
		width:550px !important;
	}
	.guide #sec03 .cont-l{
		width:320px !important;
	}
	.guide #sec03 .cont-r{
		width:360px !important;
	}
	.guide #sec04 .cont-l{
		width:340px !important;
	}
	.guide #sec04 .cont-r{
		width:340px !important;
	}


	#item #btn_onlineshopping{
		position:absolute;
		top:0;
		right:0;
	}
	#item #btn_onlineshopping a{
		display:block;
		background:#fff;
		width:160px;
		height:60px;
	}
	
	#item #main-cont{
	/*	padding:30px 10px 20px 30px;*/
		padding:30px 30px 20px 30px;
	}
	/*
	#item .one-item{
		width:340px;
		background:#fff;
		height:196px;
		float:left;
		margin-right:20px;
		margin-bottom:20px;
		position:relative;
	}
	*/
	#item .one-item{
	/*	width:340px;*/
		background:#fff;
		height:196px;
	/*	float:left;*/
	/*	margin-right:20px;*/
		margin-bottom:20px;
		position:relative;
	}
	
	.item-img{
		width:340px;
		height:196px;
		overflow:hidden;
		position:absolute;
		top:0;
		left:0;
		z-index:1;
	}
	.item-info{
		position:absolute;
		bottom:0;
		z-index:3;
		padding:5px 5px 5px 190px;
		line-height:1.2;
	}
	.item-comment{
		font-size:0.8em;
	}


	#company .sec{
		width:690px;
	}
	#company #sec01{
		width:710px;
	}
	#company .tb_01{
		position:relative;
	}
	#company .btn_access-map{
		position:absolute;
		right:-100px;
		top:55px;
	}


	#menu_sp{
		display:none;
	}
	
/* 喫茶 */
.sub_txt{
	margin: 0 0 10px;
	padding: 0 0 10px;
	font-size:1em;
	line-height:1.4;
	display: block;
}	

table.others {
	margin: 10px 0 0;
	padding: 0;

}

img.space {
	margin: 0 0 10px;
	padding: 0;

}
.weight-n {
	font-weight: normal;
}



}




/*===============================================
画面の横幅が640pxまで（スマホ用）
===============================================*/
@media screen and (max-width:640px){
	.pc-img{
		display:none !important;
	}

	body{
		font-size:20px;
		line-height:1.6;
		background:url(../img/bg01.jpg) no-repeat top center fixed #000000;
		background-size:cover;
		margin:0;
		padding:0;
	}
	
	img{
	max-width: 100%;
	height: auto;
	width /***/:auto;
	vertical-align:middle;
	}
	
	
	
	#footer {
/* 	    position: static; */
	    position: relative;
	}
	#wrapper{
		background: rgba(0, 0, 0, 0) url("../img/ptn_dot.png") repeat scroll 0 0;
	}
/*
	#bg,
	.ptn_dot{
		display:none;
	}
*/
	
	#cont{
		padding:0px 5% 80px;
		position: relative;
	}
	
	.ta-r_sp{
	text-align: left;
    }
	
	#company #menu ul,
	#company #menu #bnr_ec,
	#profile #menu ul,
	#profile #menu #bnr_ec,
	#philosophy #menu ul,
	#philosophy #menu #bnr_ec,
	#item #menu ul,
	#item #menu #bnr_ec,
	#study #menu ul,
	#study #menu #bnr_ec,
	#study #menu ul,
	#study #menu #bnr_ec,
	#event #menu ul,
	#event #menu #bnr_ec{
		display:none;
	}
	
	
	
	#home #menu {
	    float: left;
	    position: static;
	    width: 224px;
	}
	#home #main {
	    float: right;
	    width: auto;
	}
	#home #main {
	    background: rgba(0, 0, 0, 0) none repeat scroll 0 0 !important;
	    margin-bottom: 0 !important;
	    margin-top: 0 !important;
	    padding-top: 0 !important;
	}
	
	#top_txt{
		padding-top:25px;
		padding-right:20px;
	}
	
	
	#home #menu_sp {
	    display:none;
	}
	#menu_sp {
	    background: rgba(0, 0, 0, 0) url("../img/menu_bg.png") repeat scroll 0 0;
	    padding: 6px 6px 6px;
	    position: relative;
	}
	#menu_sp ul {
	    margin-bottom: 0px;
	}
	#menu_sp ul li {
	/*	width:49.2%;*/
	    margin-bottom: 6px;
	    padding: 0px 0px 0px 0px;
	/*    float:left;*/
	}
	#menu_sp ul li a {
	    background: #fff none repeat scroll 0 0;
	    display: block;
	    padding: 3px;
	}
	#menu_sp ul li a img{
	/*	width:auto;
	    height:50px;*/
	}
	#home #bnr_ec{
		padding:0px 4px;
	}
	#menu_sp #bnr_ec{
		margin-bottom:6px;
	}
	#navi-home a{
		display:block;
		color:#000;
		text-decoration:none;
		background-color:#FFF;
		text-align:center;
		padding:5px 0px;
	}
	
	
	#page-tit-area h2{
		padding-bottom: 16px;
	}
	#page-tit-area h2 img{
		display:block;
	}
	.tb_access-info{
		width:100%;
	}
	.tb_access-info th,
	.tb_access-info td{
		display:block;
		width:100%;
	}
	
	#page-tit-area .img-s{
		height:20px;
	}
	
	.cont-l,
	.cont-r{
		margin-bottom:1.5em;
	}
	
	
	#profile .cont-l img{
		width:100%;
		padding-bottom:1em;
	}
	
	
	
	#study_nav img{
		width:100%;
	}
	
	.cafe #sec02 .cont-r table{
		width:100%;
	}
	.cafe #sec02 .cont-r th,
	.cafe #sec02 .cont-r td{
		display:block;
		width:100%;
	}
	.cafe #sec02 .cont-r th img,
	.cafe #sec02 .cont-r td img{
		width:100%;
	}
	.cafe #sec02 .cont-r .tb_menu th {
	    padding: 5px 0px;
	}
	.shoin-yoyaku-info{
		border-width: 0;
	}
	.shoin-yoyaku-info th,
	.shoin-yoyaku-info td{
		display:block;
		width:100%;
	}
	.shoin-yoyaku-info th{
		background:#f2f2f2;
	}
	
	#btn_onlineshopping{
		clear:both;
		text-align:center;
		padding-bottom:15px;
	}
	
	.one-item{
		background:#FFF;
		margin-bottom:1em;
	}
	.item-img{
		display:inline;
		float:left;
	}
	.item-img img{
		padding-right:1em;
	}
	.item-info{
		padding:30px 15px 15px;
	}
	.item-info p{
		margin:0px 0px 0.5em;
	}
	.item-info p.item-comment{
		display:block;
		padding-top:1em;
		clear:both;
	}
	.btns_quantity{
	   text-align:center;
	}
	.btns_quantity a {
	    font-size: 1em;
	}
	
	.blog-rss-include-block {
	    padding: 0px 0px 0 !important;
	}
	.blog-rss-include-block .blog-date {
	    float: none !important;
	    width: auto !important;
	}
	.blog-rss-include-block dl {
	    margin-left: 0px !important;
	    padding:10px 5% 0px;
	}



/* 喫茶 */
.sub_txt{
	margin: 0 0 10px;
	padding: 0 0 10px;
	font-size:0.9em;
	line-height:1.4;
	display: block;
}	

table.others {
	margin: 10px 0 0;
	padding: 0;

}

img.space {
	margin: 0 0 10px;
	padding: 0;

}

.short {
	letter-spacing: -1.5px;
}

#shoin-season-gallery{
	width: 100%;
}
#shoin-season-gallery img{
	margin: 0 2% 10px;
	width: 44%;
}
#shoin-season-gallery img:nth-child(2){
	margin: 0 0 10px;
}

.event-box {
	margin: 0 0 10px 0;
	padding: 0;
	float: none;
}
.event-box:nth-child(2){
	margin: 0;
}
.event-box img{
	width: 100%;
	display: block;
}

.menu-box {
	width:100%;
	margin: 0;
	padding: 0;
	display: block;
	overflow: hidden;
	font-weight: bold;
}
.menu-box img{
	width: 100%;
	margin: 0;
	padding: 0;
	display: block;
	overflow: hidden;
}
.box1 {
	margin: 0;
	padding: 0;
	width: 100%;
	height: auto;
	float: none;
	}
.box2 {
	margin: 0;
	padding: 0;
	width: 100%;
	height: auto;
	float: none;
	position: static;
}
.box2 p {
    position: static;
    top: ;
}
.box3 {
	margin: 0;
	padding: 0;
	width: 100%;
	height: auto;
	float: none;
	clear: both;
}
.box4 {
	margin: 0;
	padding: 0;
	width: 100%;
	height: auto;
	float: none;
	position: static;
}
.box4 p {
	width: 100%;
	position: static;
    top: ;
    text-align: left;
}
.box5 {
	margin: 0;
	padding: 0;
	width: 100%;
	height: auto;
	float: none;
	}
.box6 {
	margin: 0;
	padding: 0;
	width: 100%;
	height: auto;
	float: none;
	position: static;
}
.box6 p {
    position: static;
    top: ;
}
.box7 {
	margin: 0;
	padding: 0;
	width: 100%;
	height: auto;
	float: none;
}

    .pc { display: none !important; }
    .sp { display: block !important; }



}
