@charset "utf-8";
body,h1,h2,h3,h4,ul,li,nav,section{
    margin:0;
    padding:0;
}
main article>section {
	margin-top: 32px;
	margin-bottom: 33px;
	padding-top: 20px;
	padding-bottom: 20px;
}

body{
    /*font-family: 'Noto Serif JP', serif;*/
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 16px;
    top: auto;
}

img {
    max-width: 100%;
    height: auto;
    vertical-align: bottom;
}
h2   {
    border-bottom: 1px solid rgba(0,89,248,1.00);
    text-align: center;
    font-weight: 400;
    color: rgba(50,50,50,1.00);
    padding-bottom: 0.61em;
    padding-top: 0.61em;
    margin-bottom: 0.61em;
    letter-spacing: 0.1em;
}
article#top-page section h2.top-inc-subtitle{
	border-bottom: none;
	margin-top: 2.5rem;
}
h2.top-inc-subtitle span{
	    border-top: 1px solid rgba(0,89,248,1.00);
	    margin-top: 0.61em;
    padding-top: 0.61em;
	display: block;
	font-size: 0.61em;
}



h3 {
	padding-top: 0.61em;
	padding-right: 0.61em;
	padding-bottom: 0.61em;
}
h4 {
    font-weight: normal;
}
dt {
    border-left: 1px solid rgba(58,195,0,1.00);
    padding-left: 3px;
    padding-bottom: 3px;
    padding-top: 3px;
}
.list-in-list01>dl> dt {
    width: 4em;
    border-left: 1px solid rgba(58,195,0,1.00);
    margin-left: 1px;
	text-align-last: justify; 
}
.list-in-list01>dl> dd {
    margin-bottom: 16px;
    margin-left: 34px;
}
.list-in-list01 dl dd ul {
    margin-left: 20px;
    list-style-position: outside;
}
.list-in-list01 dl dd .history-list li span {
    width: 6.5em;
    display: inline-block;
}







#site-footers {
	border-top: 1px solid rgba(58,0,183,1.00);
	margin-top: 2rem;
	padding-top: 1.6rem;
	padding-bottom: 0rem;
}

body main {
	max-width: 1200px;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
}
main article section p {
    text-align: justify;
}


#site-content.our-works,
#site-content.trad-works
{
	margin-top: 54px;
}

article.category-our-works,
article.category-trad-works{
	background-color: rgba(255,255,255,0.55);
}



footer address {
	font-style: normal;
}
#header-logo-spc {
    background-image: url(../images/logo-outline.svg);
    height: 70px;
    background-repeat: no-repeat;
    background-position: center 0%;
    background-size: contain;
}


#site_header {
    height: 0px;
    position: relative;
    max-width: 2300px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    /* [disabled]right: 0px; */
    padding-left: 0px;
    padding-bottom: 0px;
    z-index: 200;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding-top: 0px;
}

#site_header nav {
    position: relative;
    /* [disabled]border-bottom-color: rgba(179,179,179,1.00); */
    /* [disabled]border-bottom-style: solid; */
    /* [disabled]border-bottom-width: 1px; */
    margin-left: auto;
    margin-right: 0px;
    padding-right: 0px;
    height: auto;
    background-image: linear-gradient(200deg,rgba(255,255,255,1.00) 66.99%,rgba(255,255,255,0.58) 90.10%,rgba(255,255,255,0.00) 100%);
    width: 320px;
    right: 0px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    top: -62px;
}



#site_header nav ul {
    display: block;
    justify-content: space-between;
    margin-left: auto;
    position: fixed;
    padding-left: 136px;
    padding-right: 7px;
    background-image: linear-gradient(180deg,rgba(255,255,255,0.85) 86.02%,rgba(255,255,255,0.00) 100%);
    padding-bottom: 35px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    height: auto;
}
#site_header nav ul li {
    list-style-type: none;
    text-align: right;
    width: 140px;
    border-bottom: 1px solid rgba(155,155,155,1.00);
    font-size: 0.9rem;
    font-weight: 400;
    padding-top: 5px;
    padding-bottom: 5px;
    margin-left: 0px;
    margin-right: 0px;
    margin-top: 0px;
    margin-bottom: 0px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
#site_header nav ul li#nav-instagram a{
	background-image: url("../images/icon-insta-nav.svg");
	background-repeat: no-repeat;
	background-position: center center;
	overflow: hidden;
	text-indent: -500px;
	background-size: auto 20px;
    color: rgba(255,255,255,0.00);
background-position-y: 15px!important;
}
#site_header nav ul li a {
    text-decoration: none;
    color: rgba(45,26,0,1.00);
    padding-top: 10px;
    padding-bottom: 9px;
    display: block;
    text-shadow: 0px 0px 5px rgba(255,255,255,0.85);
    letter-spacing: 1px;
}

