@charset "utf-8";
/* CSS Document */

.top img {
	width: 70%;
}

#center {
	width: 100%;
}

.burger {
	display: block;
}

#global-navi img {
	display: none;
}

#global-navi  li {
	font-size: 5vw;
	font-weight: 600;
	font-family: "ＭＳ ゴシック", "MS Gothic", "Osaka－等幅", "Osaka-mono", "monospace";
	line-height: 0.2vw;
	clear: both;
	margin: 3vw 1vw;
	padding: 0 0.8vw;
	text-align: left;
	width: 80%;
	height: auto;
}

/*----ハンバーガーメニュー------*/
#wrapper nav {
    position: fixed;
    top: 0;
    right: -300px;
    width: 300px;
    height: 100%;
    padding-top: 50px;
    background: #037A2E;
    box-sizing: border-box;
    z-index: 2;
	}
#wrapper nav ul li {
    display:block;
    padding: 20px 28px
}
#wrapper nav ul li a {
    text-decoration: none;
    color: #ddd
}
#wrapper .btn-gnavi {
    position: fixed;
    top: 20px;
    right: 20px;
    width: 30px;
    height: 24px;
    z-index: 3;
    box-sizing: border-box;
    cursor: pointer;
    -webkit-transition: all 400ms;
    transition: all 400ms;
	margin: 5vw 2vw;
	}
#wrapper .btn-gnavi span {
    position: absolute;
    width: 30px;
    height: 4px;
    background: #027224;
    border-radius: 10px;
    -webkit-transition: all 400ms;
    transition: all 400ms
}
#wrapper .btn-gnavi span:nth-child(1) {
    top: 0
}
#wrapper .btn-gnavi span:nth-child(2) {
    top: 10px
}
#wrapper .btn-gnavi span:nth-child(3) {
    top: 20px
}

#wrapper .btn-gnavi.open span:nth-child(1) {
    background: #ddd;
	transform: translate(19px,2px)rotate(45deg);
	width: 25px;
}
#wrapper .btn-gnavi.open span:nth-child(2) {
    background: #ddd;
	width: 40px;
}
#wrapper .btn-gnavi.open span:nth-child(3) {
    background: #ddd;
	transform: translate(19px, -2px)rotate(-45deg);
	width: 25px;
}

#wrapper .contents section p {
    position: absolute;
    top: 50%;
    width: 30%;
    line-height: 1.4;
    font-size: 20px;
    color: #fff;
}
#wrapper .contents section:nth-child(odd) p {
    left: 10%
}
#wrapper .contents section:nth-child(even) p {
    right: 10%
}
/*******************************/

.information {
	height: 10vw;
}

.slide {
	width: 95vw;
	max-height: 45vw;
	margin: 0vw auto 0vw;
	padding: 0;
	position: relative;
}


#index li {
	list-style: none;
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background: #12C453;
}

#index img {
	display:block;
	margin: 0;
	width: 100%;
	height: auto;
}


.otameshi {
	font-size: 4.5vw;
	line-height: 6vw;
	letter-spacing: 0.05em;
	font-weight: 700;
	background: #037A2E;
	color: #ddd;
	border-top: 1vw solid #07DD5C;
	border-bottom: 1vw solid #07DD5C;
	padding: 1vw 2vw;
	margin: 0;
	text-align: center;
	position: absolute;
	width: 91vw;
	bottom: 3vw;
	
}

.main {
	clear: both;
	margin: 0vw;
	width: 100%;
}

.underline img {
	margin: 0 0.5vw ;
	width: 70%;
}

.underline h2 , .underline2 h2 {
	font-size: 5vw;
	padding: 0 ;
	margin:3vw auto;
	width: 95%;
}

.main-shop:before {
	font-size: 4vw;
	line-height: 5vw;
	padding: 3vw;
	color: red;
}

.underline h2:before{
	width:15%;
	margin-left: 3vw;
}

.underline2 h2:before{
	width:15%;
	margin-left: 3vw;
}

.underline2 img {
	margin: 0 10px ;
	width: auto;
}

.hako {
	width: 90vw;
	padding: 1vw;
	margin: 0vw;
}

.news li {
	margin: 6vw auto;
	border-bottom: 2px dashed #208F34;
	width:95%;
	padding-left: 1vw;
	padding-bottom: 2vw;
	list-style: none;
	font-size: 4vw;
}

