html,body { margin:0; padding:0; }
header { text-align:center; padding:0 8px; height:100px; background:url("images/header.jpg") no-repeat center 0; color:#FFF; background-size: cover; }
h1 { text-align:center; margin:0; padding:0; font-size:32px; text-shadow: 1px 2px 3px #000; }
header div { font-size:20px; padding-top:12px; text-shadow: 1px 2px 3px #000;}

section { width:100%; padding:24px; text-align:center; box-sizing:border-box; }

section#concept { background-color:#689F38;  color:#FFF; position:relative; }
section#concept div { text-shadow: 1px 2px 3px #000; font-size:4.2vw; font-weight:bold; position:absolute; top: 20%; left:auto; right:auto; width:100%; text-align:center;}

section#concept ul { display:flex; justify-content: space-between; width:90%; max-width:1000px; box-sizing:border-box;  margin:0 auto; padding:0;  font-size:14px; }
section#concept li { text-align:center; width:320px; list-style-type:none; margin:0; padding:0; }
section#concept li img { width:100%; height: auto}
section#reserve { }
  #rsvBox { display:flex; justify-content: center; width:90%; max-width:1000px; box-sizing:border-box; padding:8px; background-color:#D7E5CA; margin:0 auto; font-size:12px; }
    #rsvBox div { margin:0 8px; text-align:left; }
    #rsvBox input[type="number"] { width:4em; }


section#fee {  background-color:#689F38;  color:#FFF; }

section#overview dl { width:90%; max-width:1000px; box-sizing:border-box;  margin:0 auto; font-size:14px; display:flex; flex-wrap:wrap; text-align:left; }
section#overview dl dt { width:30%; box-sizing: border-box; margin:0; padding:4px; border-bottom:1px dotted #999; text-align:right; }
section#overview dl dd { width:70%; box-sizing: border-box; margin:0; padding:4px; border-bottom:1px dotted #999; } 

section#rule { background-color:#689F38;  color:#FFF;}
section#rule ul { width:90%; max-width:1000px; box-sizing:border-box;  margin:0 auto; font-size:14px; }
section#rule li { text-align:left; }



section#company {  }
section#company h2 { font-size:16px; }
section#company dl { width:90%; max-width:1000px; box-sizing:border-box;  margin:0 auto; font-size:14px; display:flex; flex-wrap:wrap; text-align:left; }
section#company dl dt { width:30%; box-sizing: border-box; margin:0; padding:4px; border-bottom:1px dotted #999; text-align:right; }
section#company dl dd { width:70%; box-sizing: border-box; margin:0; padding:4px; border-bottom:1px dotted #999; } 


section#customer {  background-color:#689F38; color:#FFF; }
section#customer h2 { font-size:16px; }
section#customer dl { width:90%; max-width:1000px; box-sizing:border-box;  margin:0 auto; font-size:14px; display:flex; flex-wrap:wrap; text-align:left; }
section#customer dl dt { width:30%; box-sizing: border-box; margin:0; padding:4px; border-bottom:1px dotted #999; text-align:right; }
section#customer dl dd { width:70%; box-sizing: border-box; margin:0; padding:4px; border-bottom:1px dotted #999; } 
section#customer dl dd input { padding:4px; width:100%; box-sizing: border-box;  }
section#customer dl dd input[name="zipcode"] { width:6em; margin-bottom:2px; }
section#customer dl dd input[type="tel"] { width:10em; }
section#customer dl dd textarea { width:100%; height:80px;  box-sizing: border-box;}

footer { text-align:center; font-size:14px; padding:4px; background-color:#689F38;  color:#FFF; }
footer div { float:left; }

@media screen and (max-width: 480px) {
	h2 { font-size:4.8vw; }
	section#concept p { font-size:3.2vw; }

	#rsvBox { display:block; font-size:2.8vw; text-align:center; }
	    #rsvBox div { margin:8px 0; text-align:center; }

}