#site_header nav ul li:nth-child(1) {
    /* [disabled]margin-left: 288px; */
}
#site_header nav ul li:nth-child(3) {

}
#site_header nav ul li:nth-child(4) {

}




#site_header h1 {
    background-repeat: no-repeat;
    /* [disabled]background-position: center center; */
    height: 62px;
    width: calc(100vw - 300px);
    font-size: 0.9rem;
    font-weight: normal;
    background-size: contain;
    /* [disabled]-webkit-box-shadow: 1px 1px 15px rgba(0,0,0,0.34); */
    /* [disabled]box-shadow: 1px 1px 15px rgba(0,0,0,0.34); */
    color: rgba(255,255,255,1.00);
    overflow: hidden;
    text-indent: -971px;
    position: relative;
    z-index: 1000;
    background-image: url(../images/logo-outline.svg), linear-gradient(90deg,rgba(255,255,255,1.00) 24.35%,rgba(255,255,255,0.00) 52.34%);
    /*backdrop-filter: blur(3px);*/
    /* [disabled]border: 1px solid rgba(255,255,255,0.25); */
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    overflow-x: hidden;
    overflow-y: hidden;
    text-align: left;
}

#top_image_area {
    width: 100%;
    height: auto;
    margin-bottom: 50px;
    max-width: 2300px;
    z-index: 10;
    position: relative;
    margin-left: auto;
    margin-right: auto;
}

#top_image_area .slider {
}
#header-image-area {
    background-color: #D1D1D1;
    text-align: center;
	margin-left: auto;
	margin-right: auto;
	max-width: 2300px;
}
#header-image-area img {
    height: auto;
    max-width: 2300px;
    width: 100%;
}

#case-gallery {
    margin-top: 0px;
}

#flowchart{
    counter-reset: titleNum;
}
#flowchart h3::before {
/*	counter-increment: titleNum;
	content: counter(titleNum) " ";
	font-size: 2em;
	position: relative;
	top:0.2em;*/
}
#flowchart h3 {
	border-bottom: 1px solid rgba(87,0,248,1.00)
}
#flowchart .flowchart-num::before{
	counter-increment: titleNum;
	content: counter(titleNum) " ";
	font-size: 2em;
	position: relative;
	font-weight: 100;
	top:0.2em;	
	width: 14%;
	text-align: center;
}
#flowchart .flowchart-num{
	display: flex;
  align-items: center;
	padding: 0;
	background-color: rgba(92,92,92,0.24)
}
.flowchart-box-r{
	width:85.9%;
	box-sizing: border-box;
	padding-left: 1rem;
	padding-right: 1rem;
	background-color: rgba(255,255,255,0.80);
	min-height: 10rem;
}

.flex {
	display: flex;
	justify-content: space-between;
    align-items: stretch;
}
.flex #top_info {
	background-color: rgba(241,237,228,1.00);
	flex: 1 1 auto;
	box-sizing: border-box;
	padding-left: 23px;
	padding-top: 0px;
	padding-right: 9px;
	padding-bottom: 23px;
	text-align: justify;

}
.flex #top_wagashibox {
	flex: 0 1 360px;
}
.flex #top_wagashibox #bnr_wagashi_season,
.flex #top_wagashibox #bnr_wagashi_all{
	width: 360px;
	max-width: 100%;
	height: 120px;
	background-image: url(../images/bnr_wagashi_season.jpg);
	background-size: contain;
	overflow: hidden;
	background-repeat: no-repeat;
}


