@charset "utf-8";

html {
	/*background: #ffffff;*/
	width: 100%;

}

body {
	/*background: #ffffff;
	background-color: transparent;*/
	background-color: #d0e373;
	color: #666;
	-webkit-text-size-adjust : 100%;

	font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, '游ゴシック', YuGothic,  'Avenir Next', Avenir, Roboto, 'Helvetica Neue', 'Droid Sans', Helvetica, Arial,sans-serif;

	
	width: 100%;
	min-height: 100%;
	
	font-size: 100%;
	word-wrap: break-word;

}

table, input, textarea, select {
	font-family: inherit;
	color: inherit;
	font-size: inherit;
	font-weight: inherit;
	outline-style: none;
	outline-width: 0pt;
}
input[type="text"], textarea {
	color: #999999; /* for the default value(example) */
}

input[type="text"].input_default, textarea.input_default {
	color: #333333; /* for the default value */
	
}
input[type="text"].bg_disabled, textarea.bg_disabled {
	background-color: #eeeeee;
	
}
a,
input[type="submit"],
input[type="button"],
button,
select,
label { 
	cursor: pointer;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
}

a:link,
a:visited,
a:hover,
a:active {

	color: #3a9cd4;
	text-decoration: none;
}

a:focus {
	-moz-outline-style: none;
	outline-style: none;
	outline: none;
	border: 0px;
}



#container {
	width: 100%;

}

	

/* ------------------------------
     MAIN CONTENTS AREA
------------------------------ */

.main {
	width: 100%;	
	position: relative;

}


.topcatch_type1 {

			max-width: 100%;
			width: 100%;
			max-height: 480px;
			text-align: center;
			
			overflow: hidden;
			position: relative;
			line-height: 0;
		
}
.topcatch_type1 img {
			max-width: 100%;
			width: 100%;

}
.topcatch_type1 .humanpict {
	position: absolute;
	bottom: -5%;
	width: 15%;

}	

 	@media screen and (min-width: 525px) {
		.main_inner {

 		}
		.main_inner > * {
			/**/
			max-width: 525px;
			left: 0;
			right: 0;
			margin: 0 auto;
			
		}
		.topcatch_type1 {
			/**/
			max-width: 100%;
			width: 100%;
			text-align: center;
			
		}
		
		
	}
	
 	@media screen and (min-width: 1200px) {

		.topcatch_type1 img {

/*
			max-width: 1200px;
			margin: 0 auto;
			*/
		}
		
		
	}	
	


.bg_ptn1 {
	background: url(../images/body_bg.jpg) 0 0 no-repeat;
	background-size: 350% auto;
	padding: 70px 0 10px;
}

 	@media screen and (min-width: 640px) {

		.bg_ptn1 {

			background-size: 180% auto;
		}
		
		
	}	
	
	
/* ------------------------------
     HEADER
------------------------------ */

header {
	/**/background-color: #ffffff;
	/*background-image:url(../images/common/header_bg.png);*/
	background: url(../images/pattern_wood.png) 0 0 repeat;

	background-size: auto 180%;
	width: 100%;
	height: 44px;
	line-height: 0;

	display: -webkit-box;      /* OLD - iOS 6-, Safari 3.1-6 */
	display: -moz-box;         /* OLD - Firefox 19- (buggy but mostly works) */
	display: -ms-flexbox;      /* TWEENER - IE 10 */
	display: -webkit-flex;     /* NEW - Chrome */
	display: flex;             /* NEW, Spec - Opera 12.1, Firefox 20+ */
	
	align-items: center;
}


header a {
	display: block;
	width: 100%;
	height: 100%;

}
header a img {
	display: block;
	height: 100%;

}


header .header_btn {

	position: relative;

	height: 100%;


}

header .header_btn a.hover {
	background: rgba(0,0,0,0.15);

}
header .header_title {

	width: 85%;
	margin-left: -4%;

	line-height: 1.0em;
	color: #fff;
	overflow: hidden;

	text-align: center;
	height: 100%;

}
@media screen and (min-width: 525px) {
		header .header_title {
			margin-left: 0;
 		}
		
	}
header .header_title h1 {
	font-size: 110%;
	font-weight: normal;

	word-wrap: normal; /* for IE */
	width: 100%;
	height: 100%;
	
	line-height: 44px;
	
	white-space:nowrap;
	text-overflow: ellipsis;
	overflow: hidden;

}



