/**/
/*レイアウト装飾*/
/**/
/* クリアフィックス */
.clearfix:after,.clearfix:before{display:table;content:" ";}
.clearfix:after{clear:both;}
/* フロート */
.f-l{float:left;}
.f-r{float:right;}
/* PCサイズのみ表示 */
@media (max-width: 782px) {
	.pc_only {
		display:none;
	}
}
/* スマホ&タブレットサイズのみ表示 */
@media (min-width: 782px) {
	.mb_only {
		display:none;
	}
}
/* PC&タブレットサイズのみ表示 */
@media (max-width: 415px) {
	.pc_tab_only {
		display:none;
	}
}
/* スマホサイズのみ表示 */
@media (min-width:415px) {
	.phone_only {
		display:none;
	}
}

/**/
/* テキスト装飾 */
/**/
/*ベースフォントサイズ*/
html {
	font-size: 100%;
	font-family:'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro', 'YuGothic', 'Yu Gothic', '游ゴシック', 'Meiryo', 'メイリオ', Helvetica, sans-serif;
}
h1,h2,h3,h4,h5,h6,p,dt,dd {
	font-size:1rem;
	font-weight:500;
	line-height: 2;
}
@media (max-width:415px) {
	h1,h2,h3,h4,h5,h6,p,dt,dd {
		font-size:0.875rem;
		font-weight:normal;
		line-height: 1.7;
	}
}
/**/
.strong {
	font-weight:700;
}
.text-small {
	font-size:0.8rem;
	line-height: 1.2rem;
}
.red {
	color:#ff0000 !important;
}
/* テキスト揃え */
.text-left{text-align:left;}
.text-right{text-align:right;}
.text-center{text-align:center;}
.text-justify{text-align:justify;}
.text-nowrap{white-space:nowrap;}
/* リンク文字列 */
a {
	text-decoration:none;
	font-weight:bold !important;
}
a:hover {
	text-decoration:underline !important;
}
/* 外部リンク */
a[target="_blank"] {
	background: url(../images_base/ex-link.png) no-repeat center right;
	margin-right:5px;
	padding-right: 18px;
}
.nav_inner a[target="_blank"]{
	background:none;
	padding-right:0px;
	margin-right:0px;
}
/* スマホサイズ時改行 */
.separate {
	display: inline;
}
@media (max-width: 782px) {
	.separate {
		display: block;
	}
}

/**/
/*その他の要素*/
/**/
/*リンク画像マウスオーバー時*/
a img:hover{
	filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
	opacity: 0.7;
}
/*水平線*/
hr,.hr {
	width:100%;
	display:block;
	border-bottom:1px solid #ccc;
	margin:30px auto;
}

/*見出し1*/
.title_custom {
	font-size:1.5rem;
	font-weight:500;
	background-color: #fff;
	color:#666;
	line-height: 1.5;
	margin-top:50px;
	margin-bottom:20px;
	text-align: center;
	padding:20px 0 10px 0;
	border-left:none;
	border-right:none;
	border-bottom:1px solid #ccc;
}
.title_custom span {
	vertical-align:middle;
	font-size:1rem;
	padding:3px 15px !important;
	font-family:'Oswald';
	display:block;
	margin:10px auto;
	border-radius: 4px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	letter-spacing: 5px;
}
@media (max-width: 782px) {
	.title_custom {
		font-size:1.1rem;
	}
	.title_custom span {
		font-size:0.8rem;
		margin:0 auto;
	}
}
/*見出し2*/
.title_custom_2 {
	font-size:1rem;
	font-weight:bold;
	color:#666;
	line-height: 1.5;
	margin-top:30px;
	margin-bottom:1rem;
	padding:1rem 0.5rem;
}
.title_custom_2 span {
	vertical-align:middle;
	font-size:0.8rem;
	font-weight:normal;
	padding:3px 15px !important;
	font-family:'Oswald';
	margin:0.5rem auto;
	border-radius: 4px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	letter-spacing: 3px;
}
@media (max-width: 782px) {
	.title_custom_2 {
		font-size:1rem;
		text-align: center;
		border-radius:10px;
		padding:10px;
	}
	.title_custom_2 span {
		font-size:0.7rem;
		margin:0 auto;
		display:block;
	}
}