.flex #top_wagashibox #bnr_wagashi_all{
	background-color: rgba(255,255,255,0.22);
	background-image: url(../images/bnr_wagashi_all.jpg);
}
.flex #top_wagashibox #bnr_wagashi_season h3,
.flex #top_wagashibox #bnr_wagashi_all h3{
	margin-top: -25px;
	padding: 0;
	height: 25px;
}
.flex #top_wagashibox #bnr_wagashi_season a,
.flex #top_wagashibox #bnr_wagashi_all a{
	display: block;
	height: 100%;
	color: rgba(255,255,255,1.00);
	background-color: rgba(255,255,255,0.00);
	text-decoration: none;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	padding-top: 31px;
	text-align: left;
	text-shadow: 0 0px 3px rgba(0,0,0,0.50),
	1px 1px 2px rgba(0,0,0,0.40),
	2px 2px 2px rgba(0,0,0,0.3),
	3px 3px 2px rgba(0,0,0,0.2),
   	-1px -1px 2px rgba(0,0,0,0.2);
	transition: background-color 200ms ease-in-out 0s;
	padding-left: 124px;
}
.flex #top_wagashibox #bnr_wagashi_season a:active,
.flex #top_wagashibox #bnr_wagashi_season a:hover,
.flex #top_wagashibox #bnr_wagashi_all a:active,
.flex #top_wagashibox #bnr_wagashi_all a:hover{
	background-color: rgba(255,255,255,0.28);
}
.flex #top_wagashibox #bnr_wagashi_season a span,
.flex #top_wagashibox #bnr_wagashi_all a span{
	font-size: 1.2em;
	letter-spacing: 0.1em;
}
#top_image_area .top-catch {
    height: 100%;
    position: absolute;
    z-index: 221;
    margin: 0px;
    padding: 0px;
    padding-top: 0%;
    box-sizing: border-box;
    background-image: linear-gradient(112deg,rgba(255,255,255,0.85) 0%,rgba(255,255,255,0.60) 67%,rgba(255,255,255,0.00) 67.01%);
}
#top_image_area .top-catch span {
    padding-top: 33%;
    padding-right: 15%;
    display: block;
    text-align: center;
    font-size: 1em;
	font-weight: 100;
}
.flex-top2 {
    display: flex;
    justify-content: space-between;
}
.flex-top2 section {
    width: 30%;
	padding-bottom: 0;
	padding-top: 0;

}
.flex-top2 section {
    width: 30%;
	padding-bottom: 0;
	padding-top: 0;

}
#top_main_inner .flex-top2{
	padding: 0;
}

#top_main_inner  .gallery-title-p{
	margin-bottom: 0;
	padding: 1rem 0;

}

#top_main_inner  h2 + .gallery-title-p{
}
#top_main_inner section{
	padding-top: 0.5rem;
}
#top_main_inner .gallery-go-index{
    border-top: solid 1px rgba(133,0,201,1.00);
    margin-bottom: 2rem;
    text-align: center;
    padding-bottom: 9px;
    padding-top: 8px;
    background-image: linear-gradient(180deg,rgba(188,167,139,0.18) 0%,rgba(188,167,139,0.00) 100%);
}
#top_main_inner .gallery-go-index a{
    display: block;
    text-decoration: none;
    color: rgba(74,50,0,1.00);
    font-weight: 100;
    text-shadow: 0px 0px 2px rgba(255,255,255,0.67);
    font-size: 0.9rem;
}
#top_main_inner .gallery-go-index span::after{
    content: "　";
    background-image: url("../images/arrow.svg");
    background-repeat: no-repeat;
    width: 35px;
    display: inline-block;
	margin-left: 5px;
    background-position: left center;
}




.slick-slider .slick-list{
    height: auto;
}
#top_info> div {
	height: 168px;
	overflow-x: auto;
	padding-right: 0px;
	box-sizing: border-box;

}
article#top-page {
    padding-top: 0px;
    margin-top: 0px;
}
article#top-page h2 {
    padding-top: 0px;
    margin-top: 0px;
}
article#top-page .top-news h2 {
border-bottom: none;
margin-top: 1.61em;
	margin-bottom: 0.1em;
	padding-bottom: 0.1em;
}

article#top-page .flex-top2 .news-box{
    flex: 1 0 75%;
	width: auto;
    display: flex;
	justify-content: flex-start;
    align-items: stretch;
}
article#top-page .flex-top2 .news-box-outer{
		flex:1 1 auto;
	align-items: stretch;
	border-bottom: 1px dotted rgba(79,0,177,1.00);
}
article#top-page .flex-top2 .news-box h3{
	margin: 0;
	font-size: 1.1rem;
	font-weight: 400;
}
article#top-page .top-news .flex-top2{
	width: 100%;
	box-sizing: border-box;
}
article#top-page .top-news .flex-top2 .news-box p.news-date{
    font-size: 0.85rem;
    background-color: rgba(243,239,235,1.00);
    align-items: center;
    display: flex;
    padding-top: 0;
    padding-right: 0.61em;
    padding-left: 0.61em;
    padding-bottom: 0;
    margin: 0 1rem 0 0;
    flex: 0 0 73px;
	box-sizing: border-box;
}
article#top-page .flex-top2 .news-box .nwes-issue{
	font-size: 0.865rem;
	padding: 0 ;
	margin-bottom: 0.3em;
}
article#top-page .flex-top2 .news-box h3 a,
article#top-page .flex-top2 .news-box .nwes-issue a{
		text-decoration: none;
	color: rgba(79,70,60,1.00);
}
article#top-page .flex-top2 .news-box div.news-issue-outer{
		flex:1 1 auto;
}
article#top-page .flex-top2 .news-go-index{
    display: flex;
    align-items: center;
    margin: 0 0 0 1rem;
    padding-left: 0em;
    padding-right: 0em;
    border: 1px solid rgba(191,181,170,1.00);
    background-color: rgba(227,223,218,0.68);
	flex: 0 0 108px;
}
article#top-page .flex-top2 .news-go-index a{
    margin: 0;
    padding: 0 0 0 1.61em;
    color: rgba(84,75,63,1.00);
    text-decoration: none;
    font-size: 0.9rem;
    background-image: url(../images/news-arrow.svg);
    background-repeat: no-repeat;
    background-position: 5px center;
    height: 100%;
    background-size: 8px auto;
    display: flex;
    align-items: center;
}


