/*
    Theme Name: ryuoh
    Theme URI: https://ryuoh.org
    Author: NOUVELL MURACHI
*/

@charset "UTF-8";
@import url(https://fonts.googleapis.com/css?family=Montserrat);


body{
	background: url(../image/common/bg-wooden.jpg);
}

section.section{
  padding: 20px 0 10px;
}


@media (max-width: 768px) {
	section.section{
 	 padding: 10px 0;
	}
}

/*--------------
 responsive
 ------------ */
.pc {
	display: block;
}
.sp {
	display: none;
}
@media (max-width: 768px) {
	.pc {
		display: none;
	}
	.sp {
		display: block;
	}
}

/*--------------
 header
 ------------ */
header{
	text-align: center;
}
#logo{
	margin: 30px 0 20px!important;
}
#header-subnavi{
	font-size: 13px;
	padding: 0;
	margin: 0 0 30px;
}
header a{
	color: #333;
	text-decoration: none;
}
header a:hover, #header-subnavi a:focus{
	color: #eb6907;
}
#nav-pc{
	margin-bottom: 20px;
}
#navbar-main{
	text-align: left;
}
.navi-item {
	width: 20%;
	float: left;
}
.navi-table-dropdown {
	position: relative;
	z-index: auto;
}
.navi-table-dropdown .navi-box{
	position: absolute;
	top: 50px; /* 画像と三角形の高さをプラスした値 */
	left: 20px;
	border-radius: 10px 10px 10px 10px;
	background-color: #fff;
	display: none;
	text-align: left;
}
.navi-text{
	padding: 10px 20px;
	display: block;
	margin: 0;
}
.navi-text li{
	list-style: none;
	padding: 5px 0;
	margin: 0;
}
.navi-table-dropdown:hover .navi-box{
	z-index: 2;
	display: block;
}

@media (max-width: 768px) {
	#logo{
 	 padding: 0 10%;
	}
}


/*--------------
 footer
 ------------ */
footer{
	margin-top: 60px;
	padding: 46px 0 0;
	background: url(../image/common/footer-bg-vege.png) center top repeat-x;
}
#footer-in{
	background: #edec8b;
	padding: 60px 0 30px;
}
#footer-in table{
	width: 100%;
	margin-bottom: 5px;
}
#footer-in table td{
	text-align:left;
	vertical-align:top;
	padding: 0px 10px;
}
#footer-in table td.footer-info-td{
	background: #859902;
	color: #fff;
	width: 6em;
	text-align: center;
}
.footer-navi{
	margin-bottom: 20px;
}
.footer-navi ul{
	margin-left: -40px !important;
}
.footer-navi ul li{
	paddingp: 0;
	margin: 0 0 6px;
	list-style: none;
	position: relative;
	font-size: 13px;
}
.footer-navi ul li ul{
	margin-top: 3px;
}
.footer-navi a{
	color: #333;
	text-decoration: none;
}
.footer-navi a:hover, .footer-navi a:focus{
	color: #eb6907;
	text-decoration: underline;
}
.footer-navi i{
	background: #eb6907;
	padding: 0 3px 1px 4px;
	color: #fff;
}

address span{
	font-weight: bold;
	font-size: 19px;
}

.social-button{
  text-align: right;
}
.social-button ul{
  padding: 0;
  margin: 0;
  list-style: outside none none;
}
.social-button ul li{
  float: right;
  padding: 0;
  margin: 0 10px;
}

footer #copyright{
	text-align: right;
	font-size: 13px;
}

@media (max-width: 768px) {
	#footer-in img{
	width: 280px;
	}
	#footer-in{
	padding: 30px 0 10px;
	}
}


/*--------------
 上に戻るボタン
 ------------ */

#pageTop{
  position: fixed;
  bottom: 20px;
  right: 20px;
}
#pageTop i{
  padding-top: 5px;
  padding-right: 7px;
}
#pageTop a{
  display: block;
  z-index: 999;
  padding: 8px 0 0 8px;
  border-radius: 30px;
  width: 50px;
  height: 50px;
  background-color: #666;
  color: #fff;
  font-weight: bold;
  text-decoration: none;
  text-align: center;
  font-size: 17px;
  border: 2px solid #fff;
}
#pageTop a:hover{
  text-decoration: none;
  opacity: 0.7;
}


/*--------------
 common styles
 ------------ */

