@charset "UTF-8";
/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */
/**
 * 1. Change the default font family in all browsers (opinionated).
 * 2. Correct the line height in all browsers.
 * 3. Prevent adjustments of font size after orientation changes in
 *    IE on Windows Phone and in iOS.
 */
/* Document
   ========================================================================== */
html {
  line-height: 1.15;
  /* 2 */
  -ms-text-size-adjust: 100%;
  /* 3 */
  -webkit-text-size-adjust: 100%;
  /* 3 */
}
/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers (opinionated).
 */
body {
  margin: 0;
}

/**
 * Add the correct display in IE 9-.
 */
article,
aside,
footer,
header,
nav,
section {
  display: block; }

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0; }

/* Grouping content
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in IE.
 */
figcaption,
figure,
main {
  /* 1 */
  display: block; }

/**
 * Add the correct margin in IE 8.
 *//*
figure {
  margin: 1em 40px;
}
*/
figure{
    margin:0 auto;
}
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  overflow: visible;
  /* 2 */
  height: 0;
  /*高さをリセット*/
  margin: 0;
  /*マージンをリセット*/
  padding: 0;
  /*パディングをリセット*/
  border: 0;
  /*ボーダーをリセット*/ }

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */ }


/* Text-level semantics
   ========================================================================== */
/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */
a {
  background-color: transparent;
  /* 1 */
  -webkit-text-decoration-skip: objects;
  /* 2 */ }

/**
 * Remove the outline on focused links when they are also active or hovered
 * in all browsers (opinionated).
 */
a:active,
a:hover {
  outline-width: 0; }

/**
 * 1. Remove the bottom border in Firefox 39-.
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  text-decoration: underline dotted;
  /* 2 */ }

/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */
b,
strong {
  font-weight: inherit; }

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder; }

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */ }

/**
 * Add the correct font style in Android 4.3-.
 */
dfn {
  font-style: italic; }

/**
 * Add the correct background and color in IE 9-.
 */
mark {
  background-color: #ff0;
  color: #000; }

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%; }

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

/* Embedded content
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
audio,
video {
  display: inline-block; }

/**
 * Add the correct display in iOS 4-7.
 */
audio:not([controls]) {
  display: none;
  height: 0; }

/**
 * Remove the border on images inside links in IE 10-.
 */
img {
  border-style: none; }

/**
 * Hide the overflow in IE.
 */
svg:not(:root) {
  overflow: hidden; }

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers (opinionated).
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: sans-serif;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */ }

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible; }

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none; }

/**
 * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */
button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
  /* 2 */ }

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0; }

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText; }

/**
 * Change the border, margin, and padding in all browsers (opinionated).
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */ }

/**
 * 1. Add the correct display in IE 9-.
 * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */ }

/**
 * Remove the default vertical scrollbar in IE.
 */
textarea {
  overflow: auto; }

/**
 * 1. Add the correct box sizing in IE 10-.
 * 2. Remove the padding in IE 10-.
 */
[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto; }

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */ }

/**
 * Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */ }

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 */
details,
menu {
  display: block; }

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item; }

/* Scripting
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
canvas {
  display: inline-block; }

/**
 * Add the correct display in IE.
 */
template {
  display: none; }

/* Hidden
   ========================================================================== */
/**
 * Add the correct display in IE 10-.
 */
[hidden] {
  display: none; }


header nav {
  text-align: center;
}
header nav ul {
    margin: 0;
    padding: 1em;
    list-style-type: none;
}
header nav ul li {
    display: inline;
    /*margin-left: 1em;*/
}
header nav ul li ul {
    display: none;
}

a, a:hover {
  -webkit-transition: color 0.25s ease-in;
  transition: color 0.25s ease-in; }

/*! #######################################################################

	MeanMenu 2.0.7
	--------

	To be used with jquery.meanmenu.js by Chris Wharton (http://www.meanthemes.com/plugins/meanmenu/)

####################################################################### */
header nav {
  text-align: center; 
}
header nav ul {
    margin: 0;
    /*padding: 1em;*/
	padding:0 1em;
    list-style-type: none; 
}
header nav ul li {
    display: inline;
    /*margin-left: 1em;*/ 
}
header nav ul li ul {
    display: none;
}

a, a:hover {
  -webkit-transition: color 0.25s ease-in;
  transition: color 0.25s ease-in; }

/* hide the link until viewport size is reached */
a.meanmenu-reveal {
  display: none; }

/* when under viewport size, .mean-container is added to body */
.mean-container .mean-bar {
  
    float: left;
    width: 100%;
    /*float: right;
    width:60px;*/
    position: fixed;
    top: 0;
    left: 0;
    /*right:0;*/
    background-color: transparent;
    /*padding: 4px 0;
    min-height: 42px;*/
    /*z-index: 999999 !important; */
    z-index: 99;
}

.mean-container a.meanmenu-reveal {
  /*width: 27px;
  height: 27px;
  line-height: 27px;*/
    width:25px;
    height: 25px;
    line-height: 25px;
  /*padding: 13px 13px 11px 13px;*/
    padding: 5px 15px 5px 10px;
    /*padding:10px 12px 14px 10px;*/
  position: absolute;
  right: 0px !important;
  cursor: pointer;
  color: #fff;
  text-decoration: none;
  font-size: 16px;
  text-indent: -9999em;
  display: block;
  font-weight: 100;
  z-index: 100000; 
    /*background: transparent;*/

}
  .mean-container a.meanmenu-reveal span {
    display: block;
    /*background: #000;*/
      /*background: rgb(255,255,255);*/
      background: #61BB83;
    height: 3px;
    margin-top: 5px; }

.mean-container a.meanmenu-reveal span:first-child{
	margin-top:10px;
}

