@charset "utf-8";

body,html{
	height: auto !important;
	height: 100%;            
	font-size:18px;
	line-height:0.3;
	font-family: "Noto Serif JP", serif;
	font-weight: 500;
	color:#5D5A5A;
	margin:0;
	padding:0;
	letter-spacing: 0.06em;
	overflow-x:none;
}
body strong,html strong{

	font-weight: bold;
}
*{
	margin:0;
	padding:0;
	font-weight: 500;
}
*,
*::before,
*::after {
  box-sizing: border-box;
}
img{
	width:100%;
	height: auto;
	vertical-align: bottom;
}
a img{
	border:none;	
}
a img:hover{
	filter:alpha(opacity=60);
    -moz-opacity: 0.6;
    opacity: 0.6;/**/	
}
a:hover{
	filter:alpha(opacity=60);
    -moz-opacity: 0.6;
    opacity: 0.6;/**/	
}
#sarea img{
	width:100%;
	height:auto;
	border:none;
	margin:0;
	padding:0;
	display: block;
	vertical-align: bottom;	
}
a:link {
	color:#5D5A5A;
	text-decoration: none;
}
a:visited {
	color:#5D5A5A;
	text-decoration: none;
}
a:hover{
	color:#5D5A5A;
	text-decoration: none;
}
a:active {
	color:#5D5A5A;
	text-decoration: none;
}
a{
	font-weight:normal;	
}
div{
		
}



.bs{
	text-shadow:0 1px 1px #666666;	
}
.webFont{
font-family: 'Hannari';
}
.webFont2{
font-family: Crimson Text ;
}
.webFont3{
font-family: Crimson Text ;
}

.line_center{
	width:100%;
	text-align:center;	
	
}

#wrap{
	width:100%;
	min-height: 100%;
	height:100%;
	overflow-x:none;
}
body > #wrap{
	height: auto;
}


.lf{
	float:left;	
	
}
.lr{
	float:right;	
	
}
.lc{
	clear:both;
	width:100%;
	height:0;
	line-height:0;
	font-size:0;

}


.clearfix:after {
  content: ".";  /* 新しいコンテンツ */
  display: block;
  clear: both;
  height: 0;
  visibility: hidden; /* 非表示に */
  overflow: hidden;
}

.clearfix{

  overflow: hidden;
}
.kakumaru1{
    border-radius: 5px;       /* CSS3草案 */  
   -webkit-border-radius: 5px;    /* Safari,Google Chrome用 */  
   -moz-border-radius: 5px;  /* Firefox用 */  	
	
}


/*font*/
.f12pt{
	font-size:12pt;	
}
.f11pt{
	font-size:11pt;	
}
.f10pt{
	font-size:10pt;	
}
.f9pt{
	font-size:9pt;	
}
.f8pt{
	font-size:8pt;	
}
a{
	color:#7e7048;	
}
.redline{
	color:#F30;	
}
.r15pa{
	padding-right:15px;	
}
/*spacer*/

.spacer5{
	width:100%;
	height:5px;	
}
.spacer10{
	width:100%;
	height:10px;	
}
.spacer15{
	width:100%;
	height:15px;	
}
/*paddingmargin*/
.padtop10{
	padding-top:10px;	
}
.padtop20{
	padding-top:20px;	
}
.padtop30{
	padding-top:30px;	
}
.padtop40{
	padding-top:40px;	
}
.padtop50{
	padding-top:50px;	
}
.padtop60{
	padding-top:60px;	
}
.padtop70{
	padding-top:70px;	
}
.padtop80{
	padding-top:80px;	
}
.padtop90{
	padding-top:90px;	
}
.padtop100{
	padding-top:100px;	
}
.padtop100{
	padding-top:100px;	
}

.padtop110{
	padding-top:110px;	
}
.padtop120{
	padding-top:120px;	
}

.padbottom10{
	padding-bottom:10px;	
}
.padbottom20{
	padding-bottom:20px;	
}
.padbottom30{
	padding-bottom:30px;
}
.padbottom40{
	padding-bottom:40px;
}
.padbottom50{
	padding-bottom:50px;
}
.padbottom60{
	padding-bottom:60px;
}
.padbottom70{
	padding-bottom:70px;
}
.padbottom80{
	padding-bottom:80px;
}
.padbottom90{
	padding-bottom:90px;
}
.padbottom100{
	padding-bottom:100px;
}
.padbottom110{
	padding-bottom:110px;
}
.padbottom120{
	padding-bottom:120px;
}


/*テーブル設定*/
table.deft{
	 empty-cells:show;
		border-left:solid 1px #bebebe !important;
	border-top:solid 1px #bebebe !important;
	border-collapse: collapse;
	width:100%;
}
table.deft th{
	background:#efefef !important;
	padding:17px 29px !important;
	color:#2d2c2c;
		border-right:solid 1px #bebebe !important;
	border-bottom:solid 1px #bebebe !important;
	font-size:15px;
	vertical-align:top;
}
table.deft td{
		border-right:solid 1px #bebebe !important;
	border-bottom:solid 1px #bebebe !important;
	padding:17px 29px !important;
	font-size:15px;	
	color:#2d2c2c;
	vertical-align:top;
}

/*テーブル設定*/
table.deft2{
	 empty-cells:show;
	width:100%;
	border-spacing: 2px;
}
table.deft2 th{
	background:#efefef !important;
	padding:17px 29px !important;
	color:#2d2c2c;
	font-size:15px;
	font-weight:normal;

}
table.deft2 td{
	padding:17px 29px !important;
	font-size:15px;	
	color:#2d2c2c;
	vertical-align:top;
}

.pointer{
	cursor:pointer;	
	
}

.inline {
	text-align: justify;
	text-justify: distribute-all-lines;
	line-height:0;
	}
.inline:after {
	content:"";
	display: inline-block;
	width: 100%;
	line-height:0;
	height: 0;
	}
.inline .tab {
display: inline-block;
vertical-align: top;
text-align: left;
}
.flexbox{
	flex-wrap: wrap;
	display:flex;
}