@charset "UTF-8";
/* Scss Document */
body {
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "游ゴシック", "Yu Gothic", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  color: #000;
  -webkit-text-size-adjust: 100%;
}

/* IEはメイリオ優先表示 */
@media all and (-ms-high-contrast: none) {
  body {
    font-family: "メイリオ", "Meiryo","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","游ゴシック","Yu Gothic","ＭＳ Ｐゴシック","MS PGothic" !important;
  }
}

img {
  vertical-align: bottom;
  max-width: 100%;
  height: auto;
  -webkit-backface-visibility: hidden;
}

a {
  color: #000;
}

.effect {
  -webkit-transition: all linear 0.5s;
  -o-transition: all linear 0.5s;
  transition: all linear 0.5s;
}

/* PCのみ表示 */
@media screen and (max-width: 767px) {
  .pc_only {
    display: none;
  }
}

/* SPのみ表示 */
@media print, screen and (min-width: 768px) {
  .sp_only {
    display: none;
  }
  a[href*="tel"] {
    pointer-events: none;
  }
}

.contarea {
  margin-right: auto;
  margin-left: auto;
  width: 1000px;
}

/* 余白 */
@media screen and (max-width: 767px) {
  .prg_h {
    margin-bottom: 0.75em;
  }
  .prg {
    margin-bottom: 1em;
  }
  .prg_w {
    margin-bottom: 1.5em;
  }
  .prg_2w {
    margin-bottom: 2em;
  }
  .prg_3w {
    margin-bottom: 2.75em;
  }
}

@media print, screen and (min-width: 768px) {
  .prg_h {
    margin-bottom: 0.875em;
  }
  .prg {
    margin-bottom: 1.5em;
  }
  .prg_w {
    margin-bottom: 2em;
  }
  .prg_2w {
    margin-bottom: 3em;
  }
  .prg_3w {
    margin-bottom: 4em;
  }
}

.area_header {
  padding-top: 45px;
  padding-bottom: 40px;
  background: #FFF9D4 url(../images/bg_stripe.png) repeat-x 0 bottom;
}

.bar_title {
  position: relative;
  margin-top: -20px;
  text-align: center;
}

.bar_title::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 140px;
  background: #E35395;
  z-index: 1;
  -webkit-transform: skewY(-4.15deg);
  -ms-transform: skewY(-4.15deg);
  transform: skewY(-4.15deg);
}

.bar_title img {
  position: relative;
  z-index: 2;
}

.area_toplead {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  line-height: 1.75;
}

.area_toplead .toplead {
  padding-top: 60px;
  padding-right: 40px;
}

.area_toplead .toplead p {
  text-indent: 1em;
}

.area_toplead img {
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  margin-top: -10px;
}

.area_sweets, .area_spots {
  padding-top: 80px;
}

.area_sweets {
  margin-bottom: 50px;
}

.area_sweets .box_img {
  position: relative;
  width: 100%;
  height: 920px;
}

.area_sweets .box_img img {
  position: absolute;
}

.area_sweets .box_img img.img_01 {
  top: -7px;
  right: 120px;
  z-index: 10;
}

.area_sweets .box_img img.img_02 {
  top: 75px;
  left: 0;
}

.area_sweets .box_img img.img_03 {
  top: 208px;
  right: 0;
  z-index: 12;
}

.area_sweets .box_img img.img_04 {
  top: 420px;
  left: 100px;
  z-index: 11;
}

.area_sweets .box_img img.img_05 {
  bottom: 0;
  left: 0;
}

.area_spots {
  background: url(../images/bg_stripe.png) repeat-x 0 top;
  padding-bottom: 130px;
}

.area_spots .contarea {
  position: relative;
  height: 1865px;
}

.area_spots .box_img {
  position: absolute;
  color: #FFF;
}

.area_spots .box_img figure {
  position: relative;
}

.area_spots .box_img figcaption {
  position: absolute;
}

.area_spots .box_img .tit_spot {
  margin-bottom: 15px;
  font-size: 1.675rem;
  font-weight: bold;
}

.area_spots .box_img p {
  font-size: 0.9rem;
  line-height: 1.5;
}

.area_spots .spot_01 {
  top: 0;
  left: 0;
}

.area_spots .spot_01 figcaption {
  width: 230px;
  top: 533px;
  left: 108px;
}

.area_spots .spot_02 {
  top: 53px;
  left: 443px;
}

.area_spots .spot_02 figcaption {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 330px;
  top: 240px;
  left: 73px;
}

.area_spots .spot_02 figcaption .tit_spot {
  margin-bottom: 0;
  margin-right: 20px;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}

.area_spots .spot_03 {
  top: 396px;
  right: 0;
}

.area_spots .spot_03 figcaption {
  width: 150px;
  top: 140px;
  left: 34px;
}

.area_spots .spot_04 {
  top: 739px;
  left: 0;
}