.mean-container .mean-nav {
    float: left;
    width: 100%;
    /*background: rgba(255, 255, 255, 0.8);*/
	background: #61BB83;
    margin-top: 50px;
}

.mean-container .mean-nav ul {
    padding: 0;
    margin: 50px auto 0 auto;
    width: 90%;
	border-radius: 40px;
    /*height: 100vh;*/
    list-style-type: none; 
    -webkit-flex-direction: column;
    flex-direction: column;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    overflow-y: scroll;
    overflow-x: hidden;
    height: calc(100vh - 50px) !important;
    }

.mean-container .mean-nav ul li {
    position: relative;
    /*float: left;*/
    width: 100%;
    padding: 0;
    margin: 0; 
    box-sizing: border-box;
}    
.mean-container .mean-nav ul li a {
    /*display: block;*/
    /*float: left;*/
    width: 100%;
    /*padding: 1em;*/
    padding:20px;
    margin: 20px auto;
    text-align: center;
	font-size:1.8rem;
    color: #61BB83;
    /*border-top: 1px solid #61BB83;*/
	border-radius:30px;
    text-decoration: none;
    text-transform: uppercase;
	box-sizing: border-box;
    background: rgba(255, 255, 255, 1); 
	
    -webkit-flex-direction: row;
    flex-direction: row;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	
	align-items: center;
	-webkit-align-items: center;
}

.mean-container .mean-nav ul li a img{
	margin-left: auto;
	margin-right: auto;
}

.mean-container .mean-nav ul li:nth-child(2) a img{
	width:70%;
}

.mean-container .mean-nav ul li:nth-child(3) a img,
.mean-container .mean-nav ul li:nth-child(4) a img{
	width:30%;
}
/*
.mean-container .mean-nav ul li:last-child a{
	border-bottom: 1px solid #61BB83 !important;
}*/

.mean-container .mean-nav ul li a span{
	font-size:1.2rem;
	margin-left: 10px;
}

.mean-container .mean-nav ul li a figure{
	width:40px;
	height: auto;
	margin: 0 10px 0 0;
}

.mean-container .mean-nav ul li a figure img{
	width:40px;
	height: 40px;
}
/*
.mean-nav .menu li:nth-child(3) figure img,
.mean-nav .menu li:nth-child(4) figure img, 
.mean-nav .menu li:nth-child(5) figure img {
    margin-bottom: 0;
}

.mean-container .mean-nav ul li:nth-child(1) a{
    border-top: none;
}*/
.mean-container .mean-nav ul .sub-menu {
    position: static; 
}

