@charset "UTF-8";
@import url(../fonts/NotoSerifCJKjp/load.css);

body {
	min-width: 1100px;
	color: #411e01;
	font-size: 16px;
	line-height: 1.6;
	font-family: "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-family: 'Noto Serif Japanese', "ヒラギノ明朝 Pro W6", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", serif;
	-webkit-text-size-adjust: 100%;
}

body.lower {
	background: url(../images/bg01.jpg);
}

body.page-recommend {
	background: none;
}

/* ==================================================
汎用クラス
================================================== */
/* 端末別表示非表示設定
-------------------------------------------------- */
@media screen and (max-width: 768px) {
	.pc-only { /* PCでの閲覧時にのみ表示したいコンテンツにつける */
		display: none !important;
	}
}

@media screen and (min-width: 768px) {
	.sp-only { /* スマホでの閲覧時にのみ表示したいコンテンツにつける */
		display: none !important;
	}
}

/* 改行
-------------------------------------------------- */
.app-br {
	display: block;
}

/* ページ内リンクの固定ヘッダー対策
-------------------------------------------------- */
.slip-link {
	width: 0;
	height: 0;
	transform: translateY(-155px);
	display: block;
	visibility: hidden;
	pointer-events: none;
}

/* ==================================================
タグ
================================================== */
/* img
-------------------------------------------------- */
img {
	max-width: 100%;
	height: auto;
	box-sizing: border-box;
}

/* a
-------------------------------------------------- */
a {
	color: #ff83a3;
	text-decoration: none;
	transition: All 0.4s ease;
}

a:hover {
	color: #26b99a;
	text-decoration: underline;
}

a img {
	transition: All 0.4s ease;
}

a:hover > img:only-child {
	opacity: .8;
}

@media screen and (min-width: 768px) {
	a[href^="tel:"] {
		color: inherit;
		text-decoration: none;
		pointer-events: none;
	}
}

/* ==================================================
ヘッダー
================================================== */
.global-header {
}

.global-header .header-content {
	max-width: 1080px;
	margin: 0 auto;
	padding: 9px 0 12px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	position: relative;
}

.global-header .header-left {
	width: 340px;
	padding: 22px 0 0;
}

.global-header .header-right {
	width: 710px;
}

/* 固定
-------------------------------------------------- */
.header-fix-wrap {
	height: 155px;
}

.header-fix {
	width: 100%;
	background: url(../images/bg01.jpg);
	position: fixed;
	top: 0;
	left: 0;
	z-index: 5000;
}

/* ページ説明文
-------------------------------------------------- */
.page-description {
	width: 100%;
	margin: 0 0 8px;
	line-height: 1.3;
	color: #8b6e57;
	font-size: 12px;
	letter-spacing: -.08em;
}