/*スクロールバーの横幅指定*/
#top_info> div::-webkit-scrollbar {
    width: 12px;
}
/*スクロールバーの背景色・角丸指定*/
#top_info> div::-webkit-scrollbar-track {
  border-radius: 10px;
	background: rgba(242,242,242,0.86);
}
/*スクロールバーの色・角丸指定*/
#top_info> div::-webkit-scrollbar-thumb {
  border-radius: 10px;
	background:rgba(177,164,138,1.00);
}


#main_inner,#main_inner_sub {
	margin-top: 218px;
}
#mnju_outer {
	display: flex;
    align-items: stretch;
    flex-wrap: wrap;
    justify-content: space-between;
}
#mnju_outer .kashi-info {
    width:29%;
    margin-bottom: 30px;
    
}
#mnju_outer .kashi-info img {
    width:100%;
    height: calc(100% * 0.45);
    }
#mnju_outer .kashi-info h4 {
	font-size: 1.3rem;
	letter-spacing: 0.15em;
	font-weight: 400;
}

#mnju_outer .kashi-info .kashi-info-bun{
	line-height: 1.05em;
	color: rgba(62,62,62,1.00);
}


#map {
	width: 100%;
	height: 515px;
	margin-top: 166px;
}
.sales-note {
	font-size: 0.9rem;
	text-align: center;
	background-color: rgba(247,244,236,1.00);
	padding-top: 0.61em;
	padding-bottom: 0.61em;
}
#inform_list li {
	display: flex;
	align-items: center;
	background-color: rgba(237,237,237,1.00);
	border-bottom: 1px solid rgba(75,0,183,1.00);
}
#inform_list li span {
	display: block;
}
#inform_list li .info-ti-con-outer {
	flex: 1 1 auto;

}


#inform_list li .info-time {
	align-items: stretch;
}
#inform_list li .info-ti-con-outer .info-title {
	margin-bottom: 0px;
	font-weight: 500;
	background-color: rgba(243,230,219,1.00);
	padding-left: 4px;
}
.info-ti-con-outer .info-content p {
	margin-top: 0px;
	margin-bottom: 0px;
	font-size: 0.95rem;
	background-color: rgba(252,244,238,1.00);
	padding-left: 4px;
	padding-right: 4px;
}

.flex-box{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
}
.flex-box::after{
	display: block;
content:"";
	  width: 29%;

}


.works-box,
.flex-top2 .works-box{
  width: 29%;
  display: flex;
  flex-wrap: wrap;
	font-size: 1rem;
	padding: 5px 0;
}
.works-box h3, .works-box p, .works-box .image-cut {
  width: 100%;
	text-decoration: none;
}
.works-box h3 a,
.works-box p a,
.works-box .image-cut a {
	text-decoration: none;
	color: rgba(53,53,53,1.00);
}
.works-box h3 {
  order: 2;
	margin-top: 7px;
	margin-bottom: 10px;
	font-size: 0.95rem;
	background-color: rgba(227,223,218,1.00);
	text-align: center;
	box-sizing: border-box;
	padding: 0.61em 0;
	font-weight: 200;
}
.works-box p {
  order: 3;
	text-align: justify;
}
.works-box .image-cut {
  order: 1;
	overflow: hidden;
}
#google-map {
    width: 100%;
    height: 450px;
}

#cat-title-h2{
	font-size: 2rem;
	font-weight: 300;
}
#cat-title-h2 a{
	text-decoration: none;
}




#site-footers .footer-flex p{
    text-align: left;
}
#site-footers #footer-corpo {
	background-image: url(../images/icon-footer-logo.svg);
	width: 315px;
    overflow: hidden;
    white-space: nowrap;
    text-indent: -500px;
}
#site-footers #footer-opentime {
    background-image: url(../images/icon-call.svg);
    line-height: 25px;
    letter-spacing: 3px;
}
#footer-opentime span {
    display: block;
    font-size: 15px;
    letter-spacing: 1px;
}