.mean-container .mean-nav ul li li a {
  padding: 1em 10%;
  border-top: 1px solid rgba(255, 255, 255, 0.25);
  opacity: 0.75;
  filter: alpha(opacity=75);
  text-shadow: none !important;
  visibility: visible;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

.mean-container .mean-nav ul li.mean-last a {
  border-bottom: 1px solid rgba(255, 255, 255, 0.25);
  text-shadow: none !important;
  margin-bottom: 0; }

.mean-container .mean-nav ul li li li a {
  width: 70%;
  padding: 1em 15%; }

.mean-container .mean-nav ul li li li li a {
  width: 60%;
  padding: 1em 20%; }

.mean-container .mean-nav ul li li li li li a {
  width: 50%;
  padding: 1em 25%; }

.mean-container .mean-nav ul li a:hover {
    /*background: rgba(10, 49, 49, 1);*/
    background: #FFF62C;
    border-bottom: 0;
}

.mean-container .mean-nav ul li a.mean-expand {
  margin: auto;
  width: 26px;
  height: auto;
  text-align: center;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 2;
  font-weight: 700;
  background: rgba(255, 255, 255, 0.9);
  border: none !important; }

.mean-container .mean-nav ul li a.mean-expand:hover {
  background: #0b4e83; }

.mean-container .mean-push {
  float: left;
  width: 100%;
  padding: 0;
  margin: 0;
  clear: both; }
/*
.mean-container a.meanmenu-reveal.meanclose{
    padding:0;
    width:50px;
    height: 50px;
    line-height: 50px;
    box-sizing: border-box;
    color: #444;
}*/

.mean-container a.meanmenu-reveal.meanclose{
    /*background: rgba(69, 81, 26, 0.8);*/
	/*background: rgba(255, 92, 0, 0.6);*/
    padding:0;
    width:50px;
    height: 50px;
    line-height: 50px;
    box-sizing: border-box;
    /*color: #aed383;*/
	
	display: block;
	/*position:absolute;*/
	position: fixed;
	top: 0px;
    /*right: 10px;*/
    cursor: pointer;
    border-radius: 1px;
    text-align: center;
}
.mean-container a.meanmenu-reveal.meanclose > div{
	width: 30px;
    height: 3px;
    margin: 0 auto;
    background:#61BB83;
}

.mean-container a.meanmenu-reveal.meanclose > div.cl01 {
    transform: rotate(45deg);
	/*margin-top:15px;*/
	margin-top:22px;
}

.mean-container a.meanmenu-reveal.meanclose > div.cl02 {
    transform: rotate(-45deg);
	margin-top:-3px;
	
}

.mean-nav .wrapper {
  width: 100%;
  padding: 0;
  margin: 0; }

/* Fix for box sizing on Foundation Framework etc. */
.mean-container .mean-bar, .mean-container .mean-bar * {
  box-sizing: content-box; }

.mean-remove {
  display: none !important; }


/*-----------------------------------
top
-----------------------------------*/
html, body {
    height: 100%;
    font-size: 62.5%;
}

@font-face {
  font-family: 'Noto Sans JP';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: local("Noto Sans CJK JP"),
    local("Noto Sans JP"),
    url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Regular.woff2) format('woff2'),
    url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Regular.woff) format('woff'),
    url(//fonts.gstatic.com/ea/notosansjp/v5/NotoSansJP-Regular.otf) format('opentype');
}

body {
    margin: 0;
    padding: 0;
    /*font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;*/
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    /*font-feature-settings: "palt";
    -webkit-font-feature-settings: "palt";*/
    -webkit-font-feature-settings: 'pkna';
    font-feature-settings: 'pkna';
    /*letter-spacing: 0.05em;*/
	letter-spacing: 0.5em;
    -webkit-font-smoothing: antialiased;
    line-height: 1;
	background-color: #CAE9F7;
    color: #313131;
    /*font-size: 18px;*/
}

h1, h2, h3, h4, body, header, article,main, section, footer, div, a, dt, dd, dl, ul, ol, li, p{
  box-sizing: border-box; }

section {
  padding: 0; }

li {
  list-style-type: none; }

strong {
  font-size: 2rem; }

a{
    text-decoration: none;
	box-sizing: border-box;
}

figure img{
    flex-shrink: 0
}

.wrapper {
    position: relative;
    width: 100%;
    height: auto !important;
    margin:0 auto;
    overflow-x: hidden;
    box-sizing: content-box;
}

.mainbox,
.pagebox{
    width: 100%;
    margin: 0 auto;
    padding: 0;
}

/*title*/
.content {
    width: 100%;
    -webkit-scroll-behavior: smooth;
    scroll-behavior: smooth;
    -webkit-scroll-snap-type: mandatory;
    scroll-snap-type: mandatory;
    -webkit-scroll-snap-points-y: repeat(100%);
    scroll-snap-points-y: repeat(100%);
    margin:0 auto;
}

.block{
    max-width:1040px;
    width:90%;
	margin-top: 0;
    margin-bottom: 80px;
    margin-left:auto;
    margin-right: auto;
    position: relative;
	border-radius: 60px;
	background-color:#fff;
}


.block p {
    font-size: 1.6rem;
    line-height: 1.9;
    margin-top: 0;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}

.cont_wrap{
    background-image: url("../images/common/bg_color.jpg");
    background-repeat: repeat;
	background-position: bottom;
	background-size:100%;
    width:100%;
    margin:0 0 80px 0;
	padding-top: 30px;
}

.row_wrap{
    -webkit-flex-direction: row;
    flex-direction: row;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    -webkit-justify-content: space-between;
    /*align-items: flex-start;
    -webkit-align-items: flex-start; */
    margin-left: auto;
	margin-right: auto;
    /*padding-bottom: 5%;*/
    /*width:80%;*/
    /*width:85%;*/
}

.mainbox{
	width:100%;
	margin:0 auto;
	background-image: url("../images/design_top.png"),url("../images/design_bottom.png");
	background-repeat: no-repeat;
	background-size: contain;
	background-position: top center,bottom center;
	padding-top: 125px;
	padding-bottom: 50px;
	
}

/*---------------------------------------
header
-----------------------------------------*/
header {
  width: 100%;
}

.cb-header{
    /*box-shadow: 0 0 3px #ccc;*/
    /*padding:20px 0;*/
    padding:0px 0;
    position: fixed;
	/*position: relative;*/
    z-index: 10;
    height: 80px;
    box-sizing: border-box;
	background-color:rgba(255,255,255,1);
    /*border-bottom:1px solid rgba(255,255,255,0.5);*/
    /*opacity: 0.9;
    filter: alpha(opacity=90);*/
}


.head_01{
    /*background: rgba(255, 255, 255, 0.9);*/
    -webkit-flex-direction: row;
    flex-direction: row;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-content: center;
    align-content: center;
    justify-content: space-between;
    -webkit-justify-content: space-between;
	flex-wrap: wrap;
	width:100%;
	max-width: 1040px;
	height: 80px;
	margin:0 auto;
}

.header_logo {
	width:70px;
	height: 70px;
    z-index: 9999999;
	margin:0;
}

.header_logo{
	/*font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;*/
    color:#016D27;
	font-size:1rem;
	font-weight: bold;
	line-height: 1.5;
    text-decoration: none;
    text-align:justify;
	text-align-last:justify;
    display: block;
}

.header_logo img{
	width:60px;
	height: auto;
	border: 0;
}

.sp{
    display: none;
}

.navbar{
	width:80%;
	margin-right:0;
}

.menu{
	display: flex;
	align-items: center;
    height: 70px;
}

.menu li{
	margin: auto;
	padding-left:30px;
	padding-right: 30px;
}

.menu li a{
	display: block;
}

.menu li a img{
	width:100%;
	height: auto;
}

/*---------------------------------------
toppage
-----------------------------------------*/
/*mainvisual*/
.mv_widewrap{
	width:100%;
	max-width:100%;
	background-image: url("../images/top/mv_bg.png");
    /*background-position: center -100px !important;*/
	background-position: center top;
    /*background-size:contain;*/
    background-repeat: no-repeat;
}
.mv_wrap {
    width: 100%;
    /*height: 600px;*/
    height: 700px;
	background-image: url("../images/bg.png");
	background-size: cover;
	background-repeat: no-repeat;
	background-position:center top; 
    margin: 80px auto 0 auto;
	padding-top:50px;
	padding-bottom: 50px;
    box-sizing: border-box;
    position: relative;
	text-align: center;
}

.mainvisual{
	width:100%;
	max-width: 1040px;
	border-radius: 60px;
	background: #fff;
	padding:20px;
	box-sizing: border-box;
	margin: 0px auto;
	/*position: absolute;
	top:0;
	bottom:0;
	left:0;
	right:0;
	margin:auto;*/
}

.mainvisual img{
	width:100%;
	height: auto;
	
	/*mix-blend-mode: multiply;*/
}
/*mv_date*/
.mv_date{
	width:100%;
	background-color: #fff;
	margin:0 auto;
	padding:0;
	position: relative;
}

.mv_date ul{
	width:100%;
	max-width: 1040px;
	margin:0 auto;
	align-content: center;
}

.mv_date ul li:first-child{
	width:30%;
	/*display: flex;
	align-items: center;*/
}

.mv_date ul li:nth-child(2){
	width:30%;
	display: flex;
	justify-content: center;
}

.mv_date ul li:nth-child(3){
	width:40%;
}

.mv_date ul li:first-child img{
	width:100%;
	height: auto;
}

/*time*/
.mv_date ul li:nth-child(2) img{
	width:70%;
	height: auto;
}

/*address*/
.mv_date ul li:nth-child(3) img:first-child{
	width:60%;
	height: auto;
	margin-bottom: 10px;
}

.mv_date ul li:nth-child(3) img:nth-child(2){
	width:60%;
	height: auto;
	margin-bottom: 10px;
}

.mv_date ul li:nth-child(3) img:nth-child(3){
	width:90%;
	height: auto;
}


.mv_label{
	position: absolute;
	top:-50px;
	/*right:0;
	width:120px;
	height: 120px;*/
}

/*pr*/
.pr{
	width:100%;
	background-color: #FFC400;
	margin:0 auto;
	padding:0;
}

.pr .row_wrap{
	align-items: center;
	justify-content: center;
}

.pr_01{
	background-color: #fff;
	position: relative;
	height: 50px;
	text-align: center;
	display: flex;
}

.pr_01::before{
	content: "";
	border-top: 25px solid transparent;
	border-bottom: 25px solid transparent;
	border-left: 25px solid #fff;
	position: absolute;
	right:-25px;
}

.pr_01 img{
	margin:auto;
	width:80%;
	height: auto;
}

.pr_02{
	padding-left: 50px;
}


/*checkpoint*/
.checkpoint{
	background-color: #FFFACB;
	width:100%;
	margin:0 auto;
	padding:0;
}

.checkpoint li{
	width:24%;
}

/*common*/
figure img,
.mainvisual img,
.mv_label img,
.mv_date li img,
.checkpoint li img,
.about_headline img,
.about_text img,
.cont_list dt img{
	width:100%;
	height: auto;
}

.mv_date .row_wrap,
.pr .row_wrap,
.checkpoint .row_wrap{
	max-width:1040px;
	width:100%;
	margin:0 auto;
	padding:20px;
	box-sizing: border-box;
}

.text_right{
	text-align: right !important;
	font-size:1.2rem !important;
}

.text_left{
	text-align: left !important;
	font-size:1.2rem !important;
	
	width:90%;
	max-width: 850px;
}


/*header_title*/
.title_wrap{
	width:60%;
	position: absolute;
	top:-30px;
	left:0;
	right: 0;
	margin: auto;
}

.header_title{
	width:100%;
    display: inline-block;
    position: relative;
    height: 32px; 
    line-height: 32px;
    text-align: center;
    padding: 0px 100px;
    font-size: 1.8rem; 
    background: #479796;
    color: #FFFFFF;
    box-sizing: border-box;
	margin-bottom: 70px;

}

.header_title:before,
.header_title:after {
	position: absolute;
    content: "";
    width: 0px;
    height: 0px;
    z-index: 1;
}
 
.header_title:before {
    top: 0;
    left: -10px;
	border: 10px solid #479796;
    border-left-color: transparent;
    border-width: 16px 0px 16px 10px;
}
 
.header_title:after {
	top: 0;
	right: -10px;
	border: 10px solid #479796;
    border-right-color: transparent;
    border-width: 16px 10px 16px 0px;
}

.header_title img{
	width:90%;
	height: auto;
}

/*
.header_title.sub{
	color:#222;
}*/

/*出店紹介、出店一覧用*/
.block.child .header_title{
    background: #9866B2;
}

.block.child .header_title:before {
    /*top: 0;
    left: -10px;*/
	border: 10px solid #9866B2;
    border-left-color: transparent;
    border-width: 16px 0px 16px 10px;
}
 
.block.child .header_title:after {
	/*top: 0;
	right: -10px;*/
	border: 10px solid #9866B2;
    border-right-color: transparent;
    border-width: 16px 10px 16px 0px;
}

.block.child .header_title img{
	width:30%;
	height: auto;
	margin: 3px auto;
}

/*stage*/
#stage .header_title{
    background: #E76F83;
}