/* 問い合わせ
-------------------------------------------------- */
.header-contacts {
	width: 315px;
	margin: 0 0 11px;
	font-weight: bold;
	flex-wrap: wrap;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

/* 番号
------------------------- */
.contact-numbers {
	width: 270px;
}

.contact-numbers {
	margin: 0 0 5px;
	line-height: 1;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
}

.contact-numbers dt {
	width: 37px;
	margin: 0 0 5px;
	color: #9d720a;
	font-size: 20px;
}

.contact-numbers dd {
	width: calc(100% - 37px);
	margin: 0 0 5px;
}

.contact-numbers .tel-content {
	font-size: 28px;
	letter-spacing: -.02em;
}

.contact-numbers .fax-content {
	font-size: 18px;
}

/* メール
------------------------- */
.contact-mail {
}

/* 店舗概要
------------------------- */
.header-abouts {
	display: flex;
	justify-content: space-between;
}

.header-abouts dt,
.header-abouts dd {
	font-size: 16px;
}


/* バナー
-------------------------------------------------- */
.header-blog-bnr,
.header-shop-bnr {
	width: 199px;
	position: absolute;
	top: -48px;
	right: 191px;
	right: 0;
}

.header-shop-bnr {
	right: 0;
}

/* ナビ
-------------------------------------------------- */
.header-nav {
	padding: 10px 0 0;
	background: url(../images/header_border.png) top repeat-x;
}

.header-nav ul {
	display: flex;
	justify-content: space-between;
}

.header-nav a {
	color: #411e01;
	font-weight: 600;
	letter-spacing: .05em;
	display: block;
}

.header-nav a:first-letter {
	color: #9d720a;
}

/* メインビジュアル
-------------------------------------------------- */
.header-main-visual {
	min-height: 750px;
	background: url(../images/main_visual_bg.jpg) center top / cover;
	position: relative;
}

.header-main-visual:after {
	content: '';
	width: 100%;
	height: 46px;
	background: url(../images/header_visual_mask.png) center;
	position: absolute;
	bottom: 0;
	left: 0;
}

.header-main-visual .visual-catch {
	max-width: 1080px;
	margin: 0 auto;
	padding: 314px 0 0;
}

/* サブビジュアル
-------------------------------------------------- */
.header-sub-visual {
	padding: 154px calc((100% - 1080px) / 2) 151px;
	background: url(../images/sub_visual_bg.jpg) center / cover;
	position: relative;
}

.header-sub-visual:after {
	content: '';
	width: 100%;
	height: 46px;
	background: url(../images/header_visual_mask.png) center;
	position: absolute;
	bottom: 0;
	left: 0;
}

.header-sub-visual .visual-catch {
	width: 540px;
	height: 200px;
	text-align: center;
	font-size: 42px;
	font-weight: 900;
	background: url(../images/visual_catch_bg.jpg);
	display: flex;
	align-items: center;
	justify-content: center;
}

.page-recommend .header-sub-visual:after {
	display: none;
}

/* ==================================================
フッター
================================================== */
.global-footer {
	background: url(../images/bg01.jpg);
}

.page-recommend .global-footer {
	background: none;
}

/* コピーライト
-------------------------------------------------- */
.footer-copyright {
	padding: 8px;
	font-size: 12px;
	line-height: 1.3;
	text-align: center;
	display: block;
}

.footer-copyright a {
	color: inherit;
}

/* ==================================================
パンくずリスト
================================================== */
.breadcrumbs-list {
	max-width: 1080px;
	margin: 16px auto 40px;
	line-height: 25px;
	font-size: 14px;
	white-space: nowrap;
	text-overflow: ellipsis;
	display: flex;
	justify-content: flex-start;
	overflow: hidden;
}

.breadcrumbs-list li:not(:last-child) {
	background: url(../images/icon_arrow03.png) right center no-repeat;
	margin: 0 7px 0 0;
	padding: 0 10px 0 0;
}

/* ==================================================
ページネーション
================================================== */
.pagenation {
	margin: 0 0 20px;
	display: flex;
	justify-content: center;
}

.pagenation li {
	width: 37px;
	margin: 0 6px;
	padding: 2px 0 0;
	color: #ff83a3;
	line-height: 35px;
	text-align: center;
	background: #fbece6;
}

.pagenation li > * {
	color: inherit;
	font-size: 16px;
	font-weight: bold;
	font-family: "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	text-decoration: none;
	display: block;
}

.pagenation li:hover,
.pagenation li.current {
	color: #fff;
	background: #ff83a3;
}

/* ==================================================
コンテンツ
================================================== */
.narrow-section-area .area-inner {
	max-width: 1080px;
	margin: 0 auto;
}

.section {
	margin: 0 0 80px;
}

.section .section-content {
	padding: 50px;
	background: #fff;
}

/* 見出し
-------------------------------------------------- */
/* 01
------------------------- */
.styled-title01 {
	margin: 0 auto 50px;
	padding: 0 105px 15px;
	background:
		url(../images/title01_deco01.png) left bottom no-repeat,
		url(../images/title01_deco02.png) right bottom no-repeat
	;
	line-height: 1.3;
	text-align: center;
	font-size: 30px;
	font-weight: 600;
	display: table;
}

.styled-title01 span {
	display: block;
}

.styled-title01 span:first-letter {
	color: #9d720a;
}

/* 02
------------------------- */
.styled-title02 {
	margin: 0 auto 44px;
	padding: 0 105px;
	line-height: 1.3;
	text-align: center;
	font-size: 32px;
	font-weight: 600;
	background:
		url(../images/title02_deco01.png) left center no-repeat,
		url(../images/title02_deco02.png) right center no-repeat
	;
	display: table;
}

.styled-title02 span {
	display: block;
}

.styled-title02 span:first-letter {
	color: #9d720a;
}

/* 03
------------------------- */
.styled-title03 {
	margin: 0 0 26px;
	padding: 0px 0 12px 66px;
	line-height: 1.3;
	font-size: 32px;
	border-bottom: 1px solid #411e01;
	background: url(../images/title03_deco.png) left top no-repeat;
	position: relative;
}

.styled-title03:first-letter {
	color: #9d720a;
}

.styled-title03 a {
	color: inherit;
	font-size: 16px;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
}

/* 記事情報
-------------------------------------------------- */
.post-info-wrap {
	margin: 0 0 8px;
	color: #ff83a3;
	display: flex;
}

.post-info-wrap .post-info-item {
	margin: 0 1em 0 0;
}

/* タグリスト */
.post-info-wrap .post-tag-list {
	display: flex;
}
.post-info-wrap .post-tag-list li {
	margin: 0 .5em 0 0;
	padding: 0 0 0 20px;
	background: url(../images/icon_tag.png) left center no-repeat;
}















/* ==================================================
CONCEPT
================================================== */
.top-concept-area {
	padding: 100px 0;
	background: url(../images/bg01.jpg) center top;
}

.top-concept-area .area-inner {
	max-width: 1080px;
	margin: 0 auto;
	padding: 49px;
	border: 1px solid #9a8372;
	background: url(../images/concept_inner_bg.jpg);
	box-sizing: border-box;
}

/* セクション
-------------------------------------------------- */
.top-concept-section {
	padding: 26px 0 12px;
	border: 1px solid #9a8372;
	background:
		url(../images/concept_section_bg01.jpg) right top no-repeat,
		url(../images/concept_section_bg02.jpg) left bottom no-repeat,
		#fff
	;
}

.top-concept-section .concept-content {
	line-height: 1.7;
	text-align: center;
}

.top-concept-section .concept-content p {
	margin: 0 0 1.6em;
}

/* ==================================================
BRAND
================================================== */
.top-brand-area {
	padding: 91px 0 97px;
	background: url(../images/brand_area_bg.jpg) center top / cover;
}

.top-brand-area .area-inner {
	max-width: 1080px;
	margin: 0 auto;
}

/* セクション
-------------------------------------------------- */
.top-brand-section .brand-content {
	display: flex;
	justify-content: space-between;
}

.top-brand-section .brand-content .column {
	width: 490px;
}

/* アイテム
-------------------------------------------------- */
.top-brand-section .brand-item {
	padding: 44px 23px 45px;
	border: 1px solid #411e01;
	background:
		url(../images/brand_item_frame01.png) top 3px left 3px no-repeat,
		url(../images/brand_item_frame02.png) top 3px right 3px no-repeat,
		url(../images/brand_item_frame03.png) bottom 3px left 3px no-repeat,
		url(../images/brand_item_frame04.png) bottom 3px right 3px no-repeat,
		url(../images/brand_item_bg.jpg)
	;
	box-shadow: 0 6px 10px rgba(0,0,0,.17);
}

.top-brand-section .brand-item .item-title {
	margin: 0 0 19px;
	text-align: center;
}

.top-brand-section .brand-item .item-thumb {
	margin: 0 0 20px;
	border: 1px solid #411e01;
}

.top-brand-section .brand-item .item-texts {
	line-height: 1.49;
}

/* ==================================================
ITEMS
================================================== */
.top-items-area {
	padding: 98px 0 101px;
}

.top-items-area .area-inner {
	max-width: 1080px;
	margin: 0 auto;
}

/* 記事リスト
-------------------------------------------------- */
.top-items-section .items-entry-list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.top-items-section .items-entry-list .entry {
	width: 252px;
	padding: 11px 10px 7px;
	border: 1px solid #4a2c19;
	box-shadow: 0 0 1px #6e5647;
	box-sizing: border-box;
	position: relative;
}

.top-items-section .items-entry-list .entry:before {
	content: '';
	width: 206px;
	height: 30px;
	background: url(../images/items_item_deco.png) #fff;
	position: absolute;
	top: -28px;
	left: 50%;
	transform: translateX(-50%);
}

.top-items-section .items-entry-list .entry .trim {
	padding-top: 91.3%;
	display: block;
	position: relative;
}

.top-items-section .items-entry-list .entry .trim img {
	width: 100%;
	height: 100%;
	border: 1px solid #411e01;
	box-sizing: border-box;
	object-fit: cover;
	position: absolute;
	top: 0;
	left: 0;
}

/* ==================================================
ONLINE SHOP
================================================== */
.top-online-area {
	padding: 91px 0 117px;
	background: url(../images/online_area_bg.jpg) center / cover;
}

.top-online-area .area-inner {
	max-width: 1080px;
	margin: 0 auto;
}

/* セクション
-------------------------------------------------- */
.top-online-section .online-texts {
	margin: 0 0 36px;
	text-align: center;
}

/* バナー
-------------------------------------------------- */
.top-online-section .online-bnr {
	width: 1035px;
	color: inherit;
	border: 1px solid #411e01;
	background: url(../images/online_bnr_bg.jpg);
	box-shadow: 0 6px 10px rgba(0,0,0,.17);
	display: flex;
	position: relative;
}

.top-online-section .online-bnr:hover {
	opacity: .8;
}

.top-online-section .online-bnr .thumb-column {
	width: 391px;
}

.top-online-section .online-bnr .texts-column {
	padding: 3px 0 0 91px;
	line-height: 1.5;
}

.top-online-section .online-bnr .bnr-tag {
	position: absolute;
	bottom: -31px;
	right: -52px;
}

.top-online-section .online-bnr .bnr-tag span {
	position: absolute;
	bottom: 51px;
	left: -125px;
}

.top-online-section .online-bnr .bnr-tag span:after {
	content: '';
	width: 100%;
	border-top: 1px solid #70553f;
	position: absolute;
	left: 0;
	bottom: -4px;
}

/* ==================================================
INFORMATION
================================================== */
.top-info-area {
	padding: 97px 0 99px;
}

.top-info-area .area-inner {
	max-width: 1080px;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.top-info-area .area-column {
	width: 490px;
}

/* ==================================================
INFORMATION -> section
================================================== */
.top-info-section .info-content {
	padding: 40px 39px 40px;
	background:
		url(../images/info_frame01.png) top left no-repeat,
		url(../images/info_frame02.png) top right no-repeat,
		url(../images/info_frame03.png) bottom left no-repeat,
		url(../images/info_frame04.png) bottom right no-repeat,
		url(../images/info_frame_border.jpg) top center / calc(100% - 70px) 1px no-repeat,
		url(../images/info_frame_border.jpg) bottom center / calc(100% - 70px) 1px no-repeat,
		url(../images/info_frame_border.jpg) right center / 1px calc(100% - 70px) no-repeat,
		url(../images/info_frame_border.jpg) left center / 1px calc(100% - 70px) no-repeat,
		url(../images/info_item_bg.jpg)
	;
}

/* 記事リスト
-------------------------------------------------- */
.top-info-section .info-entry-list {
	margin: 0 0 41px;
}

.top-info-section .info-entry-list li {
	width: 100%;
	margin: 0 0 54px;
	line-height: 1;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.top-info-section .info-entry-list li:last-child {
	margin-bottom: 0;
}

.top-info-section .info-entry-list span {
	margin: 0 0 5px;
	color: #ff83a3;
	font-size: 13px;
	display: block;
}

.top-info-section .info-entry-list a {
	color: inherit;
}

/* 
-------------------------------------------------- */
.top-info-section .info-more {
	height: 58px;
	color: inherit;
	border: 1px solid #411e01;
	display: flex;
	align-items: center;
	justify-content: center;
}

/* ==================================================
ABOUT
================================================== */
.top-about-area {
	padding: 95px 0 96px;
	background: url(../images/bg01.jpg);
}

.top-about-area .area-inner {
	max-width: 1080px;
	margin: 0 auto;
}

/* テーブル
-------------------------------------------------- */
.top-about-section .about-table {
	width: calc(100% + 10px);
	margin: -5px -5px 39px;
	border-collapse: separate;
	border-spacing: 10px;
}

.top-about-section .about-table th,
.top-about-section .about-table td {
	padding: 18px 34px;
	line-height: 1.5;
	vertical-align: middle;
	font-weight: normal;
	background: #fff;
}

.top-about-section .about-table th {
	width: 286px;
	color: #fff;
	background: #ff83a3;
	box-sizing: border-box;
}

/* ==================================================
INSTAGRAM
================================================== */
.top-insta-area {
	padding: 90px 0 100px;
}

.top-insta-area .area-inner {
	max-width: 1080px;
	margin: 0 auto;
}

/* 写真リスト
-------------------------------------------------- */
.top-insta-section .insta-entry-list {
	margin: 0 0 50px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.top-insta-section .insta-entry-list li {
	width: 252px;
	padding: 11px 10px 7px;
	border: 1px solid #4a2c19;
	box-shadow: 0 0 1px #6e5647;
	box-sizing: border-box;
	position: relative;
}

.top-insta-section .insta-entry-list li:before {
	content: '';
	width: 206px;
	height: 30px;
	background: url(../images/items_item_deco.png) #fff;
	position: absolute;
	top: -28px;
	left: 50%;
	transform: translateX(-50%);
}

.top-insta-section .insta-entry-list a {
	padding-top: 91.3%;
	display: block;
	position: relative;
}

.top-insta-section .insta-entry-list img {
	width: 100%;
	height: 100%;
	border: 1px solid #4a2c19;
	box-sizing: border-box;
	object-fit: cover;
	position: absolute;
	top: 0;
	left: 0;
}

/* 
-------------------------------------------------- */
.top-insta-section .insta-more {
	width: 406px;
	height: 58px;
	margin: 0 auto;
	color: inherit;
	border: 1px solid #411e01;
	background: url(../images/insta_icon.png) left 29px center no-repeat;
	display: flex;
	justify-content: center;
	align-items: center;
}

/* ==================================================
アーカイブページ
================================================== */
.archive-entry-list {
	margin: 0 0 49px;
}

.archive-entry-list li {
	width: 100%;
	margin: 0 0 15px;
	padding: 0 0 15px;
	line-height: 1.5;
	border-bottom: 1px solid #105b12;
}

.archive-entry-list li:not(:first-child) {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.archive-entry-list span {
	color: #ff83a3;
	display: block;
}

.archive-entry-list a {
	color: inherit;
}

.archive-entry-list li .first-body {
	margin: 1em 0 0;
}

.archive-entry-list li:not(:first-child) .first-body {
	display: none;
}


/* ==================================================
シングルページ
================================================== */
.single-post-section .single-post-title {
	margin: 0 0 30px;
	line-height: 1.3;
	color: #411e01;
	font-size: 30px;
	font-weight: 600;
}

/* 
-------------------------------------------------- */
.section-footer {
	padding: 37px 0 0;
}

/* 
-------------------------------------------------- */
.prev-next-post {
	display: flex;
	justify-content: center;
}

.prev-next-post .back-list:before,
.prev-next-post .back-list:after {
	content: '/';
	margin: 0 15px;
}

.prev-next-post a {
	color: inherit;
}

/* ==================================================
RECOMMEND
================================================== */
.recommend-blog-section {
	margin: 0 0 200px;
}

.recommend-blog-section .section-content {
	padding: 0 20px;
}

/* 記事リスト
-------------------------------------------------- */
.recommend-entry-list li {
	width: 100%;
	margin: 0 0 47px;
}

.recommend-entry-list li:not(:first-child) {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.recommend-entry-list span {
	margin: 0 50px 0 0;
	color: #ff83a3;
}

.recommend-entry-list a {
	color: inherit;
}

.recommend-entry-list li .first-body {
	margin: 1em 0 0;
}

.recommend-entry-list li:not(:first-child) .first-body {
	display: none;
}

/* 広告
-------------------------------------------------- */
.recommend-affiliate {
	min-height: 490px;
	background: url(../images/affiliate_bg.jpg) center bottom no-repeat;
}

.recommend-affiliate .centering-guide {
	margin: 0 auto;
	display: table;
}
