/* =============================================================================
   HTML5 Boilerplate CSS: h5bp.com/css
   ========================================================================== */
article, aside, details, figcaption, figure, footer, header, hgroup, nav,
	section {
	display: block;
}

audio, canvas, video {
	display: inline-block;
	*display: inline;
	*zoom: 1;
}

audio:not ([controls] ) {
	display: none;
}

[hidden] {
	display: none;
}

html {
	font-size: 100%;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
}

html, button, input, select, textarea {
	font-family: sans-serif;
	color: #555;
}

body {
	margin: 0;
	background: url(../img/bg.png);
	font: 100%/160% "lucida grande", verdana, arial, "ヒラギノ角ゴ Pro W3",
		"Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "ＭＳ Ｐゴシック", "MS PGothic",
		Sans-Serif, "游 ゴシック";
	font-size: 62.5%;

	text-align: center;
}

h1, h2, h3, h4, h5, p, li, dt, dd {
	text-align: left;
}

::-moz-selection {
	background: #ffd959;
	text-shadow: none;
}

::selection {
	background: #ffd959;
	text-shadow: none;
}

a {
	color: #39a;
}

a:visited {

}

a:hover {
	text-decoration: none;
}

a:focus {
	outline: thin dotted;
}

a:hover, a:active {
	outline: 0;
}

abbr[title] {
	border-bottom: 1px dotted;
}

b, strong {
	font-weight: bold;
}

blockquote {
	margin: 1em 40px;
}

dfn {
	font-style: italic;
}

hr {
	display: block;
	height: 1px;
	border: 0;
	border-top: 1px solid #ccc;
	margin: 1em 0;
	padding: 0;
}

ins {
	background: #ffd959;
	color: #6d4d38;
	text-decoration: none;
}

mark {
	background: #ffd959;
	color: #6d4d38;
	font-style: italic;
	font-weight: bold;
}

pre, code, kbd, samp {
	font-family: monospace, serif;
	_font-family: 'courier new', monospace;
	font-size: 1em;
}

pre {
	white-space: pre;
	white-space: pre-wrap;
	word-wrap: break-word;
}

q {
	quotes: none;
}

q:before, q:after {
	content: "";
	content: none;
}

small {
	font-size: 100%;
}

sub, sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sup {
	top: -0.5em;
}

sub {
	bottom: -0.25em;
}

dd {
	margin: 0 0 0 40px;
}

ul, nav ol {
	list-style: none;
	list-style-image: none;
	margin: 0;
	padding: 0;
}

img {
	border: 0;
	-ms-interpolation-mode: bicubic;
	vertical-align: middle;
}

svg:not (:root ) {
	overflow: hidden;
}

figure {
	margin: 0;
}

form {
	margin: 0;
}

fieldset {
	border: 0;
	margin: 0;
	padding: 0;
}

label {
	cursor: pointer;
}

legend {
	border: 0;
	*margin-left: -7px;
	padding: 0;
	white-space: normal;
}

button, input, select, textarea {
	font-size: 100%;
	margin: 0;
	vertical-align: baseline;
	*vertical-align: middle;
}

button, input {
	line-height: normal;
}

button, input[type="button"], input[type="reset"], input[type="submit"]
	{
	cursor: pointer;
	-webkit-appearance: button;
	*overflow: visible;
}

button[disabled], input[disabled] {
	cursor: default;
}

input[type="checkbox"], input[type="radio"] {
	box-sizing: border-box;
	padding: 0;
	*width: 13px;
	*height: 13px;
}

input[type="search"] {
	-webkit-appearance: textfield;
	-moz-box-sizing: content-box;
	-webkit-box-sizing: content-box;
	box-sizing: content-box;
}

input[type="search"]::-webkit-search-decoration, input[type="search"]::-webkit-search-cancel-button
	{
	-webkit-appearance: none;
}

button::-moz-focus-inner, input::-moz-focus-inner {
	border: 0;
	padding: 0;
}

textarea {
	overflow: auto;
	vertical-align: top;
	resize: vertical;
}

input:valid, textarea:valid {

}

input:invalid, textarea:invalid {
	background-color: #f0dddd;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

td {
	vertical-align: top;
}

/* ===== Primary Styles ========================================================
   Author:
   ========================================================================== */

html, body {
	height: 100%;
	width: 100%;
}

html {
	display: table;
}

body {
	display: table-cell;
	vertical-align: middle;
	background: #d4ece9;
}

/**
 * ヘッダ
 **/

header {
	width: 1256px;
	height: 280px;
	margin: 0 auto;
	background-image: url(../img/header.png)
}

header a img {
	 width: 494px;
	 height: 144px;
	 /* TODO 必ずmarginじゃない書き方で直す事 */
	 margin-top: 50px;
	 margin-left: 150px;
}

#info {
	font-size: 1.5em;
	color: #ffffff;
	margin-left: 40px;
	margin-top: 20px;
	vertical-align: bottom;
	text-decoration: none;
}