#stage .header_title:before {
    /*top: 0;
    left: -10px;*/
	border: 10px solid #E76F83;
    border-left-color: transparent;
    border-width: 16px 0px 16px 10px;
}
 
#stage .header_title:after {
	/*top: 0;
	right: -10px;*/
	border: 10px solid #E76F83;
    border-right-color: transparent;
    border-width: 16px 10px 16px 0px;
}

#stage .header_title img{
	width:37%;
	height: auto;
}


/*about-----------------------------------------*/
.about_title{
	width:25%;
	position: absolute;
	top:-75px;
}

.about_title img{
	width:100%;
	height: auto;
}

.about_title div{
	width:100%;
	text-align: right;
}

.about_title div img{
	width:30%;
}

.about_ans{
	width:65%;
	/*position: absolute;
	right:40px;
	top:40px;*/
	display: block;
	margin:0 0 50px auto;
	padding-top: 70px;
	
	padding-right: 40px;
}

.about_headline{
	margin:0 auto 50px auto;
	box-sizing: border-box;
}

.about_headline div{
	width:100%;
	margin-bottom: 15px;
}

.about_headline div:first-child{
	text-align: left;
}

.about_headline div:first-child img{
	width:40%;
	margin-left:0;
}

.about_headline div:nth-child(2){
	text-align: center;
}
.about_headline div:nth-child(2) img{
	width:70%;
	margin-left:auto;
	margin-right:auto;
	margin-top: auto;
	/*position: absolute;
	left:0;
	right:0;
	bottom:0;*/
}

