@charset "UTF-8";


/*================================================
 *  CSSリセット
================================================*/
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;font-weight:normal;}body{line-height:1}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:none}a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent}del{text-decoration:line-through}abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help}table{border-collapse:collapse;border-spacing:0;word-wrap: break-word;}hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0}input,select{vertical-align:middle}

/*================================================
 *  一般・共通設定
================================================*/
body {
	font-size:16px;
	font-family:"メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
	line-height:1.8;
	background: #fff;
	display: flex;
	flex-direction: column;
	min-height: 100vh;
}

@font-face{ 
	font-family: 'mplusC';
	src: url('../font/font.eot');
	src: url('../font/font.eot?#iefix') format('embedded-opentype'),
		url('../font/font.woff') format('woff'),
		url('../font/font.ttf') format('truetype');
}

.mplusC{ font-family: 'mplusC'; }

@font-face{ 
	font-family: 'genmin';
	src: url('../font/font2.eot');
	src: url('../font/font2.eot?#iefix') format('embedded-opentype'),
		url('../font/font2.woff') format('woff'),
		url('../font/font2.ttf') format('truetype');
}

.msg_box{
	position:fixed;
	top:150px;
	width:100%;
	z-index:100;
	display:none;
}

.msg_content{
	width: 90%;
	color: #FFFFFF;
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 0 auto;
	padding: 10px;
	background: #00AA55CC;
	box-shadow: 0px 0px 0px 10px #00AA55CC;
	border: dashed 2px white;
	font-size: 22px;
}

.msg_red{ color:red; }
.err_txt{ color:red; }

.clear {clear:both;}

/* For modern browsers */
.clearfix:before,
.clearfix:after {
	content:"";
	display:table;
}

.clearfix:after { clear:both; }

.pointer{ cursor:pointer; }

.pt50{ padding-top:50px; }

.mt20{ margin-top:20px; }

.mb100{ margin-bottom:100px; }
.mb60{ margin-bottom:60px; }
.mb30{ margin-bottom:30px; }

.contents {
	width:1100px;
	margin:0 auto;
}

.contents2 {
	padding:0 15px;
	margin-bottom:60px;	
}

.contents3 { padding:0; }

a {
	color:#000;
	text-decoration:none;
}
	a:hover { 
		color:#009443;
		text-decoration:underline; 
	}

h1 { font-size:28px; }

h2 {
	margin-bottom:40px;
	font-size:40px;
	text-align:center;
	font-family: 'genmin';
	color:#009443;
}

h3 {
	font-size: 30px;
	font-family: 'aozora';
	margin-bottom: 15px;
	border-bottom: #009443 1px solid;
	padding-left: 10px;
}

h4 {
	font-size:28px;
	font-family: 'aozora';
}

h5 { font-size:20px; }

h6 {
	font-size:18px;
	font-weight:bold;
}

img { vertical-align:bottom; }
em { font-weight:bold; }
strong {
	font-weight:bold;
	color:#ff0000;
}
pre {
	margin:1em 0;
	padding:1em;
}

blockquote {
	margin-bottom:1em;
	padding:1em;
	border:1px dotted #ddd;
	border-left:5px solid #ddd;
}

ruby { position: relative; }

	ruby rt {
		position: relative;
		top: 0.3ex;
		font-size:11px;
	}

/*================================================
 *  ヘッダー
================================================*/
header{
	margin:20px auto 0;
	width:1100px;
	display: flex;
	align-items: center;
}

.name{
	width: calc(100% - 250px);
	text-align: right;
	margin-left: auto;
}
	.name p::after{ content: ' 様'; }

.logout{
	display:block;
	background: #C44744;
	border-radius: 10px;
	width: 80px;
	text-align: center;
	margin-left: 10px;
	color: #fff;
	font-size:16px;
	line-height: 1.2em;
	padding: 6px 0;
	text-decoration: none;
}

	.logout span{
		font-size: 12px;
		display: block;
	}

	.logout:hover{
		color: #fff;
		background:rgba(196,71,68,.7);
		text-decoration: none;
	}

footer {
	clear: both;
	width: 100%;
	margin-top: auto;
	height: 25px;
	font-size:14px;
	text-align:center;
	color:#fff;
	background:#009443;
	padding: 6px 0;
}