.mB20{
	margin-bottom: 20px;
}
.mB30{
	margin-bottom: 30px;
}
.mB40{
	margin-bottom: 40px;
}
.mB50{
	margin-bottom: 50px;
}
.mT20{
	margin-top: 20px;
}
.mT40{
	margin-top: 40px;
}
.text-red{
	color: #c73a4a;
}
.text-emph{
	font-size: 21px;
	font-weight: bold;
}
.text-bigger{
	font-size: 17px;
}
.text-small{
	font-size: 13px;
}
.shadow-banner{
	-webkit-box-shadow: 0px 0px 14px 1px #dbd2c4;
	-moz-box-shadow: 0px 0px 14px 1px #dbd2c4;
	box-shadow: 0px 0px 14px 1px #dbd2c4;
}
.whitebox{
	display: block;
	padding: 30px;
	background-color: #fff;
}
.photobox-style1{
	display: block;
	padding: 5px;
	background-color: #fff;
	-webkit-box-shadow: 0px 0px 14px 1px #dbd2c4;
	-moz-box-shadow: 0px 0px 14px 1px #dbd2c4;
	box-shadow: 0px 0px 14px 1px #dbd2c4;
}
.photobox-style1-in{
	padding: 20px 20px 10px;
	margin: 0;
	min-height: 120px;
}
.photobox-style1-in2{
	padding: 20px 20px 10px;
	margin: 0;
	min-height: 140px;
}
.photobox-style1-in h3,
.photobox-style1-in2 h3{
	font-size: 19px;
	line-height: 1;
	padding: 0;
	margin: 0 0 10px;
	text-align: center;
	font-weight: bold;
}
.captionP{
	margin-top: 10px;
}

/* opacity */
a:hover img {
	opacity: 0.7;
	filter: alpha(opacity=70);
}

@media (max-width: 768px) {
	.whitebox{
	  padding: 5%;
	}
}


/*--------------
 button variations
 ------------ */
.btn-base{
	display: inline-block;
	text-align: center;
	text-decoration: none !important;
	white-space: nowrap;
	cursor: pointer;
	-webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
	font-size: 17px;
	border-radius: 7px;
	-moz-border-radius: 7px;
	-webkit-border-radius: 7px;
	-o-border-radius: 7px;
	-ms-border-radius: 7px;
	border: 1px solid #fff;
	-webkit-box-shadow: 0px 0px 14px 1px #dbd2c4;
	-moz-box-shadow: 0px 0px 14px 1px #dbd2c4;
	box-shadow: 0px 0px 14px 1px #dbd2c4;
}
.btn-green{
	background: #9db10c;
	color: #fff !important;
	margin-left: 4px;
	padding: 12px 20px;
	margin-bottom: 0;
	font-weight: normal !important;
}
.btn-green:focus{
	background: #859902;
	color: #fff !important;
	text-decoration: none !important;
}
.btn-green:hover{
	background: #859902;
	color: #fff !important;
	text-decoration: none !important;
}
.btn-red{
	background : #cc0000;
	color : #ffffff !important;
	margin-left: 4px;
	padding: 12px 20px;
	margin-bottom: 0;
	font-weight : normal !important;
}
.btn-red:focus{
	background : #cc3300;
	color : #ffffff !important;
	text-decoration : none !important;
}
.btn-red:hover{
	background : #cc3300;
	color : #ffffff !important;
	text-decoration : none !important;
}

/* size */
.btn-large{
	font-size: 21px;
}

@media (max-width: 768px) {
	.btn-base {
		display: block;
		margin: 0 5%;
		font-size: 15px;
	}
}


/*--------------
 top page
 ------------ */
#topslide{
	margin: 0;
}
#topslide li{
	padding: 0;
	margin: 0;
	border-top: 3px solid #fff;
	border-bottom: 3px solid #fff;
}
.top-h1{
	background: #93a315;
	padding: 25px;
	color: #fff;
	font-size: 17px;
	margin: 0 !important;
	text-align: center;
}
.top-eat{
	margin-left: 4%;
	margin-right: -4%;
}

