* {
  margin: 0;
  padding: 0;
}
body {
  width: 100%;
  margin: 0;
  font: 14px "Noto Sans JP","Hiragino Sans","ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN","Yu Gothic",YuGothic,"メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;
  color:#434343;
  background: center top no-repeat url("../images2021/bg.png");
  line-height:165%;

}


a {
	color:#666;
	text-decoration:underline;
}


img.pic01 {
	display:block;
	margin:0 auto;
	width:96%;
	max-width:1200px;
}

header {
}

nav {
	display:flex;
	border:solid 1px #999;
	border-radius:30px;
	width:90%;
	margin:20px auto;
	padding:10px;
	background:#fff;
	align-items:center;
}
.logo {
	width:10%;
	margin:0 50px 0 20px;
}

.logo img {
	width:100%;
}


.main_menu {
	width:50%;
	font-size:16px;
}

.sub_menu {
	width:40%;
	font-size:14px;
}

nav a {
	margin:0 1%;
	font-weight:bold;
	color:#666;
	text-decoration:none;
}

nav a:nth-child(7) {
	margin:0 1% 0 3%;
	font-size:14px;
}

nav a:nth-child(8),
nav a:nth-child(9),
nav a:nth-child(10) {
	margin:0 1%;
	font-size:14px;
}

nav a.inquiry {
	border-radius:30px;
	margin:20px auto;
	padding:10px 20px;
	background:#83a95c;
	color:#fff;
}


@media screen and (max-width: 1366px) {
.main_menu {
	width:50%;
	font-size:14px;
}

.sub_menu {
	width:40%;
	font-size:12px;
}

}



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

nav {
	display:block;
	border:none;
	background:none;
}


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

.logo img {
	display:block;
	margin:0 auto;
	width:30%;
	max-width:144px;
	background:#fff;
	padding:5px 10px;
	border-radius:15px;
}


nav a {
	display:none;
}

}

a:hover {
	opacity:0.8;
}


section {
	max-width:1200px;
	width:96%;
	margin:60px auto 10px;
	padding:0;
}

@media screen and (max-width: 768px) {
section {
	margin:30px auto 10px;
}
}


.main_visual {
	width:90%;
	max-width:1200px;
	margin:10px auto 30px;
	padding:0;
}

.main_visual img {
	display:block;
	width:90%;
	max-width:1000px;
	margin:10px auto 30px;
	padding:0;
}

h2 {
	display:block;
	margin:30px auto 40px;
	font-weight:bold;
	color:#422fd0;
	text-align:center;
	font-size:36px;
}

h2 span{
	display:block;
	margin:10px auto 40px;
	font-weight:bold;
	color:#fff;
	background:#422fd0;
	border-radius:30px;
	text-align:center;
	font-size:24px;
	max-width:200px;
	padding: 10px 0;
}



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

.main_visual {
	width:100%;
	max-width:1200px;
	margin:10px auto 30px;
	padding:0;
}

.main_visual img {
	display:block;
	width:100%;
	max-width:1000px;
	margin:10px auto 30px;
	padding:0;
}

h2 {
	margin:30px auto 20px;
	font-weight:bold;
	font-size:20px;
}

h2 span{
	font-size:14px;
	max-width:160px;
	padding: 5px 0;
}
}
/**********カテゴリー　メニュー****************/

.block-area {
  display: flex;
  justify-content: start;
  align-items: start;
	list-style: none;
	margin: 0 0 30px;
	padding: 0;
}
.block-area li {
	flex: 0 1 33%;
	margin: 0 0.5% 10px 0;
	padding: 0 0 10px 0;
	background: #fff;
	list-style-type:none;
	text-align:center;
}




.block-area img {
	display:block;
	width: 70%;
	margin: 0 auto 10px;
	padding: 0;
}


.block-area a:hover {
	opacity:0.8;
}

.block-area a img:hover {
	opacity:0.8;
}


@media (max-width: 768px){

.block-area img {
	display:block;
	width: 96%;
	margin: 0 auto 10px;
	padding: 0;
}


}

/**********カテゴリー　メニュー****************/


/**********店舗　メニュー****************/

.block-area2 {
  display: flex;
  align-items: align-items;
	list-style: none;
	margin: 0 0 30px;
	padding: 0;
}
.block-area2 li {
	flex: 0 1 33%;
	margin: 0 0.5% 10px 0;
	padding: 0 1% 10px;
	background: #8172f6;
	list-style-type:none;
	color:#fff;
}

.block-area2 h3 {
	margin:30px auto 20px;
	font-weight:bold;
	font-size:20px;
	text-align:center;
}


.block-area2 img {
	display:block;
	width: 70%;
	margin: 0 auto 10px;
	padding: 0;
}


.block-area2 a:hover {
	opacity:0.8;
}


@media (max-width: 768px){

.block-area2 {
	width: 100%;
  display: block;
	margin: 0 0 30px;
	padding: 0;
}

.block-area2 li {
  display: block;
	width: 94%;
	margin: 0 3% 10px 3%;
	padding: 0 3% 10px;
	background: #8172f6;
	list-style-type:none;
	color:#fff;
}


.block-area2 img {
	display:block;
	width: 70%;
	margin: 0 auto 10px;
	padding: 0;
}


}

/**********店舗　メニュー****************/


div.about {
  background: center -250px no-repeat url("../images2021/about_bg.jpg");
  min-height:500px;
 padding: 550px 0 30px;
}

.about_text {
	color:#fff;
	display:block;
	width: 70%;
	max-width: 800px;
	margin: 0 auto 10px;
	padding: 20px 20px;
	background-color: rgba(129,114,246,0.8);
}

