/*--------------------------------------------------------------
Reset
--------------------------------------------------------------*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td, input, textarea {
	border: 0;
	font-size: 16px; /* ベースのフォントサイズを記述 */
	font-family: Meiryo, "メイリオ", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ ゴシック", "Osaka‐等幅";
	font-style: inherit;
	font-weight: inherit;
	margin: 0;
	outline: 0;
	padding: 0;
	vertical-align: baseline;
	color: #000;
	line-height: 1.2;
}

html {
	font-size: 62.5%;
	overflow-y: scroll;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust:     100%;
}
*,
*:before,
*:after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing:    border-box;
	box-sizing:         border-box;
}
body {
	background: #fff;
	min-width: 1100px; /* 基本の横幅を記述 */
}
ul , li {
	list-style: none;
}
table {
	border-collapse: collapse;
}
a:focus {
	outline: thin dotted;
}
a:hover,
a:active {
	outline: 0;
}
a img {
	border: 0;
}
img,
input[type="image"] {

}
input[type="submit"] {
	cursor: pointer;
}
strong {
	font-weight:bold;
}
a {color: #e74371;
    text-decoration: none;
}
a:hover,
a:focus,
a:active {
	text-decoration: underline;
}
a:hover img,
input[type="image"]:hover {
	opacity: 0.7;
	filter: alpha(opacity=80);
	-moz-opacity: 0.7;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}
figure {
	margin: 0;
}
/*--------------------------------------------------------------
 Layout/PageBase
--------------------------------------------------------------*/

/*note: layout*/

#header {
	position: relative;
}
#footer {
}
#main {

}
#side {
}

.l_wrapper {
	background: url(../img/bg_g01.png);
}

/*--------------------------------------------------------------
 Component/Common
--------------------------------------------------------------*/

/*note: common*/

.c_pgtop {
	position:fixed;
/*	top: 0px;*/
	right:5%;
	bottom:10%;
	z-index: 1;
}


.c_fig_box {
	position: relative;
}
.c_fig_box_img {
	width: 100%;
} 
.c_fig_box_ttl {
	font-size: 20px;
	font-weight: bold;
	color: #391808;

}
.c_fig_box_cap {
	font-size: 14px;
	color: #7a3f22;
	line-height: 1.45;
}
.c_fig_box_flag {
	position: absolute;
}
.c_sec_body {
	background: #fff;
	position: relative;
	z-index: 1;
}
.c_sec_body > div {
	margin-top: 30px;
	padding-bottom: 5em;
}
.c_sec_ttl {
	text-align: center;
}

.c_sub_ttl {
	font-size: 30px;
	position: relative;
	padding-left: 1.8em;
	margin-left: -7px;
	margin-bottom: 14px;
}
.c_sub_ttl:before {
	content: url(../img/ico_flag.png);
	position: absolute;
	right: 0;
	top: 8px;
}
.c_sub_ttl.__01 {
	color: #14afec;
	background: url(../img/ico_sub_ttl01.png) no-repeat;
}
.c_sub_ttl.__02 {
	color: #ed5984;
	background: url(../img/ico_sub_ttl02.png) no-repeat;
}
.c_sub_ttl.__03 {
	color: #5daf14;
	background: url(../img/ico_sub_ttl03.png) no-repeat;
}
.c_sub_ttl2 {
	background: url(../img/bg_sub_ttl.png) no-repeat;
	font-size: 24px;
	padding-left: 1.5em;
	padding-bottom: 14px;
}
.c_sub_ttl2 small {
	font-size: 14px;
	margin-left: 1em;
}
.c_sub_ttl3 {
	background: url(../img/ico_sub_ttl04.png) no-repeat;
	font-size: 24px;
	padding-left: 1.5em;
}

/*--------------------------------------------------------------
 Project
--------------------------------------------------------------*/

/*note: header*/

.h_top {
	position: relative;
	z-index: 1;
}

