@charset "utf-8";

/* -----------------------------------------------

	Site: 
	Type: page styles
	URL: 
	Last Up Date: 
	Version: 1.0
	Author: 
	
	----------------------------------------------
	
	Contents

		1.

----------------------------------------------- */


/* --- common --- */
body {
}



/* --- header --- */
header {
}



/* --- Contents --- */
#Contents {
	background-color: #f2f6fa;
	padding: 0px 0px 50px 0px;
	color: #555;
}
#Contents.IndexPage {
	background-image: url(../images/page-bg.png);
	background-repeat: no-repeat;
	background-position: top left;
	background-size: 600px;
}
#Contents.TextTitle {
}
#pankuzu {
	padding: 10px;
	font-size: 11px;
}



/* --- 扉ページタイトル --- */
#TitleBox {
	margin: 70px 0px 0px 0px;
}
#TitleBox h1 {
	float: left;
	width: 350px;
	color: #0055A3;
	margin: 0px 0px 0px 100px;
	padding: 0px 0px 45px 0px;
	background-position: bottom left;
	background-repeat: no-repeat;
}
#TitleBox h1 span {
	display: block;
	font-size: 46px;
	font-weight: 500;
	padding: 0px 0px 15px 0px;
	border-bottom: solid 3px #0055A3;
}
#TitleBox h1.Outline {
	background-image: url(../images/h1-outline.png);
	background-size: 116px;
}
#TitleBox #TitlePic.Outline {
	float: right;
	max-width: 900px;
	width: calc(100% - 450px);
}
#TitleBox h1.Training {
	background-image: url(../images/h1-training.png);
	background-size: 129px;
}
#TitleBox #TitlePic.Training {
	float: right;
	max-width: 900px;
	width: calc(100% - 450px);
}
#TitleBox h1.Material {
	background-image: url(../images/h1-material.png);
	background-size: 213px;
}
#TitleBox #TitlePic.Material {
	float: right;
	max-width: 900px;
	width: calc(100% - 450px);
}
#TitleBox h1.Support {
	background-image: url(../images/h1-support.png);
	background-size: 127px;
}
#TitleBox #TitlePic.Support {
	float: right;
	max-width: 900px;
	width: calc(100% - 450px);
}
#TitleBox h1.Housing {
	background-image: url(../images/h1-housing.png);
	background-size: 341px;
}
#TitleBox #TitlePic.Housing {
	float: right;
	max-width: 900px;
	width: calc(100% - 450px);
}
#TitleBox h1.Heritage {
/*	background-image: url(../images/h1-heritage.png);*/
	background-size: 337px;
}
#TitleBox #TitlePic.Heritage {
	float: right;
	max-width: 900px;
	width: calc(100% - 450px);
}
#TitleBox h1.Heritage span {
	font-size: 42px;
}

@media screen and (max-width: 600px) {
	#TitleBox {
		margin: 30px 0px 0px 0px;
	}
	#TitleBox h1 {
		float: none;
		text-align: center;
		width: 100%;
		margin: 0px auto 0px auto;
		padding: 0px 0px 45px 0px;
		background-position: bottom center;
	}
	#TitleBox h1 span {
		font-size: 30px;
	}
	#TitleBox #TitlePic.Outline {
		float: none;
		max-width: 900px;
		width: 100%;
		margin: 30px 0px 0px 0px;
	}
	#TitleBox #TitlePic.Training {
		float: right;
		max-width: 900px;
		width: 100%;
		margin: 30px 0px 0px 0px;
	}
	#TitleBox #TitlePic.Material {
		float: right;
		max-width: 900px;
		width: 100%;
		margin: 30px 0px 0px 0px;
	}
	#TitleBox #TitlePic.Support {
		float: right;
		max-width: 900px;
		width: 100%;
		margin: 30px 0px 0px 0px;
	}
	#TitleBox #TitlePic.Housing {
		float: right;
		max-width: 900px;
		width: 100%;
		margin: 30px 0px 0px 0px;
	}
	#TitleBox #TitlePic.Heritage {
		float: right;
		max-width: 900px;
		width: 100%;
		margin: 30px 0px 0px 0px;
	}
	#TitleBox h1.Heritage span {
		font-size: 30px;
	}
}