.top-newsbox{
	margin-bottom: 20px;
	padding-bottom: 10px;
}
.top-newsbox p{
	border-bottom: 1px dotted #ccc;
	padding: 12px 0;
	margin: 0;
}
.top-btns a:hover img {
	opacity: 1;
	filter: alpha(opacity=100);
	transform: scale(1.05);	/*画像の拡大率*/
	transition-duration: 0.3s;	/*変化に掛かる時間*/
}
.openrss ul{

	margin-left:-40px;
	margin-bottom: 0;
	padding-bottom: 0;
}
.openrss li{

	border-bottom: 1px dotted #ccc;
	padding: 12px 0;
	margin: 0;
	list-style: none;
}
.mod-schedule{
	text-align: center;
}
.mod-schedule__month table{
	width: 100%;
	border: 2px solid #ddd;
}
.mod-schedule__month table th{
	width: 14%;
	vertical-align: top;
	border: 1px solid #ddd;
	background: #f0fde7;
	padding: 5px 0;
	text-align: center;
}
.mod-schedule__month table td{
	width: 14%;
	vertical-align: top;
	border: 1px solid #ddd;
	padding: 3px 0;
	min-height: 50px;
	text-align: center;
}
.mod-schedule-ttl{
	font-weight: bold;
	color: #93a315;
	font-size: 17px;
}
.mod-schedule__day__item{
	color: #8D5795;
	font-weight: bold;
}
.mod-schedule__day__label{
	color: #d04a1b;
	font-weight: bold;
}
.summer .mod-schedule__day__label,
.winter .mod-schedule__day__label{
	color: #666;
	font-weight: bold;
}

.event-schedule table{
	width: 100%;
	border: 2px solid #ddd;
	background: #fff;
	margin-bottom: 20px;
}
.event-schedule table th{
	vertical-align: top;
	border: 1px solid #ddd;
	background: #f0fde7 !important;
	padding: 10px;
	width: 5em;
}
.event-schedule table td{
	vertical-align: top;
	border: 1px solid #ddd;
	padding: 10px;
}
.event-schedule p{
	text-align: center;
}


@media (max-width: 768px) {
	.top-eat{
	margin: 0;
	}
	#top-main-banners h2{
	padding: 0 10%;
	}
}

/*--------------
 subpage common
 ------------ */
#subpage-header{
	border-top: 3px solid #fff;
	border-bottom: 3px solid #fff;
	background: url(../image/common/bg-header.jpg) center top repeat-x;
	width: 100%;
	height: 212px;
}
#subpage-ttlspace{
	background: url(../image/common/bg-ttl-wooden.jpg);
	-webkit-box-shadow: 0px 2px 14px 1px #dbd2c4;
	-moz-box-shadow: 0px 2px 14px 1px #dbd2c4;
	box-shadow: 0px 2px 14px 1px #dbd2c4;
	margin-top: 60px;
}
#subpage-ttlspace .container{
	position: relative;
}
#subpage-ttlspace img{
	position: absolute;
	top: -30px;
	left: 0;
}
#subpage-ttlspace h1{
	text-align: center;
	font-size: 29px;
	color: #eb6907;
	font-weight: bold;
	line-height: 1;
	padding: 25px 0 35px;
}
#subpage-copyspace{
	text-align: center;
	margin-top: 20px;
}
#subpage-copyspace h2{
	font-size: 23px;
	font-weight: bold;
	margin-bottom: 20px;
}
#subpage-copyspace p{
	font-size: 17px;
}
.subpage-h2-style1{
	background: url(../image/common/border-type1.gif) repeat-x top center;
	padding: 30px 0;
	font-size: 25px;
	color: #859902;
	margin: 30px 0 0;
	line-height: 1;
	text-align: center;
	font-weight: bold;
}
.subpage-h2-style2{
	background: #f3f9c9;
	padding: 12px;
	font-size: 19px;
	color: #859902;
	margin: 0 0 20px !important;
	font-weight: bold;
}
.round-ttl-box{
	margin-top: 30px;
	background-color: #fff;
	padding: 30px 0;
}
.round-ttl-upper{
	text-align: center;
	padding: 0;
	margin: -70px 0 25px;
}
.round-ttl-box-In {
	padding: 0 30px;
}

.ttl-green{
	font-weight: bold;
	color: #859902;
}

.table-style1{
	width: 100%;
}
.table-style1 th,
.table-style1 td{
	border-top: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
	text-align: left;
	vertical-align: top;
	padding: 10px;
}
.table-style2{
	width: 100%;
	border: 3px solid #ddd;
	background: #fff;
}
.table-style2 th,
.table-style2 td{
	border: 1px solid #ddd;
	text-align: left;
	vertical-align: top;
	padding: 10px;
}
.table-style2 th{
	background: #fbdcc5;
}
.table-style2 td.table-style2-sp{
	background: #eee;
}

