/*560px未満*/ @media screen and (max-width: 559px) {
}

/*960px未満*/ @media screen and (max-width: 959px) {
}

/*1200px未満*/ @media screen and (max-width: 1200px) {
}
/*▼▼▼▼▼▼▼▼▼▼▼▼▼▼
共通
▼▼▼▼▼▼▼▼▼▼▼▼▼▼*/
html {
	font-size: 62.5%;
}
body {
	font-size: 1.6rem;/* 16px*/
	line-height: 2;
	font-family: "Noto Sans JP";
	color: #404040;
	font-weight: 300;
}
a {
	text-decoration: none;
	color: currentColor;
	transition: 0.3s;
}
a:hover {
	opacity: 0.7;
}
.flex {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}
.wrap {
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}
.flexwrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}
header#menuflame {
	width: 280px;
	position: absolute;
	top: 0;
	left: 0;
}
section#mainflame {
	background: #ebebeb;
	width: calc(100% - 280px);
	margin: 0 0 0 280px;
	min-height: 100vh;
}
/*▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼
    メインフレーム&グリッド
▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼*/
.grid {
	max-width: 1600px;
	margin: auto;
	width: 100%;
        padding: 32px 0 0 0;
}
.grid-sizer {
	width: 50px;
}
.grid-item {
	width: 250px;
}
.grid-item.w100 {
    width: 100% !important;
}

.grid-item:nth-of-type(6n-4) {
	width: 500px;
}
#novelty .grid-item:nth-of-type(6n-4) {
	width: 250px;
}
.grid-item.w600 {
    width: 600px;
}
.grid-content {
	margin: 3px;
	position: relative;
}
.grid-content img.back {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
.content_margin {
    z-index: 15;
    display: block;
    margin: 0 15px;
    position: relative;
    padding: 15px 0;
}
.grid-item .photo {
	height: 200px;
	background-size: cover;
	background-position: center center;
}
.grid-item:nth-of-type(6n-4) .photo {
	height: 450px;
}
#novelty .grid-item:nth-of-type(6n-4) .photo {
	height: 200px;
}
.grid-item.w600 .photo {
   height: 400px;
}
.textcontent {
	margin: 5px;
	line-height: 1.2;
}
.textcontent p {
	font-size: 1.3rem;
	line-height: 1.6;
	margin: 10px 0 0 0;
	text-align: justify;
}
p.data {
	font-size: 1.4rem;
}
.textcontent h4 {
	font-size: 1.6rem;
	font-weight: 600;
	margin: 7px 0 0 0;
}
.grid-footer {
	position: relative;
	text-align: center;
	border-top: solid 1px #CCC;
	font-size: 1.3rem;
	margin: 0 15px 0px;
	padding: 5px 0 10px;/* font-weight: 600; */
}

/*ノベルティ*/
#novelty .content_margin img {
    width: 100%;
    height: auto;
}

#novelty .content_margin p {
    font-size: 1.4rem;
    line-height: 1.4;
    margin: 0 0 12px 0;
}
#novelty #mainflame .shophed {
    margin: 36px 0 0;
}
#novelty #mainflame .shophed:nth-of-type(2) {
    margin: 0 0 0;
}
/*記事ページ*/
.grid-item.articlebox {
    width: 100%;
    max-width: 800px;
    margin: auto;
}

.blogcontent img {
    width: 100%;
    height: auto;
    margin: 1em 0px;
}

.blogcontent {
    margin: 5%;
    font-size: 1.5rem;
}
.blogcontent h4 {
    font-size: 1.7rem;
    line-height: 1.4;
}
.titlebloc {
    border-bottom: solid 1px #444;
    padding: 0 0 12px 0;
    margin: 0 0 24px 0;
}
.titlebloc p {
    display: inline-block;
}

.titlebloc h5 {
    display: inline-block;
    border: solid 1px #999;
    line-height: 1.4;
    padding: 0.2em 0.5em;
    font-size: 1.3rem;
    float: right;
    max-width: 40%;
}
.blogcontent a {
    font-weight: 600;
    border-bottom: dotted 1px currentColor;
}
.grid-footer .page a {
    width: calc(45% - 2px);
    border: solid 1px #444;
    margin: auto;
    font-size: 1.3rem;
    line-height: 1.5;
    padding: 0.2em 0;
}
.content_header, .content_under{
    height: 20px;
    position: relative;
}
.content_center{
    position: relative;
}