/* --- ページタイトル --- */
#IndexTitle h1 {
	text-align: center;
	font-size: 46px;
	font-weight: 500;
	letter-spacing: 0.1em;
	color: #0055A3;
	padding: 0px 0px 45px 0.1em;
	margin: 30px 0px 0px 0px;
	background-position: bottom center;
	background-repeat: no-repeat;
}
#IndexTitle h1.Outline {
	background-image: url(../images/h1-outline.png);
	background-size: 116px;
}
#IndexTitle h1.Training {
	background-image: url(../images/h1-training.png);
	background-size: 129px;
}
#IndexTitle h1.Material {
	background-image: url(../images/h1-material.png);
	background-size: 213px;
}
#IndexTitle h1.Support {
	background-image: url(../images/h1-support.png);
	background-size: 127px;
}
#IndexTitle h1.Housing {
	background-image: url(../images/h1-housing.png);
	background-size: 341px;
}
#IndexTitle h1.Heritage {
	background-image: url(../images/h1-heritage.png);
	background-size: 337px;
}

@media screen and (max-width: 600px) {
	#IndexTitle h1 {
		font-size: 30px;
	}
}



/* --- テキストタイトル --- */
#TextTitle h1 {
	text-align: center;
	font-size: 40px;
	font-weight: 500;
	letter-spacing: 0.2em;
	line-height: 1.6;
	color: #0055A3;
	margin: 30px 0px 0px 0px;
}

@media screen and (max-width: 600px) {
	#TextTitle h1 {
		text-align: left;
		font-size: 20px;
		letter-spacing: 0.1em;
		margin: 30px 10px 0px 10px;
	}
}


/* --- メインコンテンツ --- */
#MainCnt {
	position: relative;
	max-width: 1200px;
	min-height: 400px;
	margin: 60px auto 0px auto;
	padding: 35px 20px 35px 20px;
	background-color: #fff;
	line-height: 1.8;
}
.TextTitle #MainCnt {
	margin: 40px auto 0px auto;
}
#MainCnt::before {
	content: "";
	display: block;
	width: 50%;
	border-bottom: solid 5px #0055A3;
	position: absolute;
	top: 0px;
	left: 50%;
	margin-left: -25%;
}
#MainCnt h1 {
	text-align: center;
	font-size: 32px;
	font-weight: 500;
	letter-spacing: 0.2em;
	color: #0055A3;
	text-indent: -0.3em;
	margin: 0px 0px 60px 0px;
}
#MainCnt h2 {
	max-width: 840px;
	font-size: 20px;
	font-weight: 500;
	letter-spacing: 0.2em;
	color: #fff;
	background-color: #0055A3;
	margin: 50px auto 30px auto;
	padding: 3px 20px 3px 20px;
}
#MainCnt h3 {
	max-width: 800px;
	font-size: 20px;
	font-weight: 500;
	letter-spacing: 0.2em;
	color: #0055A3;
	margin: 40px auto 20px auto;
}
#MainCnt h4 {
	max-width: 800px;
	font-size: 20px;
	font-weight: 500;
	letter-spacing: 0.2em;
	color: #4D4D4D;
	margin: 40px auto 20px auto;
}
#MainCnt h5 {
	max-width: 800px;
	font-size: 18px;
	letter-spacing: 0.2em;
	color: #0055A3;
	margin: 30px auto 20px auto;
}
#MainCnt p {
	max-width: 800px;
	font-size: 16px;
	margin: 20px auto;
}
#MainCnt p.PostDate {
	text-align: right;
	font-size: 14px;
}

#MainCnt table {
	width: 100%;
	max-width: 800px;
	margin: 20px auto;
	border: solid 1px #999;
}
#MainCnt table th, #MainCnt table td {
	border: solid 1px #999;
	padding: 5px 10px;
}
#MainCnt table th {
	color: #0055A3;
	white-space: nowrap;
	background-color: #f2f6fa;
}
#MainCnt table.NoFrame {
	border: none;
}
#MainCnt table.NoFrame th, #MainCnt table.NoFrame td {
	border: none;
}
#MainCnt table.NoFrame th {
	color: inherit;
	background-color: inherit;
}
#MainCnt table.tb-small th, #MainCnt table.tb-small td {
	font-size: 13px;
	padding: 5px;
}
#MainCnt table.BgColor tr:nth-child(odd) {
	background-color: #f2f6fa;
}