/*見出し3*/
.title_custom_3 {
	font-weight:bold;
	color:#E3504C;
	line-height: 1.5;
	padding:0.5rem;
	background-color:#fff;
	border-radius:10px;
	margin:0 0 1rem 0;
	text-align:center;
}
@media (max-width: 782px) {
	.title_custom_3 {
		text-align: center;
		border-radius:0;
		padding:10px;
		width:70%;
		margin:0 auto 1rem auto;
	}
}
/*見出し4*/
.title_custom_4 {
	font-size:1rem;
	font-weight:bold;
	line-height: 1.5;
	margin-top:32px;
	margin-bottom:1rem;
	padding:0.4rem;
	border-radius:0.5em;
}
@media (max-width: 782px) {
	.title_custom_4 {
		border-radius:0.5em;
		padding:10px;
		margin:0 auto 1rem auto;
	}
}
/*タイトル下説明*/
div.description {
	display:block;
	margin:1rem auto;
	max-width:40rem;
}

/*メニュー表とか*/
@media (min-width: 782px) {
	.menu_block {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}
	.menu-1,.menu-2 {
		width:50%;
		padding:0 10px;
	}
}
dl {
	margin:1rem 0;
}
dt {
	font-size:1rem;
	display:block;
	float:left;
	line-height:1.6;
	padding:0.5rem;
}
dd {
	font-size:1rem;
	display:block;
	line-height:1.6;
	padding:0.5rem;
}
#menu dd {
	text-align:right;
}
dd:after {
	clear:both;
	content:"";
	display:block;
	border-bottom:1px solid #ccc;
}

.section-recommend {
	display: flex;
	background: #fffced;
	margin:1rem 0;
	border-bottom: 1px solid #ccc;
	margin-bottom: 2em;   /* 次のセクションとの間隔 */
	border-radius: 10px;
}

div.recommend-left{
	width: 40%;
	display: flex;
  justify-content: center; /* 横方向中央 */
  align-items: center;     /* 縦方向中央 */
}
.recommend-left img{
	width: 90%;
	max-width: 200px;
	padding:1rem;
}
div.recommend-right{
	width: 60%;
	padding:1rem;
	display: block;
	flex:1;
}
.section-recommend p {
	font-size:1rem;
	font-weight: 500;
	line-height:1.6;
	padding:0 0.5rem;
}

p.item{
	display: block;
	font-weight: bold;
	color:#552c04;
	border-bottom: 1px solid #f00;
	margin: 1em 0.5em;
}

p.price{
	font-weight: bold;
	color:#552c04;
	margin:0em 0.5em 1.5em 5em;
	line-height: 1.2em;
	text-align: right;
}
br.price{
	font-weight: bold;
	color:#552c04;
	margin:0em 0.5em 1.5em 5em;
	line-height: 1.2em;
	text-align: right;
}

.section-recommend ul {
	padding:0 0.5em;
}

.section-recommend li {
	padding:0 em;
	margin-left:1em;
	font-size:0.8rem;
	line-height: 1.2rem;
}
.section-recommend ul li:before {
  content: "▶ ";
  position: relative;
  color: gray; /*アイコン色*/
  font-size:0.6em;
  bottom:0.2em;
}


#shop dt {
	width:20%;
}
@media (max-width: 782px) {
	#shop dt {
		width:50%;
		text-align: center;
		float:none;
		margin:0 auto;
		padding-bottom:0 !important;
	}
	#shop dd {
		text-align:center;
	}
}

/*まめやかふぇカラー設定*/
.mc .header_line,.mc .header_inner {
	background:#005e37;
	}
.mc a,.mc .title_custom span,.mc .title_custom_2 span {
	color:#22b573;
}
.mc footer {
	background-color:#999;
	/*background:url(../images_base/bg_footer_img_fukuroi.png) top repeat-x;*/
}
.mc .title_custom {
	border-top:3px solid #22b573;
}
.mc .title_custom_2 {
	background-color: #ececd5;
	border-left:3px solid #22b573;
}
/*フクロイコーヒーカラー設定*/
.fc .header_line,.fc .header_inner {
	background:#42210B;
	}
.fc a,.fc .title_custom span,.fc .title_custom_2 span {
	color:#754c24;
}
.fc footer {
	background-color:#999;
	/*background:url(../images_base/bg_footer_img_fukuroi.png) top repeat-x;*/
}
.fc .title_custom {
	border-top:3px solid #754c24;
}
.fc .title_custom_2 {
	background-color: #f6f0e0;
	border-left:3px solid #754c24;
}
.fc .title_custom_4 {
	color:#f9f9f0;
	background-color: #754c24;
	border-top:2px solid #754c24;
}

