@charset "utf-8";

/*----------------------------------------------------
	header#globalHeader
----------------------------------------------------*/
header#globalHeader {
  clear: both;
  width: 100%;
}

header#globalHeader h1 {
  text-align: center;
  padding-top:10px;
}

.navSp { background: url(../../images/bg_globalNav_slide_sp.png) center bottom repeat-x; padding-bottom:80px; margin-bottom:0px; }
@media (min-width:576px) { /* PC */
.navSp { background: none; padding-bottom:0px;  }
}

/*----------------------------------------------------
	spmenu_btn
----------------------------------------------------*/
.spmenu_btn { background: #fff;/* 三本線の真ん中 */ border-top: 10px solid #ba0010;/* 背景 */ border-bottom: 10px solid #ba0010;/* 背景 */ display: block; position: absolute; top: 14px; right: 15px; width: 30px; height: 22px; box-sizing: border-box; transition: all 0.3s; }
.spmenu_btn:before { background: #fff;/* 三本線の下 */ content: ''; position: absolute; width: 30px; height: 2px; top: -9px; right: 0; transition: all 0.3s; }
.spmenu_btn:after { background: #fff;/* 三本線の下 */ content: ''; position: absolute; width: 30px; height: 2px; bottom: -9px; right: 0; transition: all 0.3s; }
.spmenu_btn.active { background: #690010;/* ×になったのときの三本線の真ん中 */ border-top: 10px solid #690010;/* 背景 */ border-bottom: 10px solid #690010;/* 背景 */ transition: all 0.3s; }
.spmenu_btn.active:before { transform: rotate(-135deg); top: 0; right: 0; }
.spmenu_btn.active:after { transform: rotate(135deg); bottom: 0; right: 0; }
@media (min-width:576px) { /* PC */
.spmenu_btn { display: none; }
}

/*----------------------------------------------------
	#globalNav
----------------------------------------------------*/
.openNav { display: none; }
.dropmenu { width: 100%; margin: 0 auto; }
.dropmenu:before,
.dropmenu:after { content: ""; display: table; clear: both; }
.dropmenu ul { list-style: none; }
.dropmenu li { position: relative; text-align: center; border-top: 1px solid #fff; }
.dropmenu li a { display: block; line-height: 1; }
.dropmenu li:first-child { border-top: none; }
@media (min-width:576px) { /* PC */
.openNav { display: block; }
.dropmenu li { width: auto; float: left; border: none; /*margin-right:36px;*/ padding: 25px 0 15px; }
.dropmenu li a:hover {  }
.dropmenu li:last-child { margin-right:0; }
#globalNav { background: #410111 url(../../images/bg_globalNav.png) no-repeat center bottom; }
#globalNav img { min-width: 100%; height: auto; }
.dropmenu li.logo { margin-right:40px; }
}

/*----------------------------------------------------
	slider
----------------------------------------------------*/
#slick_container { position:relative; text-align:center; }
.sliderTitle { position:absolute; left: 0; right: 0; margin: auto; z-index:10; }
@media (min-width:576px) { /* PC */
#slick_container { background: url(../../images/bg_globalNav_slide.png) center top no-repeat,url(../../images/bg_globalNav_slide_LR.png) center top repeat-x; height:500px; }
.second { background: url(../../images/bg_globalNav_second.png) center top no-repeat,url(../../images/bg_globalNav_second_LR.png) center top repeat-x; height:210px; }
.second_catering { height:170px; }
}

/*----------------------------------------------------
	textLink（スマートフォンでは2カラム枠付）
----------------------------------------------------*/
.textLink ul { list-style-type: none; }
.textLink li { float: left; width: 50%; }
.textLink li:last-child { margin-bottom:30px; }
@media (min-width:576px) { /* PC */
.textLink ul { text-align:center; margin:10px 0 0; }
.textLink li { float: none; display: inline-block; margin-right:10px; width: auto; }
.textLink li:last-child { margin-right:0; }
}

/*----------------------------------------------------
	#main
----------------------------------------------------*/
#main { text-align:center; line-height:1.8; }
.second { color:#fff; }
.second h2 { margin-bottom:10px; }
.second p { font-size:1.4rem; }
.second .col-12 { text-align:center; }
@media (min-width:576px) { /* PC */
.second .col-sm-6 { text-align:left; border-left:#fff 1px solid; padding-left:40px; margin-top:30px; }
}

.season_banner { position: relative; }
.season_banner_inn { position: absolute; top: 0; left: 50%; transform: translateX(-50%); -webkit-transform: translateX(-50%); -ms-transform: translateX(-50%); z-index: 10; }

hr { height: 0; margin: 0; padding: 0; border: 0; }
hr.red { background:url(../../images/hr_red.png) no-repeat center; height:45px; margin:50px 0 10px; }
hr.yellow { background:url(../../images/hr_yellow.png) no-repeat center; height:45px; margin:50px 0 10px; }
hr.grayLine { background:#ccc; height:1px; margin:30px 0; }
hr.redLine { background:#A92A00; height:1px; margin:30px 0; }

h2 { font-size:1.8rem; letter-spacing:0.2em; margin-bottom:25px; }
h2.title { font-size:4.0rem; letter-spacing:0.2em; margin:70px 0 25px; color:#420010; font-weight:normal; font-family: "游明朝", YuMincho, Yu Mincho, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ 明朝", "MS Mincho", serif; }
h3 { font-size:1.4rem; letter-spacing:0.1em; }
h3.title { font-size:1.8rem; color:#A92A00; }
@media (min-width:576px) { /* PC */
h3.title { font-size:3.0rem; color:#A92A00; }
}
h3.line { font-size:2.8rem; letter-spacing:0.4em; font-weight:normal; background:url(../../images/h3_line.png) no-repeat center bottom; padding:100px 0 30px; margin-bottom:40px; }

.green { color:#6D6F00; }
.red { color:#A92A00; }
.blue { color:#326478; }
.purple { color:#A50045; }
.point { color:#6D6F00; font-weight: bold; }

.iconS { background:#d47696; color:#fff; padding:6px 15px; margin:5px; border-radius:5px; line-height:2.5; }
.iconR { background:#81ac84; color:#fff; padding:6px 15px; margin:5px; border-radius:5px; line-height:2.5; }
.iconF { background:#dec855; color:#fff; padding:6px 15px; margin:5px; border-radius:5px; line-height:2.5; }
.iconG { background:#3889ad; color:#fff; padding:6px 15px; margin:5px; border-radius:5px; line-height:2.5; }

.maple { background:url(../../images/showcase/bg_maple.png) no-repeat center top; padding-top:70px; }
.onlineshop { background:url(../../images/bg_onlineshop.jpg) center center / cover no-repeat; padding:80px 30px; }
.cateringDelivery { 
 background-image:url(../../images/bg_cateringDelivery.png), url(../../images/bg_cateringDelivery.jpg);
 background-repeat: no-repeat, repeat;
 background-position: center center, center center;
 padding:100px 30px; }
.news { background:#fff; }

/* ショーケース */
.showcaseMenu { text-align:left; display: flex; align-items: stretch; }
.showcaseMenu .name { font-size:2.0rem; font-weight:bold; letter-spacing:0.1em; margin:10px 0; }
.showcaseMenu .comment { font-size:1.4rem; color:#A92A00; margin:5px 0; }
.showcaseMenu .price { font-size:2.0rem; margin:5px 0; }

.showcaseMenu .container .row { display: flex; align-items: stretch; }
.showcaseMenu .container .col-12 { display: flex; flex-direction: column; }
.showcaseMenu .container .price { margin-top: auto; }

/* ショップリスト */
@keyframes tabAnim{
	0%{opacity:0;}
	100%{opacity:1;}
}
.tab_wrap{ width:100%; }
input[type="radio"] { display:none; }
.tab_area { }
.tab_area label { border-top-left-radius:5px; border-top-right-radius:5px; width:40%; display:inline-block; padding:20px 0 15px; background:#ccc; color:#fff; text-align:center; font-size:1.8rem; cursor:pointer; transition:ease 0.2s opacity; }
.tab_area label:hover { opacity:0.5; }
.tab_panel { width:100%; opacity:0; display:none; }
.tab_panel p { font-size:14px; letter-spacing:1px; text-align:center; }
.panel_area { background:#fff; }

#tab_sweets:checked ~ .tab_area .tab_sweets_label { background:#a92a00; }
#tab_sweets:checked ~ .panel_area #panel_sweets { border-top:#a92a00 5px solid; padding-bottom:50px; display:block; animation:tabAnim ease 0.6s forwards; -ms-animation:tabAnim ease 0.6s forwards; }

#tab_restrant:checked ~ .tab_area .tab_restrant_label { background:#6d6f00; }
#tab_restrant:checked ~ .panel_area #panel_restrant { border-top:#6d6f00 5px solid; padding-bottom:50px; display:block; animation:tabAnim ease 0.6s forwards; -ms-animation:tabAnim ease 0.6s forwards; }

.shoplistItem p { margin:15px 0; font-size:1.5rem; }

@media (min-width:576px) { /* PC */
.tab_area label { width:30%; letter-spacing:0.2em; }
}



/* メニュー */
.tab_areaMenu label { width:24%; margin:5px 0 20px; display:inline-block; padding:10px 0; background:#000; color: #fff;  text-align:center; font-size:1.6rem; cursor:pointer; transition:ease 0.2s opacity; }
.tab_areaMenu label:hover { opacity:0.5; }

@media (max-width:576px) { /* SP */
.tab_areaMenu label { width:49%; }
}

.panel_areaMenu {  }
#tab_foodMenu:checked ~ .tab_area .tab_foodMenu_label {  }
#tab_foodMenu:checked ~ .panel_areaMenu #panel_foodMenu { padding-bottom:50px; display:block; animation:tabAnim ease 0.6s forwards; -ms-animation:tabAnim ease 0.6s forwards; }

#tab_takeOut:checked ~ .tab_area .tab_takeOut_label {  }
#tab_takeOut:checked ~ .panel_areaMenu #panel_takeOut { padding-bottom:50px; display:block; animation:tabAnim ease 0.6s forwards; -ms-animation:tabAnim ease 0.6s forwards; }

#tab_sweetsMenu:checked ~ .tab_area .tab_sweetsMenu_label {  }
#tab_sweetsMenu:checked ~ .panel_areaMenu #panel_sweetsMenu { padding-bottom:50px; display:block; animation:tabAnim ease 0.6s forwards; -ms-animation:tabAnim ease 0.6s forwards; }

#tab_drinkMenu:checked ~ .tab_area .tab_drinkMenu_label {  }
#tab_drinkMenu:checked ~ .panel_areaMenu #panel_drinkMenu { padding-bottom:50px; display:block; animation:tabAnim ease 0.6s forwards; -ms-animation:tabAnim ease 0.6s forwards; }


/* メープルハウスのこと */
.tab_areaAbout label { border-radius:5px; width:45%; display:inline-block; padding:20px 0; background:#c31317; color:#fff; text-align:center; font-size:2.2rem; letter-spacing:0.1em; cursor:pointer; transition:ease 0.2s opacity; }
.tab_areaAbout label:hover { background:#691317; }
.panel_area_about {  }
@media (min-width:576px) { /* PC */
.tab_areaAbout label { width:30%; letter-spacing:0.4em; }
}

#tab_history:checked ~ .tab_area .tab_history_label {  }
#tab_history:checked ~ .panel_area_about #panel_history { padding-bottom:50px; display:block; animation:tabAnim ease 0.6s forwards; -ms-animation:tabAnim ease 0.6s forwards; }

#tab_profile:checked ~ .tab_area .tab_profile_label {  }
#tab_profile:checked ~ .panel_area_about #panel_profile { padding-bottom:50px; display:block; animation:tabAnim ease 0.6s forwards; -ms-animation:tabAnim ease 0.6s forwards; }


/* メープルハウスのこと　吹き出し */
.fukidashi {
  position: relative;
  display: inline-block; padding: 7px 10px;
  width: 100%;
  background: #fff;
  margin-top:30px;
  padding:45px 40px 35px;
}

.fukidashi:before{
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-top: 15px solid #fff;
}

/* ページトップへ戻る */
.pageTop { margin:10px 0; }

/* 箇条書きリスト */
#main ul { list-style: none; display: table; margin-left:15px; margin-top:10px; }
#main ul li:after { content: ""; display: block; padding-bottom:5px; }
#main ul li { display: table-row; }
#main ul li:before { content: "\25CF"; display: table-cell; padding-right: 1.5rem; font-size:60%; color: #A92A00; }
#main ul li:last-child:after { padding-bottom:0; }


/* 通常テーブル */
#main .lineTb table { width: 100%; line-height: 1.6; border-top: 1px solid #ccc; border-collapse: collapse; border-spacing: 0; }
#main .lineTb th,
#main .lineTb td { background-color: #fff; border: 1px solid #ccc; padding: 10px 20px; width: 100%; display: block; border-top: none; }
#main .lineTb th { background-color: #fff; font-weight: normal; white-space: nowrap; }
@media (min-width:576px) { /* PC */
#main .lineTb th,
#main .lineTb td { display: table-cell; width: auto; }
}

/* レイアウトテーブル */
#main .layoutTb table { text-align:left; width: 100%; line-height: 1.6; border-collapse: collapse; border-spacing: 0; }
#main .layoutTb th,
#main .layoutTb td { padding: 5px 0; width: 100%; display: block; vertical-align:top; }
#main .layoutTb td { border-bottom:1px #ccc solid; }
#main .layoutTb th { white-space: nowrap; font-weight:normal; }
@media (min-width:576px) { /* PC */
#main .layoutTb th,
#main .layoutTb td { display: table-cell; padding: 10px 20px; width: auto; }
#main .layoutTb td { border:none; }
}


/*----------------------------------------------------
	footer#globalFooter
----------------------------------------------------*/
footer#globalFooter {
  clear: both;
  width: 100%;
  background: url(../../images/bg_footer.jpg) center center / 100% 100% no-repeat;
  font-size: 1.3rem;
  color:#fff;
  text-align: center;
  padding:40px 0 50px;
}

footer#globalFooter p.copyright {
  margin-top: 10px;
}

/*----------------------------------------------------
	mailform
----------------------------------------------------*/
textarea {
  width: 99%;
  border: #ccc solid 1px;
  background: #f1f1f1;
}

input[type="text"] {
  border: #ccc solid 1px;
  background: #f1f1f1;
}

.required {
  font-size: 1.2rem;
  color: #fff;
  background-color: red;
  padding: 3px 5px;
  border-radius: 3px;
  margin: 0 10px;
}

/*----------------------------------------------------
	class="move"
----------------------------------------------------*/
.move {
  opacity: 0;
  transform: translate(0, 60px);
  -webkit-transform: translate(0, 60px); /*IE9, Safai8, Android Browser4〜4.4.4, モバイルSafai8, 8.4に対応させる場合に必要*/
  transition: .8s;
}

.mv {
  opacity: 1.0;
  transform: translate(0, 0);
  -webkit-transform: translate(0, 0); /*IE9, Safai8, Android Browser4〜4.4.4, モバイルSafai8, 8.4に対応させる場合に必要*/
}

/*----------------------------------------------------
	link
----------------------------------------------------*/
a,
a:hover {
  text-decoration: none;
  color: #A92A00;
}
.pdfIcon a[href$=".pdf"]::before {
  padding-right: 10px;
  content: url("../../images/pdf.png");
  vertical-align: middle;
}



/* リンクボタン */
.w100 { width: 100%; }
.button { min-width:300px; display: inline-block; text-align: center; padding: 10px 15px; margin: 15px 0; background-color: #87a7ba; border: #87a7ba 1px solid; color: #fff; }
.button:hover { background-color: #fff; transition: all 0.5s; color: #87a7ba; }

.buttonCart a { color:#fff; min-width:100%; display: inline-block; text-align: center; padding: 10px 15px; margin: 15px 0; background-color: #b9a100; border: #b9a100 1px solid; }
.buttonCart a:hover { color:#b9a100; background-color: #fff; transition: all 0.5s; }
@media (min-width:576px) { /* PC */
.buttonCart a { min-width:200px; }
}

.buttonRed a { color:#fff; min-width:100%; display: inline-block; text-align: center; padding: 10px 15px; margin: 15px 0; background-color: #c31317; border: #c31317 1px solid; }
.buttonRed a:hover { color:#c31317; background-color: #fff; transition: all 0.5s; }
@media (min-width:576px) { /* PC */
.buttonRed a { min-width:200px; }
}

/*----------------------------------------------------
	その他
----------------------------------------------------*/
#main .tC, .tC { text-align: center; }
#main .tR, .tR { text-align: right; }
#main .tL, .tL { text-align: left; }
#main .tRL, .tRL { text-align: left; }
#main .tRC, .tRC { text-align: center; }
#main .tLC, .tLC { text-align: center; }
@media (min-width:576px) { /* PC */
#main .tRL, .tRL { text-align: right; }
#main .tRC, .tRC { text-align: right; }
#main .tLC, .tLC { text-align: left; }
}
#main .aligncenter, .aligncenter { display: block; margin: 0 auto; }
#main .alignright, .alignright { float: right; }
#main .alignleft, .alignleft { float: left; }

#main .fB, .fB { font-weight: bold; }
#main .fX, .fX { font-size: 60%; }
#main .fS, .fS { font-size: 80%; }
#main .fM, .fM { font-size: 120%; }
#main .fL, .fL { font-size: 140%; }
#main .fLL, .fLL { font-size: 160%; }
#main .fLLL, .fLLL { font-size: 180%; }

#main .tGo, .tGo { font-family: "游ゴシック", YuGothic, Yu Gothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ ゴシック", MS Gothic, sans-serif; }
#main .tMin, .tMin { font-family: "游明朝", YuMincho, Yu Mincho, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ＭＳ 明朝", "MS Mincho", serif; }
#main .tMaru, .tMaru { font-family: "ヒラギノ丸ゴ Pro W4", "Hiragino Maru Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", MS Gothic, sans-serif; }
#main .Mono, .Mono { font-family: "Osaka－等幅", Osaka-mono, "ＭＳ ゴシック", "MS Gothic", monospace; }

/* 上方向のmargin */
#main .mtN, .mtN { margin-top: 0; }
#main .mtX, .mtX { margin-top: 15px; }
#main .mtS, .mtS { margin-top: 30px; }
#main .mtM, .mtM { margin-top: 60px; }
#main .mtL, .mtL { margin-top: 90px; }

/* 下方向のmargin */
#main .mbN, .mbN { margin-bottom: 0; }
#main .mbX, .mbX { margin-bottom: 15px; }
#main .mbS, .mbS { margin-bottom: 30px; }
#main .mbM, .mbM { margin-bottom: 60px; }
#main .mbL, .mbL { margin-bottom: 90px; }

/* 上方向のpadding */
#main .ptN, .ptN { padding-top: 0; }
#main .ptX, .ptX { padding-top: 15px; }
#main .ptS, .ptS { padding-top: 30px; }
#main .ptM, .ptM { padding-top: 60px; }
#main .ptL, .ptL { padding-top: 90px; }

/* 下方向のpadding */
#main .pbN, .pbN { padding-bottom: 0; }
#main .pbX, .pbX { padding-bottom: 15px; }
#main .pbS, .pbS { padding-bottom: 30px; }
#main .pbM, .pbM { padding-bottom: 60px; }
#main .pbL, .pbL { padding-bottom: 90px; }