/*-------------------------------------------------

-------------------------------------------------*/

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}

*{ padding: 0; margin: 0;}
body{ font-family: メイリオ; font-size: 16px; color: #1a202c; background:#fffde4;
}

blockquote, q {
	quotes: none;
}



img{ border: none;}
h1{ font-size: 20px; color: #1a202c; font-weight:normal; text-transform:uppercase;}
h1 span.c_1{ color: #6aaee0;}
h1 span.c_2{ color: #ed7faf;}
h1 span.c_3{ color: #fbc92c;}
h1 span.c_4{ color: #10b3a0;}

h2{ font-size: 20px;  font-weight: bold; line-height: 22px;}
h3{ font-size: 18px; color: #333333; font-weight: bold; line-height: 22px;}
h3 span{ font-size: 16px; color: #333333; font-weight:normal; line-height: 20px;}
p{ line-height: 20px;}
a{ text-decoration:none; color: #1f7872;}
a:hover{ color: #d13f31;}
/*-------------------------------------------------
GENERAL CLASSES
-------------------------------------------------*/
.mar-top30{ margin-top: 30px;}
.mar-top20{ margin-top: 20px;}
.mar-top10{ margin-top: 10px;}
.mar-right30{ margin-right: 30px;}
.mar-bottom20{ margin-bottom: 20px;}
.float-left{ float: left;}
.float-right{ float: right;}
.clearing { clear: both; font-size: 13px;}
.panel{ background: #ffffff;}
.title{}
.Stitle{ padding: 20px 20px 0px 20px;}
.content{}

.button a{ text-decoration: none; display: block; width: 140px; height: 30px; background: #00a0e9; color: #ffffff; line-height: 30px; text-align: center; text-transform: uppercase;}
.button_top a{ text-decoration: none; display: block; width: 140px; height: 30px; background: #1f7872; color: #ffffff; line-height: 30px; text-align: center; text-transform: uppercase;}

.button a:hover{ background: #d13f31;}

.page{ width: 960px; margin: 0 auto;overflow: hidden;}
/*-------------------------------------------------
MENU CLASSES
-------------------------------------------------*/
.menu-wrap{ overflow: hidden; background: #ffffff;}
.menu{ margin: 0 auto; width:960px; background: #ffffff;　height:85px; margin-top:50px;}
.menu ul li{ list-style:none; float:left; width:auto;}
.menu ul li a{ display:block; height:85px; line-height:85px; padding-left:30px; padding-right:30px; font-size:18px; color:#1a202c; border-right:#ffffff solid 1px; text-transform:uppercase;}
.menu ul li a:hover{ background: #ffffff; color:#1a202c;}

.menu ul li a.M_01:hover{ background:#0a98aa; color:#ffffff;}
.menu ul li a.M_02:hover{ background:#ed7faf; color:#ffffff;}
.menu ul li a.M_03:hover{ background:#fbc92c; color:#ffffff;}
.menu ul li a.M_04:hover{ background:#10b3a0; color:#ffffff;}
.menu ul li a.M_05:hover{ background:#ece1e3; color:#1a202c;}

.menu ul li a.active{ background: #fffde4; color:#1a202c;}

/*-------------------------------------------------
HEADER CLASSES
-------------------------------------------------*/
.header{margin:0 auto; width: 960px; height: 65px;}
.logo{ width: 600px; float: left; line-height: 65px;}
.logo h1{ font-size:28px; color: #d13f31; font-weight: normal;}
.logo h1 span{ color:#1a202c;}

.social{ float:right; margin-top: 0px;}
.social ul li{list-style:none; float:left; margin-left:15px;}

/*-------------------------------------------------
div banner
-------------------------------------------------*/
.banner{width:960px; height:207px; margin:0 auto; margin-bottom:60px; position:relative;}
.banner h1{ padding:10px;  text-transform:uppercase; color:#ffffff;  font-size:30px; font-weight:normal; position:absolute; top: 0px; right: 0;}
.banner h2{ padding:10px; float:right; background:#ffffff; text-transform:uppercase; color:#1a202c;  font-size:22px; font-weight:normal; font-family: Roboto; position: absolute; top: 58px; right: 0;}
/*-------------------------------------------------
MAIN COLUMAS CLASSES
-------------------------------------------------*/
.primary-col{ width: 650px; overflow: hidden; float: left;}
.primary-col p{ line-height: 22px;}

.primary-col_wide{ width: 960px; overflow: hidden; float: left;}	/*gkaku 20190603 add*/

.generic{ float: left; overflow: hidden; width: 100%; margin: 0px 0 20px 0;}
.generic002{ float: left; overflow: hidden; width: 100%; background: #ffffff; margin: 30px 0 10px 0;}
.generic003{ float: left; overflow: hidden; width: 100%; background: #ffffff; margin: 20px 0 10px 0;}
.generic004{ float: left; overflow: hidden; width: 100%; background: #ffffff; margin: 20px 0 0px 0;}
.generic .panel{ padding: 20px 20px 30px 20px;}
.generic .title h1{ padding-bottom: 0px; color: #0d6fb8;}
.generic .content{ overflow: hidden;}
.generic .content h2{ padding-bottom: 10px;}
.block{ width: 320px;}
.block .panel{ padding: 10px 10px 30px 20px;}
.block .title h1{ padding-bottom: 0px;}
.block .content img{ padding-bottom: 20px;}
.block .content h3{ padding-bottom: 10px;}
.block .content p{ padding-bottom: 20px;}

.block .content dt{ font-size: 14px;}
.block .content dt.sec{ font-size: 14px; margin: 5px 0 0 0;}
.block .content dd{ font-size: 14px; line-height: 20px;}
.block .content dd.s12{ font-size: 12px; line-height: 20px;}
.block .content dd.s12 span{ padding: 0 0 0 12px;}

/*-------------------------------------------------
SIDE BAR CLASSES
-------------------------------------------------*/
.side-bar{ width: 280px; overflow: hidden; float: right;}
.search{ background: #d13f31; padding: 25px 20px 25px 20px; overflow: hidden;}
.search .title h1{ color: #fff; padding-bottom: 20px;}
.search ul li{ list-style: none; float: left; list-style: none;}
.textfiled{ background: #ffffff; width: 200px; height: 36px;  text-indent: 5px; border: none;}
.side-bar .panel{ padding: 30px 20px 25px 20px; overflow:hidden;}
.side-bar .panel .title{ padding-bottom: 25px;}
.side-bar .panel .title span{ float:left; padding: 4px 8px 0 2px;}

.side-bar .content ul li{ list-style: none; color: #1a202c; height: 80px; padding: 0 0 10px 20px;}
.side-bar .content ul li.-no-border-bottom{ border-bottom: none;}
.side-bar .content ul li a{ text-decoration: none; color: #1a202c;}
.side-bar .content ul li a img:hover{ opacity: 0.6;}

.side-bar .content img{ float:left;}
.side-bar .content .recentPost{ float: right; text-align: left; width: 130px; line-height: 20px; font-size: 15px; padding: 5px 0 0 0;}
.side-bar .content .recentPost span{ float:right; text-align: left; width: 130px; line-height: 22px; font-size: 15px; font-weight: bold;}
.side-bar .content .recentPost a{ text-decoration:none; color:#1f7872; float:left; padding-top:20px;}
.side-bar .content .recentPost a:hover{ color:#d13f31;}

/*-------------------------------------------------
CONTACT FORM CLASSS
-------------------------------------------------*/

.contact-form { background:#f4f8f6; padding:30px; width:440px; float:left;}
.contact-form label {display: block; padding:10px 0 10px 0;}
.contact-form label span {display: block; color:#939191;font-size:14px; float:left; width:80px; text-align:left; padding:5px 20px 0 0;}
.contact-form .input_text {padding:10px 10px;width:318px;background:#ffffff;border:#e1ece7 1px solid; color:#939191;}
.contact-form .message{padding:10px 10px;width:318px; background:#ffffff; border:#e1ece7 1px solid;overflow:hidden;height:150px; color:#939191; font-size:14px;}
.contact-form .button{padding:8px;background:#1f7872; color:#ffffff; text-transform:uppercase; font-family:'Oswald', sans-serif;border:0px solid;margin-left:100px;margin-top:20px;}

.address { float:left; width:370px; margin-left:30px;}
.address .panel { border:none; color:#9b9e9a}
.address .panel .title h1 {  color:#d13f31; padding-bottom:10px;}
.address .panel .content p span { color:#9b9e9a;}


/*-------------------------------------------------
FOOTER CLASSES
-------------------------------------------------*/
.primary-footer{ overflow:hidden; margin:0 auto;}
.footer-wrap{ background:#1a202c; overflow:hidden; padding-top:50px; margin-top:50px; padding-bottom:50px;}
.footer{ width:960px; margin:0 auto;}
.footer .panel{float:left; background:none; width:300px;}
.footer .panel .title h1{ color:#ffffff;}
.footer .panel .content{padding-top:25px;}
.footer .panel .content p{ color:#435059;}
.footer .panel .content .button a{ margin-top:30px; background:#d13f31; width:70px; height:30px;}
.footer .panel .content .button a:hover{ margin-top:30px; background:#1f7872;}
.footer .panel .content ul li{ list-style:url(../images/arrow.png) inside; border-bottom:#273042 solid 1px; line-height:35px;}
.footer .panel .content ul li a{text-decoration:none; color:#435059;}
.footer .panel .content ul li a:hover{color:#d13f31;}
.footer .panel .content ul li.-no-border-bottom{border-bottom:none;}

.copyright-wrap{ background: #1f7872; overflow: hidden; padding: 20px 0px 20px 0px;}
.copyright-wrap .panel{width: 960px; margin: 0 auto; background: none;}
.copyright-wrap .panel .content p{ color: #ffffff; text-align: center; font-size: 12px;}
.copyright-wrap .panel .content p a{ text-decoration: none; color: #ffffff;}
.copyright-wrap .panel .content p a:hover{ color: #1a202c;}

/*-------------------------------------------------
20160526
-------------------------------------------------*/
.clearfix:after{
    content: "."; 
    display: block; 
    height: 0; 
    font-size:0;    
    clear: both; 
    visibility:hidden;
}
.clearfix{
    display: inline-block;
} 
/* Hides from IE Mac */
* html .clearfix{
    height: 1%;
}
.clearfix{
    display:block;
}
.panel ul{


}
.panel li{
	float:left;
	list-style:none;
}

.kako{
	width: 25px;
	height:122px;
}
.kako_text{
	width: 540px;
	height:122px;
	margin: 15px 7px 7px 7px;
	font-size: 18px;
	line-height: 22px;}

.konnakata{
	width: 131px;
	height:70px;
}
.konnakata_text{
	width: 460px;
	margin: 25px 0px 7px 15px;
	font-size: 17px;
	font-weight:bold;

}

.point{
	width: 602px;
	height:221px;
	margin: 0 0 0px 0;
	padding:0px 0px 0px 0px;

}
.point{
	background-image: url(../images/point01.png);  
    background-repeat: no-repeat;  
}

.point dl{
	margin: 50px 0 0px 50px;
	width: 540px;
	padding:20px 0px 0px 0px;

}

.point_title{
	margin: 0 0 0px 0px;
	font-size: 18px;
	font-weight:bold;

}
.point_text{
	margin: 0 0 10px 10px;
	font-size: 14px;

}
.semi {
	width: 630px;
	height: auto;
	margin: 20 0 20px 0px;


}

.semi01{
	width: 180px;
	margin: 50 0 0px 0px;

}

.semi02{
	width: 409px;
	height:208px;
	margin: 50 0 0px 0px;

}

.step {
	width: 630px;
	margin: 10px 0 20px 0px;



}


.font12{
	font-size: 12px;

}
.font14{
	font-size: 14px;

}

.font20{
	font-size: 20px;

}
.font24{
	font-size: 24px;
	font-weight:bold;

}
.mb50{
	margin: 0px 0px 50px 0px;

}
.mt10{
	margin: 10px 0px 0px 0px;

}
.mb20{
	margin: 0px 0px 20px 0px;

}
.mt20{
	margin: 20px 0px 0px 0px;

}
.relative {
    position: relative;
}
.absolute {
    position: absolute;
    bottom: -60px;
    left:190px;
}
.child {
    display: none;
}