.area_spots .spot_04 span {
  font-size: 1.125rem;
}

.area_spots .spot_04 figcaption {
  width: 150px;
  top: 35px;
  left: 457px;
}

.area_spots .spot_05 {
  top: 797px;
  right: 0;
}

.area_spots .spot_05 figcaption {
  width: 210px;
  top: 240px;
  left: 50px;
}

.area_spots .spot_06 {
  top: 1052px;
  left: 0;
  z-index: 20;
}

.area_spots .spot_06 figcaption {
  width: 255px;
  top: 56px;
  left: 50px;
}

.area_spots .spot_07 {
  top: 1256px;
  right: 0;
}

.area_spots .spot_07 figcaption {
  width: 160px;
  top: 94px;
  left: 59px;
}

.area_spots .spot_08 {
  top: 1275px;
  left: 0;
}

.area_spots .spot_08 figcaption {
  width: 190px;
  top: 236px;
  left: 50px;
}

.area_spots .spot_09 {
  bottom: 0;
  left: 300px;
}

.area_spots .spot_09 figcaption {
  width: 155px;
  top: 95px;
  left: 40px;
}

.area_topics {
  background-color: #FFF9D4;
  background-image: url(../images/bg_stripe.png), url(../images/bg_stripe.png);
  background-repeat: repeat-x;
  background-position: 0 top,0 bottom;
  padding: 130px 0 70px 0;
  margin-bottom: 60px;
}

.area_topics .contarea {
  position: relative;
}

.area_topics .contarea::before {
  position: absolute;
  top: 50px;
  left: -30px;
  content: "";
  display: block;
  width: 318px;
  height: 121px;
  background: url(../images/bg_topics.png) no-repeat 0 0/contain;
  z-index: 1;
}

.area_topics .contarea::after {
  position: absolute;
  right: 250px;
  content: "";
  display: block;
  width: 97px;
  height: 134px;
  background: url(../images/img_topics_05.png) no-repeat 0 0/contain;
  -webkit-animation: fuwa 2s linear infinite alternate;
  animation: fuwa 2s linear infinite alternate;
}

@-webkit-keyframes fuwa {
  0% {
    bottom: -90px;
  }
  100% {
    bottom: -115px;
  }
}

@keyframes fuwa {
  0% {
    bottom: -90px;
  }
  100% {
    bottom: -115px;
  }
}

.tit_topics {
  width: 100%;
  position: absolute;
  top: -170px;
  left: 0;
  text-align: center;
}

.list_topics {
  position: relative;
  z-index: 2;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.list_topics li {
  width: 22.8%;
  font-size: 0.9rem;
}

.list_topics .box_info {
  position: relative;
  width: 100%;
  min-height: 140px;
  padding-bottom: 20px;
  margin-bottom: 20px;
  text-align: center;
  line-height: 1.5;
}

.list_topics .box_info .tit_event {
  margin-bottom: 5px;
  font-size: 1.25rem;
  font-weight: bold;
}

.list_topics .box_info .tit_event span {
  background-image: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(40%, #FAC556));
  background-image: -webkit-linear-gradient(transparent 60%, #FAC556 40%);
  background-image: -o-linear-gradient(transparent 60%, #FAC556 40%);
  background-image: linear-gradient(transparent 60%, #FAC556 40%);
}

.list_topics .box_info .date {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  font-weight: bold;
  color: #EC833E;
}

.list_topics img {
  margin-bottom: 20px;
}

.list_topics .detail {
  line-height: 1.75;
}

.area_food .inner {
  background: #EC8599;
  padding: 40px 0 50px 0;
  color: #FFF;
}

.list_food {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.list_food li {
  width: 30%;
  text-align: center;
  line-height: 1.5;
  font-size: 0.9rem;
}

.list_food li:nth-of-type(n+2) {
  margin-left: 30px;
}

.list_food .img_food {
  margin: 25px 0;
}

.list_food .lead {
  margin-bottom: 20px;
  color: #FFEB4B;
  font-size: 1.25rem;
  line-height: 1.3;
  font-weight: bold;
}

.area_footer {
  padding: 70px 0 30px 0;
  text-align: center;
}

.footer_info {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  line-height: 1.3;
}

.footer_info img {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  margin-right: 20px;
}

.footer_info .footer_name {
  padding-top: 8px;
  margin-right: 30px;
  font-weight: bold;
  font-size: 1.625rem;
}

.footer_info .address {
  padding-top: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  text-align: left;
}

.footer_url a {
  -webkit-transition: all ease 0.2s;
  -o-transition: all ease 0.2s;
  transition: all ease 0.2s;
}

.footer_url a:hover {
  opacity: 0.8;
}

.copyright {
  border-top: 1px solid #000;
  margin-top: 30px;
  padding-top: 15px;
}

.copyright small {
  font-size: 0.675rem;
}