@charset "UTF-8";
/**
 * 1.0 - Normalize
 * 2.0 - Common
 * 3.0 - Header
 * 4.0 - Contents
 *    4.1 - Main
 *    4.2 - Side
 * 5.0 - Footer
 * 6.0 - Option
 *    6.1 - List
 *    6.2 - Button
 *    6.3 - Table
 *    6.4 - Link
 *    6.5 - Float
 * 7.0 - Page Option ページ共通
 *    7.1 - Index
 *    7.2 - Greeting
 *    7.3 - Program
 *    7.4 - Nursery
 * 0.0 - Option02
 *    0.1 - Text
 *    0.2 - Margin
 */
 
/*----------------------------------------------------
	1.0 - Normalize
----------------------------------------------------*/
/*HTML5 display definitions*/
article, aside, details, figcaption, figure, footer, header, hgroup, main, nav, section, summary {
	display: block;
}
audio, canvas, video {
	display: inline-block;
}
audio:not([controls]) {
	display: none;
	height: 0;
}
[hidden], template {
 display: none;
}
/*Base*/
html {
	font-family: sans-serif; /* 1 */
	-ms-text-size-adjust: 100%; /* 2 */
	-webkit-text-size-adjust: 100%; /* 2 */
}
body {
	margin: 0;
}
/*Links*/
a {
	background: transparent;
}
a:focus {
	outline: thin dotted;
}
a:active, a:hover {
	outline: 0;
}
/*Typography*/
h1 {
	font-size: 2em;
	margin: 0.67em 0;
}
abbr[title] {
	border-bottom: 1px dotted;
}
b, strong {
	font-weight: bold;
}
dfn {
	font-style: italic;
}
hr {
	-moz-box-sizing: content-box;
	box-sizing: content-box;
	height: 0;
}
mark {
	background: #ff0;
	color: #000;
}
code, kbd, pre, samp {
	font-family: monospace, serif;
	font-size: 1em;
}
pre {
	white-space: pre-wrap;
}
q {
	quotes: "\201C" "\201D" "\2018" "\2019";
}
small {
	font-size: 80%;
}
sub, sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}
sup {
	top: -0.5em;
}
sub {
	bottom: -0.25em;
}
/*Embedded content*/
img {
	border: 0;
}
svg:not(:root) {
	overflow: hidden;
}
/*Figures*/
figure {
	margin: 0;
}
/*Forms*/
fieldset {
	border: 1px solid #c0c0c0;
	margin: 0 2px;
	padding: 0.35em 0.625em 0.75em;
}
legend {
	border: 0; /* 1 */
	padding: 0; /* 2 */
}
button, input, select, textarea {
	font-family: inherit; /* 1 */
	font-size: 100%; /* 2 */
	margin: 0; /* 3 */
}
button, input {
	line-height: normal;
}
button, select {
	text-transform: none;
}
button, html input[type="button"], /* 1 */ input[type="reset"], input[type="submit"] {
	-webkit-appearance: button; /* 2 */
	cursor: pointer; /* 3 */
}
button[disabled], html input[disabled] {
	cursor: default;
}
input[type="checkbox"], input[type="radio"] {
	box-sizing: border-box; /* 1 */
	padding: 0; /* 2 */
}
input[type="search"] {
	-webkit-appearance: textfield; /* 1 */
	-moz-box-sizing: content-box;
	-webkit-box-sizing: content-box; /* 2 */
	box-sizing: content-box;
}
input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration {
 -webkit-appearance: none;
}
button::-moz-focus-inner, input::-moz-focus-inner {
 border: 0;
 padding: 0;
}
textarea {
	overflow: auto; /* 1 */
	vertical-align: top; /* 2 */
}
/*Tables*/
table {
	border-collapse: collapse;
	border-spacing: 0;
}
/*----------------------------------------------------
	2.0 - Common
----------------------------------------------------*/
html {
	font-size: 62.5%; /* base-font-size:10px */
}
body {
	background: url(../img/common/bg_body.jpg) repeat-x center top #f6f1ee;
	color: #222;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", "Arial", "Osaka", "Verdana", sans-serif;
	font-size: 16px;
	font-size: 1.6rem;
	letter-spacing: 0;
	overflow-y: scroll;
	min-width: 1000px;
	width: 100%;
}
#wrapper {
	background: url(../img/common/bg_line.jpg) repeat-x center top;
	width: 100%;
	margin: 0 auto;
	padding-top: 15px;
}
header,#contents,footer {
	box-sizing: border-box;
	width: 100%;
}
* {/*全称セレクタでリセットしていますがサイトに合わせて必要ない場合は削除してください*/
	margin: 0;
	padding: 0;
}