.h_top_bg {
	background: url(../img/bg.png) repeat-x;
	background-position: center top;
	background-size: 100% 376px;
	overflow: hidden;
}
.h_top_ttl {
	font-size: 14px;
	font-weight: bold;
	color: #391808;
	padding-top: 1em;
	margin-left: 9.5em;
}

.h_logo {
	float: left;
}

.h_top_nav {
	float: right;
}

.h_top_nav li {
	display: inline-block;
	margin-top: 1.1em;
}
.h_top_nav li:first-child {
	margin-right: .6em;
}
.h_top_nav li a {
	font-size: 15px;
	font-weight: bold;
}
.h_top_nav li a:before {
	content: url(../img/ico_arrow01.png);
	vertical-align: -.2em;
	margin-right: .2em;
}

.h_nav {
	position: relative;
	z-index: 1;
}
.h_nav ul {
	margin-top: 1.7em;
	margin-left: 2.4em;
}
.h_nav li {
	float: left;
	background: url(../img/bg_h_border.png) no-repeat;
	background-position: right;
	position: relative;
}
.h_nav li:first-child:before {
	content: 'border';
	position: absolute;
	left: 0;
	width: 2px;
	height: 100%;
	background: url(../img/bg_h_border.png) no-repeat;
	background-position: left;
	color: transparent;
}
.h_nav ul a img {
	display: block;
}
.h_bg_l {
	position: absolute;
	top: 12px;
	left: 0px;
}
.h_bg_l-02 {
	position: relative;
	margin-top: -137px;
	margin-left: 312px;
	z-index: 1;
}
.h_bg_r {
	position: absolute;
	top: 12px;
	right: -8px;
}
.h_bg_r-02 {
	position: relative;
	margin-top: -178px;
	margin-left: -88px;
	z-index: 1;
}

.top {
	z-index: 1;
}

.h_top,
.h_nav {
	z-index: 10;
}

.h_bg_tree ._left,
.h_bg_tree ._right,
.h_bg_dog ._left,
.h_bg_dog ._right {
	position: absolute;
	top:0;
	height:815px;
	width:50%;
}
.h_bg_tree ._left {
	background: url(../img/img_tree_left.png) no-repeat left bottom;
	left:0;	
}
.h_bg_tree ._right {
	right:0;
	background: url(../img/img_tree_right.png) no-repeat right bottom;
}
.h_bg_dog ._left {
	background: url(../img/img_dog_left.png) no-repeat left bottom;
	left:0;	
}
.h_bg_dog ._right {
	right:0;
	background: url(../img/img_dog_right.png) no-repeat right bottom;
}
.h_bg_dog ._left,
.h_bg_dog ._right {
	z-index: 1;
}

@media all and (max-width: 2000px) {
	.h_bg_tree ._left {
		background-position: right bottom;
	}
	.h_bg_tree ._right {
		background-position: left bottom;
	}
	.h_bg_dog ._left {
		background-position: right bottom;
	}
	.h_bg_dog ._right {
		background-position: left bottom;
	}
}

/*note: footer*/

.f_inquire {
	background: url(../img/bg_g02.png);
	background-position: 0 35px;
	margin-top: 45px;
}
.f_inquire ul {
	padding: 50px 15px 45px;
}
.f_inquire li {
	display: inline-block;
}
.f_inquire li + li {
	margin-left: 114px;
}

.f_fb_box {
	width: 500px;
	height: 400px;
	float: left;
	margin-top: 64px;
	margin-left: 27px;
}
.f_banners {
	float: left;
	margin-top: 64px;
	margin-left: 60px;
}
.f_banners li {
	margin-bottom: 32px;
}

.f_top {
	position: relative;
}
.f_nav {
	text-align: center;
	margin-top: 3.2em;
}
.f_nav li {
	display: inline-block;
}
.f_nav li a {
	color: #3c3c3c;
	margin-right: .25em;
}
.f_nav li + li:before {
	content: '|';
	color: #3c3c3c;
	margin-right: .6em;
}

