@charset "UTF-8";

/*

Theme Name: YS-Grimm
Author: Yuusuke Suzuki
Description: webデザイン科のCMS制作演習にて制作した洋菓子店向けテーマ
version: 1.0
Text Domain: YS-Grimm

*/


/*CSSリセット mayer's CSSReset*/

/* http://meyerweb.com/eric/tools/css/reset/
v2.0 | 20110126
License: none (public domain)
*/

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, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
margin: 0;
padding: 0;
border: 0;
font-size: 100%;
font: inherit;
vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
display: block;
}

body {
line-height: 1;
}

ol, ul {
list-style: none;
}

blockquote, q {
quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
content: '';
content: none;
}

table {
border-collapse: collapse;
border-spacing: 0;
}
/*↑以上、CSSリセット↑*/

/*クリアフィックス .clearfixに適用*/
.clearfix:after{
	content:"";
	display:block;
	clear:both;
}

html{
	-webkit-text-size-adjust: 100%;
}


/*イメージのフロート化*/
img{
	border:0;
	max-width:100%;
	height:auto;
}

/*imageの左右寄せ

.float_left_image,
.float_right_image

に適用*/
.float_left_image,
.float_right_image{
	padding:10px;
}

.float_left_image img,
.float_right_image img{
	width:35.71%;
	margin:5px;
	border:5px inset #cea764;
}

.float_left_image p,
.float_right_image p{
	margin-top:0;
}

.float_left_image img{
	float:left;
	margin-left:0;
}

.float_left_image p{
	margin-right:0;
}

.float_right_image img{
	float:right;
	margin-right:0;
}

.float_right_image p{
	margin-left:0;
}

/*↓ここからオリジナル設定↓*/
/*全体の共通スタイル設定*/
h1,h2,h3,h4,h5,h6,
p{
	font-family:sans-serif;
}

body{
	margin:0;
	background-color:#dbbf8f;
}

a{
	text-decoration:none;
}

a:hover{
	text-decoration:underline;
	cursor:pointer;
}

dl{
	overflow:hidden;
}

dd,
dt{
	margin-bottom:5px;
	vertical-align:center;
}

dd{
	float:left;
}

dt{
	clear:both;
	float:left;
	text-align:right;

}

address dt{
	width:5em;
}

.inner{
	max-width:960px;
	margin:0 auto;
}

@media screen and (min-width:950px){
	main{
		width:700px;
		float:left;
	}

	aside{	
		width:250px;
		float:right;
	}
}

p,h3{
	margin:10px;
	line-height:1.5;
}

h2,h3{
	font-weight:bold;
}

/*コンテンツボックスを白背景色とし、ドロップシャドウで浮かせる*/
.contentsbox{
	background-color:#fff;
	box-shadow:2px 2px 5px #000;
	margin-top:10px;
}

/*↓headerのスタイル指定ここから↓*/
header{
	height:auto;
	background:url(../images/header_bg.png) #cea764;
	position:relative;
}

header .inner{
	overflow:hidden;
	margin:0 auto;
	background:url(../images/eyecatch_960x400.jpg) top center no-repeat;
	background-size:cover;
}

#header_title{
	text-align:center;
}

#header_title h1,
#header_title p{
	color:#000;
	font-size:1.5em;
	text-shadow:1px 1px 0px #fff;
}

#header_title h1{
	font-weight:bold;
}

header address{
	text-shadow:1px 1px 0px #fff;
}

@media screen and (max-width:714px){
	.header_left{
		padding-top:5%;
	}

	.header_right{
		padding-top:10px;
		padding-left:20%;
	}
}

@media screen and (min-width:715px){
	.header_left{
		float:left;
		padding-top:20%;
	}

	.header_right{
		float:right;
		padding-top:30%;
		padding-right:20px;
	}
}

/*↑headerのスタイル設定ここまで↑*/

/*↓グローバルナビの設定ここから↓*/
#gnav{
	box-shadow:0 4px 5px #000;
	background-color:#fff;
	background:url(../images/header_bg.png) #cea764;
}

#gnav .inner{
	margin:0 auto;
}

#gnav ul{
	margin:0;
	padding:0;
	list-style:none;
	overflow:hidden;
}

#gnav ul li{
	text-align:center;
	background-size:cover;
}