/*DrinkMagicカラー設定*/
.dm .header_line,.dm .header_inner {
	background:#f51b27;
	}
.dm a,.dm .title_custom span,.dm .title_custom_2 span {
	color:#f97a40;
}
.dm footer {
	background-color:#999;
	/*background:url(../images_base/bg_footer_img_fukuroi.png) top repeat-x;*/
}
.dm .title_custom {
	border-top:3px solid #f97a40;
}
.dm .title_custom_2 {
	background-color: #ffe8c0;
	border-left:3px solid #f97a40;
}
.dm .title_custom_4 {
	color:#666;
	background-color: #f9f9f0;
	border-top:2px solid #f97a40;
}
@media (max-width: 782px) {
	.mc .title_custom_2,.fc .title_custom_2,.dm .title_custom_2 {
		border-left:none;
	}
}

/*見出し2まわり画像配置用セクション*/
.section-title {
  position: relative;
}
.title-image {
  position: absolute;
  top: 50%;
  right: 15px;
  transform: translateY(-50%);
  height: 100px;
}

/*ボタン*/
a.btn{
	display: inline-block;
	background-color: #26a69b;/*背景色*/
	color: #FFF;/*文字色*/
	font-size: 1rem;/*文字サイズ*/
	line-height: 1;
	text-decoration: none;
	letter-spacing: 0.05rem;/*字間*/
	padding:1.5rem 2rem;/*ボタン内の余白*/
	border-radius: 2rem;/*角の丸み*/
	margin:1rem;
	cursor: pointer;
	box-shadow: 0 2px 2px 0 rgba(0,0,0,0.14), 0 1px 5px 0 rgba(0,0,0,0.12), 0 3px 1px -2px rgba(0,0,0,0.2);/*影*/
	-webkit-tap-highlight-color: transparent;
	transition: .3s ease-out;/*変化を緩やかに*/
}
a.btn:hover{
	box-shadow: 0 4px 4px 0 rgba(0,0,0,0.14), 0 1px 8px 0 rgba(0,0,0,0.12), 0 3px 1px 0px rgba(0,0,0,0.2);/*浮き上がるように*/
	text-decoration:none !important;
}
@media (max-width: 782px) {
	a.btn {
		font-size:1.2rem;
	}
}

.mc a.btn {
	background-color:#E3A443;
}
.fc a.btn {
	background-color:#E3504C;
}
.dm a.btn {
	background-color:#24764F;
}


/* YouTube埋め込み動画 */
.movie_wrap {
	position: relative;
	padding-bottom: 56.25%; /*アスペクト比 16:9の場合の縦幅*/
	height: 0;
	overflow: hidden;
}
.movie_wrap iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}


/* 動画ギャラリー */
.movie_gallery {
	display:flex;
	flex-wrap:wrap;
}
.movie_gallery div {
	width:calc(33% - 2rem);
	padding:1rem;
}
.movie_gallery div video {
	width: 100%;
}
@media (max-width: 782px) {
	.movie_gallery div {
		width:calc(100% - 2rem);
		padding:1rem;
	}
}

/* コラム */
.column {
	background-color: #ececd5;
	text-align:center;
	border-radius:1rem;
	margin:2rem auto;
	padding:1rem 0;
}
.column h3 {
	font-size:1rem;
	font-weight:bold;
	color:#666;
	line-height: 1.5;
	background-color:#fff;
	padding:1rem;
	border-radius:10px;
	margin:1rem;
}
.column p {
	margin:1rem;
}
.column img {
	display:block;
	width:100%;
	max-width:300px;
	margin:1rem auto;
}
@media (max-width: 782px) {
	.column h3 {
		font-size:0.875rem;
		margin:1rem 0;
		border-radius:0;
		padding:1rem;
	}
	.column img {
		width:80%;
	}
}
@media (min-width: 782px) {
	.column_block {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		width:85%;
		margin:0 auto;
	}
	.column h3 {
		width:80%;
		margin:1rem auto;
	}
	.column-1,.column-2 {
		width:50%;
		padding:0 0.5rem;
		text-align:left;
	}
}
.column_2 {
	text-align:center;
	margin:2rem auto;
	padding:1rem 0;
}
@media (min-width: 782px) {
	.column_2 {
		display:flex;
	}
	.column_2 p {
		width:50%;
	}
}
.box_2 {
	margin:1rem;
}
@media (min-width: 782px) {
	.box_2 {
		display:flex;
	}
	.box {
		width:50%;
	}
}
/*--------------------------------------------------------------*/
/* スライドショー                                                    */
/*--------------------------------------------------------------*/
.topimage{
	position:relative;
	margin:0 auto;
	width:100%;
}
.mc .topimage {
	background:#f0f0e0;
}
.fc .topimage {
	background:#f6f0e0;
}
.dm .topimage {
	background:#fdfce0;
}
.viewer {
    margin: 0 auto;
    width: 100%;
	max-width:900px;
    position:relative;
    overflow: hidden;
	max-height:636px;
}