.about_headline div:last-child{
	text-align: right;
}
.about_headline div:last-child img{
	width:30%;
	margin-right:0;
	margin-left: auto;
}

.box_half .day_sub {
	font-size: 14px;
}

#access .box_half{
	width:45%;
	background: #FFFACB;
	border-radius: 60px;
	box-sizing: border-box;
	padding:0 50px;
	position: relative;
	margin:50px auto;
}


#access .box_half .header_title{
	width:100%;
	margin-left:auto;
	margin-right: auto;
	text-align: center;
}

#access .box_half dl{
	margin:40px auto 20px;
	display: flex;
	flex-flow: wrap;
}


#access .box_half dl dt,
#access .box_half dl dd,
#access .box_half p{
	font-size:1.6rem;
	line-height: 1.8;
	font-weight: bold;
	margin-left:0;
	margin-right: 0;
}

#access .box_half dl dt{
	width:60px;
}

#access .box_half dl dd{
	width:calc( 100% - 60px);
}

#access .box_half p{
	margin: 60px auto 50px;
}

.list_mark{
	width:80%;
	margin:0 auto 40px auto;
	padding:0;
}

.list_mark li{
	font-size:1.2rem;
	line-height: 1.5;
	margin-bottom: 10px;
	text-indent: -1em;
	padding-left: 1em;
}

.list_mark li::before{
	content: "※";
}

.map iframe{
	border: 0;
	width:100%;
	height: 300px;
	border-bottom-right-radius: 60px;
	border-bottom-left-radius: 60px;
}

/*4contents-----------------------------------------*/
#content4{
	background: #FFFACB;
	padding: 20px 40px;
}

.cont_list{
	width:45%;
	-webkit-flex-direction: row;
    flex-direction: row;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    -webkit-justify-content: space-between;
    /*align-items: flex-start;
    -webkit-align-items: flex-start; */
	margin:20px auto;
}

.cont_list dt,
.cont_list dd{
	margin-left:0;
	margin-right: 0;
}

.cont_list dt{
	width:30%;
	display: flex;
}

.cont_list dd{
	width:60%;
}

.cont_list dd p{
	text-align: left;
	font-size: 1.4rem;
	line-height: 1.8;
	padding-right: 4px;
}

.cont_list_title{
	width:100%;
	margin: 0 auto 20px auto;
}

.cont_list_title img{
	width:90%;
	height: auto;
}

/*program-----------------------------------------*/
#main_program{
	position: relative;
	padding-top: 150px;
	margin-top: 200px;
}
.main_img{
	width:100%;
	text-align: center;
	position: absolute;
	top:-100px;
	left:0;
	right:0;
	margin:auto;
	z-index: 1;
}

.main_img img:last-child{
	width:70%;
	max-width: 720px;
	height: auto;
	margin:0 auto;
}
/*shop_list*/
.block.child{
	width:85%;
	background: #F8F7F7;
	padding:20px;
	margin:80px auto 40px auto;
	position: relative;
}

.block.child::before,
.block.child::after{
	content: "";
	width:120px;
	height: 200px;
	z-index: 1;
	background-size: contain;
	background-repeat: no-repeat;
	position: absolute;
	top:-20px;
}

.block.child::before{
	background-image: url("../images/leaves_left.svg");
	left:-20px;
	background-position: top left;
}

.block.child::after{
	background-image: url("../images/leaves_right.svg");
	right:-20px;
	background-position: right top;
}

.block.child .text_right{
	width: 90%;
    margin: 20px auto 0 auto;
}

.genre.row_wrap{
	width:55%;
	justify-content: space-around;
	margin-bottom: 0px;
}

.genre.row_wrap li {
	font-size: 1.6rem;
}


.shop_list{
	width:calc( 100% / 3 );
	margin: 20px auto;
	padding-left: 40px;
	padding-right: 40px;
}

.shop_ph{
	width:100%;
	height: auto;
	margin:0 auto 20px auto;
	padding:0;
}

.shop_ph img{
	width:100%;
	height: auto;
	border-radius: 20px;
}

.genre{
	margin:0 auto 20px auto;
	padding:0;
}

.genre li{
	position: relative;
	padding-left: 30px;
	margin-bottom: 10px;
	
	font-size:1.2rem;
	line-height: 1.5;
}

.genre li::before{
	content: "";
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center 3px;
	width:25px;
	height: 25px;
	position: absolute;
	left:0;
	top:0;
}

.genre li.genre_01::before{
	background-image: url("../images/icon_genre_01.svg");
}

.genre li.genre_02::before{
	background-image: url("../images/icon_genre_02.svg");
}

.genre li.genre_03::before{
	background-image: url("../images/icon_genre_03.svg");
}

.genre_01{
	color:#F38200;
}

.genre_02{
	color:#35B1C5;
}

.genre_03{
	color:#615CA3;
}

.shop_name,
.shop_name a{
	font-size:1.2rem;
	line-height: 1.5;
	font-weight: bold;
	color:#000;
	text-align: center;
}

.row_wrap.s_list{
	position: relative;
	margin-bottom: 50px;
}

.row_wrap.s_list.none{
	margin-bottom: 0;
	justify-content: flex-start;
}

.row_wrap.s_list::after{
	content: "";
	background-image: url("../images/line_dot.svg");
	background-size: contain;
	background-repeat: repeat-x;
	background-position: left center;
	width:calc( 100% - 80px);
	height: 20px;
	position: absolute;
	bottom: -20px;
	left: 0;
	right: 0;
	margin: auto;
}

