@charset "utf-8";
/* # =================================================================
#### font-family
# ================================================================= */
@font-face{
	font-family : "Yu Gothic";
	src : local("Yu Gothic Medium");
	font-weight : 100;
}
@font-face{
	font-family : "Yu Gothic";
	src : local("Yu Gothic Medium");
	font-weight : 200;
}
@font-face{
	font-family : "Yu Gothic";
	src : local("Yu Gothic Medium");
	font-weight : 300;
}
@font-face{
	font-family : "Yu Gothic";
	src : local("Yu Gothic Medium");
	font-weight : 400;
}
@font-face{
	font-family : "Yu Gothic";
	src : local("Yu Gothic Bold");
	font-weight : bold;
}
@font-face{
	font-family : "Helvetica Neue";
	src : local("Helvetica Neue Regular");
	font-weight : 100;
}
@font-face{
	font-family : "Helvetica Neue";
	src : local("Helvetica Neue Regular");
	font-weight : 200;
}
@font-face{
	font-family : 'Courier Prime';
	src : url('font/Courier Prime.ttf') format('truetype');
}
@media all and (-ms-high-contrast: none){
html{
	font-family : Verdana, Meiryo, sans-serif;
}
}
@media all and (-ms-high-contrast: active){
html{
	font-family : Verdana, Meiryo, sans-serif;
}
}
/* # =================================================================
#### font-size
# ================================================================= */
html{
	font-size : 62.5%;/* fontのベースサイズを10pxに指定 */
}
body{
	font-size :1.6rem;/* 16px */

}
h1{
	font-size : 36px;/* IE8以下とAndroid4.3以下用フォールバック */
	font-size : calc(2.4rem + ((1vw - 0.64rem) * 2.1429));/* 24px~36pxで可変 */

}
h2{
	font-size : 24px;/* IE8以下とAndroid4.3以下用フォールバック */
	font-size : calc(2rem + ((1vw - 0.64rem) * 0.7143));/* 20px~24pxで可変 */

}
h3,
.side_haedline a{
	font-size : 20px;/* IE8以下とAndroid4.3以下用フォールバック */
	font-size : calc(1.8rem + ((1vw - 0.64rem) * 0.3571));/* 18px~20pxで可変 */

}
h4{
	font-size : 20px;/* IE8以下とAndroid4.3以下用フォールバック */
	font-size : calc(1.6rem + ((1vw - 0.64rem) * 0.3571));/* 16px~18pxで可変 */

}
p,a{
	font-size : 16px;/* IE8以下とAndroid4.3以下用フォールバック */
	font-size : calc(1.4rem + ((1vw - 0.64rem) * 0.3571));/* 14px~16pxで可変 */

}
@media (min-width: 1200px) {/* 1200px以上*/
h1{
	font-size : 3.6rem;/* 36px */
}
h2{
	font-size : 2.4rem;/* 24px */
}
h3,
.side_haedline a{
	font-size : 2.0rem/* 20px */
}
h4{
	font-size : 1.8rem/* 18px */
}
p,a{
	font-size : 1.6rem;/* 16px */
}
}
@media screen and (max-width: 640px) {/* 640px以下*/
body{

}
h1{
	font-size : 2.4rem;/* 24px */
}
h2{
	font-size : 2rem;/* 20px */
}
h3,
.side_haedline a{
	font-size : 1.8rem/* 18px */
}
h4{
	font-size : 1.6rem/* 16px */
}
p,a{
	font-size : 1.4rem;/* 14px */
}
}
/* # =================================================================
#### table
# ================================================================= */
table{
	border-collapse : collapse;
	width : 100%;
}
table,
th,
td{
	border : 1px solid #000;
	padding : 10px;
	text-align : center;
}
/* # =================================================================
#### common
# ================================================================= */
html,body#main_site{
	color : #1D1D1D;
	font-family : "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