@media (max-width: 768px) {
	#subpage-header{
	background-size: auto 100%;
	height: 120px;
	}
	#subpage-ttlspace{
	margin-top: 40px;
	}
	#subpage-ttlspace img{
	width:200px;
	}
	#subpage-ttlspace h1{
	font-size: 23px;
	font-weight: bold;
	padding: 15px 0 25px;
	}
	#subpage-copyspace{
	margin-top: 10px;
	}
	#subpage-copyspace h2{
	font-size: 19px;
	text-align: left;
	margin-bottom: 10px;
	}
	#subpage-copyspace p{
		font-size: 16px;
		text-align: left;
	}
	.subpage-h2-style1{
	padding: 20px 0;
	font-size: 19px;
	margin: 20px 0 0;
	line-height: 1.5;
	}
	.subpage-h2-style2{
	padding: 10px;
	font-size: 17px;
	margin: 0 0 15px;
	}
	.round-ttl-upper img{
		width: 100%;
		max-width: 340px;
	}
	.round-ttl-box{
	margin-top: 20px;
	}
	.round-ttl-upper{
	padding: 0;
	margin: -50px 0 15px;
	}
	.round-ttl-box-In{
	padding: 0 5%;
	}
	.table-style2 th,
	.table-style2 td{
	font-size: 13px;
	}
}


/*--------------
 cafe
 ------------ */
.cafe-price{
	background: #fcf5e0;
	margin: 10px 0 20px;
	padding: 10px 15px;
	font-size: 15px;
}
.cafe-price span{
	font-size: 17px;
	font-weight: bold;
	color: #eb6907;
}
.cafe-insta img{
	width: 100% !important;
	height: auto !important
;
}

@media (max-width: 768px) {
	.cafe-insta{
	padding-right: -50px;
	width: 130%;
  }
}

/*--------------
 access
 ------------ */
.access-googlemap{
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 56.25%;
    overflow: hidden;
}
.access-googlemap iframe{
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
}

/*--------------
farm
 ------------ */
.farm-calendar h3{
	padding: 0 0 10px;
	margin: 0;
	font-size: 19px;
	font-weight: bold;
	color: #859902;
}
.farm-calendar img{
	border: 3px solid #fff;
}
.farm-calendar a{
	font-weight: bold;
}
.farm-calendar table.table-style1 th,
.farm-calendar table.table-style1 td{
	padding: 10px 2px;
	text-align: center;
}
.farm-bg2{
	background: #f3f9c9;
}
.farm-close{
	font-size: 13px;
	background: #888;
	color: #fff;
	padding: 2px 5px;
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	-o-border-radius: 3px;
	-ms-border-radius: 3px;
}
.farm-open{
	font-size: 13px;
	background: #eb6907;
	color: #fff;
	padding: 2px 5px;
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	-o-border-radius: 3px;
	-ms-border-radius: 3px;
}

@media (max-width: 768px) {
	.farm-calendar img{
	margin-bottom: 20px;
  }
}

/*--------------
access
 ------------ */
.access-timetable{
	width: 100%;
	border: 3px solid #ddd;
	background: #fff;
	margin-bottom: 20px;
}
.access-timetable th,
.access-timetable td{
	border: none;
	text-align: center;
	vertical-align: top;
	padding: 10px;
}
.access-timetable th{
	background: #fbdcc5;
}
.access-timetable td.access-timetable-bg{
	background: #eee;
}


/*--------------
sitemap
 ------------ */
.sitemap-navi{
	margin-bottom: 20px;
}
.sitemap-navi ul{
	margin-left: -20px !important;
}
.sitemap-navi ul li{
	paddingp: 0;
	margin: 0 0 6px;
	list-style: none;
	position: relative;
}
.sitemap-navi ul li ul{
	margin-top: 3px;
}
.sitemap-navi a{
	color: #333;
	text-decoration: none;
}
.sitemap-navi a:hover, .sitemap-navi a:focus{
	color: #eb6907;
	text-decoration: underline;
}
.sitemap i{
	background: #eb6907;
	padding: 0 3px 1px 4px;
	color: #fff;
}

/*--------------
 contact
 ------------ */