/*----------------------------------------------------
	3.0 - Header
----------------------------------------------------*/
header {
	color: #fff;
}
.site_title {
	box-sizing: border-box;
	display: inline-table;
	margin: 0;
	padding: 0;
	vertical-align: middle;
}
.nuv_button {
	display: none;
}
.header_inner {}
.header_top {}
.header_bottom {}
/*----------------------------------------------------
	4.0 - Contents
----------------------------------------------------*/
#contents {
	margin: 0 auto;
	overflow: hidden;
	width: 1000px;
}
/*----------------------------------------------------
	4.1 - Main
----------------------------------------------------*/
#main {
	float: right;
	width: 720px;
}
.page #main_contents {
	border: 4px  solid #06213b;
	background: #fff;
	margin-top: 30px;
	margin-bottom: 30px;
}
.page .main_contents_inner {
	border-top: 4px solid #06213b;
	padding: 0 20px;
	min-height: 520px;
}
section, .nosection {
	padding: 20px 0;
}

/*h*/
.title_cont {
	position: relative;
	background: #06213b;
	border: 1px solid #83909d;
	padding: 20px 20px 18px;
	margin: 0;
	color: #fff;
	font-size: 3.4rem;	
	font-family: Georgia,"游明朝","Yu Mincho","YuMincho","Hiragino Mincho ProN","HGS明朝E","メイリオ","Meiryo",serif;
	letter-spacing: 0.05em;
}
.title_cont:before {
	position: absolute;
	content: " ";
	background: #fff;
	width: 4px;
	height: 30px;
	top: 30%;
	left: 0;
}

section h2 {
	position: relative;
	background: #06213b;
	color: #fff;
	margin-bottom: 15px;
	padding: 10px;
	font-size: 2.4rem;
}
section h2:before {
	position: absolute;
	content: " ";
	background: #fff;
	width: 100%;
	height: 1px;
	bottom: 2px;
	left: 0;
}

section h3 {
	border-bottom: 2px solid #A67442;
	margin-bottom: 15px;
	padding-bottom: 3px;
	color: #A67442;
	font-size: 2.2rem;
}

section h4 {
	border: 1px solid #A67442;
	border-left: 4px solid #A67442;
	padding: 8px 10px 5px;
	color: #A67442;
	font-size: 1.8rem;
	margin-bottom: 15px;
}

/*----------------------------------------------------
	4.2 - Side
----------------------------------------------------*/
#side {
	box-sizing: border-box;
	background: #06213b;
	padding: 0px;
	width: 250px;
}
#side ul {
	padding: 0;
}
#side li {
	list-style-type: none;
}
/*navigation*/
nav {}
.side_nav {
	margin-bottom: 10px;
}
.side_nav li {
	display: block;
	border-bottom: 1px solid #485c71;
	width: 250px;
	overflow: hidden;
	line-height: 0;
}
.side_nav li:first-child, .side_nav li:last-child {
	border-bottom: none;
	background: url(../img/common/line_side.jpg) repeat-x bottom;
	padding-bottom: 5px;
}
	
.side_nav li a, .side_nav li .nav_coming {
	display: table-cell;
	vertical-align: middle;
	width: 250px;
}
.side_nav li a:hover,.side_nav li a.on {
	text-indent: -250px;
}
.side_nav li a:hover img, .side_nav li a:active img {
	filter: alpha(opacity=100);
	-ms-filter: "alpha( opacity=100 )";
	opacity: 1.0;
}	