#site-footers #footer-contact {
    background-image: url(../images/icon-mail.svg);
    line-height: 52px;
    margin-right: 0;
}
#site-footers #footer-add  {
    background-image: url(../images/icon-map.svg);
	width: 315px;
    text-align: left;
    letter-spacing: 1px;
}
#site-footers #footer-add a  {
    display: inline-block;
    background-image:url(../images/icon-map2.svg);
    background-position: right 5px;
    background-repeat: no-repeat;
    text-decoration: none;
    padding-right: 50px;
}
#footer-add span {
    display: block;
    font-size: 15px;
    text-align: left;
}

#footer-instagram {
	width: 180px;
	background-image: url(../images/icon-insta-footer.svg);
	overflow: hidden;
	white-space: nowrap;
	text-indent: -500px;
}
#footer-instagram a {
	line-height: 55px;
	width: 180px;
	width: auto;
}
#footer-corpo,
#footer-opentime,
#footer-contact,
#footer-instagram,
#footer-add{
    box-sizing: content-box;
	background-repeat: no-repeat;
	height: 55px;
	background-size: contain;
	background-position: left center;
    font-size: 20px;
    padding: 0 0 0 58px;
    margin: 0 60px 35px 0;
}
#footer-corpo a,
#footer-opentime a,
#footer-contact a,
#footer-instagram a,
#footer-add a{
    display: block;
    text-decoration: none;
    color: rgba(0,0,0,1.00);
  }

#site-footers .footer-flex {
    display: flex;
    flex-wrap: wrap;
    width: 955px;
    margin: auto;
}










#page_top {
    position: fixed;
    bottom: -81px;
    right: 9px;
    background-image: url(../images/back_page_top@2x.png);
    width: 81px;
    height: 81px;
    overflow-x: hidden;
    overflow-y: hidden;
    text-indent: -400px;
    /* [disabled]background-color: rgba(127,127,127,1.00); */
    background-size: cover;
    z-index: 1005;
    white-space: nowrap;
}
#copyright-foot {
    width: 320px;
    margin-left: auto;
    margin-right: auto;
    border-top: 1px solid rgba(58,0,183,1.00);
    text-align: center;
    font-weight: 300;
    font-size: 0.85rem;
}




@media (max-width : 900px ){
main article>section{
	margin-left: 1rem;
	margin-right: 1rem;		
	}
#site_header h1 {
    width: 16vw;
	height: calc(100vw * 0.25);
    font-size: 0.9rem;
    font-weight: normal;
    background-size: cover;
    -webkit-box-shadow: 1px 1px 15px rgba(0,0,0,0.34);
    box-shadow: 1px 1px 15px rgba(0,0,0,0.34);
    color: rgba(255,255,255,0.00);
    left: 8px;
    position: absolute;
    margin-top: 6px;
    height: 16vw;
    white-space: nowrap;
    background-image: url(../images/logo-outline_mob.svg);
    background-color: rgba(255,255,255,0.97);
}
#site_header nav {
    position: relative;
    top: 3vw;
    padding-bottom: 0px;
    height: auto;
    width: 83vw;
    background-image: linear-gradient(180deg,rgba(255,255,255,1.00) 0%,rgba(255,255,255,1.00) 55.96%,rgba(255,255,255,0.00) 100%);
}
#site_header nav ul {
    display: flex;
    width: 100%;
    justify-content: space-between;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    padding-left: 0vw;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    height: auto;
}
#site_header nav ul li:nth-child(3) {
	margin-right: 5px;
}
#site_header nav ul li:nth-child(4) {
	margin-left: 5px;
}
#site_header nav ul li{
    margin-left: 5px;
	margin-right: 5px;
    text-align: center;
}
	#site_header nav ul li a {
		display: block;
		font-size: 0.79rem;
	}


	
	
	#site_header nav ul li a span{
		display: inline-block;
	}
	
	
	#site_header nav ul #nav_top {
    position: absolute;
    z-index: 1001;
    left: -127px;
    top: calc(-3vw + 0px);
    width: 16vw;
    height: 15vw;
    overflow: hidden;
    border-bottom: none;
    height: 16vw;
    /* [disabled]background-color: rgba(175,23,26,1.00); */
}
#site_header nav ul #nav_top a{
    height: 16vw;
    overflow: hidden;
    text-indent: -1019px;
    display: block;
    text-align: left;
    text-decoration: none;
    }


#top_image_area {
	margin-top: 15vw;
	margin-bottom: 50px;
}
#mnju_outer .kashi-info img {
	width: 100%;
    height: calc(100vw * 0.2);

    }
