@import url('https://fonts.googleapis.com/css2?family=Arizonia&display=swap');

a{
    transition: .3s all ease-in-out;
}
body{
	line-height:2;
}
h2 {
    margin: 0 0 2em 0;
}
a:hover{
    opacity: 0.7;
    transition: .3s all ease-in-out;
}

.marker{ background-color: #ffff0f;}
.markerPink{ background:linear-gradient(transparent 50%, #FDD9D9 50%); padding: 0 0 3px;}
.markerGreen{ background:linear-gradient(transparent 50%, #B8E3B7 50%); padding: 0 0 3px;}
.markerYellow{ background:linear-gradient(transparent 50%, #FEEDBD 50%); padding: 0 0 3px;}
.fltL { float: left; }
.fltR { float: right;}
.is-sp{ display: none;}
.is-pc{ display: block;}
.col2{
    text-align: center;
}
.col2:after{
	content:"";
	clear:both;
	display:block;
}

.clm2{ display: flex; justify-content: center; flex-wrap: wrap; gap: 30px;}
.clm2 > *{ width: 100%; margin-top: 0;}

.flex{ display: flex;}

.mB20 { margin-bottom: 20px !important; }

.red{ color: #f5001b !important;}
.bgRed{ background: #db5443 !important;}

.sml{ font-size: 85%;}



#jp{
	max-width:100%;
	margin:0 auto;
}
.jp_wrap{
	max-width:1000px;
	margin: 0 auto;
	position:relative;
}
/*#jp_trunk p {
  line-height: 1.8em;
}*/



/*== HEADER ==*/
#jp_head { width:100%; position:fixed; top:0; left:0; z-index:100; display: flex; justify-content: space-between; align-items: center; padding: 0 2%; box-sizing: border-box; transition: all .4s ease;}
#jp_head .logo{ margin: 0;}
#jp_navi { display: flex; justify-content: flex-end; padding: 1.5em 0; transition: all .4s ease;}
#jp_navi > li{ /*display:inline-block;*/ margin:0 15px; font-family: YuGothic, "游ゴシック";}
#jp_navi > li > a{ display:flex; align-items: center; padding: 25px 0; text-decoration:none !important; font-weight:bold; line-height: 1;}
#jp_navi > li > a span{}
#jp_navi > li > a span.i{ width: 30px; margin: 0 5px 0 0;}
#jp_navi > li > a span.t{ font-size: 1.3em;}
#jp_navi > li > a:hover{ opacity:0.7; transition: .3s all ease-in-out;}

#jp_head.fixed{ background-color: #fff4f8; justify-content: center;}
#jp_head.fixed .logo{ display: none;}
#jp_head.fixed #jp_navi{ padding: 0.4em 0;}



/*== メガメニュー ==*/
/*#jp_head{}
.global-nav{ width: 70%; position: relative;}
.global-nav .op-panel .panel{ background: #c8152c; width: 100%; position: absolute; left: 0;}
.global-nav .op-panel .panel div{ padding: .5% 45px 0 1.5%; position: relative;}
.global-nav .op-panel .panel div > ul{ display: flex; justify-content: space-between; flex-wrap: wrap;}
.global-nav .op-panel .panel div > ul > li{ width: 24.5%; margin-bottom: .6%; background: #fff; border-radius: 3px; text-align: center;}
.global-nav .op-panel .panel div > ul > li > a{ display: block; padding: 6% 3%; color: #c8152c; text-decoration: none; font-weight: bold;}

.global-nav .op-panel .panel .close a{ position: relative; width: 25px; height: 25px; transform: rotate(45deg); text-indent: -9999px; position: absolute; right: 10px; top: 0;}
.global-nav .op-panel .panel .close a::before,
.global-nav .op-panel .panel .close a::after{ content: ""; display: block; background: #fff; position: absolute; border-radius: 6px;}
.global-nav .op-panel .panel .close a::before{ width: 100%; height: 4px; left: 0; top: 50%; transform: translateY(-50%);}
.global-nav .op-panel .panel .close a::after{ width: 4px; height: 100%; left: 50%; top: 0; transform: translateX(-50%);}

.panel{ display: none;}

.active .panel { display: block;}*/


/*== MV ==*/
#mv{ padding: 10em 0 5em; background-color: #fef7d2; position: relative; overflow: hidden;}
#mv::before{ content: ""; display: block; width: 62%; height: 100%; background-color: #ffeaf1; position: absolute; top: 0; right: 0; transform: skewX(20deg); transform-origin: 100% 0;}
#mv .inBox{ padding: 18em 0 0; position: relative;}
.mvSlider{ /*padding: 0 0 0 20%;*/}
.mvSlider li.sItem{ border: 1px solid #000; margin: 0 20px; background-color: #fff; box-sizing: border-box;}
.mvSlider li.sItem > div{ border: 15px solid #fff; box-sizing: border-box;}
/*.mvSlider .slick-list{ padding:0 30% 0 0;}*/

.mvSlider li.sItem > div{ height:auto; position:relative; overflow:hidden;}
.mvSlider li.sItem > div::after{ content:""; display:block; padding-top:75%;}
.mvSlider li.sItem > div img{ position:absolute; display:block; left:0; top:0; width:100%; height:100%; object-fit:cover;}

.slick-dots{ padding: 0 2%; text-align: right; box-sizing: border-box;}
.slick-dots li{ width: 35px; height: 3px;}
.slick-dots li button{ background: #fff;}
.slick-dots li.slick-active button{ background:#333;}

#mv .copy{ position: absolute; left: 7%; top: 0%; max-width: 85%;}



/*== コロナについて ==*/
.bnr{ padding: 2em 0 .5em; text-align: center; width: 94%; max-width: 650px; margin: 0 auto;}
.bnr > li{ width: 100%; margin: 0 0 2%;}
@media only screen and (max-width: 739px) {
  .bnr{ display: block; padding: 1em 0 .5em;}
  .bnr > li{ width: auto;}
}


/*== NEWS ==*/
.announce {
  background: url(/cmn/img/info.png) left top no-repeat;
  margin: 50px auto 40px;
  max-width: 1000px;
}.announceIn {}
.info {
  float: left;
  font-size: 120%;
  padding-left: 130px;
}
.infoDetail {
  float: right;
  font-size: 16px;
}


/*== youtube ==*/
.youtube{ width: 100%; margin: 0 auto 3%; position: relative;}
.youtube::after{ content: ""; display: block; padding-top: 55%;}
.youtube iframe{ width: 100%; height: 100%; position: absolute; left: 0; top: 0;}


/*== 共通 ==*/
.scBlock{ padding: 7% 4%; box-sizing: border-box;}
.scBlock .md{ text-align: center; max-width: 95%; margin: 0 auto 1.5em;}
.scBlock .md .txt{ font-size: 110%; margin-top: 1.3%;}
.scBlock .md > .en{ display: block; font-size: 4.3vw; font-family: 'Arizonia', cursive;}
.scBlock .md > .jp{ font-size: 130%;}

.scBlock .scBlockIn{ margin: 4% auto; padding: 4% 2.5%; box-sizing: border-box;}

/*注意事項*/
.bscBox01{ /*padding: 2% 4%; background:#fff; border-radius: 5px;*/ line-height: 1.6;}
.bscBox01 dl{ display: table; margin: 0 auto;}
.bscBox01 dl dt{ text-align: center; font-weight: bold;}

table.tblInfo{ margin: 0 auto; border-collapse: separate; border-spacing: 0 6px;}
table.tblInfo tr{}
table.tblInfo th{ width: 20%; padding: 0.3em 0; font-size: 90%; background-color:#333; color: #fff; border-radius: 2px; font-weight: normal; vertical-align: middle;}
.clm2 table.tblInfo th{ width: 30%; padding: 0.3em 0; font-size: 90%; background-color:#333; color: #fff; border-radius: 2px; font-weight: normal; vertical-align: middle;}
.clm2 div:nth-child(2) table.tblInfo th{ width: 56%; padding: 0.3em 0; font-size: 90%; background-color:#333; color: #fff; border-radius: 2px; font-weight: normal; vertical-align: middle;}
table.tblInfo td{ text-align: left; font-size: 120%; padding: 0 0 0 0.5em; font-weight: bold; vertical-align: middle;}


/*ボタン*/
.btn{ clear: both; max-width: 700px; width: 90%; margin: 2% auto 4%;}
.btn a{ display: block; background: #fb9a85; color: #fff; text-align: center; padding: 13px 0; font-size: 1.3vw; font-weight: bold; text-decoration: none; border-radius: 100px;}

.block {
	clear: both;
	margin:2.5% 0;
  padding: 4%;
  background: #fff;
  /*border-radius: 5px;*/
  border: 1px solid #333;
  box-sizing: border-box;
	position:relative;
}
.block .fltL{ width: 43%;}
.block .fltR { width: calc(100% - 48%); position: relative;}
.block .fltR .icon{ position:absolute; top:-1.5em; right:-1em;}
.block .fltR .icon img{ margin-right: 0.1em;}
/*250130*/
.block .fltR .new-icon { 
  position:absolute;
  top:-2.4em;
  right:-1em;
  display: flex;
    justify-content: center;
    align-items: center;
    background-color: #d05af8; /* 背景色 */
    color: #fff; /* 文字色 */
    font-size: 1.25rem;
    font-weight: bold;
    width: 80px; /* 幅 */
    height: 80px; /* 高さ */
    border-radius: 50%; /* 完全な円にする */
    text-align: center;
}
/**/
.block h3{ font-size: 1.7em; font-weight:bold; margin: 0 0 0.6em; font-family: YuGothic, "游ゴシック", Meiryo, メイリオ, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", verdana, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;}
.block h3.iconNew::before,
.block h3.iconLimit::before{ display: inline-block; background: #ff5050; color: #fcff00; font-size: .5em; font-weight:bold; margin: 0 5px 0 0; border-radius: 100px; padding: .5em .8em; line-height: 1; vertical-align: text-top;}
.block h3.iconNew::before{ content: "NEW";}
.block h3.iconLimit::before{ content: "期間限定";}
.block p{ margin:5px 0px 5px 0px; font-size: 1.0em; line-height: 1.7em;}
.block dl { clear: both; margin-top:15px; position: relative;}
.block dl::after{ content: ""; display: block; clear: both;}
.block dt,
.block dd { float: left; position: relative;}
.block dt { width:8em; padding:0.5em 0; background:#333; color:#fff; text-align:center; font-size:85%; border-radius: 2px; line-height:1; letter-spacing: 0.05em;}
.block dd { width: calc(100% - 9em); padding: 0.13em 0 0.4em 1em; line-height: 1.6;}

.block .fkds{ position: absolute;}

.block .points{ margin: 5px 0;}
.block .points .ttl{ margin: 0 0 .5em; background: #c0eebf; padding: 0.55em; line-height: 1; text-align: center; border-radius: 2px; letter-spacing: 0.05em;}
.block .points .ttl span{ display: inline-block;}

.block ul.disc{ margin: 0 0 .8em;}
.block ul.disc > li{ margin: 0 0 5px; font-size: 95%; text-indent: -1em; padding-left: 1.2em; line-height: 1.3;}
.block ul.disc > li::before{ content: "●"; color: #B0D391; font-size: .8em; margin-right: .3em; line-height: 1;}

.block ul.sns{ display: flex; align-items: center; margin: .5em 0 .5em 1.3em;}
.block ul.sns > li{ max-width: 40px; margin: 0 .8em 0 0;}

.block .btn{ margin: 3% auto;}
.block .btn a{ font-size: 100%;}

.block .deco{ position: absolute; z-index: 10;}

.block .photocon_img{
  position: relative;
}
.block .photocon_img div{
  position: absolute;
  width: 19%;
  top: 6px;
  right: 124px;
}




/*== 花情報 ==*/
#flower{ background: url("img/bg_flower.jpg") no-repeat; background-size: cover;}
#flower .fkds{ top: -0.4em; left: 5.5em; max-width: 160px;}

/*== イベント情報 ==*/
#event{ background: #fff6c7;}
#event .f02{ max-width: 55%; top: -8.6em; right: 3em;}
@media only screen and (max-width: 800px) {
  .block .photocon_img div {
    width: 25%;
    top: -9px;
    right: 0px;
}
}
@media only screen and (max-width: 739px) {
  #event .f02{ top: -6.5em;}
  .block .photocon_img div {
    width: 19%;
    top: 150px;
    right: 0px;
  }
}
@media only screen and (max-width: 570px) {
  #event .f02{ top: -6.5em;}
  .block .photocon_img div {
    width: 19%;
    top: 180px;
    right: 0px;
  }

  .block .clm2 .center{font-size: 4.8vw;}
}
#photoContest{ background: url("img/bg_photocontest.jpg") top no-repeat; background-size: cover;}
@media only screen and (min-width: 740px) {
#photoContest .block h3{ font-size: 2.3em;}
}
/*#photoContest .fkds{ position: absolute; top: -3em; right: -1.5em; width: 44%;}*/
@media only screen and (max-width: 739px) {
  /*#photoContest .block:nth-child(1){ padding-top: 9.5vh;}
  #photoContest .fkds{ width: 80%; right: -1em;}*/
}
#photoContest .wProduct .flex{}
#photoContest .wProduct .flex ul.disc{}
#photoContest .wProduct .flex .ph{ width: 16%; margin: 0 0 0 3%;}
@media only screen and (max-width: 739px) {
  #photoContest .wProduct .flex .ph{ width: 35%;}

  /*== お得情報 ==*/
  #otoku .clm2 li{width: 100% !important;}
  #otoku .clm2 li img{width: 100%;}

}
/*みんなの投稿（SNS）*/
.btnSns{ max-width: 800px; margin: 1em auto !important; text-align: center;}
.btnSns a{
  display:block;
	padding: 1em 0;
	border-radius: 100px;
  color: #fff;
  font-size: 1.4em;
  text-decoration: none;
  vertical-align: middle;
}
.btnSns a:before{
	font-family: "FontAwesome";
	font-size: 130%;
	color: #fff;
	margin-right: 5px;
  vertical-align: bottom;
}
.btnSns.instagram a{ background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%,#d6249f 60%,#285AEB 90%);}
.btnSns.instagram a:before{ content:"\f16d";}
.btnSns.twitter a{ background: #000;}
.btnSns.twitter a:before{ content:'𝕏';}

/*== グルメ・ショップ ==*/
#shop{ background:url("img/bg_shop.jpg") center; background-size: cover;}
#shop .shop01 .deco{ right: -2.5em; bottom: -2em; width: 35%; z-index: 0;}
@media only screen and (max-width: 739px) {
  #shop .shop01 .deco{ right: -1.5em; bottom: -2.6vh; width: 30vw; z-index: 1;}
}

/*== お得情報 ==*/
#otoku .clm2 li{width: 32%;}


/*== お得情報 ==*/
#map{ background-color: #fff9d6;}

/*== アクセス ==*/
#access { padding:7% 0;}
#access .col2{ margin:0 4% 3%;}
#access .col2 .fltL{ width:59%;}
#access .col2 .fltR{ width:38%;}
#access .is-sp{ font-size:90%;}
#access .btnAccess{ padding:3% 5% 5%; text-align:center;}

.caution{
  border: 2px solid #E70012;
  padding: 2% 3%;
  color: #E70012;
  margin-bottom: 20px;
  line-height: 1.5;
}
.caution li{
  text-indent: -1.2em;
  padding-left: 1em;
  margin-bottom: 5px;
}
.caution li:last-child{ margin-bottom: 0;}
.caution li:before{ content: "■"; padding-right: 3px;}




/*== FOOTER ==*/
#jp_foot { text-align:center;}
#jp_foot address { margin:0 4%;}


/*== SNS ==*/
#sns { clear: both; overflow: hidden; margin: 0 auto; text-align: center; padding:5% 0;}
#sns ul.snsList{ display: flex; justify-content: center; max-width: 800px; width: 95%; margin: 0 auto 4%;}
#sns ul.snsList > li{ margin: 0 .3% 1%;}


/*250126*/
.fltR b {
  font-size: 16px;
}
/*250130*/
.sp-only {
  display: none;
}
@media only screen and (max-width: 900px) {
  .sp-only {
    display: block;
  }
}