.row_wrap.s_list.none::after{
	content: none;
}

.row_wrap.s_list.fourth .shop_list{
	width:20%;
	padding-left: 0;
	padding-right:0;
}

.row_wrap.s_list.none .shop_list {
	width:25%;
	padding-left: 0;
	padding-right:0;
	
}

.s_list_text{
	font-weight: bold;
	color:#479796;
}

/*list*/
.block.child.no_bg{
	width:90%;
	background: #fff;
	padding-left:0;
	padding-right: 0;
}

.block.child.no_bg .title_wrap::before{
	content: "";
	background-image: url("../images/leaves_list.svg");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: top center;
	z-index: 1;
	position: absolute;
	top:-10px;
	left:0;
}


.shoplist_box{
	width:30%;
	margin:40px auto;
}

.shoplist_title,
.shoplist_text{
	margin:0 auto;
	padding: 0;
}

.shoplist_box section{
	position: relative;
	margin:0 auto ;
	padding:20px 20px 70px 20px;
	min-height: 600px;
}

.shoplist_box:first-child section{
	background: #FEEBC8;
}
.shoplist_box:nth-child(2) section{
	background: #D3EDFB;
}
.shoplist_box:nth-child(3) section{
	background: #E9E6F3;
}

.shoplist_text{
	margin:0 auto 30px auto;
}

.shoplist_box:first-child section .shoplist_img{
	left:-10px;
	bottom:-30px;
	width:25%;
}

.shoplist_box:nth-child(2) section .shoplist_img{
	right:30px;
	width:5%;
}

.shoplist_box:nth-child(3) section .shoplist_img{
	left:0;
	right:0;
	margin:auto;
}

.shoplist_img{
	width:30%;
	height: auto;
	position: absolute;
	bottom:-10px;
}

.shoplist_box img,
.shoplist_img img{
	width:100%;
	height: auto;
}



/*stage----------------------------------------*/
#stage{
	background: #F7D3DD;
	width:75%;
	max-width: 800px;
	padding:50px 20px 50px 40px;
}

#stage::before{
	content: "";
	background-image: url("../images/illust_stage_01.svg");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: top center;
	width:150px;
	height: 200px;
	z-index: 1;
	position: absolute;
	top:-50px;
	left:-50px;
}

#stage::after{
	content: "";
	background-image: url("../images/illust_stage_02.svg");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: top center;
	width:150px;
	height: 200px;
	z-index: 1;
	position: absolute;
	top:-50px;
	right:-50px;
}


.list_line{
	width:55%;
	margin:0;
	padding:0;
	display: flex;
	flex-wrap: wrap;
}

.list_line dt,
.list_line dd{
	font-size:1.4rem;
	line-height: 1.4;
	font-weight: bold;
	color:#572A06;
	padding:0 0 10px 0;
	margin: 0 0 10px 0;
	border-bottom: 2px solid #fff;
}

.list_line dt{
	width:120px;
}

.list_line dd{
	width:calc(100% - 130px);
}

.img_box{
	width:45%;
	position: relative;
	text-align: center;
	padding-top: 30px;
	margin-bottom: 30px;
}

.img_box img:first-child{
	width:30%;
	height: auto;
}

.img_box img:last-child{
	width:60%;
	height: auto;
}

.illust_stage{
	width:100px;
	height: auto;
	position: absolute;
	left:0;
	bottom:-30px;
}

.illust_stage img{
	width:100%;
	height: auto;
}


/*banner--------------------------------------------*/
.block.sub{
	width:80%;
	max-width:900px;
	padding:70px 0 40px 0;
}
.banner{
	width:80%;
	height: auto;
}

/*contact--------------------------------------------*/
.block.contact{
	padding:70px 40px 40px 40px;
	margin-bottom: 0;
}

.block.contact .box_half{
	display: flex;
	width:48%;
	justify-content: space-between;
	flex-wrap: wrap;
}

.contact_box{
	width:30%;
	max-width: 150px;
	background:#000;
	color:#fff;
	margin:0 auto;
	padding:5px;
	font-size:1rem;
	line-height: 1.6;
	font-weight: bold;
	display: flex;
    align-items: center;
    box-sizing: border-box;
}

.contact_title{
	text-align: center;
	width:100%;
}

.contact_info{
	width:70%;
	margin:0 auto;
	box-sizing: border-box;
	padding: 10px;
}

.contact_info h4{
	margin: 0 auto 10px auto;
}

.contact_info h4,
.list_contact a{
	color:#000;
	font-size:1.2rem;
	line-height: 1.5;
	word-wrap: break-word;
}

.list_contact{
	padding:0;
	margin: 0;
}

.list_contact li{
	margin-bottom: 10px;
	position: relative;
	padding-left: 25px;
}

.list_contact li::before{
	content: "";
	background-size:contain;
	background-repeat: no-repeat;
	background-position: center;
	width:20px;
	height:20px;
	position: absolute;
	top:0;
	bottom:0;
	left:0;
	right: 0;
	margin: auto 0;
}

.list_contact li:first-child::before{
	background-image: url("../images/icon_email.svg");
}

.list_contact li:last-child::before{
	background-image: url("../images/icon_tel.svg");
}

.block{
    opacity : 0.1;
    transform : translate(0, 50px);
    transition : all 500ms;
}

.block.scrollin{
    opacity : 1;
    transform : translate(0, 0);
}



.row_wrap a:hover,
.arrow_box .row_wrap li:hover,
.about_minibox.row_wrap:hover,
.row_wrap.list_arrow li:hover{
    opacity: 0.8;
    filter: alpha(opacity=80);
}