#gnav li:nth-child(1){
	background-image:url(../images/GN_01.jpg);
}
#gnav li:nth-child(2){
	background-image:url(../images/GN_02.jpg);
}
#gnav li:nth-child(3){
	background-image:url(../images/GN_03.jpg);
}

#gnav li a{
	display:block;
	font-size:35px;
	font-weight:bold;
	background:rgba(255,255,255,0.6);
	color:#000;
}

#gnav a:hover{
	background:rgba(255,255,255,0.4);
	color:#0000ff;
	text-decoration:underline;
	text-shadow:0 0 5px #fff;
	box-shadow:0 0 0 2px #ff0000 inset;
}

#gnav .selected a{
	background:rgba(255,255,255,0.2);
	color:#ff0000;
	text-shadow:0 0 5px #fff;
	box-shadow:0 0 0 2px #0000ff inset;
}

@media screen and (max-width:439px){
	#gnav ul li{
		width:100%;
		line-height:2;
	}
}

@media screen and (min-width:440px){
	#gnav ul li{
		float:left;
		width:33.33%;
		line-height:2.8;
	}
}
	
/*↑グローバルナビの設定ここまで↑*/

/*メイン領域*/
#contentsArea{
	padding-top:20px;
	padding-bottom:20px;
}
/*見出しのスタイル設定*/

main h2,
main .maparea h2{
	line-height:50px;
	padding-left:60px;
	font-size:33px;
	background:url(../images/mark_100X100.jpg) no-repeat #fff;
	background-size:50px 50px;
	border-bottom:solid 2px #cea764;
}

main h2 a{
	color:#000;
}

main article h3,
main article time,
main article p{
	margin:10px;
	font-size:1em;
	color:#000;
}

main h3{
	border-left:#cea764 7px solid;
	border-bottom:#cea764 2px solid;
	padding-left:5px;
}

main dl{
	margin:10px;
}

/*コンテンツエリア内のリスト ul#intro_cake,.blog_naviを除く*/
#contentsArea ul:not(#intro_cake){
	margin:0;
	padding:10px;
	list-style:none;
}

#contentsArea ul:not(#intro_cake) li{
	border-bottom:1px #aaa dashed;
	padding-bottom:4px;
	margin-bottom:5px;
}

main address dl dt{
	width:6em;
	font-weight:bold;
}

main address dl dt:before{
	content:"【";
}

main address dl dt:after{
	content:"】";
}

/*↑メイン領域のスタイル設定ここまで↑*/

/*↓グーグルマップのスタイル設定ここから↓*/
aside .maparea{
	margin-top:3px;
	padding:10px;
}
aside .maparea h2{
	margin:0;
	font-size:1.2em;
}
aside .maparea h2+p{
	margin:0;
	font-size:0.7em;
}

.map{
	border:#ccc 2px solid;
	position:relative;
	padding-bottom:70%;
}

.map iframe{
	position:absolute;
	left:0;
	top:0;
	width: 100%;
	height:100%;
}

@media screen and (max-width:959px){
	main .maparea{
		position:absolute;
		visibility:hidden;
	}
	aside .maparea{
		margin-top:10px;
	}
	
}

/*↑グーグルマップのスタイル設定ここまで↑*/

/*↓サイド領域ここから↓*/
/*パンくずリスト*/
#pankuzu{
	margin-top:-10px;
	text-align:left;
	list-style:none;
}

#pankuzu li{
	display:inline;
}

#pankuzu li:first-child{
	content:"";
	background:url(../images/topic-path-home-gray.png) left center no-repeat;
	padding-left:20px;
}

#pankuzu li:not(:last-child):after{
	content:"";
	padding-right:10px;
	background:url(../images/topic-path-gray.gif) right center no-repeat;
}

@media screen and (max-width:959px){
	#contentsArea{
		position:relative;
	}
	
	#pankuzu{
		position:absolute;
		left:0;
		top:20px;
	}
}

/*ガジェットのスタイル設定ここから*/
#gajet{
	margin-top:10px;
	padding:10px;
}

#gajet h2{
	margin:10px 10px 0 10px;
	padding:0;
	font-size:1.2em;
	border-right:#cea764 7px solid;
	border-left:#cea764 7px solid;
	text-align:center;
}
/*カレンダースタイル設定*/
#calender{
	padding:10px;
}