/*
 * ドロップダウンメニュー
 */
#menu {
	display:inline-block;
}

#menu ul{
	display: table-cell;
	vertical-align: middle;
}

#menu li {
	float: left;
}

#menu li a {
	display: block;
	margin: 30px;
	padding-left: 20px;
	color: #ffffff;
	font-size: 1.8em;
	font-weight: bold;
	line-height: 1;
	background: transparent url(../img/mark2.png) no-repeat left center;
	text-decoration: none;
}

#menu li:hover>a, #info:hover {
	opacity: 0.7;
}

section {
	display: block;
	text-align: center;
	background-color: #f6f9df;
	width: 1256px;
	min-height:345px;
	margin: 0 auto;
	padding-top:20px;
	padding-bottom:262px;
}

/**
 * 各コンテンツ画面 メニュー部
 **/

#contents {
	display:table;
	table-layout: fixed;
}


#con_left, #con_right {
	display:table-cell;
	vertical-align:middle;
	text-align:center;
}

/**
 * 各コンテンツ画面 メニュー部
 **/

#con_left {
	width:30%;
	vertical-align: top;
	text-align: center;
}

#con_left ul {
	width:220px;
	text-align: left;
	margin: 0 auto;
}

#con_left li {
}

#con_left a {
	color: #b27430;
	font-size:1.4em;
	line-height:2.6em;
	padding-left:20px;
	background: transparent url(../img/mark.png) no-repeat left center;
}

#con_left li:hover>a {
	opacity: 0.7;
}

#menu_img {
	margin-top: 40px;
	margin-bottom: 40px;
}

/**
 * 各コンテンツ画面 コンテンツ部
 **/

#con_right {
	width:70%;
	vertical-align: top;
	padding-right:20px;
}

h2, h3 {
	color: #8fc31f;
}

h2 {
	font-size:2.4em;
	padding-top:40px;
}

h3 {
	font-size:2em;
	margin-top: 60px;
	margin-bottom: 10px;
}

#con_right img {
	margin-top:30px;
	width: 640px;
	height: 480px;
}

p {
	color: #231815;
	font-size:1.4em;
	line-height:2.8em;
}

/**
 * 問い合わせ画面
 **/

form {
	padding: 20px;
	padding-left: 50px;
	display: inline-block;
	width: 512px;
}

form h3 {
	margin-top: 30px;
}

input[type="radio"] {
	display: none;
}

label {
	position: relative;
	font-size:1.1em;
	display: inline-block;
	padding: 3px 3px 3px 20px;
	cursor: pointer;
}
label::before {
	position: absolute;
	content: '';
	top: 50%;
	left: 0;
	width: 14px;
	height: 14px;
	margin-top: -8px;
	background: #fff;
	border: 1px solid #ccc;
	border-radius: 100%;
}
input[type="radio"]:checked + label::after {
	position: absolute;
	content: '';
	top: 50%;
	left: 4px;
	width: 8px;
	height: 8px;
	margin-top: -4px;
	background: #3498db;
	border-radius: 100%;
}

input[type="text"],
input[type="email"] {
	width: 512px;
	height: 32px;
}

textarea {
	width: 512px;
	height: 128px;
}

::-webkit-input-placeholder {
  color: #ccc;
}
::-moz-placeholder {
  color: #ccc; opacity: 1;
}
:-ms-input-placeholder {
  color: #ccc;
}

input,
textarea {
	outline: none;
	border: 1px solid #aaa;
	-webkit-transition: all .3s;
	color: #231815;
	font-size:1.4em;
	transition: all .3s;
}
input:focus,
textarea:focus {
	box-shadow: 0 0 7px #1abc9c;
	border: 1px solid #1abc9c;
}

button {
	background-image: url(../img/button.png);
	margin-top: 30px;
	color: #ffffff;
	width: 105px;
	height: 56px;
	font-size: 1.8em;
	font-weight: bold;
	border-style: none;
	line-height: 1;
}

button:hover {
	opacity: 0.7;
}

#info_after {
	padding:20px;
	display: inline-block;
}

#info_after p, form p {
	color: #231815;
	font-size:1.4em;
	line-height:2.8em;
}

/**
 * index.php
 **/

article {
	margin-right: auto;
	margin-left: auto;
}

#foreword {
	margin-top:60px;
	display: -webkit-box;
	display: -moz-box;
	-webkit-box-flex: 1;
	-moz-box-flex: 1;
	padding-bottom: 30px;
	display:table;
	table-layout: fixed;
	width: 1056px;
}

#foreword div {  
    position: relative;
}

#topic_title_img, #foreword div {
	display:table-cell;
	vertical-align:middle;
	text-align:center;
}

#topic_center_img {
	position:absolute;
	right:120px;
	bottom:50px;
}

#foreword div{
	width: 700px;

}