/* ------------------------------
     FOOTER
------------------------------ */
footer {
	background: #a1c455 url(../images/footer_bg.jpg) left top repeat-x;
	width: 100%;
	min-height: 100px;
	color: #fff;
	text-align: center;
	padding: 40px 0 10px; 
	
}

 	@media screen and (min-width: 525px) {
		footer {
			/*background: rgba(52,38,38,0.2);*/

 		}
		
	}
footer .footer_banner {
	width: 83%;
	max-width: 480px;
	margin: 10px auto;
	
}
footer .footer_banner img {
	width: 100%;
	
}
/* --------------------------------------
		List : Type1
  ---------------------------------------*/
 
.list_type1 {
	width: 100%;

} 
.list_type1 ul {
	width: 95%;
	margin: 0 auto;
	padding: 10px 0 0.3em 0;
	overflow: hidden;
}

.list_type1 ul li {
	background: #ffffff;
	position: relative;
	width: 100%;
	overflow: hidden;
	
	margin-bottom: 20px;
	
}

.list_type1 ul li > a {

	
	display: block;
	width: 100%;
	height: 100%;
	
	color: inherit;
	
	position: relative;
	display: table;
	
}
 	@media screen and (min-width: 525px) {
		.list_type1 ul li > a.hover {
			opacity: 0.8;
			filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80);
			-ms-filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80);
	
 		}
		
	}

.list_type1 .arrowlist1 li > a {
	background: url(../images/ar2_c1.png) right center no-repeat;	
	background-size: 10% auto;
}
 	@media screen and (min-width: 525px) {
		.list_type1 .arrowlist1 li > a {
			background-size: 7% auto;
 		}
		
	}


.list_type1 ul li a .place_thumbnail {

	line-height: 0;
	display: table-cell;
	max-width: 1px; /* for text overflow */
	vertical-align: middle;
	width: 25%;
	padding: 2%;

	
}
.list_type1 ul li a .place_thumbnail img {
	vertical-align: top;
	width: 100%;
}
 	@media screen and (min-width: 525px) {
		.list_type1 ul li a .place_thumbnail {
			width: 18%;
 		}
		
	}

.list_type1 ul.gift_list li a .place_thumbnail {
	
	vertical-align: top;
	padding: 0 2%;
	overflow: hidden;
}



.list_type1 ul li a .place_cellwrap {

	padding: 2% 2% 1em 2%;

	width: 50%;

	line-height: 1.1;

	
	
	position: relative;
		
	/*
	position:relative;
	top: 0;
	left: 29%;
	*/
	height:  100%;

	display: table-cell;
	max-width: 1px; /* for text overflow */

}
.list_type1 ul.gift_list li a .place_cellwrap {
	vertical-align: middle;
	padding: 0.2em 24% 0.2em 0;
}

.list_type1 ul li .place_cellwrap h3 {

	width: 100%;
	padding: 2% 0.1em 2% 0.1em;
	font-weight: bold;
	line-height: 1.1;

	

}

.list_type1 ul li .place_cellwrap p {
	margin-top: 0.7em;
	margin-right: 8%;
	font-size: 85%;
	line-height: 1.6;
}


.list_type1 ul li .place_cellwrap p:before {
	display: inline-block;
	-webkit-font-smoothing: antialiased;
	font: normal 16px/1 'Genericons';
	vertical-align: middle;
}

.list_type1 ul li .place_cellwrap .icon_map:before {
	content: "\f417";
	color: #76c2af;
}

.list_type1 ul li .place_cellwrap .icon_comment:before {
	content: "\f300";
	color: #ec9000;
}

.list_type1 ul li .place_cellwrap .icon_tag:before {
	content: "\f302";
	color: #f47596;
}



/* --------------------------------------
		List : Type2
  ---------------------------------------*/

.list_type2 table {
	background: #fff;
	width: 100%;
	margin-bottom: 20px;
}
.list_type2 h3 {
	background: #529985;
	color: #fff;

	padding: 0.3em 0.5em;
	font-weight: bold;
	width: 100%;
	
}
.list_type2 table tr {
	border-bottom: solid 1px #eae5dc;
	
}
.list_type2 table th,
.list_type2 table td {
	padding: 0.4em 0.5em;
	line-height: 1.7;
	font-size: 90%;
}
.list_type2 table th {
	background: #fffcee;
	width: 30%;
	text-align: left;
	font-weight: normal;
	color: #975100;
	
}
  
  
/* --------------------------------------
		List : Type3
  ---------------------------------------*/