.shoplist li {
	list-style: none;
	width: 28vw;
	margin: 0 2px;
}

.shoplist img {
	display: block;
	width: 100%;
	margin-left: 10px;
}

.sidebar {
	clear: both;
	margin: 10vw auto;
	width: 90%;
}

.sidebar img {
	display: block;
	width: 0 auto;
	margin: 3vw 0;
}

.sidebar img:hover {
	pointer-events: none;
}

#advertisement {
	width: 100%;
	margin: 2vw auto 0;
}

.koukoku ul {
	padding: 10vw 0;
	margin: 0;
}

.koukoku li {
	list-style: none;
	float: left;
	width: 38vw;
	height: auto;
	margin:0 5vw 3vw -3vw;
}

.koukoku img {
	width: 95%;
	height: 100%;
	display: block;
}

.border {
	width: 90%;
	border-top: 3px solid #00f;
	position: relative;
}

.border::before {
	position: absolute;
	border-top: 3px solid #0096C4;
	width: 80vw;
	display: block;
	content: "";
	right: 0;
	top: -3px;
}

footer {
	width: 100%;
	margin: 0 auto;
}

.flex{
	width: 100%;
	margin: 0vw auto;
  	padding: 2.5% 0;
	flex-direction:column;
}
.flex > *{
  	width: auto;
  	font-size: 4vw;
}

.flex p {
	width: 40vw;
	margin:2vw auto;
	border-right: 0.1vw solid #ccc;
	border-left: 0.1vw solid #ccc;
	padding: 0.5vw 0.8vw;
	line-height: 2vw;
}

.flex a {
	text-decoration: underline;
}


.renraku {
	font-size: 4vw;
	line-height: 5.5vw;
	letter-spacing: 0.01em;
	margin: 3vw 6vw;
}

.copy-right {
	padding: 3vw 0;
	font-weight: 600;
	font-size: 3vw;
	letter-spacing: 0.05em;
}


#index2 {
	height: 60vw;
}

.kazari {
	width: 95vw;
	height: 20vw;
}

.waku {
	width: 70vw;
	height: 40vw;
	transform: translate(15%,-25%);
}

.theme img {
	width: 60vw;
	height: auto;
	transform: translate(8.3%,83.3%);
}

.access {
	width: 90vw;
	line-height: 25px;
	font-size: 4vw;
	margin: 0 auto;
}

.access th {
	width: 20vw;
	padding-left: 5vw;
	text-align-last: center;
}

.access td {
	height: 9vw;
}

.access .map {
	display: none;
}

.map-second {
	display: block;
	margin: 9vw auto 0;
}

.topics {
	width: 95%;
	margin: 1.5vw auto 7vw;
	padding: 0;

}

.topics h3 {
	font-size: 4.5vw;
	border-bottom: 3px solid #128A09;
	width: 50%;
	padding: 10px 2vw;
	margin: 5px 2vw;
}

.topics p {
	width: 95%;
	font-size: 4vw;
	line-height: 6vw;
	padding: 2vw 1vw;
	margin: 2vw auto;
}

.date {
	clear: both;
	margin: 5px 15px;
	font-size: 3.2vw;
}

.detail {
	float: right;
	margin: 1vw 5vw 0;
	font-size: 3.2vw;
}

.link li {
	font-size: 4vw;
	line-height: 4vw;
}

.akaihane p {
	font-size: 4vw;
	line-height: 6vw;
	margin: 0 auto;
	width: 100%;
}

figure {
	width: 40vw;
	margin: -2vw 4vw 0 0vw ;
}

figcaption {
	font-size: 3vw;
	text-align: center;
	margin-top: 0vw;
}

.akaihane img {
	width: 100%;
	height: auto;
	margin: 10px 0;
}

.mimamori {
	width: 100%;
	font-size: 3.2vw;
	line-height: 5vw;
	margin: 4vw 0;
	letter-spacing: 0.05em;
}

.akaihane h3 {
	font-size: 4vw;
	line-height: 24px;
	padding: 0px 3vw;
	margin: 0px;
}

.akaihane li {
	font-size: 4vw;
	line-height: 6vw;
	list-style: disc;
	margin: 2vw 0vw 2vw -3vw;
}

.akaihane span {
	padding: 0;
	margin: 0 auto;
	font-size: 4vw;
	width: 100%;
}