.viewer ul {
    width: 100%;
    overflow: hidden;
    position: relative;
}
.viewer ul li {
    top: 0;
    left: 0;
    width: 100%;
    position: absolute;
	height:0;
}
.viewer ul li img {
    width: 100%;
	max-width:900px;
}
/*sideNavi*/
.viewer .btnPrev,
.viewer .btnNext {
    margin-top: -25px;
    top: 50%;
    width: 50px;
    height: 50px;
    position: absolute;
    z-index: 101;
}
.viewer .btnPrev {
    left: 10px;
    background: #ccc url(../img/btnPrev.jpg) no-repeat center center;
}
.viewer .btnNext {
    right: 10px;
    background: #ccc url(../img/btnNext.jpg) no-repeat center center;
}
/*ClearFixElements*/
.viewer ul:after {
    content: ".";
    height: 0;
    clear: both;
    display: block;
    visibility: hidden;
}
.viewer ul {
    display: inline-block;
    overflow: hidden;
}
/*--------------------------------------------------------------*/
/* バナー                                                   */
/*--------------------------------------------------------------*/
.topbanner{
	position:relative;
	margin:30px auto;
	width:100%;
}
.bannerimage {
    margin: 0 auto;
    width: 100%;
	max-width:900px;
    position:relative;
    overflow: hidden;
}
.bannerimage img {
    width: 100%;
	max-width:900px;
}

/**/
/*アコーディオン*/
/**/
/*ボックス全体*/
.accbox {
	margin: 2rem 0;
	padding: 0;
}
/*ラベル*/
.accbox label.accarrow {
	display: block;
	margin: 1.5px 0;
	padding : 13px 12px;
	font-weight: bold;
	cursor :pointer;
	transition: all 0.5s;
}
.mc .accbox label.accarrow {
	background: #ececd5;
}
/*アイコンを表示*/
.accbox label.accarrow:before {
	content: '\f0a4';
	font-family: 'Font Awesome 5 Free';
	font-weight:bold;
	padding-right: 8px;
	font-size: 1.5em;
}
.mc .accbox label.accarrow:before {
	color:#22b573;
}
/*チェックは隠す*/
.accbox input {
	display: none;
}
/*中身を非表示にしておく*/
.accbox .accshow {
	height: 0;
	padding: 0;
	overflow: hidden;
	opacity: 0;
	transition: 0.8s;
}
/*クリックで中身表示*/
.cssacc:checked + label + .accshow {
	height: auto;
	padding: 5px;
	background: #f0f0f0;
	opacity: 1;
}
.accbox .accshow p {
	margin: 1.5rem 1rem;
}
/*アイコンを入れ替える*/
.cssacc:checked + label:before {
	content: '\f0a7';
	font-weight:bold;
}