.list_type3 {

}  
.list_type3 dl {
	width: 90%;
	margin: 0 auto;

}
.list_type3 dl h2 {
	width: 100%;
	padding: 0.5em 0 1.3em 0;
	font-weight: bold;
	font-size: 120%;
	/*border-bottom: solid 2px #ff5f93;*/
}

.list_type3 dl h3 {
	width: 100%;
	padding: 0.5em 0 1.3em 0;
	font-weight: bold;
}
.list_type3 dl h5 {
	padding: 0.5em 0;
	font-weight: bold;
}
.list_type3 dl p,
.list_type3 dl ul,
.list_type3 dl dl {
	font-size: 90%;
	line-height: 1.7;
	
	width: 84%;
	margin: 0 auto;
	padding-bottom: 1em;
	
	color: #975100;
	
}



.list_type3 dl.iconlist1 {

	overflow: hidden;
	-webkit-flex-wrap: wrap; /* Safari */
  flex-wrap:         wrap;
}
.list_type3 dl.iconlist1 dt,
.list_type3 dl.iconlist1 dd {
	background: #fff;	
	padding: 0.5em;
	margin: 0 0 20px;
}
.list_type3 dl.iconlist1 dt {
color: #529985;
	text-align: center;
	width: 30%;
}
.list_type3 dl.iconlist1 dt img {
	max-width: 100%;

}
.list_type3 dl.iconlist1 dd {

	width: 70%;
	padding-left: 5%;

	color: #975100;

}

 	@media screen and (min-width: 525px) {
.list_type3 dl.iconlist1 dt {

padding: 1em;

}
.list_type3 dl.iconlist1 dd {
padding: 1em;


}

	}




/* ------------------------------
     CSS BUTTON
------------------------------ */

/* ボタン（中）幅可変 */
.btn_submit1 {
	width:auto;
	display: inline-block;
	padding: 1.1em 2.5em;
	
	line-height: 1.0;
	text-decoration: none;
	text-align:center;
	vertical-align: middle;
-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;
	
	/*
	box-shadow: 0px 2px 3px #ccc;
	-moz-box-shadow: 0px 2px 3px #ccc;
	-webkit-box-shadow: 0px 2px 3px #ccc;
	*/
	box-shadow: 0px 2px 3px  rgba(0,0,0,0.3);
		-moz-box-shadow: 0px 2px 3px  rgba(0,0,0,0.3);
		-webkit-box-shadow: 0px 2px 3px  rgba(0,0,0,0.3);
	
	

}
.btn_submit1.hover {
	cursor: pointer;
}
.btn_submit1 a {
	width: 100%;
	height: 100%;
	display: block;
}


	
/* placelist button */	
.btnbg_c3 {
		background-color: #f0f0f0;
		background: url(../images/icon_place_list.png) 5px center no-repeat, url(../images/ar2_c1.png) right center no-repeat;

		background-size: 15% auto, 15% auto;
		color: #497811;
		font-weight:bold;

		width: 100%;
		
		text-align:left;
		
		
		padding: 1.1em 1em 1.1em 20%;


	border: 1px solid #7db838;
	
	box-shadow: 0px 2px 3px #eee;
	-moz-box-shadow: 0px 2px 3px #eee;
	-webkit-box-shadow: 0px 2px 3px #eee;

}

    a.btnbg_c3:link,
    a.btnbg_c3:visited,
	a.btnbg_c3:hover,
    a.btnbg_c3:active,
	a.btnbg_c3.hover {
		color: #497811;
		text-decoration: none;
}

	.btnbg_c3.hover{
		border: 1px solid #509400;
		background-color: #fefff2;

	}


/* ------------------------------
     COMMON
------------------------------ */

.icon_after {
	padding-left:  0.5em;

}

.icon_after img {
	padding-right:  0.2em;
	margin-top: -4px;
}

hr {
	background-color: #333333;	
	border: 0;
    height: 1px;
}

.txtbox_centered {
	margin-left: auto;
	margin-right: auto;
}

.txtbox_centered p,
.txtbox_centered h3,
.txtbox_centered h4,
.txtbox_centered h5 {
	margin-bottom: 1em;
}
.txt_center {
	text-align: center;
}

.txt_right {
	text-align: right;
}

.txt_left {
	text-align: left;
}

.txt_middle {
	vertical-align: middle;
}

