@charset "UTF-8";

@media screen and (max-width:999px) {
/*========= base ===========*/

html {
  margin: 0;
  padding:0;
}

body {
  margin: 0;
  padding: 0;
  font-family: 'Yu Gothic Medium', '游ゴシック Medium', 'YuGothic', '游ゴシック体', 'ヒラギノ角ゴ Pro W3', 'メイリオ', sans-serif;
  font-weight: 500;
  color: #313131;
  font-size: 13px;
  line-height: 2; /* 行間*/
  letter-spacing:1px; /* 文字間*/
  text-align: justify;
}

h1,h2,h3,h4,h5 {
  margin: 0;
  padding: 0;
  font-family: 'Noto Serif JP', serif;
  font-weight: normal;
}

img {
  width: 100%;
  vertical-align: bottom;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
/* ←縮小したときのぼけを防ぐ */
}

ul,li,dl,dt,dd {
  margin:0;
  padding:0;
  list-style: none;
}

a { 
  text-decoration: none;
  color: #000;
}

a:hover { 
  transition: .3s;
  opacity: 0.6;
}

section {
  margin-bottom: 70px;
}

.content-wrapper {
   width: 100%;
   margin: 0 auto;
 }

 .content-wrapper2 {
  width: 80%;
  margin: 0 auto;
}

 figure {
  margin: 0;
}

/*-- 改行 --*/
.br-pc { display:none; }
.br-mb { display:block; }
.br-tb { display:none; }

@media only screen and (min-width:768px) and (max-width:999px){
.br-pc { display:none; }
.br-mb { display:none; }
.br-tb { display:block; }
}

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

.pcnav {
  display:none;
}
.sticky-header {
  display:none;
}

.header-nav2 {
  display:none;
}

.yokorogo {
  display:none;
  }
  
.taterogo {
  width: 50px;
  z-index: 9998;
  padding: 0 0 0 20px;
}

@media only screen and (min-width:768px) and (max-width:999px){
  .taterogo {
    width: 70px;
    z-index: 9998;
    padding: 0 0 0 50px;
  }
}

/*========= メインビジュアル ===========*/

.mainvisual {
  position: relative;
  top: -145px;
  z-index: -5;
}
@media only screen and (min-width:768px) and (max-width:999px){
  .mainvisual {
    top: -210px;
  }
}

.mainvisual img {
  width: 100%;
  height: 450px;
  object-fit: cover;
}

#slideshow {
  position: relative;
  width: 100%;
  height: 450px;
}
#slideshow img {
  position: absolute;
  top: 0;
  left:0;
  z-index: 8;
  opacity: 0.0;
}
#slideshow img.active {
  z-index: 10;
  opacity: 1.0;
}
#slideshow img.last-active {
  z-index: 9;
}

.maintext {
  text-align: center;
  margin-top: 30px;
  line-height: 2.5; /* 行間*/
}

.oshirase {
  text-align: center;
  margin-top: 30px;
  line-height: 2.3; /* 行間*/
  font-size: 13px;
  color: #780a0a;
}

/*========= 商品一覧 ===========*/

.sweetslist {
  text-align: center;
  width: 90%;
  margin: -150px auto 0 auto;
}

.sweetslist h3 {
  font-size: 23px;
  letter-spacing: 0.5em;
  padding-bottom: 10px;
}

.sweetslist li {
  font-size: 15px;
  letter-spacing: 0.5px;
  font-family: 'Noto Serif JP', serif;
}

.icon {
  position: relative;
  top: -8px;
  width: 30px;
}

#item-list ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

#item-list li {
  position:relative;
  float: left;
  list-style-type: none;
  width: 48%;
  border-bottom: 1px solid #c0c0c0;
  text-align: left;
  font-size: 12px;
  margin-top: 3px;
  line-height: 3;
}

@media only screen and (min-width:768px) and (max-width:999px){
  #item-list ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  
  #item-list li {
    position:relative;
    float: left;
    list-style-type: none;
    width: 32%;
    border-bottom: 1px solid #c0c0c0;
    text-align: left;
    font-size: 14px;
    margin-top: 3px;
    line-height: 3;
  }
  }


/*========= 定番商品 ===========*/