.itiran {
	font-size: 3vw;
	line-height:5vw;
	margin: 4vw 0 0 2vw;
	width: 35vw;
}

.main-thema {
	padding: 5px 10px;
}

.main-thema img {
	width: 90vw;
	height: auto;
}

.main-thema h2 {
	margin-left: 0;
	padding-left: 2vw;
	font-size: 5vw;
	line-height: 26px;
}

.main-thema h3 {
	border-left:8px solid #4C9CF1;
	padding-left: 2vw;
	margin-left: 0;
	line-height: 6vw;
	font-size: 4vw;
}

.main-thema li {
	margin: 5px 0px;
	font-size: 4vw;
	line-height: 6vw;
}

.sikyuukeigan {
	font-size: 14px;
	line-height: 18px;
	letter-spacing: 0.05em;
	margin: 0 0 20px -15px;
	font-weight: 600;
}

.jikakushoujou {
	margin-left: 25px;
	margin-bottom: -10px;
}

.saigai img {
	width: 100%;
}

.main-thema p {
	margin: 0 3vw;
	font-size: 3.4vw;
	line-height: 5vw;
	letter-spacing: 0.05em;
}

.main-thema td {
	padding: 1vw 2vw;
	font-size: 4vw;
	line-height: 6vw;
}

.main-thema th {
	line-height: 6vw;
	font-size: 3.2vw;
	width: 60vw;
}

.taisaku {
	font-size: 4vw;
	line-height: 6vw;
	margin: 2vw auto;
}

.tyuuiten {
	margin-top: 0;
	margin-left: -5vw;
}

.tyuuiten li {
	font-size: 3vw;
	letter-spacing: 0.05em;
}

.tyuuiten h4 {
	font-size: 3vw;
}

.ame h4 {
	margin: 6vw 5vw 1vw;
	display: block;
}

.rain {
	font-size: 4vw;
	line-height: 6vw;
	padding: 0;
	margin: 0 auto;
}

.main-shop {
	margin: 0;
	padding: 0;
}

.category li {
	list-style: none;
	width: 22vw;
	float: left;
	margin: 1vw;
}

.shop li {
	width: 40vw;
	height: auto;
	margin: 3.5vw 2.6vw;
}
	
.sn {
	font-size: 3.2vw;
	padding: 1vw 0;
	}

.sc {
	font-size: 3vw;
	padding: 1vw;
	bottom: 7vw;
	left: 2vw;
	letter-spacing: 0.1em;
}

.shop .sc2 {
	font-size: 3vw;
	padding: 1vw;
	bottom: 14vw;
	left: 2vw;
	letter-spacing: 0.1em;
}

.apeal {
	font-size: 4vw;
	line-height: 6vw;
	width: 90vw;
	margin: 0 1.5vw 8vw;
}

.shop-infor table {
	width: 90vw;
	margin-bottom: 5vw;
}

.gourmet th {
	font-size: 3.6vw;
	line-height: 4.3vw;
	padding:3vw 1.5vw;
	width: 25vw;
	vertical-align: top;
}

.gourmet td {
	font-size: 4vw;
	padding: 2vw 0;
	line-height: 5vw;
}

.gourmet tr {
	border-bottom: 1px solid rgba(8,127,14,1.00);
}

.shop-infor img {
	float: none;
	width: 90vw;
	display: block;
	margin: 3vw auto;
}

.shop-infor iframe {
	float: none;
	display: block;
	margin: 5vw auto 10vw;
	width: 90vw;
	height: 250px;
}

.shop-map {
	float: none;
	width: 90vw;
	margin: 0 auto;
}

.btn {
	font-size: 4vw;
	padding: 1vw 2vw;
	margin: 5vw 5vw 7vw;
}

/*-------------------------------*/

.shoplist-mask {
	width:			30vw;
	height:			auto;
}

.shoplist-mask .caption {
	color:			#eee;
	padding: 0 1vw;
	width: 25.5vw;
	height: auto;
}

.shoplist-mask .caption h3 {
	font-size: 4vw;
	letter-spacing: 0.05em;
	transform: translate(0%,100%);
	text-align: center;
}

.shoplist-mask .caption p {
	display: none;
}

.shoplist-mask .mask {
	width:			90%;
	height:			90%;
	position:		absolute;
	top:			5%;	/* 枠の上に置いて表示させない */
	left:			5%;
	background-color:	rgba(0,0,0,0.6);
}