input.infoInput {
	height: 25px;
	margin: 0;
	padding: 5px;
	border: #CCCCCC 1px solid;
	font-size: 15px;
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.infosizeB{ width:100%; }
.infosize{ width:95%; }
.infosize2{ width:70%; }
.infosize3{ width:70%; }
.infosize4{ width:30%; }
.infosize5{ width:500px; }
.infosize6{ width:150px; }
.infosize7{ width:750px; }

.infoselect{
	height: 35px;
	padding: 5px;
	border: #CCCCCC 1px solid;
	font-size: 15px;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

textarea.infocomment {
	margin: 0;
	padding: 5px;
	border: #CCCCCC 1px solid;
	font-size: 15px;
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	box-sizing: border-box;
}

.formBtn{
	text-align:center;
	margin-top: 20px;
}

.formComBtn{
	text-align: center;
	border:none;
	text-decoration:none;
	font-family: 'mplusC';
	height: 40px;
	width:200px;
	font-size:18px;
	color: #fff;
	transition: all .3s ease;
	-webkit-transition: all .3s ease;
}

.formBtn1{
	border: 1px solid #009443;
	color: #009443;
	background:#fff;
	box-sizing: border-box;
	margin-left:20px;
}
	.formBtn1:hover{
		background:#009443;
		color: #fff;
	}

.formBtn2{
	width:100px;
	background:#009443;
	margin: 0 auto;
}
	.formBtn2:hover{ background:#009443B2; }

.formBtn3{ background:#009443; }
	.formBtn3:hover{ background:#009443B2; }

.formBtn4{
	margin-left: 20px;
	background:#3171e0; 
}
	.formBtn4:hover{ background:#3171e0B2; }
	
input[type="submit"],
input[type="button"] {
	-webkit-box-sizing: content-box;
	-webkit-appearance: button;
	appearance: button;
	box-sizing: border-box;
	cursor: pointer;
}

.tb dl {
	display: flex;
	flex-wrap: wrap;
	box-sizing: border-box;
	border: #ccc 1px solid;
	margin:20px auto; 
	width: 60%;
}

	.tb dl dt {
		display: flex;
		flex-direction: column;
		justify-content: center;
		background:#F7F7F7;
		width: 30%;
		padding: 10px;
		border-bottom: 1px solid #ccc;
		color: #000;
		box-sizing: border-box;	
		text-align: center;
	}
	
	.tb dl dd {
		padding:10px;
		width: 70%;
		background: #fff;
		border-bottom: 1px solid #ccc;
		box-sizing: border-box;
	}

		.tb dl dd::after {
			content: '';
			display: block;
			clear: both;
		}
		.tb dl dt:nth-last-child(2){ border-bottom:none; }
		.tb dl dd:last-child{ border-bottom: none; }
	
.dl_width{ width:70%; }

.dlg_tb_scroll{
	height: 500px;
	overflow: scroll;
}

.search{
	margin: 10px 0;
	display: flex;
	justify-content: space-between;
	align-items: baseline;
}

.tabs {
	background-color: #fff;
	width: 100%;
	margin: 0 auto;
}

.tab_content {
	padding: 30px 10px 0;
	clear: both;
}

.buildItem ul {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

	.buildItem ul::after {
		display: block;
		content: "";
		width: 32%;
	}
	
	.buildItem ul li{
		width: 29%;
		margin : 0 2% 2% 2%;
	}

		.buildItem ul li img{
			width: 100%;
			height : 250px;
			object-fit: contain;
		}

.p_none{ display: none; }

/*================================================
 *  タブレット向けデザイン
================================================*/
/* スクロールバーを考慮して20px大きいサイズで切り替え */
@media screen and (max-width:1024px) {

img{
	max-width: 100%;
	height: auto;
	width /***/:auto;
}

header { width: 96%;}
footer {width:100%;}
	
h1{
	width: 310px;
	margin-top: 12px;
}
	h1 img{width: 100%;}
	
h2 {
	margin-top: 20px;
	font-size: 36px; 
}
	
.p_none{ display: none; }

.contents {
	box-sizing:border-box;
	width:100%;
	margin-bottom: 50px;
}
	
.contents2 {
	box-sizing:border-box;
	width:100%;
	padding:0 10px;
}
	
.contents3 {
	box-sizing:border-box;
	width:100%;
	padding:0 20px;
}

.tb dl {
	display: block;
	margin: 20px auto 0;
	width:100%;
}

.tb dl dt {
	float: none;
	width: 100%;
	border-bottom: none;
	text-align: left;
}
	
.tb dl dd {
	display: block;
	margin-bottom: 10px;
	margin-left: 0;
	width: 100%;
	border-bottom: none;
}


input.infoInput {
	height: 25px;
	padding: 5px;
	border: #CCCCCC 1px solid;
	font-size: 15px;
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.infosize{ width:96%; }
.infosize3{ width : calc(100% - 250px); }

.dlg_tb_scroll{ height: 400px; }

}

/*================================================
 *  スマートフォン向けデザイン
================================================*/
@media screen and (max-width:640px) {
	
footer {
	clear: both;
	height: 20px;
	font-size: 10px;
	text-align: center;
	color: #fff;
	padding-top: 6px;
}
	
img{
	max-width: 100%;
	height: auto;
	width /***/:auto;
}

.p_none{ display: block; }
.s_none{ display: none; }
	
.contents {
	box-sizing:border-box;
	width:100%;
}

.contents2,.contents3 {
	box-sizing:border-box;
	width:100%;
}

h1{
	width: 150px;
	margin-top: 18px;
}
	h1 img{ width: 98%; }
h2 {
	margin-top: 50px;
	font-size: 20px;
}
	h2.none {
		font-size:26px;
		color:#000;
		text-align: center;
		font-family: 'genmin';
		margin-top: 0px;
	}
h3 {
	font-size:24px;
	padding-left: 0;
}
h4 {
	font-size: 24px;
	margin-bottom: 5px;
}
h5 { margin-bottom: 10px; }

input.infoInput {
	height: 25px;
	margin: 0 0 0 0;
	padding: 5px;
	border: #CCCCCC 1px solid;
	font-size: 15px;
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.infosize3{
	width : 100%;
	margin-bottom: 10px!important;
}
.infosize4{ width:50%; }

.search{ flex-wrap: wrap; }

.buildItem ul {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

	.buildItem ul::after {
		display: block;
		content: "";
		width: 48%;
	}
	
	.buildItem ul li{
		width: 46%;
		margin : 0 2% 2% 2%;
	}

		.buildItem ul li img{
			width: 100%;
			height : 150px;
			object-fit: contain;
		}

.formComBtn{
	text-align: center;
	border:none;
	text-decoration:none;
	font-family: 'mplusC';
	height: 40px;
	width:110px;
	font-size:14px;
	color: #fff;
	transition: all .3s ease;
	-webkit-transition: all .3s ease;
}

.formBtn1{
	border: 1px solid #009443;
	color: #009443;
	background:#fff;
	box-sizing: border-box;
	margin-left:20px;
}
	.formBtn1:hover{
		background:#009443;
		color: #fff;
	}


.dlg_tb_scroll{ height: 300px; }
.dl_width{ width:100%; }

.name{ width: calc(100% - 150px); }

}