.column1-image ,.column2-image {
  width: 100%;
  height: 320px;
  object-fit: cover;
  margin-top: 100px;
}

.title-icon {
  height: 0px;
}

.icon-miyoshi {
  position: absolute;
  margin: 330px 0 0 0;
  left: 5%;
  width: 70px;
  height: 70px;
  z-index: 20;
 }

 @media only screen and (min-width:768px) and (max-width:999px){
  .icon-miyoshi ,.icon-miyoshi2 ,.icon-miyoshi3 {
    margin-top: 420px;
    width: 80px;
    left: 2%;
  height: 80px;
  z-index: 20;
   }
 }


.icon1 ,.icon2 {
  position: absolute;
  margin: -50px 0 0 0;
  right: 5%;
  width: 65px;
  height: 65px;
 }

.tate ,.column2-title {
  height: 255px;
  margin: 25px 0 0 5%;
  font-size: 27px;
  letter-spacing: 7px;
  display: inline-block;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  text-orientation: upright;
}

.column2-title-sweet {
  height: 255px;
  margin: 25px 0 0 3%;
  font-size: 27px;
  letter-spacing: 7px;
  display: inline-block;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  text-orientation: upright;
  line-height: 1.3; /* 行間*/
}

.column2-title-cheese {
  height: 255px;
  margin: 25px 0 0 3%;
  font-size: 26px;
  letter-spacing: 1px;
  display: inline-block;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  text-orientation: upright;
  line-height: 1.3; /* 行間*/
}

@media only screen and (min-width:768px) and (max-width:999px){
  .column2-title-cheese {
    height: 255px;
    margin: 25px 0 0 5%;
    font-size: 28px;
    letter-spacing: 1px;
    display: inline-block;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    text-orientation: upright;
    line-height: 1.5; /* 行間*/
  }

  .column1-image ,.column2-image {
    height: 400px;
    object-fit: cover;
    margin-top: 120px;
  }
  
  .tate ,.column2-title {
    width: 12%;
    height: 250px;
    line-height: 1.5; /* 行間*/
  }
  .column2-title-sweet {
    margin: 25px 0 0 7%;
    line-height: 1.5; /* 行間*/
  }
  }

.content-txt {
  margin: 20px 5% 0 25%;
  height: auto;
}



.content-money {
  margin: 0 5% 0 25%;
}
.money-none {
  visibility:hidden;
}
.money ul ,.money2 ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.money li ,.money2 li {
  position:relative;
  float: left;
  list-style-type: none;
  width: 48%;
  border-bottom: 1px solid #c0c0c0;
  font-size: 12px;
  margin-top: 3px;
}

.disclaimer {
  line-height: 1.5;
  font-size: 10px;
 }

 @media only screen and (min-width:768px) and (max-width:999px){
  .money ul ,.money2 ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  
  .money li ,.money2 li {
    position:relative;
    float: left;
    list-style-type: none;
    width: 23%;
    border-bottom: 1px solid #c0c0c0;
    font-size: 13px;
    margin-top: 3px;
  }
  }


/* -------- 定番商品:2カラム -------- */


/* -------- 定番商品:4カラム -------- */

.icon4 {
  position: relative;
  left: 10px;
  top: 40px;
  width: 55px;
  z-index: 20;
 }

.column4 {
  margin-top: 50px;
}
.column4 p {
letter-spacing:-0.2pt; /* 文字間*/
line-height: 1.8; /* 行間*/
}
.column4 ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
  margin: 0 auto;
}

.column4 li {
  width: 50%;
  font-size: 13px;
}

.column4-txt {
  width: 80%;
  margin: 0 auto;
}

.column4 h2 {
  text-align: center;
  margin-top: 7px;
  font-size: 20px;
  letter-spacing: 2px;
  height: 30px;
}

.column4-txtlong h2 {
  text-align: center;
  margin-top: 7px;
  font-size: 20px;
  letter-spacing: 0.5px;
  height: 30px;
}

.money4 li {
  width: 100%;
  text-align: center;
  border-bottom: 1px solid #c0c0c0;
  font-size: 12px;
  margin-top: 3px;
}