p a, li a {
  color: #096D92; }


/*---------------------------------------
footer
-----------------------------------------*/

footer {
    width: 100%;
    margin: 0 auto !important;
		padding: 15px 0 10px 0;
    text-align: center;
    box-sizing: border-box;
    background-color:#fff;
	color:#000;
	font-weight: 400;
}

footer div.row_wrap{
	align-items: center;
	max-width: 1040px;
	width:100%;
	margin: 0 auto;
}

footer dl{
	width:57%;
	margin-left: 0 !important;
}

/*footer dl dt*/


footer dl dd ul,
footer dl dd ul li{
	width:100%;
	margin-left:0;
	margin-right:0;
	padding:0;
}

footer dl dd ul li{
	text-align: left;
	font-size:1.6rem;
	line-height: 1.8;
	display: flex;
	margin-bottom: 5px;
}

footer dl dd ul li a{
	width: calc( 100% - 100px );
	display: block;
	margin-left: 20px;
}

.ftr_text{
	width:50%;
	font-size:1.5rem;
	line-height: 1.8;
	text-align: left;
	font-weight: bold;
	margin:0 auto 0 0;
}

.ftr_logo{
	width:17%;
	max-width:180px;
	display: block;
	margin:auto 0 auto auto;
}

.ftr_logo img,
footer dl dd ul li a img{
	width:100%;
	height: auto;
}
.copyright{
    font-size:1.2rem;
    line-height: 1.6;
    font-style: normal;
    letter-spacing: 0.1em;
    width:100%;
    margin:0 auto !important;
}

.pagetop {
    display: none;
    position: fixed;
    bottom: 0;
    right: 0 ;
    z-index: 10;
	margin-top: 0;
    margin-bottom: 0;
}

.pagetop a {
    text-align: center;
    width: 60px;
    height: 60px;
    display: block;
	background-color:#61BB83;
	position: relative;
}
.pagetop a img{
	width: 40px;
    height: auto;
    margin: auto;
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
}

.pagetop a:hover {
    display: block;
    opacity: 0.6;
    filter: alpha(opacity=60);
}


.fair_block {
	background: #fff100;
	padding: 20px;
	max-width: 1040px;
	width: 90%;
  margin-top: 0;
  margin-bottom: 80px;
  margin-left: auto;
  margin-right: auto;
}
.fair_block p {
	text-align: left;
}
.fair_img img {
	width: 600px;
}
.fair_title {
	text-align: center;
	font-size: 50px;
	font-weight: bold;
	margin: 0 0 30px;
	color: #26b7bc;
}
.fair_block p.fair_txt {
	text-align: center;
	font-size: 20px;
	font-weight: bold;
	line-height: 1.5;
}
.fair_txt-br {
	margin-left: 20px;
}




/*---------------------------------------
responsive
-----------------------------------------*/
@media screen and (max-width: 1000px) {
	.fair_title {
		font-size: 40px;
	}
	.fair_txt-br {
		display: block;
		margin-left: 0;
	}
}

/*@media (orientation: landscape)and (max-width: 750px)*/
@media (orientation: landscape)and (min-width: 480px)and (max-width: 750px){
	/*mainvisual*/
	.mv_wrap{
		height: 900px;
		min-height: 900px;
	}
	
	/*about*/
	.about_ans {
		padding: 100px 10px 10px 10px;
	}
	
	/*content4*/
	.cont_list dd p{
		font-size:1.6rem;
	}
	
	/*mainprogram*/
	#main_program {
    	padding-top: 90px;
    	margin-top: 130px;
	}
	
	.main_img{
		top:-50px;
	}
	
	.genre li{
		font-size:1.4rem;
	}
	.shop_name, .shop_name a{
		font-size:1.5rem;
	}
	
	/*stage*/
	.list_line dt{
		width:130px;
	}
	
	/*headertitle*/
	#access .box_half .header_title img, 
	.block.child .header_title img, 
	.block.child.no_bg .header_title img {
		width: 35% !important;
		margin-top: 3px;
	}

}

@media (orientation: landscape)/*and (min-width: 750px)*/and (max-width: 1080px){
	/*
	.head_01{
		padding-left:10px;
		padding-right: 10px;
	}*/
/*
	.header_logo{
		width:30%;
	}

	.mv_widewrap{
		background-image: url("../images/top/mv_bg_sp_land.png") !important;
		background-size: 100% !important;
	}
*/
	.mv_wrap{
		/*height: 900px;
		min-height: 900px;*/
		/*
		background-image: url("../images/top/mv_bg_sp_land.png") !important;
		background-size: 100% !important;
		background-repeat: no-repeat;
		*/
	}
}

@media screen and (max-width: 480px) {
	/*mv_wrao*/
	.mv_wrap{
		height: 600px;
	}
	/*headertitle*/
	#access .box_half .header_title img,
	.block.child .header_title img,
	.block.child.no_bg .header_title img{
		width:50% !important;
	}
	
	/*about*/
	.about_ans{
		padding:10px;
	}
	
	/*mainprogram*/
	#main_program {
		padding-top: 20px;
		margin-top: 100px;
	}
	.main_img{
		top:-40px;
	}
	
	/*stage*/
	.list_line dt,
	.list_line dd,
	.contact_box,
	.contact_info{
		width:100%;
		max-width:100%;
	}
	
	.list_line dt {
		width: 100%;
		border-bottom: none;
		padding-bottom: 0;
	}
	
	.list_line dd{
		padding-top: 0;
	}
	
	/*contact*/
	.contact_box{
		padding: 0;
	}
	
	.block.contact {
		padding: 40px 20px 0px 20px;
	}

}