/*カテゴリページ*/
h2.shophead {
    border-bottom: solid 2px #444;
    display: inline-block;
    padding: 0 0.5em 0 20px;
    margin: 0 0 20px 0;
    font-size: 2.0rem;
    line-height: 1.2;
}
.grid-item.reacent {
    font-size: 1.3rem;
    line-height: 1.3;
}
.reacent h3 {
    font-size: 1.6rem;
    padding: 0 0 8px 0;
}

.reacent ul li {
    margin: 0.9em 0;
}

/*スケジュールページ*/
#schedule .grid-content h5 {
    font-size: 2.3rem;
    font-weight: 700;
    margin: 0 0 0px 3%;
}
.eventinfo ul li {
    border-top: solid 1px #a1a1a1;
    padding: 36px 0 0 0;
    margin: 36px 2% 0 2%;
}
.event_shop h3 {
    font-size: 1.3rem;
    border: solid 1px #454545;
    display: inline-block;
    padding: 0 0.5em;
}
.event_shop p {
    display: inline-block;
    font-size: 1.5rem;
    margin: 0 0 0 1em;
    font-weight: 200;
    vertical-align: middle;
}
p.event_data {
    font-size: 1.7rem;
    letter-spacing: 0.05em;
    line-height: 1.4rem;
    margin: 1.2rem 0 0 0;
}

h2.event_title {
    font-size: 2.0rem;
    line-height: 3.6rem;
}
#schedule .shopinfo h5 {
    font-size: 2.3rem;
    font-weight: 700;
    margin: 0.2em 0 1.2em 3%;
    line-height: 1.2;
}
.shopinfo h5 span {
    display: block;
    font-size: 1.6rem;
}
.shopinfo ul {
    margin: 0 3%;
    font-size: 1.3rem;
    line-height: 1.6;
}

.shopinfo ul li {
    margin: 12px 0 0 0;
}

.shopinfo h6 {
    font-size: 1.4rem;
}

.shopinfo h6 span {
    font-size: 1.3rem;
    margin: 0px 0 0 0.7em;
    font-weight: 200;
    display: inline-block;
}

/*▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼
    メニューフレーム
▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼▼*/
.menu_contener {
	margin: 35px auto;
	width: 75%;
}
#menuflame h1 {
	font-size: 1.6rem;
	font-weight: 400;
	border: solid 2px #555;
	width: calc(100% - 4px);
	text-align: center;
	margin: auto;
	line-height: 1;
	padding: 1.4em 0;
}
#menuflame h2 {
    font-size: 2.3rem;
    font-weight: 300;
    letter-spacing: 0.1em;
    margin: 32px 0 24px 0;
    line-height: 1.2;
}
a#menutriger {
	display: none;
}
.link {
	display: block;
}
ul.menu {
	font-size: 1.3rem;
	line-height: 1.2;
}
ul.menu li {
	margin: 0 0 1.5em 0;
}
ul.menu li.menu_hed {
	font-weight: 600;
	position: relative;
}
li.menu_hed::before {
	content: "";
	border-top: solid 1px #9e9e9e;
	width: 30px;
	margin: 0px 0 0 -40px;
	display: block;
	position: absolute;
	top: 0.5em;
}
#menuflame h4 a {
	font-size: 1.3rem;
	font-weight: 300;
	border: solid 2px #999;
	display: inline-block;
	line-height: 1.2;
	padding: 0.5em 1em;
	margin: 16px 0 0px;
}
/*■■■■■■■■■■■■■■■■■■■■
    1345px未満
■■■■■■■■■■■■■■■■■■■■■*/ 
@media screen and (max-width: 1345px) {
    header#menuflame {
	width: 240px;
	position: absolute;
	top: 0;
	left: 0;
}
section#mainflame {
	background: #ebebeb;
	width: calc(100% - 240px);
	margin: 0 0 0 240px;
	min-height: 100vh;
}
}
/*■■■■■■■■■■■■■■■■■■■■
    1305px未満
■■■■■■■■■■■■■■■■■■■■■*/ 
@media screen and (max-width: 1305px) {
    .grid-item.articlebox {
    width: 70%;
    max-width: 600px;
    margin: auto;
}
.grid-item.reacent {
    width: 200px;    
}     
}