@media only screen and (min-width:768px) and (max-width:999px){
  .column4-image {
    transform-origin:center 90px;
  }
  .icon4 {
    left: 30px;
    width: 60px;
   }
   .column4 {
    margin-top: 40px;
  }

  .money4 ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  
  .money4 li {
    position:relative;
    float: left;
    list-style-type: none;
    width: 48%;
    border-bottom: 1px solid #c0c0c0;
    text-align: left;
    font-size: 14px;
    margin-top: 3px;
  }
  .column4 h2 {
    text-align: center;
    margin-top: 10px;
    font-size: 25px;
    letter-spacing: 5px;
    height: 40px;
  }
  .column4-txtlong h2 {
    text-align: center;
    margin-top: 10px;
    font-size: 25px;
    letter-spacing: 1px;
    height: 40px;
  }
  }

/*========= ギフト商品 ===========*/

.gift-image {
  width: 100%;
  height: 320px;
  object-fit: cover;
  margin-top: -175px;
}



@media only screen and (min-width:768px) and (max-width:999px){
  .gift-image {
    width: 100%;
    height: 400px;
    object-fit: cover;
    margin-top: -175px;
  }
  }

.gift-tate {
  position: relative;
  left: 5%;
  font-size: 30px;
  letter-spacing: 3px;
  display: inline-block;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  text-orientation: upright;
  z-index: 2;
}
.icon-gift {
  position: absolute;
  margin: 305px 0 0 0;
  right: 5%;
  width: 65px;
  height: 65px;
  z-index: 10;
 }


 @media only screen and (min-width:768px) and (max-width:999px){
  .icon-gift {
    position: absolute;
    margin: 410px 0 0 0;
    right: 5%;
    width: 65px;
    height: 65px;
   }
  }

.gift-text {
  width: 90%;
  margin: 0 auto;
  text-align: center;
}

.money-gift {
  width: 180px;
  margin: auto;
}

.money-gift ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.money-gift li {
  position:relative;
  float: left;
  list-style-type: none;
  text-align: center;
  width: 100%;
  border-bottom: 1px solid #c0c0c0;
  font-size: 12px;
  margin-top: 3px;
}

/*========= 季節商品 ===========*/

.season-image {
  width: 100%;
  height: 320px;
  object-fit: cover;
  margin-top: -125px;
}

@media only screen and (min-width:768px) and (max-width:999px){
  .season-image {
    width: 100%;
    height: 400px;
    object-fit: cover;
    margin-top: -125px;
  }
  }

.season-tate {
  position: relative;
  left: 5%;
  font-size: 30px;
  letter-spacing: 7px;
  display: inline-block;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  text-orientation: upright;
  z-index: 2;
}

.season-text {
  width: 90%;
  margin: 0 auto;
  text-align: center;
}

/*========= 店舗紹介 ===========*/
.footer {
  background-color: #193759;
  color: rgb(228, 228, 228);
  text-align: center;
}

.content-wrapper2 h3 {
  border-bottom: 1px solid  rgb(228, 228, 228);
  padding: 50px 0px 5px 0px;
  font-size: 23px;
  letter-spacing: 3px;
}

@media only screen and (min-width:768px) and (max-width:999px){
.shoplist-title{
  margin-top: 120px;
}
}


.shop {
  width: 100%;
  margin: 0 auto;
}

.shop-a {
  margin: 30px 0px;
}

.gaikan {
  width: 250px;
}

.shop-name {
  font-size: 23px;
  letter-spacing: 5px;
  margin: 10px 0px 0 0px;
  font-family: 'Noto Serif JP', serif;
}

.shop-text {
  height: 23px;
}
.shop-zei {
  font-size: 12px;
}

/*========= 販売店 ===========*/
.shop-list {
  width: 100%;
  margin: 20px 1% 0px 2%;
  letter-spacing:-0.5px; /* 文字間*/
}

.shop-list ul {
  justify-content: space-between;
}

.shop-list li {
  list-style-type: none;
  text-align: center;
  font-size: 13px;
  margin-top: 3px;
}

@media only screen and (min-width:768px) and (max-width:999px){
  .shop-list {
    width: 100%;
    margin: 20px 1% 0px 3%;
    letter-spacing:1px; /* 文字間*/
  }
  .shop-list li {
    position:relative;
    float: left;
    list-style-type: none;
    text-align: left;
    width: 32%;
    font-size: 13px;
    margin-top: 3px;
    letter-spacing:1px; /* 文字間*/
  }
  }
