@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 100;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 200;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 300;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 400;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Bold");
  font-weight: bold;
}

h1, h2, h3, h4, h5, h6 {
 font-size:100%;
 margin: 0;
 padding: 0;
 font-weight: normal;
 }

li {
 list-style-type: none;
 }

body {
 font-family: "游ゴシック", "Yu Gothic", "YuGothic", "ヒラギノ角ゴシック", "Hiragino Sans", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
 font-feature-settings : "palt" 1;
 margin: 0;  padding: 0;
 color: #;
 -webkit-text-size-adjust: 100%;
 text-align: center;
 }
hr {
 height: 0;
 margin: 0;
 padding: 0;
 border: 0;
 }
a {
 text-decoration: none;
  color: #333;
 }
a:hover { color: #90B44B; }

.font-red {
 color: red;
}
/*ページトップへ*/
.pagetop {
 display: none;
 position: fixed;
 bottom: 20px;
 right: 10px;
 width: 60px;
 height: 60px;
 border: solid 1px #2a2a2a;
 z-index: 100;
 }

.pagetop a {
 display: block;
 width: 15px;
 height: 15px;
 background: transparent;
 border-top: 2px solid #2a2a2a;
 border-left: 2px solid #2a2a2a;
 transform: rotate(45deg);
 margin: 25px auto;
 }

.pagetop a:hover {
 opacity : 0.5;
 }

/*共通*/

.logo {
  position: absolute;
  top: 15px;
  left: 15px;
  z-index: 96;
}


h1 {
 font-size: 190%;
 padding-bottom: 30px;
}
h1 span {
 display: block;
 margin-bottom: .2em;
 color: #aaa;
 font-size: .9em;
 font-family: 'Crimson Pro', serif;
}


.concept h2 {
 letter-spacing: 9px;
 font-size: 200%;
 margin: 30px auto;
}

.intro_txt h2 {
  position: relative;
  padding: 0 65px;
  text-align: center;
  margin: 90px auto 30px;
}

.intro_txt h2:before {
  position: absolute;
  top: calc(50% - 1px);
  left: 0;
  width: 100%;
  height: 1px;
  content: '';
  background: #000;
}

h2 span {
  position: relative;
  padding: 0 1em;
  background: #fff;
  font-size: 130%;
}

#member_info h2 {
 font-size: 120%;
}

.ghost-btn {
 margin-bottom: 60px;
}
.ghost-btn a {
  border: 1px solid #333;
  color: #333;
  display: block;
  font-size: 18px;
  line-height: 1;
  margin: 30px auto;
  padding: 15px 0;
  text-align: center;
  text-decoration: none;
 width: 360px;
}

.ghost-btn a:hover {
 color: #FFF;
 background: #90B44B;
 transition: 0.6s;
 border: 1px solid #90B44B;
 }

 .ghost-btn_w {
  margin-top: 60px;
 }
 .ghost-btn_w a {
   border: 1px solid #FFF;
   color: #FFF;
   display: block;
   font-size: 18px;
   line-height: 1;
   margin: 30px auto;
   padding: 15px 0;
   text-align: center;
   text-decoration: none;
  width: 360px;
 }

 .ghost-btn_w a:hover {
  color: #2a2a2a;
  background: #FFF;
  transition: 0.6s;
  }



footer {
 color: #555555;
 padding: 60px auto;
 width: 100%;
 margin: 0 auto;
 display: flex;
 flex-direction: column;
 justify-content: center;
 align-items: center;
 border-top: 1px solid #EEEEEE;
 }

footer a {
 color: #555555;
}
.footer_logo {
 font-size: 150%;
 margin-top: 60px;
}
.footer_link {
 margin-top: 30px;
 }


/* ハンバーガーメニュー */
.gblnv_box{
 position: fixed;
 top: 10px;
 right: 0;
 z-index: 100;
 text-align: right;
 font-size: 120%;
 background: rgba(255,255,255, 0);
 }