#calender caption{
	font-weight:bold;
}

#calender thead th:first-child{
	color:#ff0000;
}

#calender thead th:last-child{
	color:#0000ff;
}

#calender table{
	border-collapse:collapse;
}

#calender td,
#calender th{
	text-align:center;
	width:14.9%;
	height:100%;
	border:2px solid #ccc;
}
#calender #sunday{
	background-color:#ffcccc;
}

#calender #saturday{
	background-color:#ccccff;
}

#calender #today{
	text-decoration:underline;
	font-weight:bold;
}

/*↑サイド領域のスタイル設定ここまで↑*/

/*↓footerのスタイル設定ここから↓*/
footer{
	padding:10px 0;
	position:relative;
	width:100%;
	box-shadow:0 -4px 5px #000;
	background:#cea764;
	overflow:hidden;
}

#footer_info{
	font-size:15px;
}

#footer_menu{
	margin-left:10px;
}

#footer_menu ul{
	margin-bottom:10px;
}

#footer_menu li{
	display:inline;
}

#footer_menu li:before{
	content:"■";
}

@media screen and (min-width:588px){
	#copyright{
		position:absolute;
		bottom:0;
		left:50%;
	}
}

@media screen and (min-width:600px){
	#footer_info{
		float:left;
	}
	
	#footer_menu{
		float:left;
	}
}

@media screen and (max-width:599px){
	footer{
		text-align:center;
	}
	
	#footer_info{
		margin:0 auto;
	}
	
	#footer_menu{
		margin-top:20px;
	}
}

/*↑footerのスタイル設定ここまで↑*/

/*アーカイブの個別設定 #archive*/

#archive main article h3{
	float:left;
}

#archive main article time{
	float:right;
}

/*↓商品紹介ページの個別設定↓*/
ul#intro_cake{
	width:100%;
	list-style:none;
	margin-top:10px;
	margin-right:-15px;
	padding:0;
	position:relative;
}
/*.cardのスタイル設定*/
.card{
	position:relative;
	width:220px;
	height:360px;
	border-radius:10px;
	border:#ccc 1px solid;
	box-shadow:2px 2px 5px #000;
	
	background:#fff;
	z-index:auto;
	-webkit-transition:1s;
	transition:1s;
}

.card img{
	position:relative;
	top:-35px;
	margin:6px;
	padding:2px;
	width:200px;
	height:150px;
	border:#ccc 1px solid;
}

.card h3,
.card p{
	color:#fff;
	text-shadow:1px 1px 2px #000;
}

.card h3{
	position:relative;
	top:165px;
	margin:6px;
	padding:0;
	font-size:1.2rem;
	text-align:center;
	text-decoration:underline;
	background-color:#cea764;
}

.card div{
	position:relative;
	padding:0 5px;
	width:198px;
	height:150px;
	margin:-26px 6px 0;
	background-color:#cea764;
}
#intro_cake .card p{
	margin-left:5px;
	margin-right:5px;
	font-size:0.95rem;
}
.card p.value{
	position:absolute;
	right:0;
	bottom:-5px;
	font-size:1.2rem;
	font-weight:bold;
	text-decoration:underline;
}

.card p.value:after{
	content:"円";
}
	
.card:active{
	overflow:visible;
	z-index:10;
	box-shadow:10px 10px 25px #000;
	-webkit-transform:scale(1.25,1.25) rotateY(360deg);
	-ms-transform:scale(1.25,1.25) rotateY(360deg);
	transform:scale(1.25,1.25) rotateY(360deg);
}

/*カードのレイアウト*/
@media screen and (max-width:490px){
	#intro_cake li{
		margin:15px 30px;
	}
}

@media screen and (min-width:491px){
	#intro_cake li{
		margin:0 15px 15px 0;
		float:left;
	}
}

@media screen and (min-width:959px){
	#intro_cake li:nth-child(3n){
		margin-right:0px;
	}
}
/*↑商品紹介ページの個別スタイル設定↑*/

/*投稿ページの個別スタイル*/
.blog_navi p:first-child{
	float:left;
}

.blog_navi p:nth-child(2){
	margin-left:20%;
	float:left;
}

.blog_navi p:last-child{
	float:right;
}