@media screen and (max-width: 600px) {
	#MainCnt table th, #MainCnt table td {
		font-size: 12px;
		padding: 5px;
	}
	#MainCnt p.Greeting img {
		width: 140px;
	}
}

#MainCnt ul {
	max-width: 800px;
	margin: 20px auto;
}
#MainCnt ul li {
	font-size: 16px;
	margin: 0px 0px 10px 30px;
	list-style-type: disc;
}

#MainCnt ul.ListIndex {
	max-width: 100%;
	margin: 50px auto;
	font-size: 0px;
}
#MainCnt ul.ListIndex li {
	display: inline-block;
	width: 46%;
	margin: 0px 2% 30px 2%;
}
#MainCnt ul.ListIndex li a {
	display: block;
	font-size: 20px;
	letter-spacing: 0.2em;
	color: #fff;
	background-color: #0055A3;
	padding: 20px 25px;
}
#MainCnt ul.ListIndex li a[href $='.pdf'] {
	background-image: none;
	padding-left: 25px;
	overflow: inherit;
}

#MainCnt ul.ListSupport {
	max-width: 100%;
	margin: 50px 0px 30px 0px;
	font-size: 0px;
	text-align: center;
}
#MainCnt ul.ListSupport li {
	display: inline-block;
	max-width: 500px;
	font-size: 20px;
	text-align: center;
	line-height: 1.8;
	margin: 0px 20px 40px 20px;
}

#MainCnt ul.ListBtnTwo {
	max-width: 800px;
	margin: 20px auto;
    text-align: center;
    font-size: 0px;
}
#MainCnt ul.ListBtnTwo li {
    display: inline-block;
    width: 48%;
	font-size: 24px;
	margin: 0px 1%;
	list-style-type: none;
}
#MainCnt ul.ListBtnTwo li a {
    display: block;
    border: solid 1px #0055A3;
    padding: 20px 10px 230px 10px;
}
#MainCnt ul.ListBtnTwo li:nth-child(1) a {
    background-image: url("../images/btn-bg01.png");
    background-position: center bottom;
    background-repeat: no-repeat;
}
#MainCnt ul.ListBtnTwo li:nth-child(2) a {
    background-image: url("../images/btn-bg02.png");
    background-position: center bottom;
    background-repeat: no-repeat;
}

#MainCnt ol {
	max-width: 800px;
	margin: 20px auto;
	counter-reset: oldef;
}
#MainCnt ol li {
	font-size: 16px;
	margin: 0px 0px 10px 30px;
	position: relative;
}
#MainCnt ol li:before {
	counter-increment: oldef; /* 任意の名前を付ける（もちろん英語で） */
	content: counter(oldef); /* 名前を付けたカウンターをcontentで発動！ */
	margin-right: 15px;
	position: absolute;
	top: 0px;
	left: -23px;
}

#MainCnt dl {
	max-width: 800px;
	margin: 20px auto;
}
#MainCnt dl dt, #MainCnt dl dd {
	font-size: 16px;
	margin: 0px 0px 5px 30px;
	list-style-type: disc;
}
#MainCnt dl dt {
	padding: 10px 0px 0px 0px;
}
#MainCnt dl dd {
	padding: 5px 0px 15px 0px;
	border-bottom: solid 1px #f2f2f2;
}
#MainCnt dl dt span {
    display: inline-block;
    width: 10em;
    text-align: center;
    font-size: 13px;
	font-weight: 400;
    background-color: #f2f2f2;
    padding: 5px;
    margin: 0 0 0 3em;
}

@media screen and (max-width: 600px) {
	#MainCnt ul.ListIndex {
		margin: 20px auto;
	}
	#MainCnt ul.ListIndex li {
		width: 96%;
		margin: 0px 2% 30px 2%;
	}
	#MainCnt ul.ListIndex li a {
		font-size: 18px;
	}
    #MainCnt ul.ListBtnTwo li {
        width: 96%;
        display: block;
        font-size: 16px;
        margin-bottom: 15px;
    }
}




/* --- footer --- */
footer {
}