.f_bottom {
	background: url(../img/bg_f.jpg);
	margin-top: 87px;
}
.f_char {
	position: relative;
}
.f_char_l {
	position: absolute;
	top: -55px;
	left: -5px;
}
.f_char_r {
	position: absolute;
	top: -48px;
	right: -30px;
}

.f_logo {
	float: left;
	margin-top: 3.3em;
}
.f_contacts {
	float: left;
	margin-left: 4.2em;
	margin-top: 4.6em;
}
.f_contacts * {
	font-size: 14px;
	color: #fff;
}
.f_contacts li {
	margin-bottom: .71em;
}
.f_contacts span {
	display: inline-block;
	width: 9.5em;
}

.f_sns {
	float: left;
	margin-bottom: 188px;
	margin-left: 45px;
}
.f_sns a {
	float: left;
	display: inline-block;
}
.f_sns a:first-child {
	margin-right: 20px;
}
.f_copy {
	float: right;
	color: #fff;
	font-size: 12px;
	margin-top: 2.5em;
}

/*note: top*/

.top_main_img {
	position: relative;
}
.top_main_inner {
	width:1100px;
	margin:0 auto;
}
.top_sec_ttl {
	text-align: center;
	margin-top: 60px;
}
.top_sec01-img {
	float: right;
	margin-right: -36px;
	margin-top: -12px;
}
.top_sec01-txt {
	float: left;
	color: #391808;
	width: 55%;
	line-height: 1.65;
	margin-left: 1em;
	margin-top: 1.8em;
}

.top_sub01 {
	background: url(../img/bg_g02.png);
	background-position: 0 18px;
	padding-top: 2.8em;
	padding-bottom: 4.2em;
}

.top_sub_ttl {
	text-align: center;
}

.top_sub01 ul {
	margin-top: 4em;
	margin-left: -64.5px;
	margin-right: -7.5px;
}
.top_sub01 li {
	float: left;
	text-align: center;
	margin-left: 57px;
}
.top_sub01 .c_fig_box_ttl {
	margin-bottom: .2em;
}
.top_sub01 .c_fig_box_cap {
	margin-top: 1.6em;
}

.top_sub02 {
	padding-top: 3.6em;
}
.top_sub02 ul {
	margin-left: -54px;
/*	margin-top: 2.4em;*/
}
.top_sub02 li {
	float: left;
	margin-left: 54px;
	margin-top: 2.3em;
	width: 297px;
}
.top_sub02 .c_fig_box_ttl {
	margin-top: .8em;
}
.top_sub02 .c_fig_box_cap {
	margin-top: .4em;
}

.top_event_btn {
	text-align: center;
	margin-top: 5.2%;
	margin-bottom: 6.2%;
}
.top_event_btn img {
	margin: 0 auto;
}

.top_sub03_container {
	background: url(../img/bg_top03.png) no-repeat;
	background-size: 100% 100%;
	padding-top: 1.9em;
	padding-bottom: 1.9em;
	margin-left: 80px;
	margin-right: 24px;
}
.top_sub03 .top_sub_ttl {
}
.top_sub03 ul {
	width: 45em;
	margin-left: 6.8em;
	margin-top: 3.2em;
}
.top_sub03 li {
	color: #3c3c3c;
	margin-bottom: 1.1em;
}
.top_sub03 li span {
	display: inline-block;
	color: #3c3c3c;
	width: 8.2em;
}
.top_sub03 li a {
	color: #e74371;
}
.top_notice_list {
	text-align: right;
	padding-right: 8.5em;
	margin-top: 2em;
}

/*note: faq*/

.faq_list {
	margin-top: 3em;
}
.faq_list dt {
	font-size: 20px;
	font-weight: bold;
	border-radius: 5px;
	background: #f6f7e3;
	color: #83bb25;
	padding: .5em .8em .4em;
}
.faq_list dd {
	line-height: 1.5;
	margin: 1em 1.2em 3.4em;
}
.faq_list dd a {
	color: #09a2e7;
}

/*note: shop list*/

.notice {
	text-align: center;
	margin-top: 5em;
}
.notice strong {
	font-size: 28px;
	color: #ed5984;
}
.notice-date {
	font-size: 20px;
	color: #6a4126;
	line-height: 1.8;
	margin-top: 2em;
}