@media screen and (max-width: 750px) {
  main, header, footer, .content, .main, .mainvisual, h2, .mainbox,.row_wrap,
	.block.contact .box_half,
	#access .box_half dl dt,
	#access .box_half dl dd,
	.cont_list,
	.shoplist_box,
	.row_wrap.s_list::after,
	.list_line,
	.img_box,
	.header_title img,
	.ftr_text{
      width: 100%;
    }
	
	/*header*/
	.cb-header,
	.head_01{
		height: 50px;
	}

	.header_logo,
	.header_logo img{
		height: 40px;
		width:40px;
	}
	
	.mv_wrap{
		margin-top: 50px;
		/*height: 600px;*/
	}


	/*common parts*/
	.sp{
		display: block;
	}
	.pc{
		display: none;
	}
/*
	.block > .header_title{
		text-align: center !important;
	}

	.header_title figure{
		margin-left: auto !important;
		margin-right: auto;
	}
*/

    .head_01,
	.block{
		padding-left: 10px;
		padding-right: 10px;
    }
	
	.mainvisual,
	.block,
	#access .box_half,
	.banner,
	#stage{
		width:90%;
		max-width: 90%;
	}
	
	.header_title,
	#access .box_half .header_title{
		padding:0;
	}
	
	/*
	#about .box_half .header_title img,
	.block.child .header_title img,
	.block.child.no_bg .header_title img{
		width:50%;
	}*/
	
	.mv_date .row_wrap{
		justify-content: center;
	}
	
	.mv_date .row_wrap li{
		text-align: center;
	}
	
	.mv_date .row_wrap li:first-child,
	.mv_date .row_wrap li{
		width:45%;
	}
	
	.mv_date .row_wrap li:last-child{
		width:80%;
		margin-top: 20px;
	}
	
	.mv_label{
		width:80px;
		height: auto;
	}

	/*pr*/
	.pr{
		padding-left: 0;
	}
	.pr .row_wrap{
		justify-content: flex-start;
		padding-left: 0;
		padding-right: 0;
	}
	
	.pr_01{
		margin-bottom: 30px;
	}
	
	.pr_02{
		width:100%;
		display: block;
		text-align: center;
		padding:0 20px;
	}
	
	.pr_02 img:first-child{
		width:40%;
		margin:auto auto 20px auto;
	}
	
	.pr_02 img:last-child{
		width:100%;
	}
	
	
	/*checkpoint*/
	.checkpoint li{
		width:45%;
		margin-bottom: 30px;
	}
	
	/*about*/
	.block.about_box{
		padding:0;
	}
	
	.about_title{
		width:60%;
		top:-80px;
		display: flex;
	}
	
	.about_title img{
		width:50%;
	}
	
	.about_title div{
		display: flex;
		align-items: flex-end;
		width:50%;
	}

	.about_title div img{
		width:40%;
		margin-bottom: 40px;
		margin-top: auto;
	}

	.about_ans{
		margin:0 auto;
		width:90%;
	}
	
	.about_headline {
		margin: 50px auto;
	}
	
	.about_headline div{
		margin-bottom: 10px;
		text-align: center !important;
	}
	
	.about_headline div:first-child img {
		width:60%;
	}
	
	.about_headline div:nth-child(2) img {
		width:100%;
	}
	
	.about_headline div:last-child img {
		width:40%;
	}
	
	#access .box_half{
		padding-left:20px;
		padding-right:20px;
	}
	
	#access .box_half:first-child dl dd{
		margin-bottom: 20px;
	}
	
	/*mainprogram*/
	/*
	#main_program {
		padding-top: 20px;
		margin-top: 100px;
	}
	.main_img{
		top:-40px;
	}*/

	/*shoplist*/
	.block.child {
		width: 100%;
		max-width: 100%;
		padding: 20px 10px;
	}
	.shop_list,
	.row_wrap.s_list.fourth .shop_list,
	.row_wrap.s_list.none .shop_list{
		width:45%;
		padding-left:0;
		padding-right: 0;
	}
	
	
	.genre.row_wrap{
		width:90%;
		justify-content: flex-start;
	}
	
	.genre.row_wrap li{
		width:100%;
	}
	
	/*stage*/
	#stage{
		padding-left: 30px;
		padding-right: 30px;
    }
	
	.list_line dd{
		width:calc(100% -120px);
	}
	
	/*banner*/
	.header_title.sub{
		margin-bottom: 30px;
	}
	
	.block.sub{
		width:90%;
		padding-left:10px;
		padding-right: 10px;
		padding-top: 40px;
	}
	
	/*contact*/
	.block.contact .box_half{
		margin-bottom: 30px;
	}


    /*footer*/
	.ftr_text{
		text-align: center !important;
	}
	.ftr_logo{
		width:25%;
		margin:20px auto;
	}
	footer address{
		box-sizing: border-box;
	}

	.fair_img img {
    width: 290px;
	}
	.fair_title {
    font-size: 30px;
    line-height: 1.3;
	}
	.fair_block p.fair_txt {
		font-size: 16px;
	}


}


@media screen and (max-width: 940px){
	.mainvisual,
	.block,
	#access .box_half,
	.banner,
	#stage{
		width:90%;
		max-width: 90%;
	}
	
	.mainvisual{
		padding:0;
	}
	
	.mv_label{
		right:0px;
		width:80px;
		height: 80px;
	}
	
}

/*@media screen and (min-width:750px){*/
@media screen and (min-width:1040px){

	.mv_wrap{
		/*min-height: 1000px;*/
	}
	
	.mv_label{
		left:1040px;
		width:120px;
		height: 120px;
	}
}

@media screen and (min-width: 1400px){
	.mv_label{
		left:1200px;
	}
}

@media screen and (min-width: 1600px){
	.mv_label{
		left:1500px;
	}
}
/*
@media screen and (min-width: 1900px){
	.mv_label{
		left:1600px;
	}
}*/



/* IEのみ以下のCSSが適用される*/
@media all and (-ms-high-contrast: none){

}