/*aside*/
aside {}
#side .side_banner {
	padding: 10px 5px 0;
}
.side_banner li a {
	display: table-cell;
	vertical-align: middle;
}
/*address*/
.side_address {}
.side_address dt {
	background-color: #222;
	color: #fff;
	font-weight: 700;
	padding: 4px 8px 2px;
}
.side_address dd {
	margin-bottom: 10px;
}
/*----------------------------------------------------
	5.0 - Footer
----------------------------------------------------*/
footer {
	background: url(../img/common/bg_line.jpg) repeat-x center top #06213b;
	color: #fff;
	padding: 30px 0;
}
footer ul {
	padding: 0;
}
footer li {
	list-style-type: none;
}
.footer_inner {
	width: 1000px;
	margin: 0 auto;
	position: relative;
}
.footer_top {}
.footer_bottom {}
.footer_address {
	display: table;
	width: 100%;
}
.footer_address li {
	display: table-cell;
}
.footer_address dl {
	overflow: hidden;
	margin: 40px auto;
}
.footer_address dl dt {
	float: left;
	border: 1px solid #fff;
	width: 200px;
	padding: 10px;
	text-align: center;
	box-sizing: border-box;
}
.footer_address dl dd {
	padding-left: 240px;
	font-size: 1.4rem;
}
footer .copyright {
	text-align: center;
	font-size: 1.4rem;
}
footer a:link, footer a:visited, footer a:active {
	color: #fff;
}
footer a:hover {
	color: #fff;
	text-decoration: none;
}

.link_top {
	position: fixed;
	display: table;
	margin: 0;
	bottom: 40px;
	right: 40px;
	z-index: 100;
}
.link_top a {
	display: table-cell;
	box-shadow: 0px 0px 5px rgba(0,0,0,0.3);
	line-height: 0;
	filter: alpha(opacity=100);
	-ms-filter: "alpha( opacity=100 )";
	opacity: 1.0;
	position: relative;
	width: 60px;
	height: 60px;
	text-align: center;
	vertical-align: middle;
}
.link_top a:link, .link_top a:visited, .link_top a:active {
	border: 1px solid #fff;
	background-color: #C30D23;
	font-weight: 700;
	color: #fff;
	text-decoration: none;
}
.link_top a:hover {
	border: 1px solid #fff;
	background-color: #06213B;
	color: #fff;
	transition: 0.3s;
}
/*----------------------------------------------------
	6.0 - Option
----------------------------------------------------*/
input,select,textarea {
	margin: 2px 2px 5px;
}
section p, section table, section ul, section dl {
	margin-bottom: 40px;
}


/*display*/
.block {
	display: block;
}
.table {
	display: table;
}
.tableC {
	display: table-cell;
}