p{
	word-wrap : break-word;
}
img{
	display :block;
}
a{
	color : #1D1D1D;
	transition : 0.5s;
	text-decoration : none;
}
a:hover{
	transition : 0.5s;
}
li{
	list-style : none;
}
/* googlemap */
.ggmap{
	position : relative;
	padding-bottom : 25.25%;
	padding-top : 30px;
	height : 0;
	overflow : hidden;
}
.ggmap iframe,
.ggmap object,
.ggmap embed{
	position : absolute;
	top : 0;
	left : 0;
	width : 100%;
	height : 100%;
	border : none;
}
/* breadcrumb */
.stf_breadcrumb{
	position : relative;
	display : block;
	padding-top : 100px;
	padding-left: 50px;
}
.stf_breadcrumb #breadcrumb{
	overflow : hidden;
}
.stf_breadcrumb #breadcrumb li{
	list-style : none;
	position : relative;
	float : left;
	font-size : 12px;
}
.stf_breadcrumb #breadcrumb li span{
	margin : 0 5px;
}
.stf_breadcrumb #breadcrumb li:first-child span{
	margin-left : 0;
}
.stf_breadcrumb #breadcrumb li a{
	color : #0D2F3D;
	font-size : 12px;
	text-decoration : none;
	transition : 0.8s;
	-webkit-transition : 0.8s;
}
.stf_breadcrumb #breadcrumb li a:hover{
	color : #ef9428;
	transition : 0.8s;
	-webkit-transition : 0.8s;
}
/* # =================================================================
#### 社長ブログバナー
# ================================================================= */
section.p_blog_banner_area{
	position : relative;
	display : -webkit-box;
	display : -ms-flexbox;
	display : flex;
	-ms-flex-wrap : wrap;
	flex-wrap : wrap;
	-webkit-box-pack : justify;
	-ms-flex-pack : justify;
	justify-content : space-between;
	width : 1200px;
	height : auto;
	margin : 0 auto 50px;
}
section.p_blog_banner_area span{
	position : relative;
	display : block;
	width : 48%;
	height : auto;
}
section.p_blog_banner_area span a{
	position : relative;
	display : block;
	width : 100%;
	height : auto;
}
section.p_blog_banner_area span a:hover{
	opacity : 0.8;
}
section.p_blog_banner_area span img{
	position : relative;
	display : block;
	width : 100%;
	height : auto;
}
/* # =================================================================
#### header
# ================================================================= */
header{

}
header h1{
	position : relative;
	display : block;
	width : 100%;
	padding : 20px 0 20px 15%;
}
header h1 a{
	position : relative;
	display : inline-block;
}
header h1 a:hover{
	opacity : 0.8;
}
header h1 img{
	position : relative;
	display : block;
	width : 195px;
	height : auto;
}
.header_wrap{
	position : relative;
	display : flex;
	display : -ms-flexbox; /* IE10 */
	display : -webkit-box; /* Android4.3以下、Safari3.1～6.0 */
	display : -webkit-flex; /* Safari6.1以降 */
	flex-wrap : wrap;
	-webkit-flex-wrap : wrap; /* for old webkit browser */
	-ms-flex-wrap : wrap; /* for IE10 */
	justify-content : space-between;
	-webkit-justify-content : space-between;  /* Safari etc. */
	-ms-justify-content : space-between;  /* IE10 */
	width : 100%;
	height : calc(100vh - 93.55px);
	margin-bottom : 80px;
}
.header_mes{
	position : relative;
	display : flex;
	display : -ms-flexbox;
	display : -webkit-box;
	display : -webkit-flex;
	justify-content : center;
	-webkit-justify-content : center;
	-ms-justify-content : center;
	-webkit-box-align : center;
	-ms-flex-align : center;
	align-items : center;
	width : 15%;
	height : auto;
	padding : 0 3%;
}
.header_mes img{
	display : block;
	width : 100%;
	height : auto;
}
#zoom_slider{
	position : relative; /* can either be relative, absolute or fixed. If position is not set (i.e. static), it would be set to "relative" by script */
	overflow : hidden; /* to bound the empty top space created by inner element's top margin */
	width : 85%;
	height : 100%;
	background-color : #999;
}
.header.cb-header h2,
.header.common h2{
	position : relative;
	display : block;
	width : 200px;
	height : auto;
}
.header.cb-header h2 img,
.header.common h2 img{
	position : relative;
	display : block;
	width : 100%;
	height : auto;
}
/* # =================================================================
#### footer
# ================================================================= */
footer{
	position : relative;
	display : block;
	width : 93%;
	height : auto;
	margin : 0 auto;
	width : 100%;
}
.footer_area{
	position : relative;
	display : block;
	width : 100%;
	height : auto;
	background : #DDDDDD;
	padding : 20px 0;
	text-align : center;
}
.footer_area h2{
	position : relative;
	display : block;
	margin-bottom : 15px;
}
.footer_area p{
	position : relative;
	display : block;
	margin-bottom : 15px;
}
.footer_area span{
	position : relative;
	display : block;
}
.footer_area span a{
	position : relative;
	display : inline-block;
	border : 1px solid #1D1D1D;
	border-radius : 25px;
	padding : 2px 0;
	width : 180px;
	text-align : center;
	font-size : 14px;
}
.footer_area span a:hover{
	color : #fff;
	background : #F18B00;
	border : 1px solid #F18B00;
}
.footer_nav .menu ul{
	position : relative;
	display : flex;
	display : -ms-flexbox; /* IE10 */
	display : -webkit-box; /* Android4.3以下、Safari3.1～6.0 */
	display : -webkit-flex; /* Safari6.1以降 */
	flex-wrap : wrap;
	-webkit-flex-wrap : wrap; /* for old webkit browser */
	-ms-flex-wrap : wrap; /* for IE10 */
	justify-content : flex-start;
	-webkit-justify-content : flex-start;  /* Safari etc. */
	-ms-justify-content : flex-start;  /* IE10 */
	
	padding : 15px 0;
	border-bottom : 1px solid #1D1D1D;
}
.footer_nav .menu ul li{
	margin-right : 30px;
}
.footer_nav .menu ul li a{

}
.footer_nav .menu ul li a:hover{
	color : #BF9E73;
}
.site_name h2{
	font-size : 14px;
	padding-top : 10px;
	text-align : center;
}
.copy{
	font-size : 14px;
	padding : 10px 0;
	text-align : center;
}
#pageTop{
	position : fixed;
	right : 10px;
	bottom : 80px;
	z-index : 1000;
}
#pageTop img{
	display : block;
	width : 45px;
	height : auto;
}
/***  ***/
.resilience{
	position : relative;
	display : block;
	width : 100%;
	height : auto;
	margin-top : 30px;
}
.resilience .wrap{
	position : relative;
	display : flex;
	display : -ms-flexbox; /* IE10 */
	display : -webkit-box; /* Android4.3以下、Safari3.1～6.0 */
	display : -webkit-flex; /* Safari6.1以降 */
	flex-wrap : wrap;
	-webkit-flex-wrap : wrap; /* for old webkit browser */
	-ms-flex-wrap : wrap; /* for IE10 */
	justify-content : space-between;
	-webkit-justify-content : space-between;  /* Safari etc. */
	-ms-justify-content : space-between;  /* IE10 */
	width : 1200px;
	height : auto;
	background : #ccc;
	padding : 30px;
	margin : 0 auto 50px;
}
.resilience .box:first-child{
	position : relative;
	display : block;
	width : 120px;
	height : auto;
}
.resilience .box:first-child .image_box{
	position : relative;
	display : block;
	width : 100%;
	height : auto
}
.resilience .box:first-child .image_box img{
	position : relative;
	display : block;
	width : 100%;
	height : auto;
}
.resilience .box:last-child{
	position : relative;
	display : block;
	width : 85%;
	height : auto;
}
.resilience .box:last-child p{
	position : relative;
	display : block;
	width : 100%;
	height : auto;
	line-height : 1.8;
	text-align : justify;
	font-size : 14px;
}
.resilience .box:last-child p span{
	position : relative;
	display : block;
	width : 100%;
	height : auto;
	font-size : 16px;
	font-weight : bold;
}
.resilience .box .align{
	position : absolute;
	display : -webkit-box;
	display : -ms-flexbox;
	display : flex;
	-webkit-box-pack : center;
	-ms-flex-pack : center;
	justify-content : center;
	-webkit-box-align : center;
	-ms-flex-align : center;
	align-items : center;
	top : 0;
	bottom : 0;
	left : 0;
	right : 0;
	margin : auto;
}
/* # =================================================================
#### main home
# ================================================================= */
main.home{

}
main.home section{
	margin-bottom : 100px;
}
main.home h2{
	text-align : center;
	margin-bottom : 50px;
}
/* # =================================================================
#### contents01
# ================================================================= */
.contents01{
	position : relative;
	display : block;
	background : url(../images/top/top_bkimg01.png)no-repeat;
	background-position : center bottom;
	padding-bottom : 80px;
}
main.home section.contents01{
	margin-bottom : 0;
}
.contents01 .contents01_wrap{

}
.contents01 .contents01_wrap ul{
	position : relative;
	display : flex;
	display : -ms-flexbox; /* IE10 */
	display : -webkit-box; /* Android4.3以下、Safari3.1～6.0 */
	display : -webkit-flex; /* Safari6.1以降 */
	flex-wrap : wrap;
	-webkit-flex-wrap : wrap; /* for old webkit browser */
	-ms-flex-wrap : wrap; /* for IE10 */
	justify-content : space-between;
	-webkit-justify-content : space-between;  /* Safari etc. */
	-ms-justify-content : space-between;  /* IE10 */
	width : 1200px;
	height : auto;
	margin : 0 auto;
}
.contents01 .contents01_wrap ul li{
	position : relative;
	display : block;
	width : 48%;
	height : auto;
	background : #fff;
	text-align : center;
	margin-bottom : 30px;
}
.contents01 .contents01_wrap ul li:last-child {
	margin-bottom : 0;
}
.contents01 .contents01_wrap ul li:nth-child(1) p{
	text-align : justify;
}
.contents01 .contents01_wrap ul li:nth-child(2) h2{
	padding-top : 21px;
}