#main_inner {
	margin-top: 149px;
}#main_inner_sub {
	margin-top: 120px;
}
#header-image-area {
    margin-top: 110px;
}

.flex-box .img-up900-50per-down900-100per {
    height: auto;
    width: 100%;
}
#top_image_area .top-catch {
    height: 100%;
    position: absolute;
    z-index: 221;
    margin: 0px;
    padding-top: 0%;
    padding-left: 0px;
    padding-bottom: 0px;
    padding-top: 0%;
    box-sizing: border-box;
    background-image: linear-gradient(113deg,rgba(255,255,255,0.85) 0%,rgba(255,255,255,0.60) 67%,rgba(255,255,255,0.00) 67.01%);
    width: 41%;
}
#top_image_area {
    height: 32vh;
    margin-bottom: 50px;
    z-index: 10;
    position: relative;
    margin-left: auto;
    margin-right: auto;
    overflow-y: hidden;
}
	.LR-margin-1rem{
		margin-left: 1rem;
		margin-right: 1rem;
	}
.works-box,
.flex-top2 .works-box{
  width: 31%;
}
.works-box h3,
.flex-top2 .works-box h3{
 font-size:1rem;
}
.works-box .image-cut {
  height: calc(100vw * 0.16);
}	
#top_main_inner .flex-top2 {
	padding-left: 1rem;
	padding-right: 1rem;
}	
.gallery-title-p{
	text-align: center;
	background-color: rgba(248,246,243,0.75);		
	}
    
#site-footers .footer-flex {
    width: 75%;
    margin-left: auto;
    margin-right: auto;
}    
    
}




@media (max-width: 767px){
.flex {
	display: block;
	justify-content: space-between;
	align-items: stretch;
}
.flex #top_wagashibox {
	display: block;
}
.flex #top_wagashibox #bnr_wagashi_season, 
.flex #top_wagashibox #bnr_wagashi_all {
	margin-left: auto;
	margin-right: auto;
	margin-top: 19px;
}
#mnju_outer .kashi-info {
	width: 46%;
	margin-bottom: 30px;
    
}
#mnju_outer .kashi-info img {
	width: 100%;

    height: calc(100vw * 0.28);

    }
	.flex-box{
		padding: 0.5rem;
		box-sizing: border-box;
	}
.works-box,
.flex-top2 .works-box{
  width: 47%;
  display: flex;
  flex-wrap: wrap;
	font-size: 1rem;
	padding: 5px 0;
}
.works-box .image-cut {
  height: calc(100vw * 0.25);
}	


}
@media (max-width: 680px){
#header-image-area {
    margin-top: 0px;
}
#site_header nav ul #nav_top a {
text-align: center;    }
#site_header nav ul #nav_top {
	border-bottom: 1px solid rgba(155,155,155,1.00);
}	
#header-image-area {
	width: 100vw;
	overflow: hidden;
}
#header-image-area img {
    height: auto;
    width: 190vw;
	margin-left: -43vw;
}
	
}

@media (max-width: 600px){
#site_header h1 {
    width: 25vw;
	height: calc(100vw * 0.25);
    background-size: cover;
    left: 12px;
    position: absolute;
    z-index: 1000;
    margin-top: -1px;
}
#site_header nav {
	position: relative;
	top: 4vw;
	padding-bottom: 24px;
}
#site_header nav ul {
	display: flex;
	width: 100%;
	justify-content: space-between;
	margin-left: auto;
	margin-right: auto;
	position: relative;
	padding-left: 29vw;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	height: 90px;
	flex-wrap: wrap;
	padding-right: 83px;
}
#site_header nav ul li {
	list-style-type: none;
	text-align: center;
	width: 7em;
	border-bottom: 1px solid rgba(155,155,155,1.00);
	font-size: 0.9rem;
	font-weight: 400;
	margin-bottom: 12px;
}
#site_header nav ul #nav_top {
    position: static;
    z-index: 1238;
    top: 0px;
    width: 7em;
	border-bottom: 1px solid rgba(155,155,155,1.00);
    overflow: hidden;
    margin-bottom: 12px;
}
#site_header nav ul #nav_top a {
    height: 100%;
    /* [disabled]overflow: hidden; */
    text-indent: 0;
    display: block;
    padding-top: 10px;
    padding-bottom: 11px;
    }
#site_header nav ul li a {
	text-decoration: none;
	color: rgba(45,26,0,1.00);
	padding-top: 10px;
	padding-bottom: 11px;
	display: block;
}
#site_header nav ul li a:not(#nav_top):not(#nav_fb) {
padding: 0.6em 0.1em;
}
#top_image_area {
	margin-top: 11vw;
	margin-bottom: 50px;
}

	.wpsisac-image-fit img.wpsisac-slider-img{
		height:calc( 100vw * 0.61)!important;
	}
	.slick-slider .slick-list{
		height: calc(100vw * 0.61)!important;
	}
	.top-catch{
		display: none;
	}
	article#top-page h2{
		text-align: center;
		margin-top: 2rem;
	}