/*----------------------------------------------------
	6.1 - List
----------------------------------------------------*/
section li {
	list-style-type: none;
}
.list_text li {
	padding-left: 1em;
	text-indent: -1em;
}
.list_text15 li {
	padding-left: 1.5em;
	text-indent: -1.5em;
}
.list_mark li {
	position: relative;
	padding-left: 0.8em;
}
.list_mark li:before {
	position: absolute;
	content: " ";
	display: inline-block;
	left: 0;
	top: 8px;
    width: 4px;
    height: 4px;
    border-top: 2px solid #06213B;
    border-right: 2px solid #06213B;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

/*----------------------------------------------------
	6.2 - Button
----------------------------------------------------*/
/*１列で収まるボタンの場合*/
.list_banner {
	display: table;
	table-layout: fixed;
	width: 100%;
}
.list_banner li {
	display: table-cell;
	padding: 0 10px;
}
.list_banner li a,.list_banner li .banner_coming {
	display: block;
	text-align: center;
	line-height: 0.6;
}
/*1列で収まらないボタンの場合*/
.list_banner02 {
	display: table;
	table-layout: fixed;
	width: 100%;
	overflow: hidden;
}
.list_banner02 li {
	box-sizing: border-box;
	display: inline-table;
	padding: 0 10px;
	word-spacing: normal;
	width: 33%;/*1列に表示するボタンの数に合わせて設定する必要があります*/
}
.list_banner02 li a,.list_banner li .banner_coming {
	display: block;
	text-align: center;
	line-height: 0.6;
}

/*バナー画像をテキストに差し替えた場合*/
.list_banner_text {
	width: 100%;
	overflow: hidden;
}
.list_banner_text li {
	float: left;
	padding: 0 10px;
	box-sizing: border-box;
	text-align: center;
}
.list_banner_text li a, .list_banner_text li .banner_coming {
	display: inline-block;
	text-align: center;
	padding: 10px;
}
.list_banner_text li a:link, .list_banner_text li a:visited, .list_banner_text li a:active {
	background-color: #C30D23;
	border: 3px double #fff;
	color: #fff;
	text-decoration: none;
}
.list_banner_text li a:hover {
	background-color: #06213B;
}
.list_banner_text li .banner_coming {
	background-color: #999;
	border: 3px double #fff;
	color: #fff;
}

.list_banner_text li.single {
	width: 100%;
}
.list_banner_text li.double {
	width: 50%;
}

.list_banner_text li.w250 a,.list_banner_text li.w250 .banner_coming  {
	width: 250px;
}

/*----------------------------------------------------
	6.3 - Table
----------------------------------------------------*/
section table {
	box-sizing: border-box;
}
section th,td {
	padding: 5px 12px 3px;
	border: 1px solid #000;
	margin: 0;
}
section th {
	background-color: #06213B;
	color: #fff;
}
section th.sub {
	background: #DDD;
	color: #222;
}
	
section td {
	background-color: #fff;
}

section table.table_noborder th, section table.table_noborder td {
	padding: 0;
	border: none;
	color: #222;
    vertical-align: top;
}
.news_impo section table.table_noborder td {
    vertical-align: middle;
}

/*----------------------------------------------------
	6.4 - Link
----------------------------------------------------*/
a:link, a:visited, a:active {
	color: #a67442;
}
a:hover {
	color: #a67442;
	text-decoration: none;
}
a:hover img, a:active img {
	filter: alpha(opacity=70);
	-ms-filter: "alpha( opacity=70 )";
	opacity: 0.7;
}

/*----------------------------------------------------
	7.0 - Page Option[ページの共通で使用するオプション]
----------------------------------------------------*/
.coming {
	text-align: center;
	font-size: 2.0rem;
	color: #666;
	padding-top: 30px;
	font-weight: bold;
	letter-spacing: 0.5em;
}

/*icon*/
.ico_pdf {
	position: relative;
}
.ico_pdf:after {
	content: " ";
	background: url(../img/common/ico_pdf.png) no-repeat top left;
	width: 25px;
	height: 25px;
	display: inline-block;
	position: absolute;
	top: -3px;
	margin-left: 5px;
}
.ico_txt {
    padding-right: 30px;
}

/*textbox*/
.txt_box_gray {
    border: 2px solid #999;
    padding: 20px;
}
.txt_box_red {
    border: 2px solid #C30D23;
    padding: 20px;
}
.txt_box_red02 {
    border: 2px solid #f00;
    padding: 10px 15px;
}

/*----------------------------------------------------
	7.1 - Index
----------------------------------------------------*/
.index {}
.mainimage {
	background: url(../img/contents/img_main.png) no-repeat top right;
	height: 686px;
	padding-top: 60px;
	box-sizing: border-box;
}
.news {
	overflow: hidden;
	border: 4px solid #06213b;
	margin-bottom: 50px;
}
.news h2 {
	float: left;
	line-height: 0;
}
.news dl {
	background: url(../img/contents/bg_info.jpg) no-repeat bottom right #fff;
	height: 375px;
	overflow-y: scroll;
	overflow-x: hidden;
	padding: 20px;
	box-sizing: border-box;
}

.news dl dd {
	background: url(../img/contents/line_news.jpg) repeat-x bottom;
	padding-bottom: 10px;
	margin-bottom: 10px;
	padding-left: 15px;
	position: relative;
	text-shadow: #fff 1px 1px 0px, #fff -1px 1px 0px,
    #fff 1px -1px 0px, #fff -1px -1px 0px;

}
.news dl dd:before {
	content: " ";
	position: absolute;
	background: url(../img/common/bg_icon.png) no-repeat;
	width: 12px;
	height: 10px;
	top: 6px;
	left: 0;
}

.news_impo {
    border: 4px solid #06213b; 
    background: #fff;
    padding: 20px;
    margin-bottom: 20px;
}
.news_impo section {
    padding: 0;
}
.news_impo section p {
    margin-bottom: 10px;
}
.news_impo section ul:last-child {
    margin-bottom: 0;
}

/*----------------------------------------------------
	7.2 - Greeting
----------------------------------------------------*/
.dl_greeting {
	overflow: hidden;
	border-bottom: 1px dotted #bbb;
	padding-bottom: 20px;
	margin-bottom: 20px;
}
.dl_greeting dt {
	float: left;
}
.dl_greeting dt img {
	border: 1px solid #ddd;
	padding: 1px;
}
.dl_greeting dd {
	margin-left: 150px;
	margin-top: 60px;
	letter-spacing: -0.03em;
}

/*----------------------------------------------------
	7.3 - Program
----------------------------------------------------*/
.program {
	font-size: 1.5rem;
}
.dl_program {
    margin-bottom: 20px;
}
.dl_program dt {
	font-size: 1.4rem;
	border: 1px solid #ddd;
	padding: 0 5px;
	width: 3em;
	text-align: center;
	float: left;
    /*text-indent: 0;*/
}
.dl_program.w5em dt {
	width: 8em;
}
.dl_program dt.float_none {
	width: auto;
	text-align: center;
	float: none;
    display: inline-block;
    /*text-indent: 0;*/
}
.dl_program dd {
	padding-left: 4em;
    /*text-indent: 0;*/
}
.dl_program.w5em dd {
	padding-left: 8.5em;
    /*text-indent: 0;*/
}
.dl_program dd.name {
	padding-left: 12em;
	text-indent: -8em;
}
.dl_program dt.commentator {
	width: 8em;
    float: none;
}
.dl_program dd.commentator {
	padding-left: 8em;
	text-indent: -7em;
}
.dl_program dd.dd_last {
	margin-bottom: 20px;
}

.list_mark_pro li {
	position: relative;
	padding-left: 0.8em;
}
.list_mark_pro li:before {
	position: absolute;
	content: " ";
	display: inline-block;
	left: 0;
	top: 8px;
    width: 4px;
    height: 4px;
    border-top: 2px solid #A67442;
    border-right: 2px solid #A67442;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

/*----------------------------------------------------
	7.4 - Nursery
----------------------------------------------------*/
.ul_nursery li {
	display: inline-block;
	margin-right: 20px;
}

/*----------------------------------------------------
	0.0 - Option02
----------------------------------------------------*/
/*----------------------------------------------------
	0.1 - Text
----------------------------------------------------*/
/* 明朝
font-family: Georgia,"游明朝","Yu Mincho","YuMincho","Hiragino Mincho ProN","HGS明朝E","メイリオ","Meiryo",serif;*/

/*indent*/
.indent01 {
	display: block;
	text-indent: -1em;
	padding-left: 1em;
}

/*position*/
.tx_Lt {
	text-decoration: line-through;
}
.tx_Ul {
	text-decoration: underline;
}

.tx_L {
	text-align: left;
}
.tx_R {
	text-align: right;
}
.tx_C {
	text-align: center;
}
.tx_T {
	vertical-align: top;
}
.tx_btm {
	vertical-align: bottom;
}
.tx_M {
	vertical-align: middle;
}

/**letter-spacingの限度は-0.08em**/
.ls03 {
	letter-spacing: -0.03em;
}
.ls05 {
	letter-spacing: -0.05em;
}

/**line-heightの限度は-0.08em**/
.lh06 {
	line-height: 0.6;
}
.lh10 {
	line-height: 1.0;
}
.lh12 {
	line-height: 1.2;
}

/*color*/
.tx_red{
	color: #f00;
}
.tx_green {
	color: #489F2B;
}
.tx_blue {
	color: #0069A9;
}
.tx_black {
	color: #222;
}
.tx_white {
	color: #fff;
}
.tx_ocher {
    color: #A67442;
}

/*size*/
.tx28 {
	font-size: 24px;
	font-size: 2.4rem;
}
.tx24 {
	font-size: 21px;
	font-size: 2.1rem;
}
.tx18 {
	font-size: 18px;
	font-size: 1.8rem;
}
.tx16 {
	font-size: 16px;
	font-size: 1.6rem;
}
.tx15 {
	font-size: 15px;
	font-size: 1.5rem;
}
.tx14 {
	font-size: 14px;
	font-size: 1.4rem;
}
.tx13 {
	font-size: 13px;
	font-size: 1.3rem;
}
.tx12 {
	font-size: 12px;
	font-size: 1.2rem;
}

/*----------------------------------------------------
	0.2 - Margin
----------------------------------------------------*/
.img_space {
	margin-top: 5px;
	margin-bottom: 10px;
}
.mgT00 {
	margin-top: 0px;
}
.mgT10 {
	margin-top: 10px;
}
.mgT20 {
	margin-top: 20px;
}
.mgB00, section p.mgB00, section ul.mgB00 {
	margin-bottom: 0px;
}
.mgB10 {
	margin-bottom: 10px;
}
.mgB20 {
	margin-bottom: 20px;
}
.mgB40 ,.dl_program.mgB40  {
	margin-bottom: 40px;
}
	
