@charset "UTF-8";

/* INTERFACE */

body #logo{
	display:block;
	margin:20px 0 30px;
	text-align:center;
}

body #logo img{
	width:120px;
	vertical-align:bottom;
}

body header nav{
	display:none;
	width:100%;
	box-sizing:border-box;
	padding:80px 40px 40px 40px;
	background-color:#fff;
	border:3px solid #c81428;
	position:absolute;
	top:0;
	right:0;
	z-index:11;
}

body header nav ul{
	list-style-type:none;
	margin:0;
	padding:0;
	font-size:16px;
}

body header nav ul li{
	border-bottom:1px dotted #c81428;
}

body header nav ul li a{
	display:block;
	padding:15px 60px 17px 0;
	text-decoration:none;
	background-image:url("../img/interface/arrow_red.svg");
	background-repeat:no-repeat;
	background-position:right center;
	background-size:20px auto;
}

body header nav ul li a:link,
body header nav ul li a:visited{
	text-decoration:none;
}

body footer{
	padding:60px 20px 100px;
	background-color:#c81428;
	text-align:center;
}

#sub footer{
	margin:150px 0 0;
}

body footer a img{
	width:120px;
	vertical-align:bottom;
}

body footer ul{
	margin:0 0 60px;
	padding:0;
	list-style-type:none;
}

body footer ul li{
	margin:0 0 10px;
	font-size:14px;
}

body footer ul li a{
	color:#fff;
	text-decoration:none;
}

body footer ul li a:link,
body footer ul li a:visited{
	color:#fff;
	text-decoration:none;
}

body footer ul li a:hover{
	text-decoration:underline;
}

body footer small{
	display:block;
	margin:60px 0 0;
	font-family:Verdana,sans-serif;
	font-size:10px;
	color:#fff;
}

/* HOME */

#home{
	background-image:url("../img/interface/bg_key.png");
	background-repeat:no-repeat;
	background-size:180%;
	background-position:top center;
	background-attachment:fixed;
}

#home_contents_area #key{
	margin:0 auto 50px;
	padding:0 20px;
}

#home_contents_area #key img{
	width:100%;
	vertical-align:bottom;
}

#home_concept_area{
	margin:0 0 50px;
	padding:0 25px;
}

#home_concept_area>div h2{
	margin:0 0 30px;
	padding:0 0 20px;
	font-family: 'Shippori Mincho', serif;
	font-size:25px;
	line-height:1em;
	color:#c81428;
	background-image:url("../img/interface/line_title.svg");
	background-repeat:no-repeat;
	background-size:40px 3px;
	background-position:bottom left;
}

#home_concept_area>div p{
	text-align:justify;
	font-size:14px;
	font-weight:300;
	line-height:1.8em;
}

#home_concept_area>img{
	width:100%;
	margin:20px 0 0;
	vertical-align:bottom;
}

#home_service_area{
	padding:60px 25px 30px;
	background-image:url("../img/interface/bg_service.jpg");
	background-repeat:no-repeat;
	background-size:cover;
	background-position:top center;
}

#home_service_area h2{
	margin:0 0 40px;
	text-align:center;
	font-family: 'Shippori Mincho', serif;
	font-size:35px;
	line-height:1em;
	color:#c81428;
}

#home_service_area h2 span{
	display:block;
	font-family: 'Roboto', sans-serif;
	font-size:15px;
	font-weight:300;
}

#home_service_area ul{
	margin:0 auto;
	padding:0;
	list-style-type:none;
}

#home_service_area ul li{
	padding:0 0 40px;
	font-size:16px;
	font-weight:400;
	line-height:1em;
}

#home_service_area ul li img{
	width:100%;
	margin:0 0 10px;
	vertical-align:bottom;
	border-radius:3px;
}

#home_service_area ul li a:hover{
	opacity:0.8;
}

#home_profile_area{
	background-color:#fff;
}

#home_profile_area>div{
	margin:0 auto;
	padding:60px 25px 80px;
	text-align:center;
	overflow:hidden;
}

#home_profile_area>div>div h2{
	margin:0 0 35px;
	text-align:left;
	font-family: 'Shippori Mincho', serif;
	font-size:36px;
	line-height:1em;
	color:#c81428;
}

#home_profile_area>div>div h2 span{
	display:block;
	font-family: 'Roboto', sans-serif;
	font-size:18px;
	font-weight:300;
}

#home_profile_area>div>div h3{
	margin:8px 0 40px;
	text-align:left;
	font-size:34px;
	font-weight:300;
	line-height:1em;
}

#home_profile_area>div>div h3 span{
	font-size:14px;
}

#home_profile_area>div>div p{
	margin:0;
	text-align:justify;
	font-size:14px;
	font-weight:300;
	line-height:1.8em;
}

#home_profile_area>div>div p.text{
	margin:0 0 35px;
}

#home_profile_area>div>img{
	width:90%;
	vertical-align:bottom;
	margin:45px 0 0;
}

#home_bnr_area{
	background-color:#fff;
}

#home_bnr_area>div{
	max-width:1000px;
	margin:0 auto;
	padding:0 25px 200px;
}

#home_bnr_area a:hover{
	opacity:0.8;
}

#home_bnr_area a img{
	width:100%;
}


/* SUB */

#sub>article>div{
	max-width:1000px;
	margin:0 auto;
	padding:0 25px;
}

#sub h1{
	margin:0 0 60px;
	padding:30px 25px 40px;
	text-align:center;
	font-family: 'Shippori Mincho', serif;
	font-size:32px;
	line-height:1em;
	color:#c81428;
	border-top:1px solid #c81428;
	border-bottom:1px solid #c81428;
}

#sub h1 span{
	display:block;
	font-family: 'Roboto', sans-serif;
	font-size:15px;
	font-weight:300;
}

#sub>article section{
	margin:0 0 80px;
}

#sub>article section h2{
	margin:0 0 40px;
	padding:0 0 20px;
	font-family: 'Shippori Mincho', serif;
	font-size:26px;
	line-height:1em;
	color:#c81428;
	background-image:url("../img/interface/line_title.svg");
	background-repeat:no-repeat;
	background-size:40px 3px;
	background-position:bottom left;
}

.table_archive{
	width:100%;
	border-collapse:collapse;
	margin:0 0 30px;
	border-top:1px dotted #ddd;
}

.table_archive th{
	display:block;
	padding:10px 0 10px 10px;
	text-align:left;
	font-size:14px;
	font-weight:400;
	color:#333;
	border-left:3px solid #333;
}

.table_archive td{
	display:block;
	padding:15px 0 20px;
	text-align:left;
	font-size:16px;
	font-weight:300;
	border-bottom:1px dotted #ddd;
}

#sub>article section p.remarks{
	font-size:14px;
	font-weight:300;
}

.table_normal{
	width:100%;
	border-collapse:collapse;
	border-top:1px dotted #c81428;
}

.table_normal th{
	padding:20px 10px;
	text-align:center;
	font-size:13px;
	font-weight:400;
	color:#fff;
	background-color:#c81428;
	border-bottom:1px dotted #fff;
	white-space:nowrap;
}

.table_normal td{
	padding:20px 15px;
	text-align:left;
	font-size:15px;
	font-weight:300;
	border-bottom:1px dotted #c81428;
	border-right:1px dotted #c81428;
}