.flex-top2 {
	display: block;
}
.works-box,
.flex-top2 .works-box{
  width: 90%;
  display: flex;
  flex-wrap: wrap;
	margin-left: auto;
	margin-right: auto;
	font-size: 1rem;
	padding: 5px 0;
}
.works-box .image-cut {
  height: calc(100vw * 0.45);
}	
	#cat-title-h2 {
	font-size: 1.75rem;
		text-align: center;
}
#site-footers .footer-flex {
	width: auto;
	margin-left: 11%;
	margin-right: auto;
}
.flex-top2 {
    display: block;
}    
article#top-page .flex-top2 .news-box h3{
	margin: 0;
	font-size: 1.0rem;
	font-weight: 500;
}
article#top-page .flex-top2 .news-go-index{
    width: 100%;
    display: block;
    align-items: center;
    margin: 0.61em 0 ;
    text-align: center;
    padding-left: 0em;
    padding-right: 0em;
}
article#top-page .flex-top2 .news-go-index a{
    margin: 0;
    padding: 0.61em 0 0.61em 1.61em;
    font-size: 0.9rem;
    background-repeat: no-repeat;
    background-position: 5px center;
    height: 100%;
    background-size: 8px auto;
    display: block;
    text-align: center;
}
article#top-page .top-news .flex-top2 .news-box p.news-date{
    margin: 0 0.6rem 0 0;
}
    
.mobile-nondisp {
	display: none;
}
.list-in-list01>dl> dd {
    margin-bottom: 16px;
    margin-left: 15px;
}




}

@media (max-width : 470px ){
#site_header nav {
	position: static;
	top: 4vw;
	padding-bottom: 0px;
	height: auto;
	border-bottom-style: none;
}
#site_header nav ul {
	display: flex;
	width: 100%;
	justify-content: space-between;
	margin-left: auto;
	margin-right: auto;
	position: static;
	box-sizing: border-box;
	height: auto;
	flex-wrap: wrap;
	padding-left: 0px;
	padding-right: 0px;
	background-color: rgba(216,216,216,1.00);
	align-items: stretch;
	top: 13vh;
	margin-top: 24.5vw;
	border-top: 2px solid rgba(103,103,103,1.00);
	padding-bottom: 0px;
	background-image: linear-gradient(180deg,rgba(236,236,236,1.00) 0%,rgba(255,255,255,1.00) 100%);
}
#site_header nav ul li {
	box-sizing: content-box;
	list-style-type: none;
	text-align: center;
	width: 22%;
	border-bottom: 1px solid rgba(155,155,155,1.00);
	font-size: 0.95rem;
	font-weight: 400;
	margin-bottom: 6px;
}
#site_header nav ul #nav_top {
	position: static;
	z-index: 1001;
	left: 12px;
	top: calc(0vw + 0px);
	width: 100%;
      height: 2.0rem;
	overflow: hidden;
	margin-top: 0px;
}
#site_header nav ul #nav_top a {
	overflow: hidden;
	text-indent: 0px;
	display: block;
	margin-top: 0px;
    }

#site_header nav ul li:not(#nav_fb):not(#nav_top) a {
      align-items: center;
      height: 2.0rem;
    }
#site_header nav ul li:nth-child(4) a {
      align-items: center;
      height: 2.0rem;
    }