#foreword div p {
	text-align: center;
	margin: 11px;
	font-size: 1.3em;
	color: #231815;
}

#foreword img.forewordimg {
	width: 164px;
	height: 164px;
}


/**
 * トピックス
 */


#tpics {
	margin-right: auto;
	margin-left: auto;
	width: 1056px;
}

#topics div {
	margin-right: auto;
	margin-left: auto;
	padding-left: 60px;
	width: 100%;
	text-align: left;
}

#topics div img.right {
	margin-left:950px;
}

#topics ul {
	margin-right: 40px;
	margin-left: 40px;
	font-size: 1.4em;
	text-align: left;
}

#topics li {
	margin-right: auto;
	margin-left: auto;
	margin-top: -2px;
	border-top: 2px solid #f0edc6;
	border-bottom: 2px solid #f0edc6;
	padding-left: 30px;
	text-align: left;
	line-height:2.8em;
	color: #b27430;
}

/**
 * トピックスの下のメニュー
 */

#footmenu {
	margin-bottom:20px;
	margin-top:50px;
	padding:10px;
	width: 1172px;
}

#footmenu ul {
	margin-right: auto;
	margin-left: auto;
	display: -webkit-box;
	display: -moz-box;
	list-style-type: none;
	width: 100%;
	padding: 0;
}

#footmenu li {
	-webkit-box-flex: 1;
	-moz-box-flex: 1;
	width: 250px;
	height: 191px;
	/*margin:0 15px 20px 0;*/
	padding-left:25px;
	vertical-align: top;
	text-align: center;
	/* IE対応 */
	display:inline-block;
	/display:inline;/*IE7*/
	/zoom:1;/*IE7*/
	background-position:0 0.2em;
	zoom:1;
}

#footmenu li a {
	/* TODO テキスト部分は両端に5pxの余白を取りたい */
	display: block;
	width: 250px;
	display: inline-block;
	word-break: break-all;
	margin: 0;
	font-size:1.4em;
	line-height:2.5em;
	color: #b27430;
}

#footmenu li:hover>a {
	opacity: 0.7;
}

footer {
	display: block;
	background-image: url(../img/footer.png);
	height: 262px;
	position:relative;
	margin-top:-262px;
}

footer img {
	position: fixed;
    bottom: 10px;
    right: 20px;
    padding:2pt;
    opacity:0.85;
	display: block;
	z-index: 999;
	/*text-align: right;
	position: absolute;
	bottom: 0;*/
}

footer img:hover {
	opacity: 0.7;
}

footer small {
	font-size: 1.4em;
	color: #ffffff;
	vertical-align: bottom;
	text-align: center;
	position: absolute;
	padding-bottom:20px;
	bottom: 0;
	left: 0;
	right: 0;
}

/* =============================================================================
   Media Queries
   ========================================================================== */
@media only screen and (min-width: 35em) {
	/* Style adjustments for viewports that meet the condition */
}

/* =============================================================================
   Non-Semantic Helper Classes
   ========================================================================== */
.ir {
	display: block;
	border: 0;
	text-indent: -999em;
	overflow: hidden;
	background-color: transparent;
	background-repeat: no-repeat;
	text-align: left;
	direction: ltr;
	*line-height: 0;
}

.ir br {
	display: none;
}

.hidden {
	display: none !important;
	visibility: hidden;
}

.visuallyhidden {
	border: 0;
	clip: rect(0, 0, 0, 0);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
}

.visuallyhidden.focusable:active, .visuallyhidden.focusable:focus {
	clip: auto;
	height: auto;
	margin: 0;
	overflow: visible;
	position: static;
	width: auto;
}

.invisible {
	visibility: hidden;
}

.clearfix:before, .clearfix:after {
	content: "";
	display: table;
}

.clearfix:after {
	clear: both;
}

.clearfix {
	*zoom: 1;
}

/* =============================================================================
   Print Styles
   ========================================================================== */
@media print {
	* {
		background: transparent !important;
		color: black !important;
		box-shadow: none !important;
		text-shadow: none !important;
		filter: none !important;
		-ms-filter: none !important;
	} /* Black prints faster: h5bp.com/s */
	a, a:visited {
		text-decoration: underline;
	}
	a[href]:after {
		content: " (" attr(href) ")";
	}
	abbr[title]:after {
		content: " (" attr(title) ")";
	}
	.ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after {
		content: "";
	} /* Don't show links for images, or javascript/internal links */
	pre, blockquote {
		border: 1px solid #999;
		page-break-inside: avoid;
	}
	thead {
		display: table-header-group;
	} /* h5bp.com/t */
	tr, img {
		page-break-inside: avoid;
	}
	img {
		max-width: 100% !important;
	}
	@page {
		margin: 0.5cm;
	}
	p, h2, h3 {
		orphans: 3;
		widows: 3;
	}
	h2, h3 {
		page-break-after: avoid;
	}
}