.contents01 .contents01_wrap ul li a{
	position : relative;
	display : block;
	width : 100%;
	height : 100%;
	background : #fff;
	padding : 15px 30px;
}
.contents01 .contents01_wrap ul li a:hover{
	opacity : 0.5;
}

.contents01 .contents01_wrap ul li h2{
	position : relative;
	display : block;
	color : #BC8C53;
	border-bottom : 1px solid #BC8C53;
	margin-bottom : 15px;
	padding-bottom : 15px;
}
.contents01 .contents01_wrap ul li h2 span{
	position : relative;
	display :block;
	font-size : 14px;
}
.contents01 .contents01_wrap ul li h3{
	font-size : 18px;
	margin-bottom : 10px;
}
.contents01 .contents01_wrap ul li p{
	margin-bottom : 10px;
	line-height : 1.8;
	line-height : 1.6;
}
.contents01_link{
	position : relative;
	display : block;
	width : 520px;
	height : auto;
	margin : 0 auto;
}
.contents01_link img{
	position : relative;
	display : block;
	width : 100%;
	height : auto;
}
.contents01 .contents01_wrap ul li dl,
.smile .center dl{
	position : relative;
	display : flex;
	display : -ms-flexbox; /* IE10 */
	display : -webkit-box; /* Android4.3以下、Safari3.1～6.0 */
	display : -webkit-flex; /* Safari6.1以降 */
	flex-wrap : wrap;
	-webkit-flex-wrap : wrap; /* for old webkit browser */
	-ms-flex-wrap : wrap; /* for IE10 */
	justify-content : space-between;
	-webkit-justify-content : space-between;  /* Safari etc. */
	-ms-justify-content : space-between;  /* IE10 */
	margin-bottom : 20px;
}
.contents01 .contents01_wrap ul li dl dt,
.smile .center dl dt{
	position : relative;
	display : block;
	width : 50%;
	height : auto;
	text-align : right;
	font-weight : bold;
}
.contents01 .contents01_wrap ul li dl dd,
.smile .center dl dd{
	position : relative;
	display : block;
	width : 50%;
	height : auto;
	text-align : left;
	font-weight : bold;
}
/*** 20220331 ***/
.contents01 .contents01_wrap ul li{
	width : 33.33333333333333333333333333%;
	margin-bottom : 0;
}
.contents01 .contents01_wrap ul li h2{
	padding-bottom : 10px;
	font-size : 22px;
}
.contents01 .contents01_wrap ul li:nth-child(2) h2{
	padding-top : 0;
}
.r_box{
	position : relative;
	display : block;
	width : 100%;
	height : auto;
}
.contents01 .contents01_wrap ul li .r_box p.r_name{
	position : relative;
	display : block;
	width : 100%;
	height : auto;
	text-align : center;
	font-size : 16px;
	font-weight : bold;
	line-height : 1.6;
	margin-bottom : 10px;
}
.contents01 .contents01_wrap ul li .r_box p.r_name span{
	margin-left : 10px;
}
.contents01 .contents01_wrap ul li p.text{
	text-align : justify;
}
a.b_link{
	position : relative;
	display : block;
	border : 1px solid #1D1D1D;
	border-radius : 25px;
	background : #FFF;
	padding : 2px 0;
	width : 180px;
	text-align : center;
	font-size : 14px;
	margin : 100px auto 0;
}
a.b_link:hover{
	color : #fff;
	background : #F18B00;
	border : 1px solid #F18B00;
}
/* # =================================================================
#### contents02
# ================================================================= */
.contents02{
	position : relative;
	display : block;
}
.contents02 h2{
	color : #BF9E73;
}
.contents02 p{
	text-align : center;
	margin-bottom : 50px;
	line-height : 2;
}
.contents02 ul{
	position : relative;
	display : flex;
	display : -ms-flexbox; /* IE10 */
	display : -webkit-box; /* Android4.3以下、Safari3.1～6.0 */
	display : -webkit-flex; /* Safari6.1以降 */
	flex-wrap : wrap;
	-webkit-flex-wrap : wrap; /* for old webkit browser */
	-ms-flex-wrap : wrap; /* for IE10 */
	justify-content : space-between;
	-webkit-justify-content : space-between;  /* Safari etc. */
	-ms-justify-content : space-between;  /* IE10 */
	width : 1200px;
	height : auto;
	margin : 0 auto;
}
.contents02 li{
	position : relative;
	display : block;
	width : 33.333333333333333333333%;
	height : auto;
	background : #005593;
}
.contents02 li a{
	position : relative;
	display : block;
	width : 100%;
	height : auto;
}
.contents02 li a img{
	position : relative;
	display : block;
	width : 100%;
	height : auto;
	transition : 0.8s;
}
.contents02 li a:hover img{
	opacity : 0.3;
	transition : 0.8s;
}
.contents02 li a span{
	position : absolute;
	display : -ms-flexbox; /* IE10 */
	display : -webkit-box; /* Android4.3以下、Safari3.1～6.0 */
	display : -webkit-flex; /* Safari6.1以降 */
	justify-content : center;
	-webkit-justify-content : center;  /* Safari etc. */
	-ms-justify-content : center;  /* IE10 */
	-webkit-box-align : center;
	-ms-flex-align : center;
	align-items : center;
	width : 100%;
	height : 100%;
	z-index : 1000;
	color : rgba(255,255,255,0);
	line-height : 1.8;
	padding : 0 50px;
	font-weight : bold;
	transition : 0.8s;
}
.contents02 li a:hover span{
	color : rgba(255,255,255,1);
	transition : 0.8s;
}
/* # =================================================================
#### contents_info
# ================================================================= */
.contents_info{
	position : relative;
	background : url(../images/top/top_bkimg.png);
	padding : 30px 0;
}
.contents_info_body{
	width : 1200px;
	height : auto;
	padding : 0 50px;
	margin : 0 auto;
}
.contents_info dl{
	position : relative;
	display : flex;
	display : -ms-flexbox; /* IE10 */
	display : -webkit-box; /* Android4.3以下、Safari3.1～6.0 */
	display : -webkit-flex; /* Safari6.1以降 */
	flex-wrap : wrap;
	-webkit-flex-wrap : wrap; /* for old webkit browser */
	-ms-flex-wrap : wrap; /* for IE10 */
	justify-content : space-between;
	-webkit-justify-content : space-between;  /* Safari etc. */
	-ms-justify-content : space-between;  /* IE10 */
	width : 100%;
	height : auto;
	margin-bottom : 30px;

}
.contents_info dl dt{
	position : relative;
	display : block;
	width : 10%;
	border-right : 1px solid #1D1D1D;
	padding-right : 10px;
	margin-bottom : 20px;
}
.contents_info dl dd{
	position : relative;
	display : block;
	width : 90%;
	padding-left : 50px;
	margin-bottom : 20px;
}
.contents_info dl dd a{

}
.contents_info dl dd a:hover{
	color : #BF9E73;
}
.contents_info span{
	position : relative;
	display : block;
	text-align : right;
}
.contents_info span a{
	position : relative;
	display : inline-block;
	border : 1px solid #1D1D1D;
	border-radius : 25px;
	padding : 2px 0;
	width : 180px;
	text-align : center;
	font-size : 14px;
}
.contents_info span a:hover{
	color : #fff;
	background : #F18B00;
	border : 1px solid #F18B00;
}
/* # =================================================================
#### contents_event
# ================================================================= */
.contents_event{
	padding : 30px 0;
	margin-bottom : 0 !important;
}
.contents_event ul{
	position : relative;
	display : flex;
	display : -ms-flexbox; /* IE10 */
	display : -webkit-box; /* Android4.3以下、Safari3.1～6.0 */
	display : -webkit-flex; /* Safari6.1以降 */
	flex-wrap : wrap;
	-webkit-flex-wrap : wrap; /* for old webkit browser */
	-ms-flex-wrap : wrap; /* for IE10 */
	justify-content : space-between;
	-webkit-justify-content : space-between;  /* Safari etc. */
	-ms-justify-content : space-between;  /* IE10 */
	width : 1200px;
	height : auto;
	margin : 0 auto 50px;
}
.contents_event ul:after{
	content : "";
	position : relative;
	display : block;
	width : 32%;
	height : auto;
}
.contents_event ul li{
	position : relative;
	display : block;
	width : 32%;
	height : auto;
	margin-bottom : 50px;
}
.contents_event ul li.end_contents a{
	padding : 10px;
}
.contents_event ul li.end_contents a:after{
	content : "";
	position : absolute;
	display : block;
	width : 100%;
	height : 100%;
	background : rgba(0,0,0,0.3);
	top : 0;
	left : 0;
}
.contents_event ul li.end_contents span.end_tag{
	position : absolute;
	display : block;
	top : 30%;
	bottom : 50%;
	left : 0;
	right : 0;
	text-align : center;
	width : 100%;
	height : auto;
	z-index : 100;
	color : #fff;
	font-size : 18px;
}
.contents_event ul li a{
	position : relative;
	display : block;
	width : 100%;
	height : auto;
	background : #fff;
	height : 100%;/* 20191015 */
}
.contents_event ul li a:hover{
	opacity : 0.8;
}
.contents_event ul li a img{
	position : relative;
	display : block;
	width : 100%;
	height : auto;
	margin-bottom : 20px;
}
.contents_event ul li a span{
	position : absolute;
	display : block;
	color : #fff;
	font-size : 13px;
	top : 0;
	right : 0;
	padding : 5px 10px;
}
/* カスタム投稿別 */
.contents_event ul li a span.tour{
	background : #D08CAE;
}
.contents_event ul li a span.estate{
	background : #8CC0D0;
}
.contents_event ul li a span.housing{
	background : #99D08C;
}
.contents_event ul li a h3{
	font-size : 16px;
	margin-bottom : 5px;
}
.contents_event ul li a p{
	text-align : justify;
	line-height : 1.5;
	word-break : break-all;
	text-align : left;
}
.contents_event ul li a p.event_time_date{
	font-size : 24px;
	font-weight : bold;
	margin-bottom : 20px;
}
.contents_event .event_list_link{

}
.contents_event .event_list_link ul{
	padding : 0 100px;
}
.contents_event .event_list_link ul li{
	text-align : center;
}
.contents_event .event_list_link ul li a{
	position : relative;
	display : block;
	background : #fff;
	border : 1px solid #1D1D1D;
	font-size : 18px;
	padding : 15px 0;
}
.contents_event .event_list_link ul li a:hover{
	color : #fff;
	background : #F18B00;
	border : 1px solid #F18B00;
}
/* # =================================================================
#### contents_brand
# ================================================================= */
.contents_brand{
	background : url(../images/top/top_bkimg.png);
	padding : 100px 0 30px;
}
.contents_brand ul{
	position : relative;
	display : flex;
	display : -ms-flexbox; /* IE10 */
	display : -webkit-box; /* Android4.3以下、Safari3.1～6.0 */
	display : -webkit-flex; /* Safari6.1以降 */
	flex-wrap : wrap;
	-webkit-flex-wrap : wrap; /* for old webkit browser */
	-ms-flex-wrap : wrap; /* for IE10 */
	justify-content : space-between;
	-webkit-justify-content : space-between;  /* Safari etc. */
	-ms-justify-content : space-between;  /* IE10 */
	width : 1200px;
	height : auto;
	margin : 0 auto 50px;
	padding : 0 50px;
}
.contents_brand ul:after {
	content : "";
	display : block;
	width : 28%;
}
.contents_brand ul li{
	position : relative;
	display : block;
	width : 28%;
	height : auto;
}
.contents_brand ul li a{
	position : relative;
	display : block;
	width : 100%;
	height : auto;
}
.contents_brand ul li a:hover{
	opacity : 0.8;
}
.contents_brand ul li a:hover p{
	color : #F18B00;
	transition : 0.8s;
}
.contents_brand ul li h3{
	text-align : center;
	border-bottom : 1px solid #1D1D1D;
	margin-bottom : 30px;
	padding-bottom : 10px;
}
.contents_brand ul li span{
	position : relative;
	display : block;
	width : 100%;
	height : auto;
}
.contents_brand ul li span img{
	position : relative;
	display : block;
	width : 100%;
	height : auto;
}
.contents_brand ul li .brand_banner_header{
	display : flex;
	display : -ms-flexbox; /* IE10 */
	display : -webkit-box; /* Android4.3以下、Safari3.1～6.0 */
	display : -webkit-flex; /* Safari6.1以降 */
	justify-content : center;
	-webkit-justify-content : center;  /* Safari etc. */
	-ms-justify-content : center;  /* IE10 */
	-webkit-box-align : center;
	-ms-flex-align : center;
	align-items : center;
	width : 100%;
	height : 170px;
	margin-bottom : 30px;
	border : 3px solid #DDDDDD;
	background : #fff;
}
.contents_brand ul li .brand_banner_header img{
	position : relative;
	display : block;
	width : 85%;
	height : auto;
}
.contents_brand ul li p{
	position : relative;
	display : block;
	width : 100%;
	height : 120px;
	text-align : justify;
	margin-bottom : 30px;
	line-height : 1.5;
	transition : 0.8s;
}
/* # =================================================================
#### contents_search
# ================================================================= */
.accordion1{
	position : relative;
	display : flex;
	display : -ms-flexbox; /* IE10 */
	display : -webkit-box; /* Android4.3以下、Safari3.1～6.0 */
	display : -webkit-flex; /* Safari6.1以降 */
	flex-wrap : wrap;
	-webkit-flex-wrap : wrap; /* for old webkit browser */
	-ms-flex-wrap : wrap; /* for IE10 */
	justify-content : space-between;
	-webkit-justify-content : space-between;  /* Safari etc. */
	-ms-justify-content : space-between;  /* IE10 */
	text-align : center;
	width : 1200px;
	margin : 0 auto;
}
.accordion1 > li{
	position : relative;
	display : block;
	width : 32%;
	height : auto;
}
.menu-searc01-menu-container,
.menu-searc02-menu-container,
.menu-searc03-menu-container{
	display : none;
}
.accordion1 .menu{
	border-left : 1px solid #6292E0;
	border-right : 1px solid #6292E0;
	border-bottom : 1px solid #6292E0;
}
.accordion1 p{
	cursor : pointer;
	padding : 10px;
	background : #6292E0;
	color : #fff;
}
.accordion1 .menu li{
	border-bottom : 1px solid #6292E0;
}
.accordion1 .menu li:last-child{
	border : none;
}
.accordion1 .menu ul li{
	border-bottom : 1px solid #6292E0;
}
.accordion1 .menu ul li:last-child{
	border : none;
}
.accordion1 .menu li a{
	position : relative;
	display : block;
	padding : 10px 30px;
	color : #6292E0;
	text-align : left;
	background : #fff;
}
.accordion1 .menu ul li a{
	position : relative;
	display : block;
	padding : 10px 30px;
	color : #6292E0;
	text-align : left;
	background : #fff;
}
.accordion1 .menu li a:hover{
	color : #fff;
	background : #6292E0;
}
.accordion1 .menu ul li a:hover{
	color : #fff;
	background : #6292E0;
}
.accordion1 .menu li ul.sub-menu{
	border-top : 1px solid #6292E0;
}
.accordion1 .menu li ul.sub-menu li {
	text-indent : 1em;
}
/* 20190905 */
header h1{
	display : none;
}
.header.cb-header{
	display : none !important;
}
.header_wrap{
	top : 75px;
}
#menu-footer_main > li{
	width : 14%;
	margin-right : 0 !important;
}
#menu-footer_main > li a{
	font-size : 14px;
}
#menu-footer_main > li a:hover{

}
.footer_nav .menu ul{
	display : block;
	border-bottom : none;
	padding : 5px 0 0 0;
}
.footer_map .site_map_area{
	margin : 50px auto 30px;
}
.site_name{
	border-top : 1px solid #333;
	padding-top : 10px;
}
.error404 .footer_map{
	display : none;
}
/* 20200421
.contents_info dl dt:nth-child(1),
.contents_info dl dd:nth-child(2) a{
	color : red;
	font-weight : bolder;
}
.contents_info dl dd:nth-child(2) a{
	text-decoration : underline;
}
*/
/*** 20230728追記 ***/
main.home .contents02 h2{
	margin-bottom : 30px;
}
main.home .contents02 h2 .impact{
	margin-left : 0.5em;
	font-size : 32px;
}
.contents02 p:first-line{
	line-height : 1;
}