html {
 background-color: #FFFFFF;
}

body {
 font-family:"メイリオ",'Meiryo',"ＭＳ Ｐゴシック","MS PGothic","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,verdana,Sans-Serif;
 color: #1e1e1e;
 letter-spacing: 1px;
 line-height: 170%;
 vertical-align: baseline;
 clear: both;
 font-size: 14px;
 color: #333;
}

.clear {
 clear: both;
}

a {
 cursor:pointer;
 text-decoration:none;
 color: #333333;
}

a:hover {
 text-decoration:none;
 color: #014F87;
}

.linkBox {
 cursor: pointer;
}

/*------------------------ p span box 他共通の設定 ------------------------*/
#main p {
 padding-bottom: 20px;
}

.bold {
 font-weight: bold;
}

.t_center {
 text-align: center;
}

.t_right {
 text-align: right;
}

.left {
 float: left;
}

.right {
 float: right;
}

.u-line {
 text-decoration: underline;
}
.b_box {
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

/* ヘッダー 
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
header {
 height: 170px;
 position: relative;
}

header #h_inner {
 width: 1200px;
 margin: 0 auto;
 position: relative;
}

header h1 {
 position: absolute;
 top: 30px;
 left: 30px;
}

.jp header p {
 font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
 position: absolute;
 top: 60px;
 left: 376px;
 font-size: 15px;
 letter-spacing: -1px;
}

.foreign header p {
 font-size: 13px;
 top: 54px;
 left: 330px;
 width: 490px;
 position: absolute;
}

.foreign-cn header p {
 top: 44px;
 left: 320px;
}

header #subnav {
 position: absolute;
 top: 21px;
 right: 150px;
 width: 280px;
 height: 92px;
}

.foreign header #subnav dt {
 display: none;
}

header #subnav ul {
 text-align:center;
 margin: 0;
 padding: 0;
 letter-spacing: -.4em;
}

.foreign header #subnav ul {
 margin-top: 68px;
}

header #subnav li {
 display: inline-block;
 letter-spacing: normal;
 padding: 0 10px;
 position: relative;
 margin: 0;
}

header #subnav li:after {
 content: "";
 position: absolute;
 right: 0;
 width: 1px;
 height: 10px;
 top: 6px;
 background-color: #C00000;
}

header #subnav li:last-child:after {
	background: none;
}

header #subnav li a {
 color: #C00000;
}

header #group_logo {
 position: absolute;
 top: 21px;
 right: 50px;
}

/* サイドナビ 
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
#sNavi {
 position: absolute;
 top: 198px;
 right: -30px;
 z-index: 10;
}

/* グローバルナビ 
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
header nav {
 background: #C00000;
 height: 28px;
 position: absolute;
 bottom: 0;
 width: 100%;
}

nav dl#gNavi dt {
 width: 0;
 height: 0;
 display: none;
}

nav dl#gNavi ul {
 width: 1200px;
 margin: 0 auto;
 text-align: center;
 letter-spacing: -.4em;
}

nav dl#gNavi li {
 display: inline-block;
 letter-spacing: normal;
 font-size: 13px;
 line-height: 1;
 width: 14.28%;
 margin: 0;
 position: relative;
}

.foreign nav dl#gNavi li {
 font-size: 15px;
}

nav dl#gNavi li:after {
 content: "";
 position: absolute;
 right: 0;
 width: 1px;
 height: 18px;
 top: 5px;
 background-color: #FFF;
}

nav dl#gNavi li:first-child:before {
 content: "";
 position: absolute;
 left: 0;
 width: 1px;
 height: 18px;
 top: 5px;
 background-color: #FFF;
}

nav dl#gNavi li a {
	color: #FFF;
	display: block;
	padding: 7px 0;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 15px;
}

nav dl#gNavi li a:hover {
 opacity: 0.8;
}

/* globalnav ------------------------*/
#globalnav {
	display: none;
}