.txt_top {
	vertical-align: top;
}
.txt_70 {
	font-size: 70%;
}
.txt_75 {
	font-size: 75%;
}
.txt_80 {
	font-size: 80%;
}
.txt_90 {
	font-size: 90%;
}
.txt_105 {
	font-size: 105%;
}
.txt_110 {
	font-size: 110%;
}
.txt_120 {
	font-size: 120%;
}
.txt_130 {
	font-size: 130%;
}
.txt_centerauto {
	margin-left: auto;
	margin-right: auto;
}
.txt_bold {
	font-weight: bold;
}
.txt_bdr_fff {
	-webkit-text-shadow: 1px 1px 2px #ffffff;
	text-shadow: 1px 1px 2px #ffffff;
}

.txt_dotlist li {
	padding-left: 1em;
	text-indent: -1em;
}

	/*<wbr>と一緒に指定　webkit, chrome only */
	@media screen and (-webkit-min-device-pixel-ratio : 0 ) {
	.txt_wsnw {
		white-space: nowrap;
	}
	}

.pagewrap_width1 {
	width: 94%;
	margin: 0 auto;
}

.padding_tb05em{
	padding-top: 0.5em;
	padding-bottom: 0.5em;
}
.padding_tb1em{
	padding-top: 1em;
	padding-bottom: 1em;
}
.padding_tb1-5em{
	padding-top: 1.5em;
	padding-bottom: 1.5em;
}
.padding_tb2em{
	padding-top: 2em;
	padding-bottom: 2em;
}
.padding_tb3em{
	padding-top: 3em;
	padding-bottom: 3em;
}
.padding_tb4em{
	padding-top: 4em;
	padding-bottom: 4em;
}
.padding_tb5em{
	padding-top: 5em;
	padding-bottom: 5em;
}
.padding_b05em{
	padding-bottom: 0.5em;
}

.spacelist_b05em li {
	margin-bottom: 0.5em;
}
.padding_b1em{
	padding-bottom: 1em;
}

.padding_b1-5em{
	padding-bottom: 1.5em;
}
.padding_b2em{
	padding-bottom: 2em;
}
.padding_b3em{
	padding-bottom: 3em;
}
.padding_b4em{
	padding-bottom: 4em;
}
.padding_t05em{
	padding-top: 0.5em;
}
.padding_t1em{
	padding-top: 1em;
}
.padding_t2em{
	padding-top: 2em;
}
.padding_t3em{
	padding-top: 3em;
}
.padding_t4em{
	padding-top: 4em;
}
.padding_t5em{
	padding-top: 5em;
}
.line_height0 {
	line-height: 0;
}
.float_left {
	float: left;
}
.float_right {
	float: right;
}


.font_color_fff {
	color: #ffffff;
}
.font_color1 {
	color: #a03c07;
}
.font_color2 {
	color: #a73045;
}
.font_color3 {
	color: #777777;
}
.font_color4 {
	color: #7e5a24;
}

.font_color_ccy1 {
	color: #a72769;
}
.font_color_ccy2 {
	color: #bb8b25;
}

.font_color_alert {
	color: #d90000;
}

.color_border1 {
	border-top: solid 2px #ff9e48;
	padding-top: 5px;
}

.width_50 {
	width: 50%;
}
.width_60 {
	width: 60%;
}
.width_70 {
	width: 70%;
}
.width_80 {
	width: 80%;
}
.width_90 {
	width: 90%;
}
.width_100 {
	width: 100%;
}
.width_max100 {
	max-width: 100%;
}
.width_max50 {
	max-width: 50%;
}
.width_max60 {
	max-width: 60%;
}
.width_max70 {
	max-width: 70%;
}
.width_max70 img {
	max-width: 100%;
}
.width_max80 {
	max-width: 80%;
}


.width_pc60 {
	width: 60%;
}
.width_pc70 {
	width: 70%;
}
.width_pc80 {
	width: 80%;
}
	@media screen and (max-width: 768px) {
		.color_border1 {
	border-top: solid 1px #ff9e48;
}
	.width_pc60,
	.width_pc70,
	.width_pc80 {
		width: 100%;
	}
	}	
	
.clearLine:after {
	clear: both;
	display: block;
	visibility: hidden;
	height: 0;
	content: ".";
}

.clearLine {
	min-height: 1px;
}

* html .clearLine {
	height: 1px;
	/*¥*//*/
	height: auto;
	overflow: hidden;
	/**/
}

/* Flex */

.wrap_flex {
	display: -webkit-box;      /* OLD - iOS 6-, Safari 3.1-6 */
	display: -moz-box;         /* OLD - Firefox 19- (buggy but mostly works) */
	display: -ms-flexbox;      /* TWEENER - IE 10 */
	display: -webkit-flex;     /* NEW - Chrome */
	display: flex;             /* NEW, Spec - Opera 12.1, Firefox 20+ */
}