.gblnv_box span { color: #333; }
.gblnv_box a {margin: 15px 20px 10px;}
.gblnv_block{
 background-color: rgba(144,180,75, 0.9);
 color: #000000;
 height:100vh; width: ;
 display: none;
 text-align: left;
 margin-top: -100px;
 padding-top: 100px;
 padding-right: 20px; }
.gblnv_block ul{padding: 5px;}
.gblnv_block ul li{line-height: 180%;}
.gblnv_block ul li a{color: #000000; line-height: 360%; }
.gblnv_block ul li a:hover{color: #FFF;}
.onanimation{display: block;}

.menu-trigger,
.menu-trigger span {display: inline-block; transition: all .4s; box-sizing: border-box;}
.menu-trigger {position: relative; width: 30px; height: 23px;}
.menu-trigger span {
 position: absolute;
 left: 0;
 width: 100%;
 height: 2px;
 background-color: #333;
 border-radius: 4px;
 }
.menu-trigger span:nth-of-type(1) {
 top: 0;
 }
.menu-trigger span:nth-of-type(2) {
 top: 10px;
 }
.menu-trigger span:nth-of-type(3) {
 bottom: 0;
 }
.menu-trigger.active span:nth-of-type(1) {
 -webkit-transform: translateY(8px) rotate(-45deg);
 transform: translateY(8px) rotate(-45deg);
 }
.menu-trigger.active span:nth-of-type(2) {
 left: 50%;
 opacity: 0;
 -webkit-animation: active-menu-bar .8s forwards;
 animation: active-menu-bar .8s forwards;
 }
@-webkit-keyframes active-menu-bar {
  	100% {
  		height: 0;
  	}
  }
@keyframes active-menu-bar {
  	100% {
  		height: 0;
  	}
  }
.menu-trigger.active span:nth-of-type(3) {
 -webkit-transform: translateY(-12px) rotate(45deg);
 transform: translateY(-12px) rotate(45deg);
 }

.mb_sns {
 font-size: 90%;
}
hr#mb_separate {
 height: 0px;
 border: 1px solid #333;
 width: 30px;
 margin-left: 20px;
 margin-top: 20px;
 margin-bottom: 20px;
}
/* ハンバーガーメニューここまで */




/* トップスライダー */

.swiper-container {
 max-width: 1000px;
 height: 100vh;
 object-fit: cover;
 overflow: hidden;
 position: relative;
 z-index: 90;
 }

.top_logo {
 font-size: 10vmax;
 color: #FFFFFF;
 position: absolute;
 z-index: 60;
 width: 100%;
 text-align: center;
 top: 45%;
 left: 50%;
 transform: translate(-50%,-50%);
}

.top_logo img {
 max-height: 600px;
}



#top_img {
 background: url(../img/bgimg2.png) repeat;
 border-bottom-left-radius: 30% 10%;
 border-bottom-right-radius: 30% 10%;
 padding: 60px 10px 60px;

/*
 background-position: center center;
 background-repeat: no-repeat;
 background-size: contain;
 height: 80vh;*/
 }

#top_img img {
 max-width: 600px;
}

.niwashi_flexbox {
 display: flex;
 justify-content: center;
}

.yureru {
     animation: yureru-j 2s infinite;
 }
@keyframes yureru-j {
     0% {
         transform: translate(0px, 2px);
     }
     5% {
         transform: translate(0px, -2px);
     }
     10% {
         transform: translate(0px, 2px);
     }
     15% {
         transform: translate(0px, -2px);
     }
     20% {
         transform: translate(0px, 2px);
     }
     25% {
         transform: translate(0px, -2px);
     }
     30% {
         transform: translate(0px, 0px);
     }
 }