.contact-box ul.contact-form{
	margin: 0 !important;
	padding: 0 !important;
}
.contact-box ul.contact-form li{
	list-style-type: none;
	margin-bottom: 20px;
}
.label-required{
	color: #c73a4a;
}
.form-btn-box{
	text-align: center;
}
.btn-attention-block-large{
	padding: 15px 40px;
    font-size: 1.2em;
    background-color: #EB6907;
    color: #fff;
    border-style: none;
	width: 200px;
	margin: 0 auto;
	font-size: 17px;
	border-radius: 7px;
	-moz-border-radius: 7px;
	-webkit-border-radius: 7px;
	-o-border-radius: 7px;
	-ms-border-radius: 7px;
	border: 1px solid #fff;
	-webkit-box-shadow: 0px 0px 14px 1px #dbd2c4;
	-moz-box-shadow: 0px 0px 14px 1px #dbd2c4;
	box-shadow: 0px 0px 14px 1px #dbd2c4;
}
.btn-attention-block-large:focus{
	background: #ed8840;
	color: #fff !important;
	text-decoration: none !important;
}
.btn-attention-block-large:hover{
	background: #ed8840;
	color: #fff !important;
	text-decoration: none !important;
}
.error-text{
	color: #EB6907;
}
table.contact-form{
	width: 100%;
}
table.contact-form th,
table.contact-form td{
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	padding: 10px;
	vertical-align: top;
}
.contact-box .message{
	color: #EB6907;
	font-size: 17px;
	font-weight: bold;
	margin-bottom: 40px;
}
.btn-back-block-large{
	padding: 15px 40px;
    font-size: 1.2em;
    background-color: #9db10c;
    color: #fff;
    border-style: none;
	width: 200px;
	margin: 20px auto;
	font-size: 17px;
	border-radius: 7px;
	-moz-border-radius: 7px;
	-webkit-border-radius: 7px;
	-o-border-radius: 7px;
	-ms-border-radius: 7px;
	border: 1px solid #fff;
	-webkit-box-shadow: 0px 0px 14px 1px #dbd2c4;
	-moz-box-shadow: 0px 0px 14px 1px #dbd2c4;
	box-shadow: 0px 0px 14px 1px #dbd2c4;
}
.btn-back-block-large:focus{
	background: #859902;
	color: #fff !important;
	text-decoration: none !important;
}
.btn-back-block-large:hover{
	background: #859902;
	color: #fff !important;
	text-decoration: none !important;
}


/*--------------
 entry design
 ------------ */
.entry-container table{
	width: 100%;
	border: 1px solid #ddd;
	background: #fff;
	margin: 20px 0;
}
.entry-container th{
	border: 1px solid #ddd;
	padding: 10px;
	background: #efefef;
	min-width: 6em;
}
.entry-container td{
	border: 1px solid #ddd;
	padding: 10px;
}
.blog-entry .whitebox{
	padding-bottom: 60px !important;
}
.blog-entry h2,
.blog-entry h3,
.blog-entry h4,
.blog-entry h5{
	font-weight: bold !important;
}
.blog-entry h2{
	background: #f3f9c9;
	padding: 12px;
	font-size: 23px;
	line-height: 1.5;
	color: #576400;
	margin: 30px 10px 10px!important;
	text-align: center;
	font-weight: bold;
}
.blog-entry h3{
	font-size: 19px;
	border-bottom: 2px solid #859902;
	padding: 5px 12px 7px;
	margin: 20px 10px 10px!important;
}
.caption{
	margin: 10px 0 20px;
	font-size: 15px;
}
.blog-entry img{
	margin-top: 10px;
	margin-bottom: 10px;
}
.blog-entry-ttl{
	text-align: center;
	margin: 30px 0 50px;
	font-weight: bold;
	font-size: 29px;
}
.blog-entry-cate{
	text-align: right;
	margin-bottom: 10px;
}

@media (max-width: 768px) {
	.blog-entry-ttl{
	text-align: center;
	margin: 20px 0;
	font-weight: bold;
	font-size: 23px;
	}
	.blog-entry h2{
	padding: 10px 20px;
	font-size: 19px;
	text-align: left;
	}
	.blog-entry h3{
	font-size: 17px;
	}
	.entry-container th{
	padding: 5px 3px;
	font-size: 13px;
	min-width: none;
	}
	.entry-container td{
	 padding: 5px 3px;
	 font-size: 13px;
	 }
}

/*--------------
 バグ調整
 ------------ */

.entry-container table {
	width: 100%;
}

img{
    width: auto;
    max-width: 100%;
    height: auto;
}

/* a-blog unit fix */
.acms-align-center{
    text-align:center;
}

.acms-align-center img{
    margin-left:auto;
    margin-right:auto;
    display:block;
}

.acms-align-right{
    text-align:right;
}

.acms-align-left{
    text-align:left;
}