#site_header nav ul li a span {
	display: inline-block;
}
#site_header h1 {
    width: 25vw;
	height: calc(100vw * 0.25);
    background-size: cover;
    left: 12px;
    position: absolute;
    z-index: 1000;
    margin-top: -1px;
    top: 1px;
}
#top_image_area {
	width: 100%;
	height: auto;
	margin-top: 5px;
	margin-bottom: 50px;
}
#main_inner_sub {
	margin-top: -40px;
}
#main_inner {
	margin-top: 8px;
}
#map {
	width: 100%;
	height: 515px;
	margin-top: 20px;
}
#flowchart .flowchart-num::before{
	counter-increment: titleNum;
	content: counter(titleNum) " ";
	font-size: 1.5em;
	position: relative;
	font-weight: 100;
	top:0.2em;	
	width: 11%;
	text-align: center;
}
#flowchart .flowchart-num{

}
.flowchart-box-r{
	width:88.7%;
	box-sizing: border-box;
	padding-left: 1rem;
	padding-right: 1rem;
	background-color: rgba(255,255,255,0.80);
	min-height: 10rem;
}
#page_top {
    width: 70px;
    height: 70px;
}	
#site-footers .footer-flex {
	width: auto;
	margin-left: 5%;
	margin-right: auto;
}
#footer-corpo, #footer-opentime, #footer-contact, #footer-instagram, #footer-add {
	box-sizing: content-box;
	height: 55px;
	background-size: contain;
	background-position: left center;
	font-size: 20px;
	padding: 0 0 0 58px;
	margin-top: 0;
	margin-left: 0;
	margin-bottom: 35px;
	margin-right: 0px;
}
#site-footers #footer-add a {
	display: inline-block;
	background-position: right 5px;
	text-decoration: none;
	padding-right: 46px;
}
#site-footers #footer-add {
	width: auto;
	text-align: left;
	letter-spacing: 1px;
	margin-right: 0px;
}
#site-footers #footer-corpo {
	width: 330px;
	overflow: hidden;
	white-space: nowrap;
	text-indent: -500px;
	margin-right: 0;
	max-width: 99%;
}


}





@media (min-width: 900px){

#info_holiday {
}
#info_holiday #top_info_holiday {
	flex: 1 0 58%;
}
#top_info_holiday + div {
	padding-left: 24px;
}
#top_image_area .top-catch {
    width: 52%;
}
#top_image_area .top-catch span {
    padding-top: 30%;
    padding-left: 5%;
	text-align: left
}
.works-box .image-cut {
  height: calc(100vw * 0.16);
}
#site_header nav {
    position: relative;
    margin-left: auto;
    margin-right: 0px;
    padding-right: 0px;
    height: auto;
    width: 217px;
    right: 0px;
}#site_header h1 {

   /* backdrop-filter: blur(3px);*/
}
#site_header nav ul {
    justify-content: space-between;
    margin-left: auto;
    position: fixed;
    padding-left: 60px;
    padding-right: 17px;
    padding-bottom: 35px;
}
.flex-box .up900-50per-down900-100per {
    height: auto;
    width: 48%;
    align-self: flex-start;
}
#site_header nav ul li#nav-instagram a{
	background-position: right center;
    white-space: nowrap;
	background-size: auto 20px;
}

}

@media (min-width: 1024px){
#top_image_area .top-catch {
    width: 38%;
}
#top_image_area .top-catch span {
    padding-top: 45%;
}
#site_header nav {
    height: auto;
}
#site_header h1 {
    padding-bottom: 0px;
    /*backdrop-filter: blur(3px);*/
}
body main {
    max-width: 1200px;
    width: 76%;
    margin-left: 23px;
    margin-right: auto;
}
.works-box .image-cut {
  height: calc(100vw * 0.12);
}
#site-footers .footer-flex {
    display: flex;
    flex-wrap: wrap;
    width: 955px;
    margin: auto;
}

}




@media (min-width: 1300px){
#top_image_area .top-catch {
    width: 33%;
}
#top_image_area .top-catch span {
    padding-top: 50%;
    padding-right: 25%;
    text-align: center;
	font-size: 1rem;
}
	#site_header nav {
    height: auto;
    width: 240px;
	}
#site_header h1 {

   /* backdrop-filter: blur(3px);*/
}
#site_header nav ul {
    justify-content: space-between;
    margin-left: auto;
    position: fixed;
    padding-left: 50px;
    padding-right: 30px;
    padding-bottom: 73px;
}
#site_header nav ul li {
    list-style-type: none;
    text-align: right;
    width: 170px;
    border-bottom: 1px solid rgba(155,155,155,1.00);
    font-size: 0.9rem;
    font-weight: 400;
    padding-top: 5px;
    padding-bottom: 5px;
    margin-left: 0px;
    margin-right: 0px;
    margin-top: 0px;
    margin-bottom: 0px;
    padding-left: 19px;
    padding-right: 5px;
}
body main {
    max-width: 1200px;
    width: 79%;
    margin-left: 3%;
    margin-right: auto;
}
.works-box .image-cut {
  height: 167px;
}



}

@media (min-width: 1500px){
	#site_header h1{
		width: calc(100% - 300px);
	}
	#site_header nav {
    height: auto;
}

body main {
    max-width: 1200px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}
#site_header nav ul {
    justify-content: space-between;
    margin-left: auto;
    position: fixed;
    padding-left: 40px;
    padding-right: 30px;
    padding-bottom: 73px;
}
#site_header nav {
    height: auto;
    width: 240px;
	}
	
.works-box .image-cut {
  height: 195px;
}



}
.flex-box{
	padding-left: 1rem;
	padding-right: 1rem;
}