/* top_img
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
#top_img {
 margin-bottom: 50px;
 height: 470px;
 position: relative;
 overflow: hidden;
}

#top_img #slide {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	max-width: 1200px;
	width: 100%;
	margin: auto;
}

#top_img a:hover {
	opacity: 0.9;
}

/* コンテンツ 
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
#contents {
 width: 1036px;
 margin: 0 auto 70px;
}

#home_h2,#contents h3,#contents h4 {
 margin-bottom: 30px;
}

.subtitle01 {
 background: url(../images/subtitle-bg01.png) no-repeat left center;
 color: #fff;
 padding-left: 36px;
 font-size: 18px;
 line-height: 27px;
}

.subtitle02 {
 background: url(../images/subtitle-bg02.jpg) repeat-y left center;
 padding-left: 36px;
 font-size: 18px;
 line-height: 1.2;
 padding: 4px 0 4px 36px;
 color: #111;
}

.subtitle03_02 {
 background: url(../images/point01.jpg) no-repeat left 6px;
 padding-left: 36px;
 font-size: 18px;
 color: #000;
 border-bottom: 1px solid #C00000;
 padding-bottom: 10px;
}

.subtitle03_02 .sub {
 color: #C00000;
 margin-left: 15px;
 font-size: 16px;
}

#contents .box {
 margin-bottom: 50px;
}

#contents .box02 {
 margin-bottom: 30px;
}

#contents .box03 {
 margin-bottom: 60px;
}

/* pickup
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
#pickup {
 margin-top: 50px;
}

#pickup li {
 float: left;
 padding: 0 56px;
}

.foreign #pickup {
 margin-top: 5px;
}

/* main
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
#main {
 float: left;
 width: 750px;
}

#home_news,
#home_news02 {
 position: relative;
}

#home_news article,
#home_news02 article {
 margin-bottom: 20px;
}

#home_news article:last-child,
#home_news02 article:last-child {
 margin-bottom: 0;
}

#home_news .left,
#home_news02 .left {
 width: 220px;
}

#home_news .date,
#home_news02 .date {
 background: url(../images/point02.jpg) no-repeat left 5px;
 padding: 0 0 0 30px;
}

#home_news .content,
#home_news02 .content {
 padding: 0 0 0 220px;
}

#home_news .new,
#home_news02 .new {
 margin-left: 10px;
}

#home_news .new img,
#home_news02 .new img {
 margin-top: 2px;
}

#home_news .cat {
 display: block;
 font-size: 10px;
 line-height: 1.6;
 color: #FFF;
 text-align: center;
 width: 9em;
}
#home_news .cat.cat-information {
 background: #c00000;
 letter-spacing: 0.3em;
}
#home_news .cat.cat-column {
 background: #F39840;
 letter-spacing: 0.4em;
}
#home_news .cat.cat-consult {
 background: #0a3361;
 letter-spacing: -0.1em;
}
#home_news .cat.cat-seminar {
 background: #009944;
 letter-spacing: 0.3em;
}

#home_news .list_page,
#home_news02 .list_page {
 position: absolute;
 top: 3px;
 right: 0;
}

#contents_menu li {
 float: left;
 width: 240px;
 padding: 0 5px;
}

/*top_box03*/
/*------------------------------------------------------------------------------*/
#top_box03 {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
#top_box03 .left_box {
	width: 320px;
}
#top_box03 dl {
	display: inline-block;
	background: #731314;
	color: #FFF;
	line-height: 1.5;
	margin-bottom: 30px;
	text-align: center;
	padding: 15px;
	-webkit-transition: all 0.2s;
    transition: all 0.2s;
}
#top_box03 dl:hover {
	opacity:0.8;
}
#top_box03 .left_box dt {
	margin-bottom: 5px;
}
#top_box03 .left_box dd .sub {
	font-size: 18px;
	display: block;
}
#top_box03 .left_box dd {
	font-size: 28px;
}
#top_box03 .left_box dd a {
	color: #FFF;
}
.foreign #top_box03 .left_box dt {
	font-size: 24px;
}
.foreign #top_box03 .left_box dd {
	font-size: 15px;
	margin-top: 5px;
}
#top_box03 .left_box p {
	font-size: 18px;
	line-height: 1.4;
}
#top_box03 .right_box {
	position: relative;
	width: 430px;
}
#top_box03 .right_box .img_box img {
	max-width: 430px;
}
#top_box03 .right_box li {
	position: absolute;
	width: 35.4%;
}
#top_box03 .right_box li img {
	max-width: 170px;
}
#top_box03 .right_box li:nth-child(1) {
	top: 10px;
	left: 0;
	right: 0;
	margin: 0 auto;
}
#top_box03 .right_box li:nth-child(2) {
	bottom: 10%;
	left: 11%;
}
#top_box03 .right_box li:nth-child(3) {
	bottom: 10%;
	right: 11%;
}
#top_box03 a img {
	-webkit-transition: all .3s ease;
	transition: all .3s ease;
}
#top_box03 a:hover img{
	opacity: 0.7;
}



/* side
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
#side {
 float: right;
 width: 240px;
}

#side #s_about {
 padding: 7px;
 background-color: #f8f8f8;
 margin-bottom: 20px;
 font-size: 13px;
 line-height: 1.5;
}

#side #s_about dd {
 padding-top: 10px;
}

#side #s_bnr li {
 background-color: #f8f8f8;
 text-align: center;
 padding: 7px 0;
 margin-bottom: 20px;
}

#s_banner01 {
 padding: 7px;
 background-color: #f8f8f8;
 margin-bottom: 20px;
 text-align: center;
}

/* フッター 
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
footer {
 font-size: 11px;
 line-height: 1.5;
 width: 100%;
}

#f_top {
 height: 217px;
 background: #EEE url(../images/footer-bg.png) repeat-x bottom;
}

.f_inner {
 width: 1036px;
 margin: 0 auto;
 position: relative;
}

#f_top #f_logo {
 position: absolute;
 top: 40px;
 left: 0;
 width: 200px;
}

#f_top #f_group_logo {
 position: absolute;
 top: 40px;
 right: 30px;
}

#f_top #adrress {
 position: absolute;
 top: 115px;
 left: 0;
}

#f_top #adrress dl {
 float: left;
 margin-right: 30px;
}

#f_top #f_menu {
 position: absolute;
 top: 135px;
 right: 15px;
}

#f_top #f_menu ul {
 border-left: 1px solid #333;
 margin-bottom: 10px;
}

#f_top #f_menu li {
 float: left;
 padding: 0 6px;
 border-right: 1px solid #333;
}

#f_top #f_menu li.last {
 padding: 0 10.5px;
}

footer .map_box {
 height: 380px;
 width: 100%;
 overflow: hidden;
}

footer .map_box img {
 max-width: none;
}

#f_bottom {
 color: #fff;
 text-align: center;
 height: 115px;
 background: #000;
}

#f_bottom a {
 color: #fff;
}

#f_bottom ul {
 width: 320px;
 margin: 0 auto;
 padding: 30px 0 20px;
}