.path_menu {
	text-align: center;
	background: #fef3f7;
	border-radius: 20px;
	padding: .65em;
	margin: 48px 0 92px;
}
.path_menu li {
	display: inline-block;
}
.path_menu li a {
	font-size: 15px;
	color: #ed5984;
}
.path_menu li + li {
	margin-left: .25em;
}
.path_menu li + li:before {
	content: '|';
	color: #929292;
	margin-right: .5em;
}

.shop_list {
	background: url(../img/bg_media01.jpg);
	border-radius: 5px;
	padding: 18px 0;
}
.shop_list > li {
	background: #fff;
	border-radius: 5px;
	margin: 0 13px 18px;
	padding: 27px 20px;
}
.shop_list > li + li {
	margin: 18px 13px 0;
}
.shop_list-logo {
	float: left;
	border: solid 1px #e1e1e1;
}
.shop_list-body p {
	line-height: 1.5;
}
.shop_list-body._right {
	float: left;
	width: 460px;
	margin-left: 31px;
}
.shop_list a:hover {
	text-decoration: none;
}

.shop_list-ttl {
	font-size: 28px;
	color: #6a4126;
	margin-top: .2em;
}
.cat_type {
	margin: 1.1em 0;
}
.cat_type li {
	display: inline-block;
	width: 58px;
}

/*note: precaution*/

.pct .c_sub_ttl2 {
	padding-bottom: 1.4em;
}
.pct .caution_body {
	margin-top: 2.8em;
}
.caution_body-ttl {
	font-size: 18px;
	color: #ed577e;
	line-height: 1.8;
}
.caution_body p {
	font-size: 14px;
	line-height: 1.45;
	margin-bottom: 2em;
}

.faq_link_btn img {
	margin: 0 auto;
}
.faq_link_btn {
	margin-top: 72px;
}

/*note: event info*/

.event_map {
	background: url(../img/bg_evn_map.jpg) no-repeat;
	margin: 45px 0;
}
.event_map ul {
	float: right;
	margin-top: 112px;
	margin-bottom: 180px;
}
.event_map li + li {
	margin-top: 40px;
}

.site_area {
	border-radius: 5px;
	padding: 18px 0;
	margin-bottom: 42px;
}
.site_area > li {
	background: #fff;
	border-radius: 5px;
	margin: 0 13px 18px;
	padding: 27px 20px 0;
}
.site_area > li + li {
	margin: 18px 13px 0;
}
.site_area.__stage {
	background: url(../img/bg_media02.jpg);
}
.site_area.__event {
	background: url(../img/bg_media03.jpg);
}
.site_area.__trees {
	background: url(../img/bg_media04.jpg);
}
.site_area-photo {
	float: left;
	margin-right: 27px;
	margin-bottom: 27px;
}
.site_area-body {
	margin-bottom: 1.7em;
}
.site_area-body p {
	line-height: 1.5;
}
.site_area-hours {
	font-size: 14px;
	color: #ed5984;
}
.site_area-ttl {
	font-size: 28px;
	color: #6a4126;
	padding-top: .2em;
	margin-bottom: .5em;
}
.site_area-body div {
}
.site_area-body p {
	line-height: 1.45;
	margin-bottom: 1.7em;
}
.site_area-body h5 {
	color: #ec4472;
}
.site_area-body h6 {
	font-size: 18px;
	font-weight: normal;
	color: #d89e00;
}

/*note: access*/

.access {
	margin-top: 28px;
}
.acc .access .c_sub_ttl2 {
	margin-bottom: .6em;
}
.access-gmap {
	float: left;
}
.access-gmap iframe {
	display: block;
}
.access-body {
	float: left;
	width: 365px;
	margin-left: 20px;
}
.access-body p {
	line-height: 1.45;
}
.access-ttl {
	font-size: 20px;
	color: #ed577e;
	margin: 1em 0 .4em;
}
.access-body li {
	line-height: 1.45;
	margin-bottom: 1.65em;
}
.access-body a {
	color: #009ee7;
}
.acc .caution_body .c_sub_ttl2 {
	padding-bottom: 1.4em;
}
.acc .caution_body {
	margin-top: 2.2em;
}

