/* ===============================
! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}
/* ===============================
My Normalize */
h1,h2,h3,h4,h5,h6,p { margin-top: 0;}
h1,h2 { margin-bottom: 1.5em;}
h3,h4,h5,h6 { margin-bottom: 1em}
p { margin-bottom: 1em;}
h1,h2,h3,h4,h5,h6,th { font-weight: normal;}
*, *:before, *:after { box-sizing: border-box;}
a { color: #00A73C; text-decoration: underline;}
a:hover { text-decoration: none;}
.listreset { list-style: none; margin: 0; padding: 0;}
.dl.listreset dd,
figure { margin: 0;}
address { font-style: normal; font-size: .813rem; line-height: 1.2;}
.reset { margin-bottom: 0;}
.areset a { text-decoration: none; display: block;}

/* ===============================-
   アイコンフォント */

@font-face {
  font-family: 'general';
  src:  url('fonts/general.eot?wovoyo');
  src:  url('fonts/general.eot?wovoyo#iefix') format('embedded-opentype'),
    url('fonts/general.ttf?wovoyo') format('truetype'),
    url('fonts/general.woff?wovoyo') format('woff'),
    url('fonts/general.svg?wovoyo#general') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}

[class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'general' !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;

  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-arrow-right:before { content: "\e900";}
.icon-cart:before { content: "\e901";}
.icon-exlink:before { content: "\e902";}
.icon-facebook:before { content: "\e903";}
.icon-instagram:before { content: "\e904";}
.icon-login:before { content: "\e905";}
.icon-mail:before { content: "\e906";}
.icon-maru-left:before { content: "\e907";}
.icon-maru-right:before { content: "\e908";}
.icon-pagetop:before { content: "\e909";}
.icon-pc:before { content: "\e90a";}
.icon-regist:before { content: "\e90b";}
.icon-sp:before { content: "\e90c";}
.icon-tel:before { content: "\e90d";}
.icon-zoom:before { content: "\e90e";}

    
/* =====================================
   ローカルホストフォント */

/* zen-maru-gothic-700 - japanese */
@font-face {
font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
font-family: 'Zen Maru Gothic';
font-style: normal;
font-weight: 700;
src: url('../css/fonts/zen-maru-gothic-v16-japanese-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* montserrat-regular - latin */
@font-face {
font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
font-family: 'Montserrat';
font-style: normal;
font-weight: 400;
src: url('../css/fonts/montserrat-v26-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

.zen_maru { font-family: "Zen Maru Gothic", sans-serif; font-weight: 700;}

.montserrat { font-family: "Montserrat", sans-serif; font-weight: 400;}


/* =====================================
   Youtube＆Googlemapレスポンシブ対応 */

/* Youtube用 */
.yt-wrapper {
   position: relative;
   padding-bottom: 56.25%;
   padding-top: 25px;
   height: 0;
} 
.yt-wrapper iframe {
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
}
/* GoogmeMap用 */
.gmap {
   position: relative;
   padding-bottom: 56.25%;
   padding-top: 30px;
   height: 0;
   overflow: hidden;
}  
.gmap iframe,
.gmap object,
.gmap embed {
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
}
  

/**************************************
 基本設定・汎用スタイル
**************************************/

@font-face { font-family: "My Yu Gothic"; src: local("Yu Gothic Medium"), local("YuGothic-Medium");}
@font-face { font-family: "My Yu Gothic"; src: local("Yu Gothic Bold")  , local("YuGothic-Bold"); font-weight: bold; }

html { font-size: 100%;}

body {
 margin: 0;
 padding: 0;
 font-size: clamp(0.875rem, 0.784rem + 0.45vw, 1.125rem);
 background: #fff;
 text-align: left;
 color: #333;
 line-height: 1.8;
 word-wrap: break-word;
 font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
 background: #fff;
 font-weight: 500;
}

.txL { text-align: left !important;}
.txR { text-align: right !important;}
.txC { text-align: center !important;}

/* =============================
   Clearfix */

.cf::after {
content: "";
display: block;
clear: both;
}

/* =================================
   オブジェクトフィット */

.ofi { object-fit: cover;}

/* ================================
  レイアウト */

.main{
   text-align: left;
   width: 100%;
}

@media only screen and (max-width: 767px){
.pcOnly { display: none !important;}
}
@media print, screen and (min-width: 768px){
.spOnly { display: none !important;}
}

@media only screen and (max-width: 1024px){
.pcOnly2 { display: none !important;}
}
@media print, screen and (min-width: 1025px){
.spOnly2 { display: none !important;}
}

@media only screen and (max-width: 1359px){
.pcOnly3 { display: none !important;}
}
@media print, screen and (min-width: 1360px){
.spOnly3 { display: none !important;}
}


.sectionbloc { padding-top: 2em; padding-bottom: 2em;}
@media print, screen and (min-width: 1200px){
.sectionbloc { padding-top: 4em; padding-bottom: 4em;}
}

.b_sectionbloc { padding-bottom: 2em;}
@media print, screen and (min-width: 1200px){
.b_sectionbloc { padding-bottom: 4em;}
}


.wrap,.wrap960,.wrap1260,.wrap1440 {
   width: 100%;
   padding-left: 3%;
   padding-right: 3%;
   margin-right: auto;
   margin-left: auto;
}
@media print, screen and (min-width: 1025px){
.wrap960 {
   max-width: 960px;
}
.wrap1260 {
   max-width: 1260px;
}
.wrap1440 {
 max-width: 1440px;
}
}

.back_cl { background: #FAFAFA;}


/* ==================================-
   共通タイトル */

.sectiontitle {
   border-left: solid 3px #00A73C;
   border-image: linear-gradient(to bottom, #00A73C 0%, #FFF100 100%) 1;
   padding-left: .7em;
   margin-bottom: 0;
}
@media print, screen and (min-width: 1200px){
.sectiontitle {
   padding-left: 1em;
}
}
.sectiontitle_main {
   font-size: clamp(1.125rem, 0.625rem + 2.5vw, 2.5rem);
   font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,Osaka,"ＭＳ Ｐゴシック","MS PGothic","sans-serif";
   font-weight: 700;
}
.sectiontitle_sub {
   font-size: clamp(0.625rem, 0.534rem + 0.45vw, 0.875rem);
   font-family: "Montserrat", sans-serif; font-weight: 400;
}
.sectiontitle_main,.sectiontitle_sub { display: block; letter-spacing: .1rem;}


.page_title {
   padding-top: .7em;
   padding-bottom: .7em;
   margin-bottom: 1em;
}
@media print, screen and (min-width: 1200px){
.page_title {
   padding-top: 1.5em;
   padding-bottom: 1.5em;
   margin-bottom: 2em;
}
}


/* ================================
  ボーダー装飾 */

.c_boder {
   width: 100%;
   height: 5px;
   background: #00A73C;
   position: relative;
}
.c_boder::before {
   content: "";
   width: 50px;
   height: 5px;
   background: #E51F23;
   position: absolute;
   top: 0;
   left: 0;
   z-index: 1;
}
.c_boder::after {
   content: "";
   width: 100px;
   height: 5px;
   background: #FFF100;
   position: absolute;
   top: 0;
   left: 0;
}
@media print, screen and (min-width: 1025px){
.c_boder,.c_boder::before,.c_boder::after { height: 8px;}
.c_boder::before { width: 100px;}
.c_boder::after { width: 200px;}
}

/* ================================
  ボタン */

.top_btn { margin-top: 3.5em;}
@media print, screen and (min-width: 1025px){
.top_btn { margin-top: 3.5em;}
}
.top_btn a {
   background: #fff;
   color: #00A73C;
   border: solid 1px #00A73C;
   border-radius: 2em;
   padding: .7em 3em;
   text-decoration: none;
   letter-spacing: .1rem;
   transition: all .2s ease;
   display: inline-block;
   position: relative;
}
.top_btn a::before {
   content: "";
   position: absolute;
   top: -1.5em;
   left: 50%;
   transform: translate(-50%,-50%);
   background: #00A73C;
   width: 1px;
   height: 1.3em;
}
.top_btn a:hover{
   background: #fff;
   color: #fff;
   background: #00A73C;
 }


 /* ================================
   ヘッダービジュアル */

.headerimg_outer {
   height: 170px;
   background: url('img/headerimg.jpg') center no-repeat;
   background-size: cover;
   display: flex;
   align-items: center;
   position: relative;
}
.headerimg_outer::before {
   content: "";
   width: 100%;
   height: 100%;
   position: absolute;
   top: 0;
   left: 0;
   background: #ffffffb8;
   z-index: 1;
}


@media print, screen and (min-width: 1025px){
.headerimg_outer { height: 260px;}
}
@media print, screen and (min-width: 1360px){
.headerimg_outer { height: 360px;}
}
  
.pagetitle {
   display: inline-block;
   line-height: 1.2;
   text-align: center;
   margin: 0 auto;
   font-size: clamp(1.25rem, 0.795rem + 2.27vw, 2.5rem);
   font-weight: 700;
   letter-spacing: .2rem;
   font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,Osaka,"ＭＳ Ｐゴシック","MS PGothic","sans-serif";
   position: absolute;
   top: 75%;
   left: 50%;
   transform: translate(-50%,-75%);
   z-index: 2;
   width: 100%;
   padding-right: 3%;
   padding-left: 3%;
}
.pagetitle_inner {
   display: block;
}
.pagetitle_sub { display: block; font-weight: 400; font-size: 1.2rem;}
  @media print, screen and (min-width: 1025px){
  .pagetitle_sub { font-size: 1.8rem;}
}


/* =================================
   各カテゴリ　ブロック表示 */

.category_pic img { display: block; width: 100%; height: auto;}

.category_point { margin-top: 1.5em;}
.category_point li {
   margin-left: 1.2em;
   text-indent: -1.2em;
   margin-bottom: 0.5em;
}
.category_point li a { color: #333;}
.category_point li::before {
   content: "■";
   margin-right: .2em;
}

.count {
   display: none;
}

/* 弁当配達 */
.area_fee {
   background: linear-gradient(transparent 60%, #FFF98C 60%);
   font-weight: 700;
}

/* 大会専用 */
.taikai_category li a {
   display: flex;
   width: 100%;
   background: #fff;
   border: solid 2px #00A73C;
   color: #333;
   height: 100%;
   font-weight: 700;
   text-align: center;
   padding: 1em 0.5em;
   border-radius: 0.5em;
   text-decoration: none;
   align-items: center;
   justify-content: center;
}
.taikai_category li + li { margin-top: 1em;}
@media print, screen and (min-width: 768px){
.taikai_category { display: flex; justify-content: space-between; flex-wrap: wrap;}
.taikai_category li { width: 48%;}
.taikai_category li + li { margin-top: 0;}
.taikai_category li + li + li { margin-top: 1.5em;}
}
@media print, screen and (min-width: 1025px){
.taikai_category li a { padding: 1.5em .5em; transition: all .2s ease;}
.taikai_category li a:hover { background: #00A73C; color: #fff;}
}

.choose_txt { text-align: center;}


/* =================================
   ぱんくず */

.breadcrumb_list {
   font-size: 85%;
   line-height: 1.5;
   text-align: left;
   position: relative;
   padding: .7em 3%;
}
  
.breadcrumb_list ul {
   list-style: none;
   margin: 0;
   line-height: 1.5;
   overflow: hidden;
}
@media print, screen and (min-width: 1025px){
.breadcrumb_list { padding: 1em 3%;}
}
  
.breadcrumb_list ul li {
   float: left;
   color: #555;
}
.breadcrumb_list ul li:before {
   content: ">";
   margin: 0 .5em;
}
.breadcrumb_list ul li:first-child:before { content: none;}
.breadcrumb_list ul li a { text-decoration: underline; color: #999; font-weight: normal;}
.breadcrumb_list a:hover { text-decoration: none;}



/* ====================================
   ヘッダー */

@keyframes HeaderPlay {
0% {
 transform: translateY(-100%);
}
100% { 
 transform: translateY(0);
 background: #fff;
}
}

header {
 position: fixed;
 z-index: 100;
 width: 100%;
 top: 0;
 left: 0;
 transition: .3s all ease;
 background: rgba(255, 255, 255, 0.881);
}

.js-animation { box-shadow: 0 0 8px 1px rgb(0 0 0/10%);}
.header_menu {
   transform: translateY(-100%);
}

.h_header {
 display: flex;
 justify-content: space-between;
 align-items: center;
 padding: .7em 3%;
}
.h_logo_area { width: 30%;}
.logo { max-width: 140px; margin: 0;}
.logo img { width: 100%; height: auto; display: block;}

@media print, screen and (min-width: 1360px){
.h_header { align-items: flex-start;}

.logo { 
   width: 100%;
   max-width: 180px;
   line-height: 0;
   margin-right: auto;
   margin-left: auto;
}

.logo a,
.logo img { width: 100%; height: auto; margin: auto;}
.h_logo_area a { display: inline-block;}
.headernav { width: 100%;}
}


@media print, screen and (min-width: 1360px){
.description {
 font-size: 1.4rem;
 text-align: right;
 font-weight: normal;
 margin: .5em 0 1em 0;
}
.h_main {
 padding: 0 1em;
 width: 80%;
 display: flex;
 flex-direction: column;
}
.header_contact { width: 10%;}
.header_tel { text-align: right;}
.header_tel img {display: block; margin: 0 0 0 auto;}
}


@media only screen and (max-width: 1359px) {
.guest {
   font-size: 80%;
   text-align: right;
   color: #333;
   margin-bottom: 0.3em;
   display: block;
}
.btnarea_sp {
   display: flex;
   justify-content: flex-end;
   align-items: center;
}
.btnarea_sp li { margin-left: 1em;}
.btnarea_sp__cart a { text-decoration: none; color: #333;}
.header_p_count { margin-left: .2em;}


/* ハンバーガーメニュー */
#nav-toggle {
  height: 20px;
  cursor: pointer;
}
#nav-toggle > div {
  position: relative;
  width: 30px;
}
#nav-toggle span {
  width: 100%;
  height: 2px;
  left: 0;
  display: block;
  background: #00A73C;
  position: absolute;
  transition: transform 0.6s ease-in-out, top 0.5s ease;
}
#nav-toggle span:nth-child(1) { top: 0;}
#nav-toggle span:nth-child(2) { top: 10px;}
#nav-toggle span:nth-child(3) { top: 20px;}
#nav-toggle:hover span:nth-child(1) { top: 2px;}
#nav-toggle:hover span:nth-child(3) { top: 18px;}
.open #nav-toggle {
   position: fixed;
   top: 1em;
   right: 2em;
}
/* オープン時 */
.open #nav-toggle { top: 1em; right: 2em;}
.open #nav-toggle span { background: #00A73C;}
.open #nav-toggle span:nth-child(1) {
  top: 15px;
  transform: rotate(45deg);
}
.open #nav-toggle span:nth-child(2) {
  top: 15px;
  width: 0;
  left: 50%;
}
.open #nav-toggle span:nth-child(3) {
  top: 15px;
  transform: rotate(-45deg);
}

/* z-index */
#nav-toggle { z-index: 1000;}
.main { z-index: 2;}
}


/* ======================================
   ドロワー */

@media only screen and (max-width: 1359px) {

#SlideMenu {
 overflow: auto;
 background: #fff;
 position: fixed;
 top: 0;
 left: 0;
 right: 0;
 bottom: 0;
 z-index: 990;
 text-align: left;
 visibility: hidden;
 opacity: 0;
 transition: opacity .2s ease, visibility .2s ease;
 height: 100vh;
}

/* open */
.open {  overflow: hidden;}
.open #SlideMenu {  visibility: visible;  opacity: 1;}
.open #SlideMenu li,
.open .drw_tel {  opacity: 1;  transform: translateY(0);}


/* =====================================-
   ナビゲーション */

#SlideMenu { padding: 3em 0;}
#SlideMenu li {
 opacity: 0;
 transform: translateY(50px);
 transition: transform 0.6s ease, opacity 0.2s ease;
 transition-delay: .15s;
}
.open #SlideMenu li {
 opacity: 1; transform: translateY(0);
}

/* ドロワーボタンナビ*/

.drw_btnnav {
 display: flex;
 justify-content: space-between;
 flex-wrap: wrap;
 padding: 0 3%;
 margin-bottom: 1em;
}
.drw_btnnav li { width: 48%; margin-top: 1em;}
.drw_btnnav li a {
   color: #555;
   padding: .7em 1.5em;
   display: block;
   border: 1px #999 solid;
   border-radius: 4px;
   text-decoration: none;
   display: flex;
   align-items: center;
   justify-content: center;
}
.drw_btnnav li a i { padding-right: .2em; font-size: 110%;}
.drw_btnnav .consult {
   width: 100%;
}
.drw_btnnav .consult a {
   border: 1px #00A73C solid;
   background: #00A73C;
   color: #fff;
   padding: .5em;
}

/* グローバルナビ・ヘルプナビ*/

.gnv { border-top: 1px rgba(59, 59, 59, 0.2) solid;}
.gnv li a,
.helpnav li a {
 display: block;
 border-bottom: 1px rgb(0 0 0 / 20%) solid;
 color: #555;
 padding: 1em 7%;
 text-align: left;
 text-decoration: none;
}
.gnvsub li a { padding-left: 10%;}
.gnvsub li a:before {
   content: "-";
   margin-right: 1em;
}

.helpnav { margin: 1em 0 2em 0;}
.helpnav li a { border-bottom: none; padding: .7em 7%;}
.helpnav li a:before {
 content: "■";
 color: #00A73C;
 margin-right: .3em;
}
.gnv .icon-exlink { margin-left: .5em;}

.snslist {
 width: 90%;
 margin: 2em 3%;
 display: flex;
 justify-content: center;
}
.snslist li { margin: 0 1em;}
.snslist li i { font-size: 2rem; line-height: 1;}
.snslist a { display: block; color: rgb(183, 183, 183); text-decoration: none;}
}


/* PC用グローバルナビ */
@media print, screen and (min-width: 1360px){
.gnv {
 display: flex;
 justify-content: center;
 align-items: center;
 border-top: none;
 margin: 0em 3% .7em 3%;
}
.gnv li a {
 display: block;
 color: #555;
 border-bottom: none;
 padding: .3em 2em;
 font-size: clamp(0.875rem, 0.83rem + 0.23vw, 1rem);
 line-height: 1.2;
 transition: all .2s ease;
 position: relative;
 text-decoration: none;
}

.gnv_li { border-right: solid 1px #00A73C; position: relative;}
.gnv_li:last-child { border-right: none;}
.gnvsub_outer {
   position: absolute;
   z-index: 3;
   visibility: hidden;
   opacity: 0;
   transition: .2s;
   width: 200px;
   top: 120%;
   left: 50%;
   padding-top: 1.5em;
   transform: translateX(-50%);
}
.gnv_li:hover .gnvsub_outer {
   visibility: visible;
   opacity: 1;
   top: 100%;
}
.gnvsub {
   background: #fff;
   position: relative;
   border: solid 1px rgb(215 215 215);
}
.gnvsub:after, .gnvsub:before {
   bottom: 100%;
   left: 50%;
   border: solid transparent;
   content: " ";
   height: 0;
   width: 0;
   position: absolute;
   pointer-events: none;
}
.gnvsub:before {
   border-color: rgba(255,109,116,0);
   border-bottom-color: #333;
   border-width: 10px;
   margin-left: -10px;
}
.gnvsub:after {
   border-color: rgba(255,255,255,0);
   border-bottom-color: #fff;
   border-width: 10px;
   margin-left: -10px;
}
.gnv li a:after {
   background: #ffffff;
   border-bottom-color: #fff;
   bottom: 0;
   content: "";
   display: block;
   height: 3px;
   left: 0;
   position: absolute;
   transition: .3s all;
   width: 0;
}
.gnv li .gnvsub li a {
   text-align: center;
   padding: 1em 1.5em;
   border-right: 0;
   margin-left: 0;
   white-space: nowrap;
   color: #555;
   display: block;
   transition: all .2s ease;
}
.gnv li .gnvsub li { border-bottom: 1px rgb(204, 204, 204) dashed;}
.gnv li .gnvsub li:last-child { border-bottom: 0;}
.gnv li a {
   display: inline-block;
   position: relative;
   margin: 0;
   transition: all .2s ease;
}

.gnv li .gnvsub li a:hover { color: #00A73C;}
.gnv li a:hover { color: #00A73C;}



.h_description {
   font-size: clamp(0.625rem, 0.534rem + 0.45vw, 0.875rem);
   width: 35%;
}
.h_logo_area { width: 20%;}
.shopping_item { width: 35%;}
.guest {
   font-size: clamp(0.75rem, 0.659rem + 0.45vw, 1rem);
   margin-right: 1.5em;
}
.menu_download a {
   display: inline-block;
   text-decoration: none;
   font-size: clamp(0.75rem, 0.705rem + 0.23vw, 0.875rem);
   padding: .3em .7em;
   background: #00A73C;
   border: solid 1px #00A73C;
   color: #fff;
   transition: all .2s ease;
}
.menu_download a:hover {
   background: #fff;
   color: #00A73C;
}

/* カートシステム */
@media print, screen and (min-width: 1360px) {
.btnarea_pc {
   display: flex;
   justify-content: flex-end;
   align-items: center;
}
}
.btnarea_pc li {
   margin-left: 1em;
   display: inline-block;
}
.helpnav li a {
   position: relative;
   padding: 0.5em;
   line-height: 1;
   text-decoration: none;
   display: inline-block;
   transition: all .2s ease;
   color: #333;
}
.helpnav li a:hover {
   color: #00A73C;
}

.pc_cart_btn {
   display: block;
   line-height: 1;
   text-decoration: none;
   border: 1px #333 solid;
   font-size: clamp(0.75rem, 0.705rem + 0.23vw, 0.875rem);
   transition: all .2s ease;
   color: #333;
   background: #fff;
}
.helpnav {
    margin-top: 0.5em;
    text-align: right;
}
}

.btnarea_pc__regist a::before,
.btnarea_pc__login a::before,
.btnarea_pc__cart a::before {
   font-family: "general";
   margin-right: 0.2em;
}
.btnarea_pc__regist a::before { content: "\e90b";}
.btnarea_pc__login a::before { content: "\e905";}
.btnarea_pc__cart a::before { content: "\e901";}

/* ==========================
   フッターガイド　*/

.footerguidebox {
   display: flex;
   justify-content: space-between;
   flex-wrap: wrap;
}
@media print, screen and (min-width: 768px) {
.footerguide_list {
   width: 50%;
   font-size: 80%;
}
.footerguide_list:first-child { padding-right: 3%; border-right: 1px dashed #00A73C;}
.footerguide_list:last-child { padding-left: 3%;}
}

.footerguide_title {
   font-size: 110%;
   margin-bottom: 0.5em;
   font-weight: 700;
}
.footerguide_title::before {
   content: "■";
   color: #00A73C;
   margin-right: 0.2em;
}
.footerguide_title2 {
   margin-left: 1.2em;
   text-indent: -1.2em;
   line-height: 1.5;
}
.footerguide_title2::before {
   content: "▼";
   color: #00A73C;
   margin-right: .2em;
}

dl.listreset dd {
   margin-left: 0;
}
.footerguide_cont {
   margin-bottom: 1.5em;
}

.footer_creditcards img {
   display: block;
   width: 100%;
   height: auto;
   padding: 1em;
}
.footer_creditcards{
   background: #fff;
   border-radius: 0.5em;
   display: inline-block;
   width: 80%;
}
@media print, screen and (min-width: 768px) {
.footer_creditcards img { max-width: 500px;}
.footer_creditcards { width: 75%;}
}

/* キャッシュレス */
.cashless_pic img { display: block; width: 100%; height: auto;}

.cashless_title { margin-bottom: .3em;}
.cashless_content {
   background: #fff;
   border-radius: 0.5em;
   display: inline-block;
   width: 100%;
   padding: 1em;
}

.cashless_title::before {
   content: "●";
   color: #E51F23;
   margin-right: .2em;
}

.cashless_item01 { width: 50%;}
.cashless_item02 { width: 80%;}
@media print, screen and (min-width: 768px) {
.footer_cashless01 {
   display: flex;
   justify-content: space-between;
}
.cashless_item01 { width: 42%;}
.cashless_item02 { width: 52%;}
}

/* ガイドボタン */
.guide_btn { text-align: center;}
.guide_btn a {
   background: #fff;
   background: #00A73C;
   color: #fff;
   border: solid 1px #00A73C;
   border-radius: .5em;
   padding: 0.7em 2.5em;
   text-decoration: none;
   letter-spacing: .1rem;
   transition: all .2s ease;
   display: inline-block;
   position: relative;
}
@media print, screen and (min-width: 1025px) {
.guide_btn a:hover { background: #fff; color: #00A73C;}
}
@media print, screen and (min-width: 1360px) {
.guide_btn { margin-top: 2em;}
}



/* ===================================
   Footer */

.f_pic { position: relative;}

.f_pic img {
   display: block; width: 100%; height: auto;
   position: absolute;
   bottom: 0;
   left: 0;
}


/* ==========================
   フッターコンテンツ　*/

.pagetop {
 position: fixed;
 bottom: .7em;
 right: .7em;
 display: none;
 transition: all .2s ease;
 z-index: 99;
 text-decoration: none;
 color: #E51F23;
}
.icon-pagetop { font-size: clamp(2.375rem, 1.693rem + 3.41vw, 4.25rem); display: block;}
@media print, screen and (min-width: 1025px){
.pagetop:hover { padding-bottom: .5em;}
}


.footerinfoarea {
   background: #fff;
   font-size: clamp(0.875rem, 0.83rem + 0.23vw, 1rem);
   color: #555;
}
.footerinfoarea_inner {
   padding-top: 2em;
   padding-bottom: 2em;
}
@media print, screen and (min-width: 1360px){
.footerinfoarea_inner {
   display: flex;
   flex-direction: row;
   justify-content: space-between;
   align-items: center;
   padding-top: 4em;
   padding-bottom: 2em;
}
}

.footerinfo { width: 100%; text-align: center;}
.flogo {font-weight: 700; font-size: clamp(0.875rem, 0.784rem + 0.45vw, 1.125rem);}
.flogo img { width: 50%; height: auto; max-width: 200px; display: block; margin: 0 auto;}
.fadd { display: block; font-size: clamp(0.875rem, 0.83rem + 0.23vw, 1rem); line-height: 1.6;}
@media print, screen and (min-width: 1360px){
.footerinfo { width: 30%; text-align: left; padding:0;}
.fnvarea { width: 60%; text-align: left; padding:0;}
.flogo { margin: 0 0 1em 0;}
.flogo img {
width: 100%;
height:auto;
max-width: 230px;
margin: 0 0 .5em 0;
}
}

/* ====  サイトマップ === */

.seo_description { margin-bottom: 2em; margin-left: 1.5em; margin-top: 1.5em;}

@media print, screen and (min-width: 1360px){
.seo_description { margin-top: 0;}

.f_description { margin-bottom: 3em;}
.fnv_inner {
display: flex;
justify-content: space-between;
font-size: clamp(0.875rem, 0.83rem + 0.23vw, 1rem);
}
.fnv { width: 27%;}
.fnv li { margin-bottom: 1em; line-height: 1.8; position: relative; padding-left: 1.5em;}
.fnv li a {
text-decoration: underline;
color: #555;
transition: all .2s ease;
}
.fnv li a:hover { text-decoration: none; color: #00A73C;}
.fnv_list dt { margin-bottom: .2em;}
.fnv_list dd { margin-bottom: .2em; margin-left: 0;}
.fnv_list dd a {
   font-weight: 400;
   color: #555;
   font-size: clamp(0.875rem, 0.83rem + 0.23vw, 1rem);
   text-decoration: none;
}
.fnv_list dd a::before {
   font-family: "general";
   margin-right: 0.5em;
   content: "\e900";
   font-size: 75%;
   color: #00A73C;
}

.fnv .icon-exlink { margin-left: .5em;}
}
.copyright { background: #00A73C; padding: .5em 5%; text-align: center;}
.copyright p { margin: 0; color: #fff; font-size: clamp(0.875rem, 0.83rem + 0.23vw, 1rem);}

.recaptcha_tx {
   margin-bottom: 0.5em;
   display: block;
   text-align: right;
}


/* アプリ案内 */
.fapp_pic img { display: block; width: 100%; height: auto;}
.fapp_list li img { display: block; width: 100%; height: 100%;}

.fapp {
   display: flex;
   justify-content: flex-start;
   margin: 2em auto 0 auto;
   width: 80%;
}
@media print, screen and (min-width: 600px) {
.fapp { width: 47%;}
}
@media print, screen and (min-width: 1360px) {
.fapp { width: auto;}
}

.fapp_pic { width: 20%;}
.fappinfo { width: 75%; margin-left: 1em;}

.fapp_txt { margin-bottom: .5em; text-align: left;}
.fapp_txt::before {
   content: "▼";
   color: #00A73C;
   margin-right: .2em;
}

.fapp_list {
   display: flex;
   justify-content: flex-start;
   align-items: center;
}
.fapp_list li a {
   display: inline-block;
   height: 48px;
}
.fapp_list li {
   margin-right: .5em;
   transition: all .2s ease;
}
@media print, screen and (min-width:769px) {
.fapp_list li:hover { opacity: .7;}
}


/* =====================================
   PC・スマホ切り替えスイッチ */

.mswitch { text-align: center; overflow: hidden; margin: .5em 3%;}

.mswitch a { 
 display: block;
 padding: .5em 1em;
 color: #fff;
 background: #222;
 width: 49%;
}

.mswitch_sp { float: left;}
.mswitch_pc { float: right;}

.mswitch i { margin-right: .5em;}


@media print, screen and (min-width:769px) {
 .mswitch a {
 padding: 1em;
 font-size: 3rem;
}
}


/* 登録済みカード情報編集 オリジナルデザインの為バグ */
#nav_mypage_sln_edit_card { display: none;}