/**/
/*モーダルウィンドウ*/
/**/
.popupModal1 > input { /* ラジオボックス非表示 */
	display: none;
}
.popupModal1 > input:nth-child(1) + label {/* ポップアップラベル設定 */
	cursor: pointer;
	display:block;
	margin:1.5rem auto;
	text-align:center;
	text-decoration:underline;
	font-weight:bold;
}
.modalPopup2 { /* 初期設定 ポップアップ非表示 */
	display: none;
}
.popupModal1 > input:nth-child(1):checked + label + input:nth-child(3) + label + input:nth-child(5) + label + .modalPopup2 {/* ラジオ１ チェックでポップアップ表示 */
	display: block;
	z-index: 998;
	position: fixed;
	width: 90%;
	height: 80%;
	border-radius: 20px;
	left: 50%;
	top: 50%;
	margin-top: 30px;
	-webkit-transform: translate(-50%,-50%);
	-ms-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
	background: #fff;
	padding: 10px 20px;
	overflow: hidden;
}
@media (min-width: 768px) {/* PCのときはページ中央の600x600領域 */
	.popupModal1 > input:nth-child(1):checked + label + input:nth-child(3) + label + input:nth-child(5) + label + .modalPopup2{
		width: 600px;
		height: 600px;
		padding: 30px;
	}
	.popupModal1 > input:nth-child(1):checked + label + input:nth-child(3) + label + input:nth-child(5) + label {
		left: 50% !important;
		top: 50% !important;
		margin-left: 270px !important;
		margin-top: -310px !important;
	}
}
.popupModal1 > input:nth-child(1):checked + label + input:nth-child(3) + label + input:nth-child(5) + label + .modalPopup2 > div {/* */
	overflow:auto;
	-webkit-overflow-scrolling:touch;
	display: inline-block;
	width: 100%;
	height: 100%;
}
.popupModal1 > input:nth-child(1):checked + label + input:nth-child(3) + label + input:nth-child(5) + label + .modalPopup2 > div > iframe {
	width: 100%;
	height:100%;
	border:none;
	display:block;
}
.popupModal1 > input:nth-child(1):checked + label + input:nth-child(3) + label + input:nth-child(5) + label + .modalPopup2 > div > img {/* ポップアップの中の要素 */
	max-width: 100%;
}
.popupModal1 > input:nth-child(1) + label ~ label {
	display: none;/* ラジオ１ 以外のラベルを初期は非表示 */
}
.popupModal1 > input:nth-child(1):checked + label + input:nth-child(3) + label {
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.70);
	display: block;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 997;
	text-indent: -999999px;
	overflow: hidden;
}
.popupModal1 > input:nth-child(1):checked + label + input:nth-child(3) + label + input:nth-child(5) + label {
	background: rgba(255, 255, 255, 0.5);
	display: inline-block;
	position: fixed;
	left: 10px;
	bottom: 20px;
	z-index: 999;
	width: 44pt;
	height: 44pt;
	font-size: 40px;
	border-radius: 50%;
	line-height: 44pt;
	text-align: center;
	box-shadow: 2px 2px 10px 0px rgba(0, 0, 0, 0.2);
}
.popupModal1 > input:nth-child(1) + label + input:nth-child(3):checked + label + input:nth-child(5) + label + .modalPopup2,
.popupModal1 > input:nth-child(1) + label + input:nth-child(3) + label + input:nth-child(5):checked + label + .modalPopup2 { /* ラジオ２と３ どっちかチェックでポップアップ非表示 */
	display: none;
}
.modalPopup2 {
	animation: fadeIn 1s ease 0s 1 normal;
	-webkit-animation: fadeIn 1s ease 0s 1 normal;
}
@keyframes fadeIn {
	0% {opacity: 0}
	100% {opacity: 1}
}
@-webkit-keyframes fadeIn {
	0% {opacity: 0}
	100% {opacity: 1}
}
.popupModal1 .modalTitle {
	padding-bottom: .5em;
	margin: .5em 0;
	border-bottom:1px solid #ccc;
	font-weight: bold;
}
.popupModal1 .modalMain {
	color:#222;
	text-align: left;
	font-size: 14px;
	line-height: 1.8em;
}

/*メニュー装飾用*/
/*<i class="new"></i>*/
.new:after {
	content:"NEW!";
	font-size:0.8em;
	color:white;
	background:red;
	padding:0 3px;
	margin:0 0 0 10px;
	border-radius:2px;
}
.limited:after {
	content:"期間限定";
	font-size:0.8em;
	color:white;
	background:red;
	padding:2px 5px;
	padding:0 3px;
	margin:0 0 0 10px;
	border-radius:2px;
}
.limited_summer:after {
	content:"夏季限定";
	font-size:0.8em;
	color:white;
	background:#44B9F0;
	padding:2px 5px;
	padding:0 3px;
	margin:0 0 0 10px;
	border-radius:2px;
}
.limited_winter:after {
	content:"冬季限定";
	font-size:0.8em;
	color:white;
	background:#EA816C;
	padding:2px 5px;
	padding:0 3px;
	margin:0 0 0 10px;
	border-radius:2px;
}
.hot:after {
	content:"HOT";
	font-size:0.7em;
	color:#EA816C;
	background:#fff;
	border:1px solid #EA816C;
	padding:0 3px;
	margin:0 0 0 3px;
	border-radius:2px;
}
.ice:after {
	content:"ICE";
	font-size:0.7em;
	color:#44B9F0;
	background:#fff;
	border:1px solid #44B9F0;
	padding:0 3px;
	margin:0 0 0 3px;
	border-radius:2px;
}

/*END メニュー装飾用*/