@charset "UTF-8";
/* CSS Document */

/*--------------------------全体の内容-----------------------------*/
header,footer,article,aside,section,nav,main{
display:block;
}
body{
	background:#FFFFFF;
	color:#484440;
	font-size:0.88em;
	line-height:1.8;
	font-family:"メイリオ", "Meiryo", "Osaka", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
li{
	list-style:none;
}
a{
	text-decoration: none;
	
}
.th2_eng{
	font-size:14px;
	font-weight: 300;
	
}
section{
	margin-bottom: 80px;
}
.bold{
	font-weight: 600;
}
main{
	padding-top:75px;
}
.main_img {
	position: relative;
	margin: auto;
	margin-bottom: -120px;
	/*max-width: 1200px;*/
	height: 220px;
}
.main_img img{
	width: 100%;
	height: auto;
}
.main_img_sp{
	position: relative;
}
.m-t50{
	margin-top:50px;
	
}
.sub-ttl{
	font-size:1.2rem;
	
}
.text-primary,.text-primary a{
	color: #484440!important;
}
.text-secondary{
	color: #cf1225!important;
}
.bg-beige{
	background-color: #f5f5f5;
}
.font-size-09{
	font-size: 0.9rem;
}
.font-size-11{
    font-size: 1.1rem;
    line-height: 1.3rem;
}
.font-size-12{
    font-size: 1.2rem;
    line-height: 1.3rem;
}
.font-size-14{
    font-size: 1.4rem!important;
}
.font-size-18{
    font-size: 1.8rem!important;
}
.font-family-min{
	    font-family: "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
}
.font_2{
	font-size: 70%;
}
.align-top img{
	vertical-align: top!important;
}
.anchor-2{
	padding-top: 160px!important;
	margin-top: -160px!important;
}
/*-------- SP --------*/
@media screen and (max-width: 767px) {
	.page-ttl{
		padding-bottom: 0!important;
	}
	.font-size-sm-s{
		font-size: 12px;
		line-height: 1.2rem;
	}
	.mt-100{
		margin-top: 10%!important;
	}
}
@media screen and (min-width:416px) and ( max-width:767px){
	main{
		padding-top:11%;
	}
	main.page-temp{
		padding-top:15%;
	}
}
@media screen and (max-width: 415px) {
	main{
		padding-top:20%;
	}
	main.page-temp{
		padding-top:24%;
	}
	
}
/*-------- PC --------*/
@media screen and (min-width: 768px) {
	.font-size-sm-11{
		font-size: 1.1rem;
		line-height: 1.3rem;
	}
	.font-size-sm-24{
		font-size: 2.4rem!important;
	}
	.mt-100{
		margin-top: 100px!important;
	}
	.mt-30{
		margin-top: 30px!important;
	}
}
/*--------------------------bootstrap上書き-----------------------------*/
@media (min-width: 1200px){
	.container {
		max-width: 1200px;
	}
}
/*--------------------------ヘッダー-----------------------------*/
header{
	background-color: #f8f8f8;
	box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.4);
	border-bottom:1px solid #f8f8f8;
	width: 100%;
    position: fixed;
    z-index: 999;
}

div#tot{
background-color: #d60017;

}
div#tot p{
	color:#fff;
	width:90%;
	margin:0px auto;
}
div.logo{
	margin:0;
	float: left;
}


div.header{
	width:90%;
	margin:0px auto;
	overflow: hidden;
	
	
}
/*---- パンくず ----*/
body main .breadcrumb-container li:last-child .separator{
	display: none;
}
body div.breadcrumb-container {
	padding: 10px 0;
    margin: 0;
}


/*--------------------------g-navi-----------------------------*/


nav.nav3 ul li{
	text-align: center;
	line-height: 1.3em;
	
}


