@charset "UTF-8";
/*========================================================
reset
========================================================*/
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, i, font, img, ins, kbd, q, s, samp, small, strike, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td { margin: 0; padding: 0; border: 0; vertical-align: baseline; font-style: inherit; font-weight: inherit; outline: 0; font-size: 14px; font-weight: normal; line-height: 1.4; font-family: Verdana, "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif }
html { font-size: 75%; filter: expression(document.execCommand("BackgroundImageCache", false, true)); margin: 0 !important }
img { vertical-align: bottom; -ms-interpolation-mode: bicubic; image-rendering: optimizeQuality /* Fx, (Gecko 1.9.2) */ }
ol, ul { list-style: none }
table { border-collapse: separate; border-spacing: 0 }
caption, th, td { font-weight: normal; text-align: left; vertical-align: top }
blockquote:before, blockquote:after, q:before, q:after { content: "" }
blockquote, q { quotes: "" "" }
a:focus {
/*\*/
	overflow: hidden;
/**/
}
option { padding-right: 10px }
input{ border: none }
/*========================================================
common
========================================================*/
/*--------------------------------------------- elements*/
body {
	margin: 0 auto;
	width: 100%;
	min-width: 960px;
	color: #5e4534;
	background: #f2ede7;
}
h2, h2 a, h2 span { font-size: 20px; font-weight: bold }
h3, h3 a, h4, h4 span, h5, h5 a { font-weight: bold }
p { line-height: 1.6 }
a {
	text-decoration: none;
	color: #c95276;
}
/*---------------------------------------------- class*/
.fl { float: left }
.fr { float: right }

.boxWrap {
	margin:0 auto;
	width:960px;
}
.contentsWrap {
	width: 710px;
}
.side {
	width: 220px;
}
/* clearFix */
.clearfix:after,
.content:after { display: block; clear: both; content: ""; }
/* breadcrumb */
.breadcrumb ul {
	display:block;
	padding: 30px 0;
}
blockquote {
    position: relative;
    margin-top: 10px;
    margin: 0 20px;
    padding: 1em 3em;
    background: #f2ede7;
}
blockquote:before {
    position: absolute;
    left: 0;
    top: 0;
    line-height: 1em;
    content: "“";
    color: #ffffff;
    font-family: "ＭＳ Ｐゴシック",sans-serif;
    font-size: 600%;
}
blockquote:after {
    position: absolute;
    right: 0;
    bottom: 0;
    line-height: 0;
    content: "”";
    color: #ffffff;
    font-family: "ＭＳ Ｐゴシック",sans-serif;
    font-size: 600%;
}
.breadcrumb ul li {
	display: inline-block;
	padding-right: 5px;
}
.breadcrumb ul li a {
	color: #000;
}
.breadcrumb ul li a span {
	font-weight: bold;
	color: #000;
}

/*------------------------------------------------header*/
.header {
	position: relative;
	background: url(images/header_top.gif) top repeat-x
}
h1 {
	position: absolute;
	top: 10px;
	width: 960px;
	text-align: right;
	color: #5e4534;
}
.mainVisual {
	overflow: hidden;
	padding-bottom: 45px;
	background: #faf6f0
	url(images/header_bottom.jpg) center bottom no-repeat;

}
.mainVisual p {
	text-align: center;
}
.gnav {
	position: absolute;
	width: 218px;
	bottom: 60px;
	margin-top: 20px;
}
.gnav li{
	padding: 35px 10px 25px;
	float: left;
	height: 112px;
	writing-mode: tb-rl;
	/* IE独自仕様 */
	writing-mode: vertical-rl;
	-moz-writing-mode: vertical-rl;
	-o-writing-mode: vertical-rl;
	-webkit-writing-mode: vertical-rl;
	background: url(images/gnav_icon.png) no-repeat center 15px;
}
.gnav li:hover{
	border-radius: 5px;
	background: #df8fa7
	url(images/gnav_hover.gif) no-repeat center 15px;
}

.gnav li a {
	display: block;
	color: #5e4534;
	font-weight: bold;
}
.gnav li a:hover {
	text-decoration: none;
}

/*--------------------------------------------------side*/
.side div {
	margin-bottom: 30px;
}
.side p {
	display: block;
	padding: 5px 0;
	border-radius: 5px;
	color: #f1ece6;
	text-align: center;
	font-weight: bold;
	font-size: 16px;
	background: #d47693;
}
.side li {
	margin-top: 10px;
}
.side_cat a {
	display: block;
	padding: 5px 10px 5px 20px;
	border-radius: 5px;
	color: #fff;
	background: #8a96cb
	url(images/side_cat.gif) no-repeat 10px center;
}
.side_news a {
	display: block;
	color: #5e4534;
	padding: 0 10px;
	background: url(images/side_news.gif) no-repeat left center ;
}

/*========================================================
index
========================================================*/
.indexContent h2 {
	height: 115px;
	padding-top: 35px;
	color: #e07a99;
	font-weight: bold;
	font-size: 35px;
	text-shadow: 0 0 10px #fff;
	text-align: center;
	background: url(images/index_img.jpg) no-repeat;
}
.indexContent>p {
	color: #e6a0b3;
	text-align: center;
	font-size: 18px;
}
.indexBox div {
	overflow: hidden;
	margin-top: 20px;
	padding: 10px;
	border-radius: 5px;
	background: #fff;
}
.indexBox img {
	border-radius: 90px;
}
.indexBox span {
	display: block;
	position: relative;
	float: left;
	margin-right: 10px;
	padding: 3px
}
.indexBox span:before {
	position: absolute;
	content: url(images/index_before.png);
	top: 0;
	left: 0;
}
.indexBox div div {
	float: left;
	width: 494px;
}
.indexBox h3{
	margin-bottom: 20px;
	text-align: center;
}
.indexBox h3 a {
	color: #5e4534;
	font-size: 16px;
}
/*========================================================
category
========================================================*/
.categoryContent{
	position: relative;
	width: 715px;
}
.categoryContent:before {
	position: absolute;
	content: url(images/cat_before.png);
	top: 38px;
	left: 0;
}
.cat_inner {
	overflow: hidden;
	margin-left: 5px;
	padding: 30px 0 50px;
	background: #fff;
}
.cat_inner h2 {
	margin: 0 20px 20px;
	padding: 0 10px 10px;
	border-bottom: 2px dashed #e4c5ef;
}
.cat_inner div>span {
	display: block;
	position: relative;
	width: 710px;
	height: 150px;
	overflow: hidden;
}
.cat_inner img {
	position: absolute;
	top: -280px;
}
.cat_box {
	padding: 0 20px;
}
.cat_box div {
	margin-top: 30px;
}
.cat_box h3 {
	margin-bottom: 20px;
	padding-bottom: 10px;
	border-bottom: 2px dashed #e4c5ef;
}
.cat_box h3 a {
	color: #5e4534;
	font-size: 16px;
}
.cat_box h3 span {
	float: right;
	color: #c98fdf;
	font-weight: bold;
}
/*========================================================
detail
========================================================*/
.detailContent>div:first-child {
	overflow: hidden;
	padding-bottom: 50px;
	background: #fff;
}
.detail_inner {
	position: relative;
	background: #fff;
}
.detail_inner div {
	position: absolute;
	top: 70px;
	right: 20px;
	z-index: 2;
}
.detail_inner h2 {
	font-size: 28px;
}
.detail_inner p {
	color: #7cbec8;
	text-align: right;
}
.detail_inner span {
	display: block;
	position: relative;
	z-index: 2;
	height: 200px;
	overflow: hidden;
}
.detail_inner span:before {
	position: absolute;
	top: 0;
	left: 0;
	content: url(images/detail_img.png);
}
.detail_inner span img {
	position: absolute;
	top: -310px;
	z-index: -1;
}
.detailContent h3 {
	margin: 30px 20px 15px;
	padding-bottom: 10px;
	border-bottom: 1px dotted #7cbec8;
	font-size: 18px;
}
.detailContent>div>div p {
	margin: 0 20px;
}

.detailContent a {
	font-weight: bold;
}

/*-----------------------------------------------recommend*/
.recommend {
	margin-top: 100px;
}
.recommend>div {
	overflow: hidden;
	width: 345px;
	border-radius: 5px;
	background: #fff;
}
.recommend div div {
	border-bottom: 1px dotted #000;
}
.recommend div div:last-child{
	border-bottom: none;
}
.recommend h4 {
	padding: 15px 10px;
	border-radius: 5px 5px 0 0;
	font-size: 16px;
	background: #faf6ef;
}
.recommend h5 {
	margin: 20px 20px 5px;
}
.recommend h5 a {
	color: #c95276;
	text-decoration: underline;
}
.recommend h5 a:hover {
	text-decoration: none;
}
.recommend span {
	display: block;
	position: relative;
	width: 305px;
	height: 60px;
	margin-left: 20px;
	overflow: hidden;
}
.recommend img {
	position: absolute;
	top: -110px;
}
.recommend p {
	padding: 10px 20px;
}
.recommend p a {
	display: inline-block;
	padding: 5px;
	border-radius: 5px;
	color: #fff;
	background: #78c5cf;
}

/*------------------------------------------------footer*/
.footer {
	margin-top: 100px;
	border-top: 1px solid #e0d9d0;
}
.fnav {
	overflow: hidden;
	padding: 10px 0;
	border-top: 1px solid #fbf8f5;
	border-bottom: 1px solid #e0d9d0;
}
.fnav ul {
	width: 708px;
	margin: 0 auto;
}
.fnav li {
	float: left;
	padding: 0 10px;
	width: 215px;
	text-align: center;
	border-left: 1px solid #5e4534;
}
.fnav li:first-child {
	border-left: none;
}
.fnav li a {
	color: #5e4534;
}
.footer div:last-child {
	padding: 10px 0;
	border-top: 1px solid #fbf8f5;
}
.footer p {
	text-align: right;
}
/*========================================================
important class
========================================================*/
body a:hover , a img:hover {
	-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
	filter: alpha(opacity=70);
	opacity: 0.7;
	text-decoration: underline;
}

/* タブレット */
@media screen and (max-width: 959px) {
	body {
		min-width: inherit;
	}
	
	.boxWrap,
	h1,
	.categoryContent,
	.cat_inner div>span,
	.fnav ul,
	.recommend > div,
	.indexBox div div{
		width:100%;
	}

	.side{
		width:25%;
		padding:0 5px;
		box-sizing:border-box;
		
	}
	
	.contentsWrap{
		width:74%;
		padding:0 5px;
		box-sizing:border-box;
	}
	
	.fnav li{
		width:28%;
		display:inline-block
	}
	
	.footer,
	.detail_inner h2
	{
		padding:0 5px;
		box-sizing:border-box;
	}
	
	.recommend span{
		width:70%;
		height:75px;
	}
	
	
}
/* スマートフォン */
@media screen and (max-width: 480px) {	
	.fl,
	.fr{ 
		float: none 
	}

	.side,
	.recommend>div,
	.recommend span,
	.fnav li,
	.contentsWrap{
	width: 100%;
	}
	
	.gnav li{
		float: none;
	}
	
	.indexBox div div {
		float: none;
		width: 100%;
	}
	
	.gnav li{
		float:left;
	}
	
	.indexContent h2{
		font-size:31px;
	}
	
	.recommend span{
		padding: 0 2px;
		box-sizing: border-box;
		margin-left:0;
	}
	
	.gnav {
		position: static;
	}
	.cat_inner img {
		top: -60px;
	}
	
}