/*note: contact*/

.contact {
	margin-top: 1.6em
}
.cnt .c_sub_ttl2 {
	margin-bottom: .6em;
}
.contact p {
	line-height: 1.45;
}
.contact-tel {
	font-size: 22px;
	color: #ed577e;
	margin-top: .9em;
	margin-bottom: 2.1em;
}
.cnt .c_sub_ttl3 {
	margin-bottom: 7px;
}
.contact-form {
	background: #f6f7e3;
	width: 662px;
	border-radius: 5px;
	padding: 25px 30px 0;
}
.contact-form dl {
	display: inline-block;
}
.contact-form dl + dl {
	margin-top: 7px;
}
.contact-form dt, .contact-form dd {
	float: left;
}
.contact-form dt {
	width: 211px;
	font-size: 14px;
	padding: .5em 0;
}
.contact-form em {
	color: #cf0000;
	margin-left: .3em;
}
.contact-form input, .contact-form textarea {
	border: solid 1px #dfdfdf;
}
.contact-form input {
	width: 391px;
	padding: .65em;
}
.contact-form select {
	width: 391px;
	padding: .65em;
}
.contact-form input, .contact-form select {
	border: solid 1px #dfdfdf;
}

.contact-form textarea {
	width: 605px;
	height: 183px;
	padding: .65em;
}
.consent {
	width: 662px;
	height: 197px;
	border: solid 1px #dfdfdf;
	overflow-y: scroll;
	padding: .8em;
	margin-top: 1.6em;
}
.consent * {
	font-size: 13px;
}
.consent-ttl {
	margin-bottom: 1.45em;
}
.consent p {
	line-height: 1.5;
}
.consent > li + li {
	margin-top: 1.5em;
}
.consent ul li {
	margin-left: 3em;
	margin-top: .3em;
}

.contact-submit {
	width: 662px;
	text-align: center;
	margin-top: 32px;
}
.contact-submit input {
	background: url(../img/btn_cnt_send.png) no-repeat;
	width: 287px;
	height: 58px;
	color: transparent;
}

/*todo:*/


/*--------------------------------------------------------------
 Utility
--------------------------------------------------------------*/

/*note: utility*/

.u_inner {
	width: 1000px; /* 基本の横幅を記述 */
	margin:0 auto;
}
.u_container {
	margin: 0 55px;
}
.u_container._page {
	padding-top: 30px;
}
.u_clearfix:after,
.u_clearfix > li:after {
	height: 0;
	visibility: hidden;
	content: ".";
	display: block;
	clear: both;
}
* html .u_clearfix,
* html .u_clearfix > li {
	zoom: 1;
}
*+html .u_clearfix,
*+html .u_clearfix li {
	zoom: 1;
}
.u_clear {
	clear:both;
}
.u_hide {
	display: none;
}
/* 透過画像、文字などでリンクマップ時、HOVERモーションを追加  */
a.u_hvr,
.u_hvr a {
	color:transparent;
}
a.u_hvr:hover,
.u_hvr a:hover {
	background: #fff;
	opacity: 0.3;
	filter: alpha(opacity=80);
	-moz-opacity: 0.3;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}
.u_aln-center {
	text-align: center;
}
.u_aln-center img {
	margin: 0 auto;
	display: block;
}
.u_aln-right {
	text-align: right;
}
.u_fl-left {
    float:left;
    width:48%;
}
.u_fl-right {
    float:right;
    width:48%;
}
.u_lnk-right {
    text-align: right;
}
.u_lnk-right a {
    display: inline-block;
}
.u_a_img-block a img {
	display: block;
}
.u_img-block img {
	display: block;
}
.u_current {
	font-weight: bold;
}

/*--------------------------------------------------------------
 Context
--------------------------------------------------------------*/