.about_text h2 {
	color:#fff;
	display:block;
	margin: 30px auto 10px;
	padding: 0;
}

.about_text p {
	color:#fff;
	font-size:16px;
	margin: 30px auto 10px;
	padding: 0;
}


@media (max-width: 768px){
div.about {
  background: center 0 no-repeat url("../images2021/about_bg.jpg");
background-size:100%;
  min-height:auto;
 padding: 220px 0 30px;
	margin: 0;
}

.about_text {
	color:#fff;
	display:block;
	width: 90%;
	max-width: 800px;
	margin: 0 auto 0;
	padding: 20px 5%;
	background-color: rgba(129,114,246,0.8);
}

.about_text h2 {
	color:#fff;
	display:block;
	margin: 30px auto 10px;
	padding: 0;
}

.about_text p {
	color:#fff;
	font-size:14px;
	margin: 30px auto 10px;
	padding: 0;
}

}



/***************************************/

div.shop {
  background: #1f2237;
 padding: 30px 0 30px;
	margin: 0;
}

.shop_text {
	color:#fff;
	display:block;
	width: 70%;
	max-width: 1090px;
	margin: 0 auto 10px;
	padding: 20px 0;
  background: center 0 no-repeat url("../images2021/shop_bg.png");
background-size:100%;

}

.shop_text h2 {
	color:#fff;
	display:block;
	margin: 30px auto 10px;
	padding: 0;
}

.shop_text img {
	display:block;
	width:auto;
	max-width:90%;
	margin: 30px auto 10px;
	padding: 0;
}

.shop_text p {
	color:#fff;
	font-size:18px;
	margin: 30px auto 10px;
	text-align:center;
	padding: 0;
}


@media (max-width: 768px){
div.shop {
	width: 100%;
  background-image:none;
  background:#161f93;
	margin: -30px 0 0 0;

}

.shop_text {
	color:#fff;
	display:block;
	width: 100%;
	margin: 0 auto 10px;
	padding: 20px 0;
}

.shop_text h2 {
	color:#fff;
	display:block;
	margin: 30px auto 10px;
	padding: 0;
}

.shop_text p {
	color:#fff;
	font-size:14px;
	margin: 30px auto 10px;
	padding: 0;
}

}

/*********************************************/

a.btn{
  position: relative;
  display: block;
  border-radius: 5px;
  padding: 10px 0;
  margin:20px auto 20px;
  text-align: center;
  color: #fff;
  width: 90%;
  max-width: 300px;
  font-size: 16px;
  cursor: pointer;
  text-decoration:none;
  background:#000;
}

a.btn:after{
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  right: 10px;
  width: 6px;
  height: 6px;
  margin: -4px 0 0 0;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

a.btn:hpver{
    opacity: 0.8;
}

@media screen and (max-width: 768px) {
a.btn{
  position: relative;
  display: block;
  border-radius: 5px;
  padding: 10px 0 15px;
  margin:20px auto;
  text-align: center;
  color: #fff;
  max-width: 360px;
  font-size: 12px;
  cursor: pointer;
  text-decoration:none;
}
}

.page-top {
    position: fixed;
    bottom: 10px;
    right: 10px;
    font-size: 77%;
    z-index:9999;
    opacity: 0.7;
    text-indent:-9999px;
}
.page-top a {
  background: url(../images2021/pagetop.png) center/80% no-repeat;
    text-decoration: none;
    color: #fff;
    width: 60px;
    padding: 30px 0;
    text-align: center;
    display: block;
}
.page-top a:hover {
    text-decoration: none;
    opacity: 0.8;
}

@media print, screen and (min-width: 768px) {
.page-top {
    bottom: 20px;
    right: 20px;
}
.page-top a {
  background: url(../images2021/pagetop.png) center/80% no-repeat;
    width: 80px;
}
.page-top a:hover {
    text-decoration: none;
    opacity: 0.8;
}
}


footer {
  display: block;
	width: 100%;
	background-color: #000;
	margin: 0 auto;
	padding: 10px 0;
	color:#fff;
	text-align:center;
}

footer img.logo {
	width: auto;
	margin: 30px auto;
	display: block;
}

footer small {
	font-size:12px;
	line-height:180%;
}


.pickup{
	width: 800px;
	display: flex;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
	margin:0px auto;
	line-height:48px;
	font-size:24px;
}

.exMain{
	text-align:left;
	padding:0 20px 20px;
	width:  34%;
}

.exMain img{
	display: block;
	margin:0px auto;
	width:  200px;
}

.exSide2{
	padding:0 20px 20px;
	width:  66%;
}

.exSide2 .red {
	color:#ff0000;
}

.exSide2 a {
	text-decoration:none;
	font-weight:bold;
}

.exSide2 span{
	padding:1px 10px 5px;
	margin:0px 10px 0 0;
	color:#fff;
	background:#422fd0;
}

.exSide2 ul{
	list-style-type:none;
}

.exSide2 li{
	margin:5px 0px;
}


  @media screen and (max-width: 768px) {
.pickup {
    display: block;
    width:  100%;
	font-size:18px;
}

.exMain img{
	display: block;
	margin:0px auto;
	width: 150px;
}


.exMain{
	width:  94%;
    margin: 0 auto;
	padding:10px 0;
}
 
.exSide2{
	width:  94%;
	margin: 0 auto;
	padding:10px 0;
}

.exSide2 .red {
	text-align:center;
}

.exSide2 li{
	display: block;
	margin:0px auto;
}

}