/*■■■■■■■■■■■■■■■■■■■■
    960px未満
■■■■■■■■■■■■■■■■■■■■■*/ 
@media screen and (max-width: 959px) {
header#menuflame {
	width: 220px;
}
section#mainflame {
	background: #ebebeb;
	width: calc(100% - 220px);
	margin: 0 0 0 220px;
	min-height: 100vh;
}
.menu_contener {
	margin: 15px auto;
	width: 90%;
}
    .grid-item.articlebox {
    width: 100%;
    max-width: 800px;
    margin: auto;
}
.grid-item.reacent {
    display:none;  
}   
}

/*■■■■■■■■■■■■■■■■■■■■
    860px未満
■■■■■■■■■■■■■■■■■■■■■*/ 
@media screen and (max-width: 860px) {
header#menuflame {
	position: relative;
	width: 100%;
}
section#mainflame {
	background: #ebebeb;
	width: 100%;
	margin: 0 0 0 0;
	min-height: 100vh;
}
#menuflame a h1 {
	font-size: 1.6rem;
	font-weight: 400;
	border-left: none;
	border-right: none;
	width: auto;
	text-align: center;
	margin: auto;
	line-height: 1;
	padding: 0.7em 2em;
	display: block;
}
#menuflame h2 {
    font-size: 2.3rem;
    font-weight: 300;
    letter-spacing: 0.1em;
    margin: 8px 0 16px 0;
    text-align: center;
}
a#menutriger {
	border: solid 1px #888;
	width: calc(100% - 2px);
	display: block;
	text-align: center;
	line-height: 1;
	padding: 5px 0;
	margin: auto;
	font-size: 1.4rem;
}
a#menutriger.open {
	background: #2e2e2e;
	color: #FFF;
	font-weight: 600;
	margin: 0 0 20px 0;
}
.link {
	display: none;
}
ul.menu {
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}
ul.menu li {
	width: 32.3333%;
	margin: 0.5%;
}
ul.menu li a {
	border: solid 1px #CCC;
	padding: 2%;
	text-align: center;
}
ul.menu li.menu_hed {
	width: 100% !important;
	text-align: left !important;
	border: none !important;
}
#menuflame .link h4 {
	width: 100%;
}
ul.menu li a {
	border: solid 1px #CCC;
	padding: 10px 0;
	text-align: center;
	width: 100%;
	display: block;
	height: calc(100% - 22px);
	line-height: 1.2;
	margin: auto;
}
li.menu_hed::before {
	display: none;
}
#menuflame h4 a {
	font-size: 1.3rem;
	font-weight: 300;
	border: solid 2px #999;
	display: inline-block;
	line-height: 1.2;
	padding: 10px 0;
	margin: 8px 0 0px;
	width: calc(100% - 4px);
	text-align: center;
}
/*グリッド調整*/
.grid-sizer {
	width: 50%;
}
.grid-item {
	width: 50%;
}
.grid-item:nth-of-type(6n-4) {
	width: 100%;
}
.grid-item.w600 {
    width: 100%;
}
}

/*■■■■■■■■■■■■■■■■■■■■
     560px未満
■■■■■■■■■■■■■■■■■■■■■*/ 
@media screen and (max-width: 559px) {
.grid-sizer {
	width: 50px;
}
.grid-item {
	width: 100%;
}
.grid-item:nth-of-type(6n-4) {
	width: 100%;
}
.grid-item:nth-of-type(6n-4) .photo {
	height: 200px;
}
/*記事ページ*/
    .grid-footer .page a {
    width: calc(90% - 2px);
    border: solid 1px #444;
    margin: 0 auto 4px;
    font-size: 1.3rem;
    line-height: 1.5;
    padding: 0.2em 0;
}
}