/*========= お問合せ ===========*/

.contact {
  padding: 10px 0px 0px 0px;
}

.contact-tel {
  font-size: 35px;
  letter-spacing: 3px;
  margin: -10px 0px;
  font-family: 'Cookie', cursive;
}

.contact-fax {
  font-size: 29px;
  letter-spacing: 3px;
  font-family: 'Cookie', cursive;
  margin: -20px 0px 15px 0px;
}

.fax {
  margin: -25px 0px 30px 0px;
}

.mail {
  width: 40px;
  margin: 0px 0 80px 0;
}

.footer a { 
  text-decoration: none;
  color: #fff;
}
.copyright {
  line-height: 1.3em;
}

}

/*========= グーグルマップグレー ===========*/
iframe{
  -webkit-filter: grayscale(100%);
  -moz-filter: grayscale(100%);
  -ms-filter: grayscale(100%);
  -o-filter: grayscale(100%);
  filter: grayscale(100%);
}

iframe:hover {
  transition: filter 0.8s ease;
  -webkit-filter: grayscale(0);
  filter: grayscale(0);
}

.gmap {
  height: 0;
  overflow: hidden;
  padding-bottom: 75%;
  position: relative;
  }
  .gmap iframe {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  }

/* ---------------グローバルナビ_ハンバーガーメニュー--------------- */
.mobilenav {
  position: fixed;
  z-index: 2;
  top: 0;
  left: 0;
  background: #fff;
  color: #000;
  text-align: center;
  transform: translateY(-100%);
  transition: all 0.6s;
  width: 100%;
}

.mobilenav ul {
  background: #fff;
  margin: 0 auto;
  padding: 0;
  width: 100%;
}

.mobilenav ul li {
  font-size: 1.1em;
  list-style-type: none;
  padding: 0;
  width: 100%;
  border-bottom: 1px dotted #193759;
}

/* 最後はラインを描かない */
.mobilenav ul li:last-child {
  padding-bottom: 0;
  border-bottom: none;
}

.mobilenav ul li a {
  display: block;
  color: #193759;
  padding: 1em 0;
}

/* このクラスを、jQueryで付与・削除する */
.mobilenav.active {
  transform: translateY(0%);
}

.navToggle {
  display: block;
  position: fixed;    /* bodyに対しての絶対位置指定 */
  right: 30px;
  top: 12px;
  width: 42px;
  height: 51px;
  cursor: pointer;
  z-index: 3;
  text-align: center;
}

.navToggle span {
  display: block;
  position: absolute;    /* .navToggleに対して */
  width: 30px;
  border-bottom: solid 3px #193759;
  -webkit-transition: .35s ease-in-out;
  -moz-transition: .35s ease-in-out;
  transition: .35s ease-in-out;
  left: 6px;
}

.navToggle span:nth-child(1) {
  top: 9px;
}

.navToggle span:nth-child(2) {
  top: 18px;
}

.navToggle span:nth-child(3) {
  top: 27px;
}

.navToggle span:nth-child(4) {
  border: none;
  color: #193759;
  font-size: 9px;
  font-weight: bold;
  top: 34px;
}

/* 最初のspanをマイナス45度に */
.navToggle.active span:nth-child(1) {
  top: 18px;
  left: 6px;
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

/* 2番目と3番目のspanを45度に */
.navToggle.active span:nth-child(2),
.navToggle.active span:nth-child(3) {
  top: 18px;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  transform: rotate(45deg);
}


/* ----------要素をふわっと出現---------- */

.fadein {
  opacity : 0;
  transform: translateY(20px);
  transition: all 1s;
}
/* ----------スクロールしたら出てくるメニュー---------- */

#page_top{
  width: 50px;
  height: 50px;
  position: fixed;
  right: 30px;
  bottom: 0;
  background: rgb(214, 214, 214);
  opacity: 0.8;
  z-index: 5;
}
#page_top a{
  position: relative;
  display: block;
  width: 50px;
  height: 50px;
  text-decoration: none;
}
#page_top a::before{
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  content: '\f106';
  font-size: 25px;
  color: #193759;
  position: absolute;
  width: 50px;
  height: 50px;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}