nav.nav3 ul li span.nav_sml{
	font-size: 10px;
	font-weight: 300;
}
.navbar-collapse .nav_sml{
	font-size: 12px;
}
.nav3 ul {

	padding: 4px;
	list-style: none;
	text-align: center;
}
.nav3 li {
	
	display: inline-block;
}
.nav3 li a {
	text-decoration: none;
	padding-bottom: 10px;
	color: #000;
	display: block;
	position: relative;
}
.nav3 li a:before {
	content: '';
	width: 0;
	left: 50%;
	bottom: 0;
	transition: all 0.3s ease;
	border-bottom: 3px solid #d60017;
	position: absolute;
	display: block;
}
.nav3 li a:hover:before {
	width: 50%;
	border-bottom: 3px solid #d60017;
}
.nav3 li a:after {
	content: '';
	width: 0;
	right: 50%;
	bottom: 0;
	transition: all 0.3s ease;
	border-bottom: 3px solid #d60017;
	position: absolute;
	display: block;
}
.nav3 li a:hover:after {
	width: 50%;
	border-bottom: 3px solid #d60017;
}

.nav3 li a.btn-red {
	color: #fff;
	background-color: #cf1225;
}

.nav3 li a.btn-red:hover{
	background-color: #8b020c;
}

@media screen and (max-width:991px) {

	button.navbar-toggler {
		font-size: 1.5rem;
		}
	
	}
@media screen and (max-width:768px) {
	button.navbar-toggler {
		font-size: 1.5rem;
		}
	
	
}
/*--------------------------フッター-----------------------------*/
div.service-slide{
	background-color: #333333;
	
}
.service-slide h2{
	color: #fff;
	text-align: center;
	padding-top:15px;
}
.service-slide ul{
	overflow: hidden;
	padding: 15px 0px 20px;
}

footer{
	background-color: #f5f5f5;

}

div.f_inner{
	width:90%;
	margin:0px auto 30px;
	padding-top:40px;
	overflow: hidden;
}
.f_left{
	float: left;
	
}
.f_left ul li{
	float: left;
	margin-right:20px;
}
.f_left ul li a{
	color:#000;
	line-height: 2em;
	
}
.f_left ul{
	overflow: hidden;
}
p.border_indent{
	
	text-indent: 1em;
	font-size:12px;
}
.f_right{

float: right;
}



.f_address{
	clear:both;
	margin-top:20px;
}
.f_address p#tel{
	font-size:24px;
	font-weight: bold;
}
.f_address p#tel a{
	color:#484440;
}
.f_address p#tel span{
	font-size:18px;
}
.f_address p.map a{
	text-decoration: underline;
	
}
.f_right li{
	float: left;
	margin-right:20px;
}
.f_right li p{
	margin-bottom: 10px;
}
#copyright{
	clear: both;
	color:#fff;
	background-color: #000;
	padding:8px;
	padding-bottom: 15px;
	text-align: center;
}

/*------ タブレット ------*/
@media screen and (max-width: 1050px) {
	.f_inner .f_right li{
		/*float: none;*/
		width: 158px;
	}
}
@media screen and (max-width: 991px) {
	.f_inner .f_right li{
		float: none;
	}
	.f_right li p {
		margin-bottom: 0;
	}
}
/*------ SP ------*/
@media screen and (max-width: 768px) {
	.logo{
		text-align: center;
	}
	.logo img{
		text-align: center;
	}
	.f_inner .f_left{
		width: 100%;
		text-align: center;
	}
	.f_inner .f_left ul,
	.f_address .map,
	.f_inner .f_right{
		display: none;
	}
	.f_address p#tel,.f_address p#tel span{
		font-size:100%;
		text-align: center;
	}
	.f_address p#tel span{
		margin-left: 3%;
	}
}

/*--------------------------事業部-----------------------------*/
.heading{
	font-size: 1.8em;
	margin: 0 auto 40px;
}
@media screen and (max-width: 767px) {
	.heading {
		font-size: 1.5em;
		margin: 0 auto 10%;
		line-height: 2.1rem;
	}
}

.border {
    border: 1px solid #333!important;
}