/*スクロールナビゲーションここから*/
.scroll_nav {
 padding-top: 90px;
 padding-bottom: 30px;
}
.scroll_nav a span {
  position: absolute;
  bottom: 48px;
  left: 50%;
  width: 24px;
  height: 24px;
  margin-left: -12px;
  border-left: 1px solid #000;
  border-bottom: 1px solid #000;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  -webkit-animation: sdb 2s infinite;
  animation: sdb 2s infinite;
  opacity: 0;
  box-sizing: border-box;
}
.scroll_nav a span:nth-of-type(1) {
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
}
.scroll_nav a span:nth-of-type(2) {
  bottom: 32px;
  -webkit-animation-delay: .15s;
  animation-delay: .15s;
}
.scroll_nav a span:nth-of-type(3) {
  bottom: 16px;
  -webkit-animation-delay: .3s;
  animation-delay: .3s;
}
@-webkit-keyframes sdb {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes sdb {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
/*スクロールナビゲーションここまで*/



.tirasi {
 max-width: 630px;
 }

.info-pre {
 padding: 100px 10px;
 background: #F5F5F5;
}

.main-pre {
 padding: 100px 10px;
}

#pre_main_img {
 background-image: url("../img/pre_event/pre_main.jpg");
 background-position: center center;
 background-repeat: no-repeat;
 background-size: contain;
 height: 300px;
 }

.photo_flexbox {
 display: flex;
 flex-wrap: wrap;
 justify-content: center;
 max-width: 2000px;
 margin: 0 auto 300px:
}

.event_photo {
 max-width: 600px;
 padding: 6px 6px 30px 6px;
}


.pre_photo {
 width: 300px;
 padding: 6px;
}

.pre_day {
 font-size: 120%;
}
.pre_img {
 max-width: 400px;
}

.pre_txt {
 max-width: 500px;
 margin: 30px auto;
 text-align: left;
}

.concept {
 font-family: serif;
 color: #FFF;
 margin: 100px 0;
 padding: 100px 10px;
 background: url(../img/bgimg.jpg) center / cover no-repeat;
 /*背景画像ブラー*/
 position: relative;
 z-index: 0;
 overflow: hidden;
 }
.concept:before{
  content: '';
  background: inherit;
  -webkit-filter: blur(3px);
  -moz-filter: blur(3px);
  -o-filter: blur(3px);
  -ms-filter: blur(3px);
  filter: blur(3px);
  position: absolute;
  top: -2px;
  left: -2px;
  right: -2px;
  bottom: -2px;
  z-index: -1;
}


.concept-txt {
 max-width: 630px;
 margin: 0 auto;
 text-align: left;
 }

.concept-txt p {
 font-size: 150%;
 letter-spacing: 2px;
 line-height: 250%;
}

.info-held {
 margin: 0 auto;
 max-width :600px;
 padding: 100px 10px;
}
.access_txt {
 max-width: 333px;
 text-align: left;
 margin: 0 auto;
}
.access_txt p {
 margin: 39px auto 9px;
 font-size: 120%;
}

.kokuchi {

}
.year {
 font-size: 200%;
}

.month {
 font-size: 300%;
}
.month span {
 font-size: 80%;
}

.time {
 font-size: 180%;
}
.free {
 padding: 6px;
 margin: 30px auto;
 background: #90B44B;
 color: #FFFFFF;
 font-weight: bold;
 font-size: 20px;
 letter-spacing: 22px;
 max-width: 300px;
 border-radius: 6px;
}

.bg_gray {
 background: #F5F5F5;
 }

.topic {
 color: #EFA3C3;
 font-weight: bold;
 font-size: 24px;
 margin-top: 90px;
 }
.fryer2024 {
 margin-bottom: 60px;
 font-size: 13px;
 }
.fryer2024_txt {
 padding: 0 60px;
 text-align: left;
}

.niwashi_photo {
 background: url(../img/bgimg2.png) center / cover no-repeat;
 padding: 60px 15px 5px;
}

table {
 margin: 30px auto;
}

thead {
 background: #D9F590;
}

table , td {
	border: 1px dotted #c0c0c0;
	border-collapse: collapse;
}
td {
 padding: 3px 9px;
 height: 27px;
 text-align: center;
}
.tdstyle1 {
 text-align: left;
 white-space: nowrap;
}

.info-exhibitor, .info-food_shop {
 padding: 100px 10px;
}
.exhibitor_flexbox {
 display: flex;
 flex-wrap: wrap;
 justify-content: center;
 max-width: 1800px;
 margin: 0 auto;
}
.exhibitor {
 padding: 60px 60px;
}

.exhibitor img {
 width: 170px;
}

.sponsor_flexbox, .food_shop_flexbox {
 display: flex;
 flex-wrap: wrap;
 justify-content: center;
 max-width: 1500px;
 margin: 0 auto;
}
.web_link{
 color: #777;
 font-size: 80%;
}


/*スポンサー*/
.sponsor_name {
 width: 300px;
 padding: 50px 0 50px 0;
 text-align: center;
}

.shop_name {
 width: 270px;
 padding: 50px 0 20px 0;
 text-align: center;
}
.shop_name span {
 font-size: 80%;
 display: block;
}

.shop_name2 {
 max-width: 400px;
 padding: 50px 50px 10px 0;
 text-align: left;
}


.about_wrap {
 padding: 100px 10px;
 text-align: center;
}
figure {
 max-width: 350px;
 margin: 0 auto;
}

.intro_txt{
 max-width: 800px;
 font-size: 110%;
 line-height: 225%;
 margin: 60px auto;
 text-align: left;
 letter-spacing: 3px;
}
.about_flexbox {
 display: flex;
 flex-wrap: wrap;
 max-width: 1100px;
 margin: 0 auto;
}

figcaption {
 font-size: 80%;
 color: gray;
}
.about_fig {
 margin-bottom: 100px;
}

.member {
 padding: 60px;
}
.member img {
 border-radius: 50%;
 width: 150px;
}

.group {
 border-bottom: 1px solid #c0c0c0;
 padding-bottom: 6px;
 font-size: 110%;
}

.company{
 font-size: 90%;
}
.about_support {
 max-width: 450px;
 margin: 60px auto;
 text-align: left;
}

.entry_wrap {
 padding: 100px 10px;
}
.entry_txt {
 margin: 60px auto;
}

.entry_wrap dl {
 width: 360px;
 text-align: left;
 margin: 60px auto 30px;
}

.entry_wrap dt {
 font-size: 130%;
 color: #333;
}
.entry_wrap dd {
 margin-bottom: 60px;
}
.contact_wrap {
 padding: 100px 10px;
}

.contact_txt {
 margin: 60px auto;
}

.comp_txt {
 max-width: 500px;
 margin: 0 auto;
 text-align: left;
 font-size: 110%;
}



/*メールフォーム*/
form {
 max-width: 600px;
 margin: 0 auto;
 text-align: left;
 }
form p {
 margin-top: 25px;
 line-height: 180%;
 }

.form_label {
 padding: 30px 0 0 0;
 }
.form_send {
 padding: 60px 0;
 }

input[type="text"], input[type="email"], input[type="tel"], input[type="number"] {
 margin-top: 0.2em;
 padding: 10px;
 font-family : inherit;
 font-size: 16px;
 width: 100% !important;
 max-width: 600px;
 border: 1px solid #c0c0c0;
 box-sizing: border-box;
 -webkit-box-sizing: border-box;
 -moz-box-sizing: border-box;
 }

textarea {
 margin-top: 0.2em;
 padding: 10px;
 font-family : inherit;
 font-size: 16px;
 border: 1px solid #c0c0c0;
 max-width: 600px;
 width: 100% !important;
 height: 200px !important;
 box-sizing: border-box;
 -webkit-box-sizing: border-box;
 -moz-box-sizing: border-box;
 }

select {
 margin-top: 0.2em;
 padding: 10px;
 font-family : inherit;
 font-size: 16px;
 width: 100%;
 max-width: 250px;
 border: 1px solid #c0c0c0;
 box-sizing: border-box;
 -webkit-box-sizing: border-box;
 -moz-box-sizing: border-box;
 }


input[type="submit"] {
 width: 100%;
 height: 50px;
 font-size: 18px;
 border: solid 1px;
 font-family : inherit;
 background: #FFF;
 -webkit-appearance: none;/*iOSで丸くデフォ表示させない*/
 letter-spacing: 3px;
 }

input[type="submit"]:hover {
 color: #FFF;
 background: #2a2a2a;
 transition: 0.5s;
 }


input:required, input:invalid	{
 background-image: url(../img/caution.png);
 background-repeat: no-repeat;
 background-position: right center;
 }

input:valid {
 background-image: none;
 }

label span {
 color: red;
 }

input:focus, textarea:focus {
 outline: solid 2px rgba(143,188,143,0.6);
 }


fieldset {
 margin: 50px auto;
 }

input[type=checkbox] {
 transform: scale(2.0);
 }



.dwl {
 margin: 30px auto 160px;
}


/*=========================================
　レスポンシブ-スタイル　スマホ・タブレット共通
 ==========================================*/
/*==  1023px以下なら  ここから==*/
@media screen and (max-width: 1023px) {


 /*1023px以下なら　ここまで*/ }


 /*==  800px以上なら  ここから==*/
 @media screen and (min-width: 801px) {
.mb_only, .mb_hr {
 display: none;
}

  /*800px以上なら　ここまで*/ }


 /*================================================
   800px以下なら  ここから
===================================================*/
@media screen and (max-width: 800px) {

.logo, footer{
  display: none;
}


#top_img {
 border-bottom-left-radius: 0% 0%;
 border-bottom-right-radius: 0% 0%;
 padding: 0px 0px 30px;
}

.niwashitachi {
 width: 100%;
 height: auto;
}

section {
 padding: 0;
}

.year {
 font-size: 180%;
}
.month {
 font-size: 190%;
 margin-bottom: 20px;
}
.time {
 font-size: 150%;
}
.mb_only p {
 font-size: 70%;
}
.mb_only_flexbox {
 display: flex;
 justify-content: space-around;
}
.mb_hr {
 border-top: 1px solid #CCC;
 width: 100%;
}

.niwashi_flexbox {
 flex-direction: column-reverse;
}
.fryer2024_txt {
 margin: 0 auto 60px;
 padding: 0 15px;
 }
.topic {
 font-size: 24px;
 margin-top: 30px;
 }
.exhibitor_flexbox, .sponsor_flexbox {
 flex-direction: column;
}
.exhibitor {
 padding: 60px 10px;
}
.exhibitor img {
 width: 300px;
}
.exhibitor p {
 font-size:150%;
}

.web_link a {
 font-size: 80%;
}
.sponsor_name {
 width: 100%;
 font-size:150%;
 padding: 100px 0 0 0;
}
.shop_name {
 width: 100%;
 font-size:150%;
}
.shop_name2 {
 width: 100%;
 font-size:150%;
 margin-left: 20px;
}

.concept h2 { /*行って、見て、聞いて、知ってほしい、お庭のこと。*/
 letter-spacing: 6px;
 font-size: 150%;
}
.intro_txt {
 letter-spacing: 1px;
 font-size: 130%;
 }
.intro_txt p {
 padding: 0 10px;
}
h2 span {
 font-size: 80%;
 }
.about_flexbox {
 justify-content: center;
 flex-direction: column;
 }
.member img {
 width: 250px;
 }
.about_wrap {
  padding: 0 20px;
 }
.about_support {
 padding: 0 15px;
 font-size: 130%;
}

#pre_main_img {
 background-image: url("../img/pre_event/pre_mb_main.jpg");
}
.pre_txt {
 padding: 0 15px;
 font-size: 130%;
}
.contact_txt, .form_label {
 font-size: 130%;
}
form {
 padding: 0 15px;
}
.comp_txt {
 font-size: 130%;
 padding: 0 15px;
 }




  }/*@media screen閉じる*/
