@charset "utf-8";

/*-----------------------------
　リセットCSS + サイト共通設定
------------------------------*/

/* 全ての要素に対する余白初期値設定 */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, main, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video{
	margin:0;
	padding:0;
	border: 0;
	font-size: 100%;
}

/* 改行する要素に対する設定 */
article,aside,details,figcaption,figure,
footer,header,main,menu,nav,section{
	display:block;
}

/* 回転時の文字自動調節機能 */
html{
	-webkit-text-size-adjust: 100%;
}

/* 画像のフルードイメージ化 */
img{
	border: 0;
	max-width: 100%;
	height: auto;
}

/* 垂直方向の行揃え */
img, input, select, textarea { 
	vertical-align: middle;
}

/* リストマーカーを非表示 */
ul,ol,a{
	list-style-type: none;
	text-decoration: none;
}

/* 訪問済リンクの文字色の設定 */
a:link,a:visited{
  color: inherit;
}

/* 画像とフォームパーツの上下位置をテキストの真ん中に */
img, input, select, textarea { 
	vertical-align: middle;
}

/*全ての要素にbox-sizingを反映*/
* {
  -moz-box-sizing: border-box;
 -webkit-box-sizing: border-box;
 box-sizing: border-box;
 }

/* フォントの設定 */
body{
font-family: 'Granjon LT W01 Roman', 'Garamond W01', 'HGKyokashotai', serif;
}

body {
	font-feature-settings: "palt";/*自動カーニング*/
}

/*背景画像の設定*/
body{
	background: url(../images/icon_ss.jpg);
	background-size: 30px 30px;
	background-repeat: repeat;
}

.container{
	background-color: #f4f4f4;
}

/*ヘッダー部分*/

header{
	text-align: center;
	position: relative;
	background-color: #400b36;
}

h1 span{/*「式部庵」テキストの非表示*/
	display: block;
	text-indent: 100%;
	white-space: nowrap;
	overflow:hidden;
	font-size: 10px;
}

h1 img{
	height: 50%;
	width:50%;
	margin-top: 20px;
	margin-bottom: 20px;
}

/*グローバルメニユー部分*/

#gnav{
	background-color: #400b36;
}

/*------------◆#gnav◆モバイルのみ◆ここから-----*/

@media screen and (max-width: 640px){

	
	#gnav ul{
		width: 100%;
		letter-spacing: 0.1em;
		overflow: hidden;

		}

	#gnav ul li{
		background-color: #400b36;
		padding:15px 0 15px 0;
		color: #f4f4f4;
		text-align: center;
		font-size: 80%;
		border-right: 0.5px solid #f4f4f4;
		}

	#gnav ul :nth-child(3n+3){
		border-right: none;
	}

	#gnav ul :nth-child(3n+3){
		border-right: none;
	}

	#gnav ul :nth-child(n+4){
		border-top: 0.5px solid #f4f4f4;
	}


	#gnav li{
		width: 33%;
		float: left;
		overflow: hidden;
	}

	#gnav ul li a{
		display: block;
		font-size: 100%;
	}
}
/*------------◆#gnav◆モバイルのみ◆ここまで-----*/

/*見出し部分*/


/*------------◆見出し【h2】◆モバイルのみ◆ここから-----*/

@media screen and (max-width: 640px){

	h2{
		background: url(../images/bg_.h2.jpg) no-repeat ;
		background-size: cover;/*背景画像を画面フル表示*/
		background-position: right;
		box-shadow: 10px 10px 15px -10px;
	}

	h2{
		height: 65px;
		font-size: 130%;
		color: #2d2830;
		text-align: center;
		letter-spacing: 0.5em;
		line-height: 72px;
	}
}

/*------------◆見出し【h2】◆モバイルのみ◆ここまで-----*/

footer{
	height: 50px;
	background-color: #333;
	width: 100%;
	}

footer p{
	line-height: 50px;
	text-align: center;
}
	
footer p small{
	color: #f4f4f4;
	font-size: 0.7em;
	letter-spacing: 0.1em;
}

/*------------◆#footer◆モバイルのみ◆ここから-----*/
@media screen and (max-width: 640px){
	footer{
		margin-top: 30px;
		margin-bottom: 30px;
	}
	
	footer p{
		text-align: center;
	}
}
/*------------◆#footer◆モバイルのみ◆ここまで-----*/


/*--------------------◇--PCのみ--◇ここから---◇-----*/

@media screen and (min-width: 640px){

	/*ヘッダー部分*/
	header{
		text-align: center;
		background-color: #400b36;
		width: 250px;
/*		min-height: 100%;/*←←高さ調整---バックスクリーン部分---*/
		overflow: hidden;
		float: left;
	}

	h1 img{
		width: 200px;
		padding-bottom: 40px;
	}

	/*グローバルメニユー部分*/
	#gnav{
		width: 250px;
		min-height: 100%;/*←←高さ調整---バックスクリーン部分---*/
		background-color: #400b36;
	}

	#gnav{
/*		position: fixed;/*メニユーの固定配置*/
/*		top: 250px;
		left: 0px;
*/		margin-left: 0px;
	}

	#gnav ul{
		border-left: #f4f4f4 solid 1px;
		padding: 20px 0 20px 20px;
		margin-left: 50px;
		letter-spacing: 0.1em;
		width: 160px;
	}

	#gnav ul li{
		text-align: left;
		padding:15px 0 15px 0;
		color: #f4f4f4;
	}

	#gnav ul.gnav{
		margin-top: 0;
	}
	
/*見出し【h2】縦レイアウト*/

	h2{
		background: url(../images/bg_7.pc.jpg) no-repeat ;
		background-position: top;
		box-shadow: 10px 10px 15px -10px;/*ボックスシャドウ*/
	}

	h2{
		-ms-writing-mode: tb-rl;/*--縦書きレイアウト--*/
		writing-mode: vertical-rl;
		font-size: 130%;
		color: #2d2830;
		text-align: center;
		letter-spacing: 0.5em;
		line-height: 110px;
		padding-top: 5px;
	}

	h2{
		width: 100px;
		height: 250px;
		float: right;/*右側へフロート配置*/
		clear: right;
	}

.h2_abt,.h2_sea,.h2_itm,.h2_inf{
/*「お店について」「季節のお菓子」「商品一覧」「店舗情報」ページに対してのみ*/
		position: relative;/*固定配置*/
		z-index: 1;
		top: 20px;
		right: 35px;
	}

/*フッター部分の固定レイアウト*/

	html,body{
		height: 100vh;
	}
	
	#wrap{
		width: 100%;
		position: relative;
		min-height: 100%;
	}
	
	footer p.align{
		max-width: 770px;
		text-align: center;
		padding-bottom: 0;
		margin-left:250px;
	}

/*#gnavと横並びにする設定--------------------------*/
	#wrap{
		max-width: 1020px;
	}

	main{
		max-width: 770px;
		overflow: hidden;
		margin-left: 250px;
		box-sizing:border-box;
	}
	
	.gnav_pc{
		width: 250px;
		float: left;
		clear: both;
		background-color: #400b36;
		height:100vh;
		position:fixed;
		z-index:10000;
	}
		
	.container{
		max-width: 770px;
	}

	.clearfix:after {
		content: "";/* 擬似要素を実体化 */
		clear: both;/* floatを解除する */
		display: block;/* ブロック要素にする */
	}

/*#gnavと横並びにする設定ここまで--------------------------*/

}
/*----------------------------------------------◇---PCここまで---◇-----*/
