@charset "UTF-8";


@media print, screen and (min-width: 951px) {
	
/* -----------------------------------------------------------------------------
  
  	header
    
  ----------------------------------------------------------------------------- */
header {
	width: 100%;
	height: 110px;
	background: #fff;
	position: relative;
	z-index: 600;
}
header .inner {
	max-width: 1200px;
	height: 110px;
	margin: 0 auto;
	padding: 20px 0 0 32px;
}
header .inner .logo {
	width: 291px;
	float: left;
	-webkit-transition: width 0.3s;
	transition: width 0.3s;
}
header .inner .logo img {
	width: 90%;
}
header .inner .navWrap {
	display: block !important;
}
header .inner .headerWidget {
	float: right;
	margin-top: 5px;
	/*margin-right: 30px;*/
	height: 26px;
	font-size: 1.3rem;
	font-weight: 300;
}
header .inner .headerWidget .contactNav {
	float: left;
	position: relative;
}
header .inner .headerWidget .contactNav a:before {
	content: "";
	display: block;
	width: 14px;
	height: 11px;
	background: url(../img/icon_mail.png);
	position: absolute;
	top: 1px;
	left: -20px;
}
header .inner .headerWidget .contactNav a:hover {
	text-decoration: underline;
}
header .inner .headerWidget .contactSNS {
	float: left;
	position: relative;
}
header .inner .headerWidget .contactSNS a:hover {
	text-decoration: underline;
}
header .inner .headerWidget .lang {
	float: left;
	margin-left: 41px;
	position: relative;
}
header .inner .headerWidget .lang:before {
	content: "";
	display: block;
	width: 18px;
	height: 18px;
	background: url(../img/icon_lang.png);
	position: absolute;
	top: -2px;
	left: -14px;
}
header .inner .headerWidget .lang li {
	float: left;
	padding: 0 11px;
	position: relative;
}
header .inner .headerWidget .lang li:after {
	content: "";
	display: block;
	width: 1px;
	height: 16px;
	background: #e6e6e6;
	position: absolute;
	top: -1px;
	right: 0px;
}
header .inner .headerWidget .lang li:last-child:after {
	content: none;
}
header .inner .headerWidget .lang li.active a {
	border-bottom: 1px solid #656565;
}
header .inner .headerWidget .fontSize {
	float: left;
	border: 1px solid #9a9a9a;
	border-radius: 3px;
	margin: 0 15px 0 12px;
	position: relative;
	top: -4px;
}
header .inner .headerWidget .fontSize li {
	float: left;
	width: 30px;
}
header .inner .headerWidget .fontSize li span {
	display: block;
	text-align: center;
	line-height: 21px;
	color: #9a9a9a;
	font-weight: 400;
	cursor: pointer;
}
header .inner .headerWidget .fontSize li.active {
	background: #9a9a9a;
}
header .inner .headerWidget .fontSize li.active span {
	color: #fff;
}
header .inner .headerWidget .fontSize li#fontM span {
	font-size: 12px;
}
header .inner .headerWidget .fontSize li#fontL span {
	font-size: 16px;
}
header .inner .headerWidget .search {
	float: left;
	position: relative;
	top: -6px;
	min-width: 19px;
	position: relative;
}
header .inner .headerWidget .search .searchBtn {
	width: 19px;
	height: 19px;
	position: absolute;
	top: 4px;
	right: 0;
}
header .inner .headerWidget .search .searchBtn button#search {
	background: url(../img/icon_search_g.png);
	display: block;
	width: 19px;
	height: 19px;
	text-indent: -999em;
}
header .inner .headerWidget .search .searchBox {
	margin-right: 28px;
	margin-top: 2px;
	width: 0;
	overflow: hidden;
	-webkit-transition: all .35s;
	transition: all .3s;
}
header .inner .headerWidget .search .searchBox input {
	padding: 0 5px;
	width: 230px;
	height: 24px;
	line-height: 22px;
	border: 1px solid #999;
	border-radius: 3px;
	font-size: 12px;
	display: none;
}
header .inner .headerWidget .search .searchBox input[type="submit"] {	
	position: absolute;
    top: 4px;
    right: 0;
    border: none;
    background: url(../img/icon_search_g.png) no-repeat;
    display: block;
    width: 19px !important;
    height: 19px;
    text-indent: -999em;
	cursor: pointer;
	display: none;
}
header .inner .headerWidget .search .searchBox.active {
	width: 230px;
}
header .inner .headerWidget .search .searchBox.active input {
	/*width: 215px;*/
}
header .inner #gnav {
	/*float: right;*/
	/*margin-right: 10px;*/
	clear: both;
	/*width: 100%;*/
	width: 110%;
	margin-left: -5%;
}
header .inner #gnav > ul {
	text-align: center;
	height: 60px;
	overflow: hidden;
}
header .inner #gnav > ul > li {
	/*float: left;*/
	/*padding: 0 20px 27px;*/
	-webkit-transition: padding .3s;
	transition: padding .3s;
	padding: 0 1.1%;
	display: inline-block;
}
.fontL header .inner #gnav > ul > li {
	padding: 0 0.8%;
}
header .inner #gnav > ul > li > a {
	font-size: 1.6rem;
	font-weight: 300;
	padding: 20px 14px 23px;
	display: block;
	position: relative;
}
.fontL header .inner #gnav > ul > li > a {
	padding: 20px 10px 23px;
}
header .inner #gnav > ul > li > a span{
	position: relative;
}
header .inner #gnav > ul > li .subMenu {
	display: none;
	width: 100%;
	height: auto !important;
	background: #222;
	position: absolute;
	top: 100%;
	left: 0;
	z-index: 300;
	overflow: auto;
	text-align: left;
}
header .inner #gnav > ul > li .subMenu.active {
	z-index: 300;
}
header .inner #gnav > ul > li .subMenu img {
	width: 100%;
}
header .inner #gnav > ul > li .subMenu a:hover img {
	opacity: 0.6;
}
header .inner #gnav > ul > li .subMenu .inner {
	width: 1200px;
	height: auto;
	padding: 30px 0;
}
header .inner #gnav > ul > li .subMenu .inner > p {
	font-size: 2rem;
	color: #fff;
	margin-bottom: 18px;
}
header .inner #gnav > ul > li .subMenu .inner > p a {
	color: #fff;
	padding-left: 0.8em;
	background: url(../img/icon_arrow_r.png) no-repeat left center;
}
header .inner #gnav > ul > li .subMenu .inner > p a.blank {
    padding-right: 17px;
	background: url(../img/icon_blank02.png) no-repeat right center;
}
header .inner #gnav > ul > li .subMenu .inner > p a:hover {
	text-decoration: underline;
}
header .inner #gnav > ul > li .subMenu .inner > ul {
	margin: 0 -9px;
	display: flex;
	flex-wrap: wrap;
}
header .inner #gnav > ul > li .subMenu .inner > ul > li {
	width: 185px;
	margin: 0 9px 28px;
	float: left;
}
header .inner #gnav > ul > li#navIr .subMenu .inner > ul > li,
header .inner #gnav > ul > li#navRecruit .subMenu .inner > ul > li,
header .inner #gnav > ul > li#navResearch .subMenu .inner > ul > li{
	width: 285px;
}
/*header .inner #gnav > ul > li#navBusiness .subMenu .inner > ul > li,*/
header .inner #gnav > ul > li#navIr .subMenu .inner > ul > li,
header .inner #gnav > ul > li#navCsr .subMenu .inner > ul > li,
header .inner #gnav > ul > li#navCsr2 .subMenu .inner > ul > li,
header .inner #gnav > ul > li#navAdmovie .subMenu .inner > ul > li{
	width: 225px;
}
header .inner #gnav > ul > li .subMenu .inner > ul > li figure {
	background: #fff;
	margin-bottom: 15px;
}
header .inner #gnav > ul > li .subMenu .inner > ul > li figure a {
	display: block;
	padding: 0;
	overflow: hidden;
}
header .inner #gnav > ul > li .subMenu .inner > ul > li figure a img {
	vertical-align: bottom;
	padding: 0;
	margin: 0;
	display: block;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}
header .inner #gnav > ul > li .subMenu .inner .level03 > li a span {
	font-size: 1.3rem;
	color: #fff;
	/*line-height: 1.2;
	display: inline-block;*/
	/*padding-left: 1em;
	padding-bottom: 4px;
	background: url(../img/icon_arrow_r.png) no-repeat left 0.2em;*/
}
header .inner #gnav > ul > li .subMenu .inner > ul > li a span {
	border-bottom: 1px solid #222;
}
header .inner #gnav > ul > li .subMenu .inner > ul > li.current a span {
	border-bottom: 1px solid #e50112;
}
header .inner #gnav > ul > li .subMenu .inner > ul > li a:hover span {
	text-decoration: underline;
}
header .inner #gnav > ul > li .subMenu.type2 .inner ul li dl {
	margin-top: 15px;
}
header .inner #gnav > ul > li .subMenu.type2 .inner ul li dl dt {
	font-size: 1.4rem;
	color: #fff;
	margin-bottom: 17px;
}
header .inner #gnav > ul > li .subMenu.type2 .inner ul li dt a {
	font-size: 1.4rem;
	color: #fff;
	line-height: 1.2;
	padding-left: 1em;
	background: url(../img/icon_arrow_r.png) no-repeat left 0.2em;
	display: inline-block;
}
header .inner #gnav > ul > li .subMenu.type2 .inner ul li dt a:hover {
	text-decoration: underline;
}
header .inner #gnav > ul > li .subMenu.type2 .inner ul li dl dd ul li + li {
	margin-top: 5px;
}
header .inner #gnav > ul > li .subMenu.type2 .inner ul li dl dd ul li a {
	font-size: 1.4rem;
	color: #fff;
	line-height: 1.2;
	
	display: inline-block;
	padding-left: 1em;
    padding-bottom: 4px;
    background: url(../img/icon_arrow_r.png) no-repeat left 0.3em;
}
header .inner #gnav > ul > li .subMenu.type2 .inner ul li dl dd ul li a:hover,
header .inner #gnav > ul > li .subMenu.type2 .inner ul li dl dd ul li a:hover span {
	text-decoration: underline;
}
header .inner #gnav > ul > li .subMenu.type2 .inner ul li p {
	margin-top: 15px;
}
header .inner #gnav > ul > li#navBusiness .subMenu.type2 .inner ul li p {
	margin-top: 10px;
}
header .inner #gnav > ul > li .subMenu.type2 .inner ul li p a {
	font-size: 1.4rem;
	color: #fff;
	line-height: 1.4;
	padding-left: 1em;
	background: url(../img/icon_arrow_r.png) no-repeat left 0.2em;
	display: inline-block;
}
header .inner #gnav > ul > li .subMenu.type2 .inner ul li p a:hover {
	text-decoration: underline;
}
body #wrapper header .subMenu a:hover span {
	border-bottom: none !important;
}

/* type3 */
header .inner #gnav > ul > li .subMenu.type3 .inner ul {
	margin-top: 15px;
}
/*header .inner #gnav > ul > li .subMenu.type3 .inner ul li dl {
	margin-top: 15px;
}*/
header .inner #gnav > ul > li .subMenu.type3 .inner ul li {
	/*font-size: 1.4rem;
	color: #fff;*/
	margin-bottom: 20px;
}
header .inner #gnav > ul > li .subMenu.type3 .inner ul li a {
	font-size: 1.4rem;
	color: #fff;
	line-height: 1.2;
	padding-left: 1em;
	background: url(../img/icon_arrow_r.png) no-repeat left 0.2em;
	display: inline-block;
}
header .inner #gnav > ul > li .subMenu.type3 .inner ul li a span {
	/*font-size: 1.4rem;*/
}
header .inner #gnav > ul > li .subMenu.type3 .inner ul li a:hover {
	text-decoration: underline;
}
header .inner #gnav > ul > li .subMenu.type3 .inner ul li.archive {
	width: 80%;
	margin-right: 5%;
}
header .inner #gnav > ul > li .subMenu.type3 .inner ul li.archive ul li {
	float: left;
	width: 19%;
}	
header .inner #gnav > ul > li .subMenu.type3 .inner ul li.topicBnr {
	width: 28%;
	/*margin-top: 10px;*/
	float: right !important;
}
header .inner #gnav > ul > li .subMenu.type3 .inner ul li.topicBnr figure {
	/*margin-right: 20px;*/
}
header .inner #gnav > ul > li .subMenu.type3 .inner ul li.topicBnr a {
	background: none;
	padding-left: 0;
}

/* 事業紹介ナビ */
header .inner #gnav > ul > li#navBusiness .subMenu .inner > ul {
	gap: 20px;
}
header .inner #gnav > ul > li#navBusiness .subMenu .inner > ul > li {
	width: calc((100% - 80px) / 5);
	margin: 0;
}
header .inner #gnav > ul > li#navBusiness .subMenu .inner > ul .other {
	width: 100%;
	display: flex;
	gap: 20px;
	padding-top: 30px;
	margin-top: 20px;
	border-top: 1px solid rgba(255, 255, 255, 0.2);
}
header .inner #gnav > ul > li#navBusiness .subMenu .inner > ul .other > li {
	width: calc((100% - 80px) / 5);
}

/* IRナビ */
header .inner #gnav > ul > li#navIr .subMenu .inner {
	position: relative;
}
header .inner #gnav > ul > li#navIr .subMenu .inner > ul {
	width: 83%;
	border-right: 1px solid #666;
	padding-right: 20px;
}
	
header .inner #gnav > ul > li#navIr .navIrOther	{
	position: absolute;
	top: 65px;
	right: 0;
	width: 18%;
	padding-left: 30px;
}
header .inner #gnav > ul > li#navIr .navIrOther	dt {
	color: #fff;
	font-size: 1.4rem;
	margin-bottom: 17px;
}
header .inner #gnav > ul > li#navIr .navIrOther	dd {
}
header .inner #gnav > ul > li#navIr .navIrOther	dd ul li + li {
	margin-top: 12px;
}
header .inner #gnav > ul > li#navIr .navIrOther	dd ul li a {
	font-size: 1.4rem;
	color: #fff;
	line-height: 1.2;
	
	display: inline-block;
	padding-left: 1em;
    padding-bottom: 4px;
    background: url(../img/icon_arrow_r.png) no-repeat left 0.3em;
}	
header .inner #gnav > ul > li#navIr .navIrOther	dd ul li a:hover span {
	text-decoration: underline;
}

/* サステナナビ2020 */
header .inner #gnav > ul > li#navCsr2 .subMenu .inner {
	position: relative;
}
header .inner #gnav > ul > li#navCsr2 .subMenu .inner > ul {
	width: 83%;
	border-right: 1px solid #666;
	padding-right: 20px;
}
	
header .inner #gnav > ul > li#navCsr2 .navIrOther	{
	position: absolute;
	top: 65px;
	right: 0;
	width: 18%;
	padding-left: 30px;
}
header .inner #gnav > ul > li#navCsr2 .navIrOther	dt {
	color: #fff;
	font-size: 1.4rem;
	margin-bottom: 17px;
}
header .inner #gnav > ul > li#navCsr2 .navIrOther	dd {
}
header .inner #gnav > ul > li#navCsr2 .navIrOther	dd ul li + li {
	margin-top: 12px;
}
header .inner #gnav > ul > li#navCsr2 .navIrOther	dd ul li a {
	font-size: 1.4rem;
	color: #fff;
	line-height: 1.2;
	
	display: inline-block;
	padding-left: 1em;
    padding-bottom: 4px;
    background: url(../img/icon_arrow_r.png) no-repeat left 0.3em;
}	
header .inner #gnav > ul > li#navCsr2 .navIrOther	dd ul li a:hover span {
	text-decoration: underline;
}
header .inner .navWrap #gnav > ul > li .subMenu.type2 .inner > div.navIrOther dl dd ul.level03 li a.gnavbnr {
	padding-left: 0;
}
	

header .inner > #gnavBtn,
header #gnav .btnAcd,
header #gnav #navTop,
header #gnav #navContact,
header .navWrap .headerWidgetSP,
header .navWrap .closeNav {
	display: none;
}
header .inner #gnav > ul > li .subMenu .inner > ul > li a.blank span{
	padding:0 18px 4px 0;
	background: url(../img/icon_blank_w.png);
	background-repeat: no-repeat;
	background-position:right center;
	display: inline;
}
header .inner .navWrap #gnav > ul > li .subMenu .inner ul.level02 li dl dd ul.level03 li a.pdf span{
	padding: 0 20px 4px 0;
	background: url(../img/icon_pdf_w.png);
	background-repeat: no-repeat;
	background-position: right center;
}

/*文中の文字を囲む*/
header .inner .kakomi{
	padding:2px 8px; /* 枠と文字の空間 */
	margin:0 5px; /* 枠の外の空間 */
	border:1px solid #777; /* 枠の線の太さ・種類・色 */
	border-radius:2px; /* 枠の角を丸くする */  
	box-shadow: 1px 2px 2px #ddd; /*影をいれる*/
	font-family:inherit; /* フォントの種類を継承する */
	font-size:0.85em;	/* フォントの大きさ */
}
header .inner .red{
	font-family:inherit; /* フォントの種類を継承する */
	font-color:red;	/* フォントの色 */
}


/* hover animation
  ---------------------------------------------*/
/*header #gnav > ul > li > a:before,  header #gnav > ul > li > a:after {
	position: absolute;
	bottom: -10px;
	content: "";
	display: inline-block;
	width: 0;
	height: 2px;
	background: #e60012;
	-webkit-transition: all 0.2s;
	transition: all 0.2s;
}
header #gnav > ul > li > a:before {
	left: 50%;
}
header #gnav > ul > li > a:after {
	right: 50%;
}
header #gnav > ul > li:hover > a:before,  header #gnav > ul > li:hover > a:after {
	width: 50%;
}*/
header #gnav > ul > li > a span:before,  header #gnav > ul > li > a span:after {
	position: absolute;
	bottom: -10px;
	content: "";
	display: inline-block;
	width: 0;
	height: 2px;
	background: #e60012;
	-webkit-transition: all 0.2s;
	transition: all 0.2s;
}
header #gnav > ul > li > a span:before {
	left: 50%;
}
header #gnav > ul > li > a span:after {
	right: 50%;
}
header #gnav > ul > li:hover > a span:before,  header #gnav > ul > li:hover > a span:after {
	width: 50%;
}
header #gnav > ul > li > a.blank:hover{
    text-decoration: none;
}


/* current
  ---------------------------------------------*/
/*header #gnav > ul > li.current > a:after {
	position: absolute;
	left: 0;
	bottom: -10px;
	content: "";
	display: inline-block;
	width: 100%;
	height: 2px;
	background: #e60012;
}*/
header #gnav > ul > li.current > a span:after,
body.company header #gnav > ul > li#navCompany > a span:after,
body.news header #gnav > ul > li#navNews > a span:after,
body.business header #gnav > ul > li#navBusiness > a span:after,
body.ir header #gnav > ul > li#navIr > a span:after,
body.csr header #gnav > ul > li#navCsr > a span:after,
body.csr header #gnav > ul > li#navCsr2 > a span:after,
body.insight header #gnav > ul > li#navInsight > a span:after,
body.admovie header #gnav > ul > li#navAdmovieAd > a span:after,
body.admovie header #gnav > ul > li#navAdmovie > a span:after,
body.recruit header #gnav > ul > li#navRecruit > a span:after,
body.research header #gnav > ul > li#navResearch > a span:after {
	position: absolute;
	left: 0;
	bottom: -10px;
	content: "";
	display: inline-block;
	width: 100%;
	height: 2px;
	background: #e60012;
}
body.news.ir header #gnav > ul > li#navNews > a span:after {
	content: none;
}
	
/* fixedHeader
  ---------------------------------------------*/
header.fixedHeader {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	/*height: 75px;*/
	z-index: 600;
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
}
header.fixedHeader .inner {
	/*padding: 12px 0 0 31px;
	height: 75px;*/
}
header.fixedHeader .headerWidget {
	/*display: none;*/
}
/*header.fixedHeader .logo {
	position: inherit;
	margin: 0;
	float: left;
	padding-top: 8px;
}*/
header.fixedHeader .inner #gnav > ul > li > a {
	/*padding-bottom: 29px;*/
}
	
	
header {
	position: fixed;
	top: 0;
	-webkit-transition: .2s;
	transition: .2s;
}
header .inner {
	-webkit-transition: .2s;
	transition: .2s;
}
body #wrapper {
	padding-top: 110px;
	-webkit-transition: .2s;
	transition: .2s;
}
body.fix #wrapper {
	/*padding-top: 75px;*/
}


/* -----------------------------------------------------------------------------
  
  	footer
    
  ----------------------------------------------------------------------------- */
footer {
	background: #212121;
	position: relative;
	z-index: 300;
}
footer #pagetop {
	position: absolute;
	right: 10px;
	top: inherit;
	z-index: 400;
	margin-top: -80px;
}
footer #pagetop.fixed {
	position: fixed;
	right: 10px;
	bottom: 10px;
	top: inherit;
}
footer #pagetop a {
	opacity: 1;
	transition: opacity 0.3s;
	-webkit-transition: opacity 0.3s;
}
footer #pagetop a:hover {
	opacity: 0.7;
}
footer .footerTop .inner {
	padding: 48px 0;
}

footer #ctabnr,
footer #ctabnr2 {
	position: fixed;
    right: 0;
	top: 50%;
	z-index: 400;
	transform: translateY(-50%);
}
footer #ctabnr li {
	transform: translateX(0);
	transition:all 0.3s;
}
footer #ctabnr2 li {
	transform: translateX(65px);
	transition:all 0.3s;
}
footer #ctabnr li:nth-child(2){
	transition:all 0.8s;
	padding-top: 6px;
}
footer #ctabnr2 li:nth-child(2){
	transition:all 0.8s;
	padding-top: 6px;
}
footer #ctabnr.active li {
	transform: translateX(220px);
}
footer #ctabnr2.active li {
	transform: translateX(0);
}
footer #ctabnr ul {
	width: 220px;
}
footer #ctabnr2 ul {
	width: 65px;
}
footer #ctabnr a,
footer #ctabnr2 a {
	opacity: 1;
	transition: opacity 0.3s;
	-webkit-transition: opacity 0.3s;
	cursor: pointer;
}
footer #ctabnr a:hover,
footer #ctabnr2 a:hover, {
	opacity: 0.7;
}

footer .footerTop .inner ul {
	width: 1210px;
	margin-right: auto;
	margin-left: auto;
}
footer .footerTop .inner .footerSearch {
	margin: 0 auto 40px auto;
	position: relative;
	width: 50%;
}
footer .footerTop .inner .footerSearch input {
	width: 100%;
	height: 50px;
	line-height: 50px;
	padding: 0 20px 0 62px;
	border: none;
	border-radius: 3px;
	box-sizing: border-box;
	background: #fff;
}
footer .footerTop .inner .footerSearch input[type="submit"] {
	width: 60px;
    height: 50px;
    position: absolute;
    top: 0;
    left: 0;
    text-indent: -999em;
    background: url(../img/icon_search_b.png) no-repeat center center;
	padding: 0;
	cursor: pointer;
}
footer .footerTop .inner ul li {
	float: left;
	min-width: 200px;
}
footer .footerTop .inner ul li a {
	color: #999;
	font-size: 1.2rem;
}
footer .footerTop .inner ul li a:hover {
	text-decoration: underline;
}
footer .footerTop .inner ul li a img {
	width: 50px;
	float: left;
	margin-right: 10px;
}
footer .footerTop .inner ul li a span {
	display: block;
	line-height: 1.4;
	padding-top: 8px;
}
footer .footerMid .footerNav {
	padding-bottom: 10px;
}
footer .footerMid .footerNav .column {
	border-top: 1px solid #3b3b3b;
	padding-top: 30px;
	float: left;
	margin-right: 40px;
}
footer .footerMid .footerNav .column:last-child {
	margin-right: 0;
}
footer .footerMid .footerNav .column.column1 {
	width: 186px;
}
footer .footerMid .footerNav .column.column2 {
	width: 186px;
}
footer .footerMid .footerNav .column.column3 {
	width: 256px;
}
footer .footerMid .footerNav .column.column4 {
	width: 206px;
}
footer .footerMid .footerNav .column.column5 {
	width: 198px;
}
footer .footerMid .footerNav .column dl {
	margin-bottom: 30px;
}
footer .footerMid .footerNav .column dl dt {
	margin-bottom: 18px;
}
footer .footerMid .footerNav .column dl dt a {
	font-size: 1.4rem;
	color: #fff;
	font-weight: 400;
}
footer .footerMid .footerNav .column dl dt a:hover {
	text-decoration: underline;
}
footer .footerMid .footerNav .column dl dd ul li {
	margin-bottom: 10px;
}
footer .footerMid .footerNav .column dl dd ul li.groupTtl {
	color: #999;
	font-size: 1.2rem;
	font-weight: 200;
}
footer .footerMid .footerNav .column dl dd ul li.lower {
	margin-left: 2.4em;
}
footer .footerMid .footerNav .column dl dd ul li a {
	color: #999;
	font-size: 1.2rem;
	font-weight: 200;
}
footer .footerMid .footerNav .column dl dd ul li a.pdf {
	padding-right: 17px;
    background: url(../img/icon_pdf_g.png) no-repeat right center;
	background-size: 9px;
}
footer .footerMid .footerNav .column dl dd ul li a:hover {
	text-decoration: underline;
}
footer .footerBtm {
	border-top: 1px solid #3b3b3b;
	border-bottom: 1px solid #3b3b3b;
}
footer .footerBtm .footerSubNav {
	padding: 35px 0 30px;
}
footer .footerBtm .footerSubNav ul {
	text-align: center;
}
footer .footerBtm .footerSubNav ul li {
	display: inline-block;
	padding: 0 12px;
	position: relative;
}
footer .footerBtm .footerSubNav ul li:after {
	content: "";
	width: 1px;
	height: 24px;
	background: #3b3b3b;
	display: block;
	position: absolute;
	top: -5px;
	right: 0;
}
footer .footerBtm .footerSubNav ul li:last-child:after {
	content: none;
}
footer .footerBtm .footerSubNav ul li a {
	color: #999;
	font-size: 1.2rem;
	font-weight: 200;
}
footer .footerBtm .footerSubNav ul li a:hover {
	text-decoration: underline;
}
footer .copyright {
	text-align: center;
	padding: 20px 0;
}
footer .copyright small {
	color: #999;
	font-size: 1.1rem;
	font-weight: 200;
}	
footer .footerMid .footerNavSP {
	display: none;
}
footer .annotation {
	padding: 0 0 30px;
	text-align: center;
	color: #666;
	font-size: 1.2rem;
}
/* -----------------------------------------------------------------------------
  
  	下層共通
    
  ----------------------------------------------------------------------------- */
/* pagenav
  ---------------------------------------------*/
#pageNav {
	position: relative;
	z-index: 200;
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	background: #fff;
}
#pageNav .inner > ul {
	margin: 20px 0 0;
}
#pageNav .inner > ul > li {
	width: 200px;
	float: left;
	margin-bottom: 20px;
	text-align: center;
}
#pageNav .inner > ul > li > a {
	font-size: 1.4rem;
	display: block;
	position: relative;
	line-height: 22px;
}
#pageNav .inner > ul > li > a:after {
	content: "";
	display: block;
	width: 1px;
	height: 20px;
	background: #ccc;
	position: absolute;
	right: 0px;
	top: 2px;
}
#pageNav .inner > ul > li:hover a {
	color: #e60012;
}
#pageNav .inner > ul > li:hover a.linkNone {
	pointer-events: none;
	color: #333;
}
#pageNav .inner > ul > li:hover a span {
	position: relative;
}
#pageNav .inner > ul > li:hover a span:after {
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 8px 10px 8px;
	border-color: transparent transparent #333 transparent;
	position: absolute;
	bottom: -15px;
	left: 50%;
	margin-left: -8px;
}
#pageNav .inner > ul > li.active a {
	color: #e60012;
}
#pageNav .inner > ul > li:first-child > a:before,
#pageNav .inner > ul > li:nth-child(7) > a:before,
#pageNav .inner > ul > li:nth-child(13) > a:before,
#pageNav .inner > ul > li:nth-child(19) > a:before{
	content: "";
	display: block;
	width: 1px;
	height: 20px;
	background: #ccc;
	position: absolute;
	left: 0px;
	top: 2px;
}
#pageNav .inner > ul > li .subPageNav {
	background: #333;
	position: absolute;
	top: 93%;
	left: 0;
	width: 100%;
	display: none;
}
#pageNav .inner > ul > li:first-child .subPageNav,
#pageNav .inner > ul > li:nth-child(2) .subPageNav,
#pageNav .inner > ul > li:nth-child(3) .subPageNav,
#pageNav .inner > ul > li:nth-child(4) .subPageNav,
#pageNav .inner > ul > li:nth-child(5) .subPageNav,
#pageNav .inner > ul > li:nth-child(6) .subPageNav {
	top: 50px;
}
#pageNav .inner > ul > li:nth-child(7) .subPageNav,
#pageNav .inner > ul > li:nth-child(8) .subPageNav,
#pageNav .inner > ul > li:nth-child(9) .subPageNav,
#pageNav .inner > ul > li:nth-child(10) .subPageNav,
#pageNav .inner > ul > li:nth-child(11) .subPageNav,
#pageNav .inner > ul > li:nth-child(12) .subPageNav {
	top: 92px;
}
#pageNav .inner > ul > li:nth-child(13) .subPageNav,
#pageNav .inner > ul > li:nth-child(14) .subPageNav,
#pageNav .inner > ul > li:nth-child(15) .subPageNav,
#pageNav .inner > ul > li:nth-child(16) .subPageNav,
#pageNav .inner > ul > li:nth-child(17) .subPageNav,
#pageNav .inner > ul > li:nth-child(18) .subPageNav {
	top: 135px;
}

/*#pageNav .inner > ul > li .subPageNav.line1 {
	top: 50%;
}*/
#pageNav .inner > ul > li .subPageNav.active {
	z-index: 5;
}
#pageNav .inner > ul > li .subPageNav ul {
	width: 1200px;
	margin: 0 auto;
	padding: 4px 0;
}
#pageNav .inner > ul > li .subPageNav ul li {
	float: left;
	margin-right: 50px;
	padding: 15px 0;
}
#pageNav .inner > ul > li .subPageNav ul li a {
	color: #fff;
	font-size: 1.4rem;
	padding-left: 13px;
	background: url(../img/icon_arrow_r.png) no-repeat left center;
}
#pageNav .inner > ul > li .subPageNav ul li a:hover {
	text-decoration: underline;
}
	
/* 5カラム */		
#pageNav.column5 .inner > ul > li {
	width: 20%;
}
#pageNav.column5 .inner > ul > li:first-child > a:before,
#pageNav.column5 .inner > ul > li:nth-child(7) > a:before,
#pageNav.column5 .inner > ul > li:nth-child(13) > a:before {
	content: none;
}
#pageNav.column5 .inner > ul > li:first-child > a:before,
#pageNav.column5 .inner > ul > li:nth-child(6) > a:before,
#pageNav.column5 .inner > ul > li:nth-child(11) > a:before {
	content: "";
	display: block;
	width: 1px;
	height: 20px;
	background: #ccc;
	position: absolute;
	left: 0px;
	top: 2px;
}

/* 4カラム */		
#pageNav.column4 .inner > ul > li {
	width: 25%;
}

/* 3カラム */	
#pageNav.column3 .inner > ul > li {
	width: 33.33333%;
}
#pageNav.column3 .inner > ul > li:nth-child(4) > a:before{
	content: "";
	display: block;
	width: 1px;
	height: 20px;
	background: #ccc;
	position: absolute;
	left: 0px;
	top: 2px;
}

/* pageNavFooter02 */
#pageNav.pageNavFooter02 .inner > ul {
	padding-bottom: 10px;
}
#pageNav.pageNavFooter02 .inner > ul > li {
	margin-bottom: 10px;
}
#pageNav.pageNavFooter02 .inner > ul > li > a {
	display: table;
	width: 100%;
}
#pageNav.pageNavFooter02 .inner > ul > li:first-child > a:before,
#pageNav.pageNavFooter02 .inner > ul > li:nth-child(7) > a:before,
#pageNav.pageNavFooter02 .inner > ul > li:nth-child(13) > a:before,
#pageNav.pageNavFooter02 .inner > ul > li:nth-child(19) > a:before{
	height: 41px;
}
#pageNav.pageNavFooter02 .inner > ul > li > a:after {
	height: 41px;
}
#pageNav.pageNavFooter02 .inner > ul > li > a > span {
	height: 45px;
	display: table-cell;
	vertical-align: middle;
	line-height: 1.3;
}


/* pagenav footer
  ---------------------------------------------*/
#pageNav.pageNavFooter .inner > ul > li .subPageNav {
	display: none !important;
}
#pageNav.pageNavFooter .inner > ul > li:hover a span:after {
	content: none;
}


}

@media print, screen and (min-width: 751px) and (max-width: 950px) {

/* -----------------------------------------------------------------------------
  
  	main
    
  ----------------------------------------------------------------------------- */
main {
	/*padding-top: 60px !important;*/
}

/* -----------------------------------------------------------------------------
  
  	下層共通
    
  ----------------------------------------------------------------------------- */
.tabList li {
	font-size: 1.4rem !important;
}
.tabList li.line2 {
	line-height: 15px !important;
	padding: 15px 0 !important;
}
.tabList li.line2 br {
	display: block !important;
}


}

@media print, screen and (min-width: 751px) {
html, body {
	width: 100%;
	height: 100%;
	background: #fff;
	color: #333;
}
#wrapper {
	max-width: 2200px;
	margin: 0 auto;
	overflow: hidden;
}
.inner {
	max-width: 1200px;
	width: 100%;
	margin: 0 auto;
	box-sizing: border-box;
}
.sp {
	display: none !important;
}

/* -----------------------------------------------------------------------------
  
  	main
    
  ----------------------------------------------------------------------------- */
main {
	/*padding: 0 0 120px;*/
}
main.fixed {
	/*padding-top: 110px;*/
}
#container {
	padding-bottom: 50px;
}
#container.fixed {
	padding-top: 110px;
}

/* -----------------------------------------------------------------------------
  
  	下層共通
    
  ----------------------------------------------------------------------------- */
  /* contents
  ---------------------------------------------*/
.sub #contents {
	font-size: 1.4rem;
}
.sub #contents section,
.sub #contents .section {
	min-height: 150px;
	margin-bottom: 20px;
}
.sub #contents section .inner,
.sub #contents .section .inner {
	padding: 40px 0;
}
.sub #contents section + section .inner,
.sub #contents .section + section .inner,	
.sub #contents .section + .section .inner,
.sub #contents section + .section .inner {
	padding: 10px 0;
}

.sub #contents section .inner p,
.sub #contents .section .inner p {
	line-height: 2;
	margin-bottom: 1.8em;
}
.sub #contents section a:hover,
.sub #contents .section a:hover {
	text-decoration: underline;
}
/* アンカー飛び先セクション */
.sub #contents .anchorSection {
	padding-top: 75px;
	margin-top: -15px;
}

/* breadcrumb
  ---------------------------------------------*/
.breadcrumb {
	width: 100%;
	overflow: hidden;
}
.breadcrumb ul {
	max-width: 1200px;
	height: 40px;
	margin: 0 auto;
}
.breadcrumb ul li {
	float: left;
	line-height: 40px;
	padding-right: 20px;
}
.breadcrumb ul li a {
	font-size: 1.2rem;
	display: block;
	position: relative;
}
.breadcrumb ul li a:hover {
	text-decoration: underline;
}
.breadcrumb ul li a:after {
	content: "";
	display: block;
	background: url(../img/icon_arrow_b.png) no-repeat;
	background-size: 4px;
	width: 4px;
	height: 7px;
	position: absolute;
	top: 17px;
	right: -12px;
}
.breadcrumb ul li span {
	font-size: 1.2rem;
	color: #777;
}

/* 第三階層　ローカルナビ
  ---------------------------------------------*/
.lv3Nav {
	text-align: center;
	margin-bottom: 40px;
	max-width: 1200px;
	margin: 20px auto 40px;
}
.lv3Nav li {
	/*display: inline-block;*/
	border-right: 1px solid #ccc;
	margin-top: 15px;
	vertical-align: top;
	float: left;
}
.lv3Nav li:first-child {
	border-left: 1px solid #ccc;
}
.lv3Nav li a > span {
	display: table;
	width: 100%;
}
.lv3Nav li a {
	padding: 10px 5px;
	text-align: center;
	/*display:flex;*/
	display: table-cell;
	vertical-align: middle;
}
.lv3Nav li a span {
	font-size: 1.5rem;
    padding-left: 14px;
    background: url(../img/icon_arrow_r.png) no-repeat left center;
	/*flex:0 1 auto;*/
	margin:auto;
	line-height: 1.2;
}
.lv3Nav li a:hover {
	text-decoration: none !important;
}
.lv3Nav li a:hover span{
	/*border-bottom: 1px solid #e50112;*/
	position: relative;
}
.lv3Nav li a:hover span:before {
	content: "";
	width: 100%;
	height: 1px;
	background: #e50112;
	position: absolute;
	bottom: -2px;
	left: 0;
}
.lv3Nav li a:hover span,.lv3Nav li.current a span {
	color: #e50112;
}

/* column */	
.lv3Nav.col2Nav li {
	width: 50%;
}
.lv3Nav.col3Nav li {
	width: 33.33333%;
}
.lv3Nav.col3Nav li:nth-child(4),
.lv3Nav.col3Nav li:nth-child(7) {
	border-left: 1px solid #ccc;
}
.lv3Nav.col4Nav li {
	width: 25%;
}
.lv3Nav.col4Nav li:nth-child(5),
.lv3Nav.col4Nav li:nth-child(9) {
	border-left: 1px solid #ccc;
}

.lv3Nav.col5Nav li {
	width: 20%;
}
.lv3Nav.col6Nav li {
	width: 16%;
}
.lv3Nav.col5Nav li:nth-child(6),
.lv3Nav.col5Nav li:nth-child(11),
.lv3Nav.col5Nav li:nth-child(16) {
	border-left: 1px solid #ccc;
}


/* リンクグループ
  ---------------------------------------------*/
ul.linkGroup li {
	display: inline-block;
	position: relative;
	padding-right: 12px;
	margin-right: 12px;
	margin-bottom: 12px;
}
ul.linkGroup li:after {
	content: "";
	width: 1px;
	height: 22px;
	background: #ddd;
	position: absolute;
	top: 0;
	right: 0;
}
ul.linkGroup li a:hover {
	text-decoration: underline;
}
ul.linkGroup li a span {
	font-size: 1.4rem;
	padding-left: 14px;
	background: url(../img/icon_arrow_r.png) no-repeat left center;
}
ul.linkGroup li a.iconPdf span {
	background-image: url(../img/icon_arrow_r.png), url(../img/icon_pdf_b.png);
	background-repeat: no-repeat, no-repeat;
	background-position: left center, right center;
}
ul.linkGroup li a:hover.iconPdf {
	color: #333;
	border-bottom: 1px solid #333;
	/*text-decoration: underline;*/
}
ul.linkGroup li a:hover.iconPdf span {
	background-image: url(../img/icon_arrow_r.png), url(../img/icon_pdf_b.png);
	background-repeat: no-repeat, no-repeat;
	background-position: left center, right center;
	color: #333;
}

/* 2カラム */
ul.listCol2 {
	font-size: 0;
}
ul.listCol2 li {
	display: inline-block;
	width: 31.08333%;
	text-align: center;
}
ul.listCol2 li + li {
	margin-left: 3.33333%;
}
ul.listCol2 li figure {
	margin-bottom: 12px;
}
ul.listCol2 li figure img {
	width: 100%;
}
ul.listCol2 li span {
	font-size: 1.4rem;
	padding-left: 15px;
	background: url(../img/icon_arrow_r.png) no-repeat left center;
}
ul.listCol2 li span:hover {
	text-decoration: underline;
}
/* 3カラム */
ul.listCol3 li {
	float: left;
	width: 31.08333%;
	margin-top: 20px;
	text-align: center;
}
ul.listCol3 li + li {
	margin-left: 3.33333%;
}
ul.listCol3 li:nth-child(-n+3) {
	margin-top: 0;
}
ul.listCol3 li:nth-child(3n+1) {
	margin-left: 0;
}
ul.listCol3 li figure {
	margin-bottom: 12px;
}
ul.listCol3 li figure img {
	width: 100%;
}
ul.listCol3 li span {
	font-size: 1.4rem;
	padding-left: 15px;
	background: url(../img/icon_arrow_r.png) no-repeat left center;
}
ul.listCol3 li span:hover {
	text-decoration: underline;
}
/* 4カラム */
ul.listCol4 li {
	float: left;
	width: 23.75%;
	margin-top: 20px;
	text-align: center;
}
ul.listCol4 li + li {
	margin-left: 1.66666666666667%;
}
ul.listCol4 li:nth-child(-n+4) {
	margin-top: 0;
}
ul.listCol4 li:nth-child(4n+1) {
	margin-left: 0;
}
ul.listCol4 li figure {
	margin-bottom: 12px;
}
ul.listCol4 li figure img {
	width: 100%;
}
ul.listCol4 li span {
	font-size: 1.4rem;
	padding-left: 15px;
	background: url(../img/icon_arrow_r.png) no-repeat left center;
}
ul.listCol4 li span:hover {
	text-decoration: underline;
}

ul.listCol3 li.pdf span, ul.listCol4 li.pdf span {
	padding-right: 16px;
	margin-right: 7px;
	background: url(../img/icon_arrow_r.png), url(../img/icon_pdf_b.png);
	background-repeat: no-repeat;
	background-position: left center, right center;
}

/* フッター上リンク
  ---------------------------------------------*/
#contentsBtmLink {
	position: relative;
	overflow: hidden;
	padding: 80px 0;
	margin-bottom: -70px;
}
#contentsBtmLink:before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 120%;
	height: 100%;
	margin: 12% -10% 0;
	background: #efefef;
	-webkit-transform-origin: left center;
	-ms-transform-origin: left center;
	transform-origin: left center;
	-webkit-transform: rotate(-4.5deg);
	-ms-transform: rotate(-4.5deg);
	transform: rotate(-4.5deg);
	z-index: 1;
}
#contentsBtmLink .inner {
	box-sizing: border-box;
	height: 100%;
	margin: 0 auto;
	padding: 10% 0 150px;
	text-align: center;
	position: relative;
	z-index: 2;
}
#contentsBtmLink.normal {
	padding: 0;
	/*margin-bottom: 0;*/
	background: #efefef;
}
#contentsBtmLink.normal:before {
	content: none;
}
#contentsBtmLink.normal .inner {
	padding: 50px 0 150px;
}
	

/* お知らせ
  ---------------------------------------------*/
/* type01 */
.newsType01 .newsList {
	padding: 30px;
	min-height: 166px;
	box-sizing: border-box;
}
.newsType01 .newsList .newsBox {
	display: none;
}
.newsType01 .newsList .newsBox.active {
	display: block;
}
.newsType01 .newsList .newsBox ul li {
	position: relative;
}
.newsType01 .newsList .newsBox ul li + li {
	margin-top: 20px;
}
.newsType01 .newsList .newsBox ul li span {
	font-size: 1.4rem;
	display: inline-block;
}
.newsType01 .newsList .newsBox ul li .date {
	color: #666;
	width: 220px;
	position: absolute;
	top: 0;
	left: 0;
}
.newsType01 .newsList .newsBox ul li .date .tag {
	width: 100px;
	margin-left: 20px;
	text-align: center;
	background: #666;
	font-size: 1.2rem;
	color: #fff;
}
.newsType01 .newsList .newsBox ul li a {
	font-size: 1.4rem;
	display: inline-block;
	margin-left: 220px;
}
.newsType01 .newsList .newsBox ul li a:hover {
	color: #e60012;
	text-decoration: underline;
}

/* type02 */
.newsType02 .newsList {
	padding: 20px 30px 25px;
}
.newsType02  .newsList ul li + li {
	margin-top: 20px;
}
.newsType02  .newsList ul li {
	font-size: 1.4rem;
	position: relative;
}
.newsType02  .newsList ul li .date {
	position: absolute;
	top: 0;
	left: 0;
}
.newsType02  .newsList ul li .text {
	margin-left: 8em;
	display: block;
}
.newsType02  .newsList ul li .text span {
	margin-right: 4px;
}
.newsType02  .newsList ul li a.iconPdf span {
	padding-right: 20px;
	background: url(../img/icon_pdf_b.png) no-repeat right center;
}
.newsType02  .newsList ul li a:hover {
	border-bottom: 1px solid #e60012;
	color: #e60012;
	text-decoration: none !important;
}
.newsType02  .newsList ul li a.iconPdf:hover span {
	padding-right: 20px;
	background: url(../img/icon_pdf_r.png) no-repeat right center;
}

/* type03 */
.newsType03 .newsList {
	padding: 0;
}
.newsType03 .newsList ul li {
	padding: 15px 30px 20px;
	border-bottom: 1px solid #ddd;
}
.newsType03 .newsList ul li + li {
	margin-top: 0;
}
.newsType03 .newsList ul li .date {
	display: block;
	position: relative;
}
.newsType03 .newsList ul li .date .tag {
	margin-left: 20px;
	text-align: center;
	background: #666;
	font-size: 1.2rem;
	color: #fff;
	width: auto;
	padding: 0 12px;
	min-width: 72px;
	display: inline-block;
}
.newsType03 .newsList ul li .text {
	display: block;
	margin-top: 5px;
}
.newsType03 .newsList ul li .text a {
	margin-left: 0;
}
.newsType03  .newsList ul li a.iconPdf span {
	padding-right: 20px;
	background: url(../img/icon_pdf_b.png) no-repeat right center;
}
.newsType03 .newsList ul li .text a:hover {
	text-decoration: none !important;
	display: inline;
	border-bottom: 1px solid #e60012;
    color: #e60012; 
}
.newsType03  .newsList ul li a.iconPdf:hover span {
	padding-right: 20px;
	background: url(../img/icon_pdf_r.png) no-repeat right center;
}
.newsType03 .newsList ul li .text a span {
	margin-right: 4px;
}

/* type04 */
.newsType04.frame {
	border: 1px solid #ccc;
	background: #fff;
}
.newsType04 .newsHead {
	padding: 0;
}
.newsType04 .newsHead {
	position: relative;
	padding: 20px 30px;
	border-bottom: 1px solid #ccc;
}
.newsType04 .newsHead .ttl {
	font-size: 2.6rem;
	display: inline-block;
	font-weight: 400;
}
.newsType04 .newsHead .more {
	float: right;
	position: relative;
	top: 2px;
}
.newsType04 .newsHead .more li {
	float: left;
	padding-left: 18px;
	margin-left: 20px;
}
.newsType04 .newsHead .more li.rss {
	background: url(../img/sp/icon_rss.png) no-repeat left center;
	background-size: 12px;
}
.newsType04 .newsHead .more li.list {
	padding-left: 15px;
	background: url(../img/sp/icon_arrow_r.png) no-repeat left center;
	background-size: 7px;
}
.newsType04 .newsHead .more li a {
	font-size: 1.3rem;
}
.newsType04 .newsHead .more li:hover {
	text-decoration: underline;
}
.newsType04.frame .newsList {
	padding: 0 30px;
}
.newsType04 .newsList ul li {
	padding: 20px 0;
	border-bottom: 1px dotted #aaa;
}
.newsType04.frame .newsList ul li:last-child {
	border-bottom: none;
}
.newsType04 .newsList ul li .tagWrap {
	margin: 0 0 0 -10px;
}
.newsType04 .newsList ul li .tagWrap .tag {
	width: 70px;
	text-align: center;
	background: #fff;
	border: 1px solid #777;
	color: #222;
	font-size: 1.2rem;
	display: block;
	float: left;
	margin: 0 0 10px 10px;
}
.newsType04 .newsList ul li .tagWrap .tag.economyW {
	border: 1px solid #e7aa3f;
	color: #c67f02;
}
.newsType04 .newsList ul li .tagWrap .tag.industryW {
	border: 1px solid #93c05a;
	color: #6e9e32;
}
.newsType04 .newsList ul li .tagWrap .tag.economyJ {
	border: 1px solid #5fc1c8;
	color: #37a7af;
}
.newsType04 .newsList ul li .tagWrap .tag.industryJ {
	border: 1px solid #a084cf;
	color: #7a58b3;
}
.newsType04 .newsList ul li .tagWrap .tag.other {
	border: 1px solid #777;
	color: #222;
}
.newsType04 .newsList ul li .tagWrap .tag.economy {
	border: 1px solid #dc9e31;
	color: #dc9e31;
}
.newsType04 .newsList ul li .tagWrap .tag.industry {
	border: 1px solid #93c05a;
	color: #93c05a;
}
.newsType04 .newsList ul li .tagWrap .tag.japan {
	border: 1px solid #5fc1c8;
	color: #5fc1c8;
}
.newsType04 .newsList ul li .tagWrap .tag.usa {
	border: 1px solid #6a77c6;
	color: #6a77c6;
}
.newsType04 .newsList ul li .tagWrap .tag.china {
	border: 1px solid #f75617;
	color: #f75617;
}
.newsType04 .newsList ul li .tagWrap .tag.europe {
	border: 1px solid #d46398;
	color: #d46398;
}
.newsType04 .newsList ul li .tagWrap .tag.world {
	border: 1px solid #a084cf;
	color: #a084cf;
}
.newsType04 .newsList ul li .tagWrap .tag.asia {
	border: 1px solid #f75617;
	color: #f75617;
}
.newsType04 .newsList ul li .tagWrap .tag.africa {
	border: 1px solid #8b0000;
	color: #8b0000;
}
.newsType04 .newsList ul li .tagWrap .tag.middleeast {
	border: 1px solid #008000;
	color: #008000;
}
.newsType04 .newsList ul li .date {
	display: block;
	position: relative;
	float: left;
}
.newsType04 .newsList ul li .text {
	display: block;
	margin: 0 0 0 8em;
}
.newsType04 .newsList ul li .text a {
	margin-left: 0;
}
.newsType04 .newsList ul li .text a:hover {
	text-decoration: none !important;
	display: inline;
	border-bottom: 1px solid #e60012;
	color: #e60012; 
}
.newsType04 .newsList ul li .text a span {
	margin-right: 4px;
}
.newsType04.newsType05 .newsList {
	height: 240px;
	overflow: scroll;
	overflow-x: hidden;
}
.newsType04.newsType05 .newsList ul li {
	position: relative;
}
.newsType04.newsType05 .newsList ul li .date {
	color: #666;
	width: 220px;
	position: absolute;
	top: 20px;
	left: 0;
}
.newsType04.newsType05 .newsList ul li .date .tag {
	width: 110px;
	margin-left: 20px;
	text-align: center;
	background: #666;
	font-size: 1.2rem;
	color: #fff;
	display: inline-block;
}
.newsType04.newsType05 .newsList ul li .txt {
	margin-left: 220px;
	display: inline-block;
}
.newsType04.newsType05 .newsList ul li a {
	font-size: 1.4rem;
	display: inline;
}
.newsType04.newsType05 .newsList ul li a:hover {
	text-decoration: none !important;
	display: inline;
	border-bottom: 1px solid #e60012;
	color: #e60012;
}
	
/* type06 */
.newsType06 .newsList {
	padding: 20px 0 25px;
}
.newsType06  .newsList ul li {
	font-size: 1.4rem;
	position: relative;
	padding: 10px 0;
	border-bottom: 1px dotted #ddd;
}
.newsType06  .newsList ul li .date {
	position: absolute;
	top: 10px;
	left: 0;
}
.newsType06  .newsList ul li .text {
	margin-left: 8.5em;
	display: block;
}
.newsType06  .newsList ul li .text span {
	margin-right: 4px;
}
.newsType06  .newsList ul li a.iconPdf span {
	padding-right: 20px;
	background: url(../img/icon_pdf_b.png) no-repeat right center;
}
.newsType06  .newsList ul li a:hover {
	border-bottom: 1px solid #e60012;
	color: #e60012;
	text-decoration: none !important;
}
.newsType06  .newsList ul li a.iconPdf:hover span {
	padding-right: 20px;
	background: url(../img/icon_pdf_r.png) no-repeat right center;
}

/* type07 */
.newsType07.frame {
	margin-top: 40px;
	border: 1px solid #ccc;
	background: #fff;
}
.newsType07 .newsHead {
	padding: 0;
}
.newsType07 .newsHead {
	position: relative;
	padding: 20px 30px;
	border-bottom: 1px solid #ccc;
}
.newsType07 .newsHead .ttl {
	font-size: 2.6rem;
	display: inline-block;
	font-weight: 400;
}
.newsType07 .newsHead .more {
	float: right;
	position: relative;
	top: 2px;
}
.newsType07 .newsHead .more li {
	float: left;
	padding-left: 18px;
	margin-left: 20px;
}
.newsType07 .newsHead .more li.rss {
	background: url(../img/sp/icon_rss.png) no-repeat left center;
	background-size: 12px;
}
.newsType07 .newsHead .more li.list {
	padding-left: 15px;
	background: url(../img/sp/icon_arrow_r.png) no-repeat left center;
	background-size: 7px;
}
.newsType07 .newsHead .more li a {
	font-size: 1.3rem;
}
.newsType07 .newsHead .more li:hover {
	text-decoration: underline;
}
.newsType07.frame .newsList {
	padding: 0 30px;
}
.newsType07 .newsList ul li {
	padding: 20px 0;
	border-bottom: 1px dotted #aaa;
}
.newsType07.frame .newsList ul li:last-child {
	border-bottom: none;
}
.newsType07 .newsList ul li .tagWrap {
	margin: 0 0 0 -10px;
}
.newsType07 .newsList ul li .tagWrap .tag {
	width: 70px;
	text-align: center;
	background: #fff;
	border: 1px solid #777;
	color: #222;
	font-size: 1.2rem;
	display: block;
	float: left;
	margin: 0 0 10px 10px;
}
.newsType07 .newsList ul li .date {
	display: block;
	position: relative;
	float: left;
}
.newsType07 .newsList ul li .text {
	display: block;
	margin: 0 0 0 8em;
}
.newsType07 .newsList ul li .text a {
	margin-left: 0;
}
.newsType07 .newsList ul li .text a:hover {
	text-decoration: none !important;
	display: inline;
	border-bottom: 1px solid #e60012;
	color: #e60012; 
}
.newsType07 .newsList ul li .text a span {
	margin-right: 4px;
}

/* .pager
---------------------------------------------*/
.pager {
	text-align:center;
	font-size: 0;
	padding: 0 240px;
	position: relative;
	margin: -10px 0 0;
}
.pager li {
	display: inline-block;
	font-size: 1.4rem;
	margin: 10px 5px 0;
	text-align: center;
	border: 1px solid #eee;
	background-color: #fff;
}
.pager li a {
	display: block;
	color: inherit;
	text-decoration: none;
	transition: all .3s;
	-webkit-transition: all .3s;
}
.pager li a:hover {
	background-color: #f3f3f3;
	text-decoration: none !important;
}
.pager li.current a {
	background: #cb151d;
	color: #fff;
	pointer-events: none;
}
.pager li span {
	display: block;
	width: 45px;
	height: 45px;
	line-height: 45px;
}
.pager li.prev,
.pager li.next {
	position: absolute;
	top: 10px;
	margin: 0;
}
.pager li.prev {
	left: 70px;
}
.pager li.next {
	right: 70px;
}
.pager li.prev span,
.pager li.next span {
	width: 160px;
}
.pager li.prev span {
	background: url(../img/icon_arrow_l.png) 8% center no-repeat;
}
.pager li.next span {
	background:url(../img/icon_arrow_r.png) no-repeat 93% center;
}
.pager li.hidden {
	visibility: hidden;
}
.pager li.more {
	border: 1px solid #fff;
}
.pager li.more span {
	width: 30px;
}


/* 資料リスト
---------------------------------------------*/
/* 画像左寄せレイアウト */
.reportList .thumb {
	float: left;
	width: 24.17%;
	max-width: 314px;
	text-align: center;
}
.col2 .reportList .thumb {
	width: 39%;
}
.reportList .thumb img {
	width: 100%;
}
.reportList .thumb.vertical img {
	width: 70%;
}
.reportList table {
	width: 72.6%;
	margin-left: 27.4%;
}
.reportList table th {
	width: 200px;
	text-align: center;
	vertical-align: middle;
	padding: 13px 30px;
}
.reportList table td {
	vertical-align: middle;
	padding: 13px 30px;
}
.backnumber {
	margin: 0 -2%;
}
.backnumber .reportList {
	width: 46%;
	float: left;
	margin: 0 2%;
}
.backnumber .reportList table {
	width: 100%;
	margin-left: 0;
	margin-bottom: 40px;
}
.reportList ul {
	margin-left: 29.4%;
}
.reportList ul li {
	padding: 10px 8px 10px 20px;
	border-bottom: 1px dotted #bcbcbc;
}
.reportList ul li.all {
	padding: 10px 8px 10px 8px;
}
.reportList ul li.all a {
	font-size: 1.8rem;
	margin-right: 20px;
}
.reportList ul li a.iconPdf span,
.reportList ul li a.icon_ebook span,
.reportList ul li a.blank span {
	position: relative;
}
.reportList ul li a.iconPdf span:before,
.reportList ul li a.icon_ebook span:before,
.reportList ul li a.blank span:before {
	content: "";
	display: block;
	width: 5px;
	height: 9px;
	background: url(../img/icon_arrow_r02.png) no-repeat;
	position: absolute;
	top: 7px;
	left: -12px;;
}
.reportList ul li a.blank:hover span:before {
	color: #e60012;
}
.reportList ul li.all a.iconPdf span {
	background: url(../img/sp/icon_pdf_b.png) no-repeat right center;
	background-size: 16px;
	padding-right: 22px;
}
.reportList ul li.all a.iconPdf span:before {
	content: none;
}
.reportList ul li.all a.iconPdf:hover span {
	background: url(../img/sp/icon_pdf_r.png) no-repeat right center;
	background-size: 16px;
}
/* ebook */
.reportList ul li a.icon_ebook span {
	padding-right: 24px;
	background: url(../img/icon_ebook.png) right center no-repeat;
}
.reportList ul li a.icon_ebook:hover {
	text-decoration: none !important;
	display: inline;
	border-bottom: 1px solid #e60012;
	color: #e60012;
}

.reportList ul li.all a + a:hover,
.reportList ul li a.blank:hover {
	text-decoration: none !important;
	color: #e60012;
	border-bottom: 1px solid #e60012;
}
.reportList ul li a.blank:hover {
	background: url(../img/icon_blank_red.png) no-repeat right center;
}
.reportList .btnWrap {
	margin-left: 34.4%;
}
.col2 .reportList .btnWrap {
	margin-left: 45.4%;
}
.reportList .btnWrap .btn {
	/*width: 500px;*/
	width: 240px;
	margin: 0 !important;
}
.reportList .btnWrap .btn + .btn {
	margin-top: 15px !important;
}

/* 画像右寄せレイアウト */
.reportList.rightImg .thumb {
	float: right;
}
.reportList.rightImg ul {
	margin-right: 29.4%;
	margin-left: 0;
}
	
	
/* 資料バックナンバー
---------------------------------------------*/
.coverList {
	overflow: hidden;
}
.coverList li {
	float: left;
	width: 14%;
	padding: 0 0 40px; 
	margin: 10px 2.5% 30px;
	text-align: center;
	position: relative;
}
.coverList li:nth-child(5n+1) {
	margin-left: 5%;
}
.coverList li:nth-child(5n) {
	margin-right: 5%;
}
.coverList li:before {
	content: "";
	width: 200%;
	height: 120px;
	background: url(../img/bg_shadow.png) repeat-x left bottom;
	position: absolute;
	bottom: 0;
	left: -50%;
	z-index: -1;
}	
.coverList li figure {
	margin-bottom: 8px;
	background: #fff;
}
.coverList li img {
	width: 100%;
	height: auto;
}
.coverList li .alpha a {
	-webkit-transition: all .3s;
	transition: all .3s;
}
.coverList li .alpha:hover a {
	opacity: 0.7;
}
.coverList li .alpha:hover a img {
	opacity: 1;
}



/* 絞り込みリスト
---------------------------------------------*/
.searchSort {
	margin: 0 0 50px;
}
.searchSort .title {
	float: left;
	margin: 0 15px 0 0!important;
	padding: 0 5px 0 0;
	width: 105px;
	text-align: right;
	line-height: 1.2;
	position: relative;
	top: -2px;
	font-size: 1.6rem;
}
.searchSort dl {
	clear: both;
	margin: 20px 0 0;
}
.searchSort dl dt {
	float: left;
	margin: 10px 15px 0 0;
	width: 105px;
	text-align: right;
}
.searchSort dl dd {
	margin: 0 0 0 120px;
}
.searchSort dl dd ul {
	margin: -10px 0 0;
}
.searchSort dl dd ul li {
	float: left;
	margin: 10px 0 0;
}
.searchSort dl dd ul li:nth-child(1) {
	width: 9em;
}
.searchSort dl dd ul li:nth-child(2) {
	width: 7em;
}
.searchSort dl dd ul li:nth-child(3) {
	width: 13em;
}
.searchSort dl dd ul li:nth-child(4) {
	width: 12em;
}
.searchSort dl dd ul li:nth-child(5) {
	width: 8em;
}
/* 年月絞り込み */	
.yearBox .selectBox {
	float: left;
}
.yearBox .selectBox select {
	width: 120px;
	font-size: 1.5rem;
	background: url(../img/icon_arrow_btm_r.png) no-repeat 81% center; 
}
.yearBox .anchorList {
	margin-left: 150px;
	text-align: left;
}
.yearBox .anchorList li {
	margin: 12px 0 0;
	padding: 0 18px;
}
.yearBox .anchorList li.notyet a {
	cursor: default;
	color: #ccc;
}
.yearBox .anchorList li.notyet a:hover {
	text-decoration: none;
}
.yearBox .anchorList li.notyet a span {
	background: url(../img/icon_arrow_anchor_g.png) no-repeat right center;
	background-size: 9px;
	padding-right: 20px;
	display: block;
	line-height: 1.4;
}

/* -----------------------------------------------------------------------------
  
  	共通パーツ
    
  ----------------------------------------------------------------------------- */
  /* icon
  ---------------------------------------------*/
a.red {
	color: #e60012;
}
a.line {
	text-decoration: underline;
}
a.line:hover {
	text-decoration: none !important;
}
a.blank {
	padding-right: 17px;
	background: url(../img/icon_blank02.png) no-repeat right center;
}
a.blank:hover {
	text-decoration: underline;
}
a.link:before {
	content: "";
	display: inline-block;
	width: 7px;
	height: 11px;
	margin-right: 7px;
	background: url(../img/icon_arrow_r.png) no-repeat left center;
}
a.link.white{
	color: #fff;
}
a.link.white:before {
	content: "";
	display: inline-block;
	width: 7px;
	height: 11px;
	margin-right: 7px;
	background: url(../img/icon_arrow_w.png) no-repeat left center;
	color: #fff;
}
a.link:hover {
	text-decoration: underline;
}
a.blankRed {
	color: #e60012;
	padding: 0 15px 0 0;
	background: url(../img/icon_blank_red.png) no-repeat right 7px;
	margin-right: 5px;
}
a.pdf span {
	padding-right: 20px;
	margin-right: 6px;
	background: url(../img/icon_pdf_b.png);
	background-repeat: no-repeat;
	background-position: right center;
}
a.iconPdf span {
	margin-right: 6px;
	padding-right: 20px;
	background: url(../img/icon_pdf_b.png) no-repeat right center;
}
a.iconPdf:hover {
	display: inline;
    color: #333; 
}
a.iconPdf:hover span {
	padding-right: 20px;
	background: url(../img/icon_pdf_r.png) no-repeat right center;
}
	
a.iconExcel span {
	margin-right: 6px;
	padding-right: 20px;
	background: url(../img/icon_xlsx_b.png) no-repeat right center;
}
a.iconExcel:hover {
	text-decoration: none !important;
	display: inline;
	border-bottom: 1px solid #e60012;
    color: #e60012; 
}
a.iconExcel:hover span {
	padding-right: 20px;
	background: url(../img/icon_xlsx_r.png) no-repeat right center;
}

a.iconWord span {
	margin-right: 6px;
	padding-right: 20px;
	background: url(../img/icon_word_b.png) no-repeat right center;
}
a.iconWord:hover {
	text-decoration: none !important;
	display: inline;
	border-bottom: 1px solid #e60012;
    color: #e60012; 
}
a.iconWord:hover span {
	padding-right: 20px;
	background: url(../img/icon_word_r.png) no-repeat right center;
}

a.iconPowerpoint span {
	margin-right: 6px;
	padding-right: 20px;
	background: url(../img/icon_ppt_b.png) no-repeat right center;
}
a.iconPowerpoint:hover {
	text-decoration: none !important;
	display: inline;
	border-bottom: 1px solid #e60012;
    color: #e60012; 
}
a.iconPowerpoint:hover span {
	padding-right: 20px;
	background: url(../img/icon_ppt_r.png) no-repeat right center;
}

a.iconMovie span {
	margin-right: 6px;
	padding-right: 20px;
	background: url(../img/icon_movie.png) no-repeat right center;
}


/* btn
  ---------------------------------------------*/
.btn {
	border: 1px solid #ccc;
	width: 250px;
}
.btn a {
	font-size: 1.4rem;
	display: block;
	height: 43px;
	line-height: 43px;
	text-align: center;
	background: #fff;
	transition: all .3s;
	-webkit-transition: all .3s;
}
.btn a:hover {
	background-color: #f3f3f3;
	text-decoration: none !important;
}
.btn.cnt{
	margin-left: auto;
	margin-right: auto;
}
.btn.arrow a {
	background: #fff url(../img/icon_arrow_r.png) no-repeat 93% center;
}
.btn.arrow a:hover {
	background-color: #f3f3f3;
}
.btn.arrow.grey a {
	background: #efefef url(../img/icon_arrow_r.png) no-repeat 93% center;
}
.btn.arrow.grey a:hover {
	background: #fff url(../img/icon_arrow_r.png) no-repeat 93% center;
}
.btn.back a {
	background: url(../img/icon_arrow_l.png) no-repeat 7% center;
}
.btn.back a:hover {
	background: url(../img/icon_arrow_l.png) no-repeat 7% center;
}
.btn.back.grey a {
	background: url(../img/icon_arrow_l.png) no-repeat 7% center;
}
.btn.back.grey a:hover {
	background: #fff url(../img/icon_arrow_l.png) no-repeat 7% center;
}
.btn.white {
	border: 1px solid #fff;
}
.btn.white a {
	background: url(../img/icon_arrow_w.png) no-repeat 93% center;
	color: #fff;
}
.btn.white a:hover {
	background: rgba(255, 255, 255, 0.2) url(../img/icon_arrow_w.png) no-repeat 93% center;
}
.btn.red {
	border: 1px solid #cb151d;
}
.btn.red a {
	background: #cb151d;
	color: #fff;
}
.btn.red a:hover {
	background: rgba(203, 21, 29, 0.8);
}
.btn.red.arrow a {
	background: #cb151d url(../img/icon_arrow_w.png) no-repeat 93% center;
	color: #fff;
}
.btn.red.arrow a:hover {
	background: rgba(203, 21, 29, 0.8) url(../img/icon_arrow_w.png) no-repeat 93% center;
}
.btn.blank a span {
	padding-right: 17px;
	background: url(../img/icon_blank02.png) no-repeat right center;
}
.btn.popup a span {
	padding-right: 17px;
	background: url(../img/icon_blank.png) no-repeat right center;
}
.btn.print a span {
	padding-right: 17px;
	background: url(../img/icon_print.png) no-repeat right center;
}
.btn.print + p {
	clear: both;
	padding: 40px 0 0;
	/*margin-bottom: 0 !important;*/
}
.btn.link,
.btn.pdf,
.btn.xlsx,
.btn.blank02 {
	width: 420px;
	margin: 0 auto;
}
.btn.link a,
.btn.pdf a,
.btn.xlsx a,
.btn.blank02 a {
	background: none;
}
.btn.link a:hover,
.btn.pdf a:hover,
.btn.xlsx a:hover,
.btn.blank02 a:hover {
	background: #f3f3f3;
}
.btn.pdf span {
	padding: 0 20px 0 16px;
	margin-right: 6px;
	background: url(../img/icon_arrow_r.png), url(../img/icon_pdf_b.png);
	background-repeat: no-repeat;
	background-position: left center, right center;
}
.btn.link span {
	padding: 0 20px 0 16px;
	margin-right: 6px;
	background: url(../img/icon_arrow_r.png);
	background-repeat: no-repeat;
	background-position: left center;
}
.btn.xlsx span {
	padding: 0 20px 0 16px;
	margin-right: 6px;
	background: url(../img/icon_arrow_r.png), url(../img/icon_xlsx_b.png);
	background-repeat: no-repeat;
	background-position: left center, right center;
}
.btn.download span {
	padding: 2px 26px 3px 16px;
	margin-right: 6px;
	background: url(../img/icon_download.png);
	background-repeat: no-repeat;
	background-position: right center;
}
.btn.blank02 span {
	padding: 0 17px 0 16px;
	margin-right: 0;
	background: url(../img/icon_arrow_r.png), url(../img/icon_blank.png);
	background-repeat: no-repeat;
	background-position: left center, right center;
}
.btn.search {
	width: 360px;
}
.btn.search a {
	background: #cb151d;
	width: 360px;
}
.btn.red a:hover {
	background: rgba(203, 21, 29, 0.8);
}
.btn.center {
	margin: 0 auto;
}
.btnCenter {
	margin: 20px 0;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
}
.btn.middle {
	width: 380px;
	margin: 0 auto;
}
.btn.middle a {
	height: 60px;
	line-height: 60px;
	font-size: 1.6rem;
}
.btnCenter .btn {
	margin-bottom: 0 !important;
}
.btnCenter .btn + .btn {
	margin-left: 20px;
}
.btn.search a span {
	font-size: 1.6rem;
	padding: 0 0 0 25px;
	margin-right: 6px;
	background: url(../img/icon_search_w.png) no-repeat left center;
}
.btn.return a {
	background: #fff url(../img/icon_arrow_l.png) 8% center no-repeat;
}
.btn.return a:hover {
	background-color: #f3f3f3;
}
.btn.longTxt a {
	height: auto;
	line-height: 1.4;
	padding: 14px 30px;
}
.btn.large {
	width: 380px;
}	
.btn.large a {
	height: 80px;
	line-height: 80px;
	font-size: 1.6rem;
}
.btn.large02 {
	width: 460px;
}	
.btn.large02 a {
	height: 60px;
	line-height: 60px;
	font-size: 1.6rem;
}
.btn.middle {
	width: 380px;
}	
.btn.middle a {
	height: 60px;
	line-height: 60px;
	font-size: 1.6rem;
}
	
.btnCol4 li {
	float: left;
	width: 25%;
	padding: 0 10px;
}
.btnCol4 li .btn {
	width: 100%;
}
	
/* btnBox */
.btnBox .btn.right {
	float: right;
}
.btnBox .btn.right.print {
	width: 180px;
	margin-bottom: 30px !important;
}



/* ttl
  ---------------------------------------------*/
#pageTtl {
	background: #efefef;
	height: 140px;
}
#pageTtl .inner {
	display: table;
	height: 140px;
}
#pageTtl .ttl {
	font-size: 4rem;
	font-weight: 400;
	line-height: 1.2;
	/*padding: 30px 0;*/
	display: table-cell;
	vertical-align: middle;
}
#pageTtl .subTtl {
	position: relative;
}
#pageTtl .subTtl .ttl {
	line-height: 1.2;
}
#pageTtl .subTtl .ttl > span {
	font-size: 1.4rem;
	display: block;
}
/* 背景画像あり */	
#pageTtl.ttlImg {
	height: 250px;
	position: relative;
	background-size: cover;
	background-position: center center;
}
#pageTtl.ttlImg:before {
	content: "";
	display: block;
	width: 100%;
	height: 250px;
	background: url(../img/bg_dot.png) center top;
	position: absolute;
	top: 0;
	left: 0;
}
#pageTtl.ttlImg .inner {
	height: 250px;
}
#pageTtl.ttlImg .ttl {
	font-size: 4.8rem;
	font-weight: 400;
	line-height: 250px;
	color: #fff;
	position: relative;
}
#pageTtl.ttlImg .subTtl .ttl {
	line-height: 1.2;
}

/* 扉・サイズ大 */
#pageTtl.large.ttlImg {
	height: 480px;
}
#pageTtl.large.ttlImg:before {
	height: 480px;
}
#pageTtl.large.ttlImg .ttl {
	line-height: 1;
	height: 480px;
}
#pageTtl.large.ttlImg .ttl span {
	display: block;
	font-size: 2rem;
	margin-top: 15px;
}


/* コンテンツ内タイトル */
#pageTtlSub.ttlImg {
	height: 280px;
	margin-bottom: 40px;
	position: relative;
	background-size: cover;
	background-position: center center;
}
#pageTtlSub.ttlImg .inner {
	height: 280px;
	display: table;
}
#pageTtlSub.ttlImg .ttl {
	font-size: 3.6rem;
	font-weight: 400;
	line-height: 1.4;
	color: #222;
	position: relative;
	padding-left: 12%;
	display: table-cell;
	vertical-align: middle;
	font-feature-settings: "palt";

}



.ttl01 {
	font-size: 2.6rem;
	font-weight: 400;
	line-height: 1.3;
	padding: 10px 0 15px;
	margin-bottom: 25px;
	border-bottom: 1px solid #aaa;
}
.ttl01 span{
	font-size: 0.7em;
	display: block;
	margin-bottom: 3px;
}
.ttl01.note {
	position: relative;
	padding-right: 25%;
}
.ttl01.note span {
	font-size: 0.6em;
	position: absolute;
	top: 32%;
	right: 10px;
}
.ttl01.note02 {
	padding-right: 0;
}
.ttl01.note02 span {
	position: relative;
	display: inline-block;
	margin-left: 30px;
	top: 0;
	right: 0;
	font-size: 0.6em;
}

.ttl02 {
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 1.3;
	padding: 10px 0  0;
	margin-bottom: 20px;
}
.ttlCenter01 {
	font-size: 3.6rem;
	font-weight: 500;
	text-align: center;
	margin-bottom: 45px;
}
.ttlCenter01 span {
	font-size: 0.4em;
	display: block;
	margin-bottom: 10px;
	font-weight: normal;
}
.ttlCenter01 span.mid {
	font-size: 1.8rem;
	padding-top: 20px;
	line-height: 1.6;
}
.ttlResult {
	font-weight: 600;
	font-size: 2.4rem;
}
.ttlResult .sum {
	color: #e60012;
	display: inline;
	font-size: 1em;
}
/* box
  ---------------------------------------------*/
.boxBorder {
	border: 1px solid #ccc;
	padding: 55px 65px;
}
.boxBorderRed {
	border: 1px solid #e60012;
	padding: 30px;
}
.boxBorder02 {
	border: 10px solid #f8f8f8;
    padding: 30px;
    overflow: hidden;
}
dl.boxTtl {
	border: 1px solid #ddd;
}
dl.boxTtl dt {
	font-size: 1.8rem;
	font-weight: bold;
	text-align: center;
	background: #efefef;
	padding: 16px 0;
}
dl.boxTtl dd {
	padding: 30px;
}
/* バナー
  ---------------------------------------------*/
.boxBnr {
	border: solid 1px #ddd;
	width:800px;
	padding:25px 25px 0;
	margin:0 auto;
}
.boxBnr .image {
	margin-bottom: 0;
}
.boxBnr p {
	margin-top: 15px;
}
/* タブ
  ---------------------------------------------*/
.tabWrap .tabList li {
	width: 20%;
	height: 60px;
	text-align: center;
	line-height: 60px;
	font-size: 1.6rem;
	color: #000;
	background: #efefef;
	float: left;
	border-right: 2px solid #fff;
	cursor: pointer;
	transition: all .3s;
	-webkit-transition: all .3s;
}
.tabWrap .tabList li.line2 br {
	display: none;
}
.tabWrap .tabList li:last-child {
	border-right: none;
}
.tabWrap .tabList li.active,
.tabWrap .tabList li:hover {
	background: #cb151d;
	color: #fff;
	position: relative;
}
.tabWrap .tabList li.active:after {
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 10px 8px 0 8px;
	border-color: #cb151d transparent transparent transparent;
	position: absolute;
	bottom: -9px;
	left: 50%;
	margin-left: -8px;
}
.tabWrap .tabList.tab2 li {
	width: 50%;
}
.tabWrap .tabList.tab3 li {
	width: 33.33333%;
}
.tabWrap .tabList.tab4 li {
	width: 25%;
}
.tabWrap .tabList.tab5 li {
	width: 20%;
}
.tabWrap .tabList.tab6 li {
	width: 16.666666666666667%;
}
.tabWrap .tabList.tab8 li {
	width: 12.5%;
}
.tabWrap .tabList.tab8 li {
	margin-bottom: 2px;
}
.tabWrap .tabList.tab9 li {
	width: 11.1111111111111%;
}
.tabWrap .tabList.tab9 li {
	margin-bottom: 2px;
}
.tabWrap .tabList.tab8 li:last-child {
	border-right: 2px solid #fff;
}
.tabWrap .tabList.tab11 li {
	width: 9.090909090909091%;
}
.tabWrap .tabList.noArrow li.active:after {
	content: none;
}

.tabCont {
	padding-top: 40px;
}
.tabCont .tabBox {
	display: none;
}
.tabCont .tabBox.active {
	display: block;
}
	
/* tabimage */
.tabImage {
	margin-bottom: 50px;
}
.tabImage li {
	width: 20%;
	padding: 1px;
	float: left;
}
.tabImage li > img {
	width: 100%;
	height: auto;
}
.tabImage li .figure {
	position: relative;
	cursor: pointer;
	-webkit-transition: all .3s;
	transition: all .3s;
}
.tabImage li .figure figure {
	overflow: hidden;
	position: relative;
}
	
.tabImage li.active .figure figure:after {
	content: "";
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.4);
	display: block;
	position: absolute;
	top: 0;
	left: 0;
}
.tabImage li .figure figure img {
	width: 100%;
	height: auto;
	-webkit-transition: all .3s;
	transition: all .3s;
}
.tabImage li .figure span {
	position: absolute;
	bottom: 10px;
	left: 15px;
	color: #fff;
	font-size: 2rem;
	text-shadow: 0 0 5px #000;
}

/* form パーツ
  ---------------------------------------------*/
input[type="text"],
input[type="tel"],
input[type="email"],
select {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	border: 1px solid #ddd;
	height: 45px;
	line-height: 45px;
	padding: 0 15px;
	font-family: 'Noto Sans JP', "メイリオ", Meiryo,"ヒラギノ角ゴ Pro W3","HIragino Kaku Gothic Pro W3","HIragino Kaku Gothic Pro",Osaka,"ＭＳ Ｐゴシック", "MS P Gothic",sans-serif;
}
select::-ms-expand {
	display: none;
}
textarea {
	height: 200px;
	width: 100%;
	padding: 15px;
	border: 1px solid #ccc;
	box-sizing: border-box;
	font-size: 1.4rem;
	font-family: 'Noto Sans JP', "メイリオ", Meiryo,"ヒラギノ角ゴ Pro W3","HIragino Kaku Gothic Pro W3","HIragino Kaku Gothic Pro",Osaka,"ＭＳ Ｐゴシック", "MS P Gothic",sans-serif;
	resize: none;
}
input[type="submit"] {
    font-family: 'Noto Sans JP', "メイリオ", Meiryo,"ヒラギノ角ゴ Pro W3","HIragino Kaku Gothic Pro W3","HIragino Kaku Gothic Pro",Osaka,"ＭＳ Ｐゴシック", "MS P Gothic",sans-serif;
}
:placeholder-shown {
	color: #999;
}
::-webkit-input-placeholder {
	color: #999;
}
:-ms-input-placeholder {
	color: #999;
}
::-moz-placeholder {
	color: #999;
}
select {
	padding: 0 40px 0 15px;
	background: #fff url(../img/icon_arrow_btm_r.png) no-repeat 96% center;
	cursor: pointer;
}
button {
	background-color: transparent;
	border: none;
	cursor: pointer;
	outline: none;
	padding: 0;
	-webkit-appearance: none;
}
/* checkbox, radio */
input[type="checkbox"], input[type="radio"] {
	width: 0;
	height: 0;
	margin: 0;
	position: absolute;
	opacity: 0;
}
input[type="radio"] + label {
	position: relative;
	cursor: pointer;
	padding: 0 0 0 25px;
}
input[type="radio"] + label:before {
	content: "";
	display: block;
	width: 18px;
	height: 18px;
	position: absolute;
	top: 50%;
	margin-top: -9px;
	left: 0;
	border: 1px solid #ccc;
	border-radius: 50%;
	box-sizing: border-box;
	background: #fff;
}
input[type="radio"]:checked + label:after {
	content: "";
	display: block;
	width: 8px;
	height: 8px;
	background: #e60012;
	position: absolute;
	top: 50%;
	margin-top: -4px;
	left:5px;
	border-radius: 50%;
}
input[type="checkbox"] + label {
	padding: 0 0 0 30px;
	cursor: pointer;
	position: relative;
}
input[type="checkbox"] + label:before {
	content: "";
	width: 20px;
	height: 20px;
	background: #fff;
	border: 1px solid #ccc;
	box-sizing: border-box;
	position: absolute;
	top: 50%;
	left: 0;
	margin-top: -10px;
}
input[type="checkbox"]:checked + label:after {
	content: "";
	width: 16px;
	height: 12px;
	background: url(../img/icon_check.png) no-repeat 0 0;
	position: absolute;
	top: 3px;
	left: 2px;
}

.freeWord {
	margin-right: 40px;
}
.freeWord input {
	float: left;
	width: 460px;
}
.freeWord input[type="text"] {
	padding: 0 20px;
}
.freeWord .search {
	width: 120px;
	float: left;
}
.freeWord .btn.search a {
	width: auto;
}
.freeWord .btn.search a span {
	font-size: 1.4rem;
}
	
.inputBox dt {
	float: left;
	width: 180px;
	line-height: 45px;
}
.inputBox dd {
	margin: 0 0 0 180px;
	padding: 0 120px 0 0;
	position: relative;
}
.inputBox dd input {
	width: 100%;
}
.inputBox dd button {
	width: 120px;
	position: absolute;
	top: 0;
	right: 0;
	height: 45px;
	color: #fff;
	background: #cb151d;
	font-size: 1.4rem;
	transition: all .3s;
	-webkit-transition: all .3s;
	border: none;
}
.inputBox dd button.black {
	background: #9a9a9a;
}

/* 検索リスト */
#search .searchWrap {
	background: #f8f8f8;
	padding: 40px;
}
#search .searchWrap ul li {
	float: left;
	width: 32%;
}
#search .searchWrap ul li + li {
	margin-left: 2%;
}
#search .searchWrap ul li p {
	font-size: 1.6rem;
	font-weight: 600;
}
#search .searchWrap ul li p b {
	float: left;
	display: block;
	font-weight: 600;
}
#search .searchWrap ul li p span {
    font-size: 1.2rem;
    font-weight: 400;
    letter-spacing: -0.09em;
    display: block;
    float: left;
    line-height: 2.2;
}
#search .searchWrap ul li input,
#search .searchWrap ul li select {
	width: 100%;
	margin: 8px 0 0;
}
#search .btn {
	margin: 40px auto 20px;
}


/* hover アクション
  ---------------------------------------------*/
.over {
	-webkit-transition: all .3s;
	transition: all .3s;
}
.alpha a img {
	opacity: 1;
	-webkit-transition: all .3s;
	transition: all .3s;
}
.alpha a:hover img {
	opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha(opacity=70)";
	-moz-opacity: 0.7;
	-khtml-opacity: 0.7;
}
.scale {
	overflow: hidden;
}
.scale img {
	-webkit-transition: transform 0.3s;
	transition: transform 0.3s;
}
.scale:hover img {
	-webkit-transform: scale(1.1);
	transform: scale(1.1);
}

/* 背景色
  ---------------------------------------------*/
.gray01 {
	background: #f8f8f8;
}

/* img
  ---------------------------------------------*/
figcaption {
	text-align: left;
	padding-top: 5px;
	font-size: 1.3rem;
	line-height: 1.4;
}
figcaption.center {
	text-align: center !important;
}
.imgBgGray {
	background: #f2f2f2;
	text-align: center;
	padding: 20px 20px;
}
.imageW100 {
	text-align: center;
	margin: 50px 0;
}
.imageW100 img {
	width: 100%;
}
span.caption {
	display: block;
	text-align: center;
}


/* anchor list
  ---------------------------------------------*/
.anchorList {
	text-align: center;
	margin-bottom: 40px;
	max-width: 1200px;
	margin: 10px auto 40px;
}
.anchorList li {
	display: inline-block;
	font-size: 1.6rem;
	border-right: 1px solid #ccc;
	padding: 0 30px;
	margin-top: 30px;
	vertical-align: top;
}
.anchorList li:first-child {
	border-left: 1px solid #ccc;
}
.anchorList li a {
	display: table-cell;
	vertical-align: middle;
}
.anchorList li a:hover {
	text-decoration: underline;
}
.anchorList li a span {
	background: url(../img/icon_arrow_anchor.png) no-repeat right center;
	background-size: 9px;
	padding-right: 20px;
	display: block;
	line-height: 1.4;
}
/* type02 */
.anchorList.type02 {
	max-width: 100%;
	text-align: center;
}
.anchorList.type02 ul {
	display: inline-block;
	background: #f8f8f8;
	padding: 0 20px;
	margin: 20px 20px 0;
}
.anchorList.type02 li {
	font-size: 1.4rem;
	margin-top: 0;
	padding: 20px 0;
	border: none;
}
.anchorList.type02 li > span {
	padding: 0 20px;
	display: block;
	border-left: 1px solid #ccc;
}
.anchorList.type02 li:first-child > span {
	border-left: none;
}
	
/* type03 */	
.anchorList.type03 {
	text-align: center;
	margin-bottom: 40px;
	max-width: 1200px;
	margin: 0px auto 20px;
}
.anchorList.type03 li {
	width: 25%;
	font-size: 1.4rem;
	border-right: 1px solid #ccc;
	margin-top: 15px;
	padding: 0 10px;
	vertical-align: top;
	float: left;
	min-height: 50px;
}
.anchorList.type03 li:first-child {
	border-left: 1px solid #ccc;
}
.anchorList.type03 li:nth-child(5) {
	border-left: 1px solid #ccc;
}
.anchorList.type03 li a > span {
	display: table;
	width: 100%;
}
.anchorList.type03 li a {
	padding: 7px 5px;
	text-align: center;
	display: table-cell;
	vertical-align: middle;
	height: 50px;
}

/* 扉ページリンク
  ---------------------------------------------*/
.sub #contents section .inner ul.panelList li a:hover {
    text-decoration: none;
}
ul.panelList li figure {
	margin-bottom: 12px;
}
ul.panelList li figure img {
	width: 100%;
}
ul.panelList li span {
	font-size: 1.4rem;
	padding-left: 15px;
	background: url(../img/icon_arrow_r.png) no-repeat left center;
}
ul.panelList li span:hover {
	text-decoration: underline;
}
ul.panelList li span .iconPdf {
	padding: 0 20px 0 0;
	margin-right: 6px;
	background: url(../img/icon_pdf_b.png);
	background-repeat: no-repeat;
	background-position: right center;
}
ul.panelList li dl {
	text-align:left;
}
ul.panelList li dl dt {
    font-size: 2rem;
    padding-left: 15px;
    background: url(../img/icon_arrow_r.png) no-repeat left center;
    margin-bottom: 10px;
    font-weight: 500;
}
ul.panelList li dl dt.down {
    font-size: 1.6rem;
}
ul.panelList li a:hover dl dt {
	text-decoration:underline;
}

/*col3*/
ul.panelList.col3 li{
	float: left;
	width: 31.08333%;
	text-align: center;
	margin-right: 3.33333%;
}
ul.panelList.col3  li:nth-child(n+4) {
	margin-top: 20px;
}
ul.panelList.col3  li:nth-child(3n) {
	margin-right: 0;
}
/*col2*/
ul.panelList.col2 li {
    float: left;
    width: 48%;
    margin-top: 58px;
    text-align: center;
    margin-right: 0;
}
ul.panelList.col2 li:nth-child(2n) {
	margin-left: 4%;
}
ul.panelList.col2 li:nth-child(-n+2) {
    margin-top: 0;
}
ul.panelList.col2 li figure {
	margin-bottom: 12px;
}
ul.panelList.col2 li figure img {
	width: 100%;
}

/* グループリンク
  ---------------------------------------------*/
.groupLink {
	overflow: hidden;
}
.groupLink li {
	margin-bottom: 30px;
}
.groupLink li figure {
	margin-bottom: 14px;
	overflow: hidden;
	width: 100%;
	height: auto;
}
.groupLink li figure img {
	width: 100%;
	height: auto;
}
.groupLink li h3,
.groupLink li h4,
.groupLink li h5 {
	font-size: 2rem;
	font-weight: 500;
	margin-bottom: 10px;
	background: url(../img/icon_arrow_r.png) no-repeat left center;
	padding-left: 15px;
}
.groupLink li h3.nonLink,
.groupLink li h4.nonLink,
.groupLink li h5.nonLink {
	background: none;
	padding-left: 0;
}
.groupLink li h3 span,
.groupLink li h4 span,
.groupLink li h5 span {
	position: relative;
	color: #666;
}
.groupLink li a:hover{
	text-decoration: none !important;
	color: #333;
}
.groupLink li a:hover h3 span,
.groupLink li a:hover h4 span,
.groupLink li a:hover h5 span {
	color: #333;
}
.groupLink .linkGroup li a:hover {
	text-decoration: underline !important;
}
.groupLink li.anchor a:hover{
	text-decoration: underline;
}
.groupLink li a:hover h3 span:after,
.groupLink li a:hover h4 span:after,
.groupLink li a:hover h5 span:after {
	content: "";
	width: 100%;
	height: 2px;
	background: #666;
	position: absolute;
	bottom: 2px;
	left: 0;	
}
.groupLink li p {
    line-height: 1.7!important;
}

/*col2*/
ul.groupLink.col2 > li {
    float: left;
    width: 48%;
    margin-top: 58px;
    text-align: left;
}
ul.groupLink.col2 > li:nth-child(2n)  {
	margin-left: 4%;
}
ul.groupLink.col2 li:nth-child(-n+2) {
    margin-top: 0;
}


/* ボタンリンク
  ---------------------------------------------*/
ul.btnList li{
	float: left;
	width: 31.08333%;
	text-align: center;
	margin-right: 3.33333%;
}
ul.btnList li:nth-child(n+4) {
	margin-top: 30px;
}
ul.btnList li:nth-child(3n) {
	margin-right: 0;
}
ul.btnList li a {
	display: table;
	width: 100%;
	height: 80px;
	border: 1px solid #ccc;
	text-align: center;
	background: #fff url(../img/icon_arrow_r.png) no-repeat 93% center;
	font-size: 1.6rem;
	padding: 0 3% 0 0;
	transition: all .3s;
	-webkit-transition: all .3s;
}
ul.btnList li.txtLt a{
	text-align: left;
	padding: 0 0 0 6%;
}
ul.btnList li a span {
	display: table-cell;
	vertical-align: middle;
}
ul.btnList li a:hover {
	background-color: #f3f3f3;
	text-decoration: none !important;
}
ul.btnList li a br.tb {
	display: none;
}
/* table
  ---------------------------------------------*/
table {
	font-size: 1.4rem;
	width: 100%;
}
table th {
	font-weight: normal;
	vertical-align: middle;
	background: #efefef;
	padding: 20px 30px;
	text-align: left;
	border-top: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
	border-right: 1px solid #ddd;
}
table th:last-child {
	border-right: 0;
}
table th.ttl {
	background: #777;
	color: #fff;
	text-align: center;
}
table td {
	padding: 20px 30px;
	border-top: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
	border-left: 1px solid #ddd;
	border-right: 1px solid #ddd;
}
table caption {
	text-align: left;
	margin-bottom: 14px;
	font-size: 1.8rem;
	font-weight: bold;
}
table + p.attention {
	text-align: right;
	margin-top: 10px;
}
table + p.attention:before {
	content: "";
}
table.stripe tr:nth-child(odd) td,
table.stripe tr td.bgGray {
	background: #fafafa;
}
table.stripe tr td.bgWhite {
	background: #fff;
}
table.stripe02 th.ttl {
    padding: 10px 20px 13px;
    color: #222;
    font-size: 1.6rem;
    background-color: #EFEFEF !important;
}
table.stripe02 tr:nth-child(2n) th {
	background: #fff;
}
table.stripe02 tr:nth-child(2n+1) th {
	background: #FAFAFA;
}
table.stripe02 tr:nth-child(odd) td {
	background: #fafafa;
}
table.stripe02 tr th,
table.stripe02 tr td {
padding: 13px 30px 12px;
}
table.stripe02 tr:first-child th:last-child {
	border-right: none;
}
table.middle th,
table.middle td {
	padding: 13px 25px;
}

/* type02 */
table.type02 th {
	padding: 8px 20px;
}
table.type02 th.ttl {
    background: #777;
    color: #fff;
    font-size: 1.8rem;
    font-weight: 500;
    padding: 14px 10px;
	text-align: left;
}
table.type02 th.ttl.normal {
	font-size: 1.5rem;
	font-weight: normal;
	padding: 8px 20px;
}
table.type02 td {
	padding: 8px 20px;
}

/* type03 */
table.type03 th {
	padding: 8px 5px;
	text-align: center;
}
table.type03 th.ttl {
    background: #777;
    color: #fff;
    padding: 8px 5px;
}
table.type03 th.ttl:first-child {
	border-left: none;
	width: auto;
}
table.type03 td {
	padding: 8px 5px;
	text-align: center;
}
table.type03 td:first-child {
	border-left: none;
	width: auto;
}

/* notice */
table .notice { font-size: 1.2rem;}
table .red { color: #e60012;}

/* size */
table .cellWidth2L { width: 28%;}
table .cellWidthL { width: 22.5%;}
table .cellWidthM { width: 18%;}
table .cellWidthS { width: 11.666%;}

/* 均等幅 */
table.equality {
	table-layout: fixed;
}	
	
/* Link Arrow */
table .linkArrow {
	min-width: 140px;
	text-align: center;
	vertical-align: middle;
}
table .linkArrow a {
	padding-left: 1em;
	background: url(../img/icon_arrow_r.png) no-repeat left center;
}
table .linkArrow a:hover {
	text-decoration: underline;
}
table .middle {
	vertical-align: middle;
}
table .center {
	text-align: center;
}



/* list
  ---------------------------------------------*/
.list-left{
	float: left;
	width: 50%;
}
.list-right{
	float: right;
	width: 50%;
}
  
/* dot */
.listDot {
	font-size: 1.3rem;
}
.listDot.defaultsize {
	font-size: inherit;
}
.listDot > li {
	text-indent: -1em;
	padding-left: 1em;
}
.listDot > li:before {
	content: "・";
}
.listDot > li + li {
	margin-top: 8px;
}
            
 /* dot */
.listDot2 {
	font-size: 1.4rem;
}
.listDot2.defaultsize {
	font-size: inherit;
}
.listDot2 > li {
	text-indent: -1em;
	padding-left: 1em;
}
.listDot2 > li:before {
	content: "・";
}
.listDot2 > li + li {
	margin-top: 8px;
}
	
/* asterisk */
.listAst {
	font-size: 1.3rem;
}
.listAst > li {
	padding-left: 2em;
	position: relative;
}
.listAst > li:before {
	position: absolute;
	top: 0;
	left: 0;
}
.listAst > li:nth-child(1):before,
.listAst > li.n1:before {
	content: "※1";
}
.listAst > li:nth-child(2):before,
.listAst > li.n2:before {
	content: "※2";
}
.listAst > li:nth-child(3):before,
.listAst > li.n3:before {
	content: "※3";
}
.listAst > li:nth-child(4):before,
.listAst > li.n4:before {
	content: "※4";
}
.listAst > li:nth-child(5):before,
.listAst > li.n5:before {
	content: "※5";
}
.listAst > li:nth-child(6):before,
.listAst > li.n6:before {
	content: "※6";
}
.listAst > li:nth-child(7):before,
.listAst > li.n7:before {
	content: "※7";
}
.listAst > li:nth-child(8):before,
.listAst > li.n8:before {
	content: "※8";
}
.listAst > li:nth-child(9):before,
.listAst > li.n9:before {
	content: "※9";
}
.listAst > li:nth-child(10):before,
.listAst > li.n10:before {
	content: "※10";
}
.listAst > li:nth-child(11):before,
.listAst > li.n11:before {
	content: "※11";
}
.listAst > li:nth-child(12):before,
.listAst > li.n11:before {
	content: "※12";
}
.listAst > li:nth-child(13):before,
.listAst > li.n11:before {
	content: "※13";
}
.listAst > li:nth-child(14):before,
.listAst > li.n11:before {
	content: "※14";
}
.listAst > li:nth-child(15):before,
.listAst > li.n11:before {
	content: "※15";
}
.listAst > li:nth-child(16):before,
.listAst > li.n11:before {
	content: "※16";
}
.listAst > li:nth-child(17):before,
.listAst > li.n11:before {
	content: "※17";
}
.listAst > li:nth-child(18):before,
.listAst > li.n11:before {
	content: "※18";
}
.listAst > li:nth-child(19):before,
.listAst > li.n11:before {
	content: "※19";
}
.listAst > li:nth-child(20):before,
.listAst > li.n11:before {
	content: "※20";
}
.listAst > li + li {
	margin-top: 8px;
}
	
/* table */
.tableNote {
	margin-top: 10px;
	font-size: 1.2rem;
}
.tableNote > li + li {
	margin-top: 3px;
}

/* check */
.listCheck {
	font-size: 1.4rem;
}
.listCheck > li {
	background: url(../img/icon_list_check.png) no-repeat left 7px;
	background-size: 13px;
	padding-left: 20px;
}
.listCheck > li + li {
	margin-top: 8px;
}

/* note */
.listNote {
	font-size: 1.2rem;
}
.listNote > li {
	position: relative;
	padding-left: 1.7em;
	text-indent: -1.7em;
}
.listNote > li:before {
	content: "(\6CE8)";
}
.listNote > li + li {
	margin-top: 6px;
}
	
/* border */
.listBorder > li {
	padding: 15px 0;
}
.listBorder li + li {
	border-top: 1px solid #efefef;
}


/* 2column
  ---------------------------------------------*/
.col2 > * {
	width: 48.4%;
	float: left;
}
.col2 > *:nth-child(even) {
	float: right;
}
.col2 > *:nth-child(n+3) {
	margin-top: 40px;
}
.col2 img {
	width: 100%;
}

/* 3column
  ---------------------------------------------*/
.col3 > * {
	width: 31.5%;
	float: left;
	margin-right: 2.75%;
}
.col3 > *:nth-child(3n) {
	margin-right: 0;
}
.col3 img {
	width: 100%;
}

.col3.center {
	text-align: center;
}
.col3.center > * {
	float: none;
	display: inline-block;
	vertical-align: top;
	margin: 0 1.3%;
}

/* 4column
  ---------------------------------------------*/
.col4 > * {
	width: 23.75%;
	float: left;
	margin-right: 1.66666666666667%;
}
.col4 > *:nth-child(4n) {
	margin-right: 0;
}
.col4 img {
	width: 100%;
}

/* レイアウト
  ---------------------------------------------*/	
.imgLeft .image {
	float: left;
	width: 31.666666666666667%;
	margin-bottom: 20px;
}
.imgLeft .image img {
	float: left;
	width: 100%;
	margin: 7px 0;
}
.imgLeft .image figcaption {
	display: block;
	text-align: left;
	font-size: 1.3rem;
	color: #222;
	line-height: 1.5;
}
.imgLeft .text {
	margin-left: 34%;
}
.imgLeft .text p + p{
	margin-top: 1.8em;
}

.imgRight .image {
	float: right;
	width: 31.666666666666667%;
	margin-bottom: 20px;
}
.imgRight .image img {
	float: left;
	width: 100%;
	margin: 7px 0;
}
.imgRight .image figcaption {
	display: block;
	text-align: left;
	font-size: 1.3rem;
	color: #222;
	line-height: 1.5;
}
.imgRight .text {
	/*margin-right: 34%;*/
	width: 64%;
	float: left;
}
.imgRight .text p + p{
	margin-top: 1.8em;
}

.imgCenter {
	text-align: center;
}
.imgCenter .image {
	margin-bottom: 20px;
}
.imgCenter .image img {
	width: auto;
	max-width: 100%;
	margin: 7px 0;
}

.smallFigure {
	width: 70%;
}
.smallFigureCenter {
	margin: 0 auto;
}

/* テキスト回り込み */
.imgLeft.around .image {
	margin-right: 40px;
}
.imgLeft.around .text {
	margin-left: inherit;
}

.imgRight.around .image {
	margin-left: 40px;
}
.imgRight.around .text {
	float: none;
	width: auto;
	margin-right: inherit;
}

/* 小サイズ画像 */
.imgLeft.smallImg .image {
	width: auto;
	padding-right: 40px;
}
.imgLeft.smallImg .image img {
	width: auto;
	max-width: 210px;
}
.imgLeft.smallImg .text {
	width: auto;
	margin-left: 0;
}
.imgRight.smallImg .image {
	width: auto;
	padding-left: 40px;
}
.imgRight.smallImg .image img {
	width: auto;
	max-width: 210px;
}
.imgRight.smallImg .text {
	width: auto;
	float: none;
	margin-right: 0;
}
.imgLeft.smallImg .image figcaption,
.imgRight.smallImg .image figcaption {
	clear: both;
	max-width: 210px;
}

/* text
  ---------------------------------------------*/
.txtArwR {
	font-size: 1.6rem;
	font-weight: bold;
	color: #e60012;
}
.txtArwR span {
	background: url(../img/icon_arw01.png) no-repeat left 7px;
	background-size: 11px;
	padding-left: 20px;
}
.txtArwB {
	font-size: 1.6rem;
	font-weight: bold;
	color: #333;
}
.txtArwB span {
	background: url(../img/icon_arw02.png) no-repeat left 7px;
	background-size: 11px;
	padding-left: 20px;
}
.txtRit {
	text-align: right;
}
.txtRit > img {
	margin-left: 20px;
}
.txtCenter {
	text-align: center;
}
.txtCaption {
	font-size: 1.3rem;
}

/* text color
  ---------------------------------------------*/
.red {
	color: #e60012;
}
.txtRed {
	color: #e60012;
	font-weight: bold;
}
.txtyellow {
	color: #ffbc46;
	font-weight: bold;
}
	
/* text size
  ---------------------------------------------*/
.txtSmall {
	font-size: 1.2rem;
}
.txtMid {
	font-size: 1.6rem;
}
.txtLarge {
	font-size: 1.8rem;
}

/* attention
  ---------------------------------------------*/
.attention {
	font-size: 1.2rem !important;
	line-height: 1.8 !important;
	text-indent: -1em;
	padding-left: 1em;
}
.attention:before {
	content: "※";
}

/* 上付き注釈 */
#contents sup {
	top: -0.5em;
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

/* olDefault
  ---------------------------------------------*/
ol li {
	padding-left: 0.5em;
}
ol.olDefault {
	list-style: decimal outside;
	margin-bottom: 1.8em;
}
ol.olDefault > li {
	margin-top: 0.5em;
	margin-left: 1.5em;
	padding-left: 0.5em;
}
ol.olDefault > li ol {
	margin-left: 1.5em;
	margin-top: 5px;
}
ol.olDefault > li ol > li {
	list-style: lower-roman outside;
	padding-left: 0.5em;
}

/* pickupBg
  ---------------------------------------------*/
.pickupBg {
	padding: 170px 0 120px;
	position: relative;
}
.pickupBg .inner {
	position: relative;
	z-index: 1;
}
.pickupBg::before {
	content: "";
	width: 200%;
	height: 180%;
	margin: 12% -10% 0;
	background: #efefef;
	-webkit-transform-origin: left center;
	-ms-transform-origin: left center;
	transform-origin: left center;
	-webkit-transform: rotate(-7deg);
	-ms-transform: rotate(-7deg);
	transform: rotate(-7deg);
	position: absolute;
	top: 0;
	left: 0;
	z-index: 0;
}

/* faqList
  ---------------------------------------------*/
.faqList .faqBox {
	border-bottom: 1px dotted #aaa;
	padding: 0 0 20px;
	clear: both;
}
.faqList .faqBox {
	margin: 20px 0 0;
}
.faqList .faqBox > div {
	position: relative;
	min-height: 36px;
	padding: 7px 55px 0;
}
.faqList .faqBox > div + div {
	margin: 10px 0 0;
}
.faqList .faqBox > div .icon {
	display: block;
	border-radius: 50%;
	width: 36px;
	height: 36px;
	line-height: 36px;
	color: #fff;
	text-align: center;
	position: absolute;
	top: 0;
	left: 0;
}
.faqList .faqBox .question .icon {
	background: #777;
}
.faqList .faqBox .answer .icon {
	background: #cb151d;
}
.faqList .faqBox > div p {
	line-height: 1.6 !important;
	margin-bottom: 0 !important;
	margin-top: 20px;
}
.faqList .faqBox > div .icon + p {
	margin-top: 0;
}
.faqList .faqBox > div .attention {
	margin-top: 10px;
}
.faqList .faqBox > div p a {
	color: #e60012;
	text-decoration: underline;
}
.faqList .faqBox > div p a:hover {
	text-decoration: none !important;
}
.faqList .faqBox > div table {
	margin-top: 20px;
}
.faqList .faqBox > div table caption {
	font-size: 1.6rem;
	font-weight: 400;
}
.faqList .faqBox > div table th {
	padding: 10px 30px;
}
.faqList .faqBox > div table td {
	padding: 10px 30px;
}
.faqList .faqBox > div table .tel {
	pointer-events: none;
}

/* Youtube
  ---------------------------------------------*/
.videoplayer{
    max-width: 900px;
    margin: 0 auto;
    position: relative;
}
.videoplayer::before{
    content: "";
    display: block;
    padding-top: 56.25%;
}
.videoplayer.toyosato::before{
    display: inline;
}
.videoplayer iframe{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}


/* -----------------------------------------------------------------------------
  
  	余白設定
    
  ----------------------------------------------------------------------------- */
.mt100 {
	margin-top: 100px !important;
}
.mt90 {
	margin-top: 90px !important;
}
.mt80 {
	margin-top: 80px !important;
}
.mt70 {
	margin-top: 70px !important;
}
.mt60 {
	margin-top: 60px !important;
}
.mt50 {
	margin-top: 50px !important;
}
.mt45 {
	margin-top: 45px !important;
}
.mt40 {
	margin-top: 40px !important;
}
.mt35 {
	margin-top: 35px !important;
}
.mt30 {
	margin-top: 30px !important;
}
.mt25 {
	margin-top: 25px !important;
}
.mt20 {
	margin-top: 20px !important;
}
.mt15 {
	margin-top: 15px !important;
}
.mt10 {
	margin-top: 10px !important;
}
.mt5 {
	margin-top: 5px !important;
}
.mt0 {
	margin-top: 0px !important;
}
.mb50 {
	margin-bottom: 50px !important;
}
.mb45 {
	margin-bottom: 45px !important;
}
.mb40 {
	margin-bottom: 40px !important;
}
.mb35 {
	margin-bottom: 35px !important;
}
.mb30 {
	margin-bottom: 30px !important;
}
.mb25 {
	margin-bottom: 25px !important;
}
.mb20 {
	margin-bottom: 20px !important;
}
.mb15 {
	margin-bottom: 15px !important;
}
.mb10 {
	margin-bottom: 10px !important;
}
.mb5 {
	margin-bottom: 5px !important;
}
.mb0 {
	margin-bottom: 0px !important;
}
.ml15 {
	margin-left: 15px !important;
}

/* -----------------------------------------------------------------------------
  
  	404ページ
    
  ----------------------------------------------------------------------------- */
.notFound #pageTtl {
	padding-top: 3px;
}
.notFound .btnArea {
	margin-top: 50px;
	text-align: center;
}
.notFound .btnArea p {
	width: 32%;
	display: inline-block;
	margin: 0 10px;
}

}
@media print, screen and (max-width: 1240px) and (min-width: 751px) {
/* ボタンリンク
  ---------------------------------------------*/
ul.btnList li a br.tb {
	display: block!important;
}

.btnCol4 {
	width: 600px;
	margin: 0 auto;
}
.btnCol4 li {
	width: 300px;
}
.btnCol4 li .btn {
	width: 280px;
	margin: 0 10px;
}

}
@media print, screen and (max-width: 1240px) {

/* -----------------------------------------------------------------------------
  
  	下層共通
    
  ----------------------------------------------------------------------------- */
/* contents
  ---------------------------------------------*/
.sub #contents section .inner,
.sub #contents .section .inner {
	padding: 40px 15px;
}
.sub #contents section + section .inner,
.sub #contents .section + section .inner,		
.sub #contents .section + .section .inner,
.sub #contents section + .section .inner {
	padding: 20px 15px;
}
/* breadcrumb
  ---------------------------------------------*/
.breadcrumb ul {
	margin: 0 15px;
}
/* フッター上リンク
  ---------------------------------------------*/
#contentsBtmLink .inner {
	padding: 10% 15px 150px;
}
#contentsBtmLink.normal .inner {
	padding: 50px 30px 150px;
}

/* -----------------------------------------------------------------------------
  
  	共通パーツ
    
  ----------------------------------------------------------------------------- */
/* ttl
  ---------------------------------------------*/
#pageTtl {
	padding: 0 15px;
}

/* pickupBg
  ---------------------------------------------*/
.pickupBg .inner {
	padding-left: 15px !important;
	padding-right: 15px !important;
}

}
@media print, screen and (max-width: 1240px) and (min-width: 951px) {
/* -----------------------------------------------------------------------------
  
  	header
    
  ----------------------------------------------------------------------------- */
header .inner {
	width: 100%;
	padding: 17px 0 0 0;
}
header .inner .logo {
	width: 245px;
	margin-left: 15px;
}
header .inner .headerWidget {
	font-size: 1.2rem;
	margin-right: 30px;
}
header .inner .headerWidget .lang {
	margin-left: 30px;
}
header .inner .headerWidget .fontSize {
	margin: 0 12px 0 8px;
}
header .inner .headerWidget .search .searchBox.active {
	width: 220px;
}
header .inner .headerWidget .search .searchBox.active input {
	width: 220px;
}
header .inner #gnav > ul {
	height: 62px;
}
header .inner #gnav > ul > li {
	padding: 0 0.4%;
}
.fontL header .inner #gnav > ul > li {
	padding: 0 0.3%;
}
header .inner #gnav > ul > li > a {
	font-size: 1.5rem;
	padding: 25px 10px 23px;
}
.fontL header .inner #gnav > ul > li > a {
	padding: 20px 5px 22px;
}
header .inner #gnav > ul > li .subMenu .inner {
	width: 100%;
	padding: 30px 10px;
}
header .inner #gnav > ul > li .subMenu .inner > p {
	font-size: 1.6rem;
}
header .inner #gnav > ul > li .subMenu .inner > ul {
	margin: 0 -0.5%;
}
header .inner #gnav > ul > li .subMenu .inner > ul > li {
	width: 15.66666666666667%;
	margin: 0 0.5% 28px;
}

header .inner #gnav > ul > li#navIr .subMenu .inner > ul > li,
header .inner #gnav > ul > li#navResearch .subMenu .inner > ul > li,
header .inner #gnav > ul > li#navRecruit .subMenu .inner > ul > li {
	width: 24%;
}

header .inner #gnav > ul > li#navCsr .subMenu .inner > ul > li,
header .inner #gnav > ul > li#navCsr2 .subMenu .inner > ul > li,
header .inner #gnav > ul > li#navInsight .subMenu .inner > ul > li ,
header .inner #gnav > ul > li#navAdmovie .subMenu .inner > ul > li {
	width: 19%;
}

/* header .inner #gnav > ul > li#navBusiness .subMenu .inner > ul > li{
	width: 15.66666666666667%;
}*/
header .inner #gnav > ul > li .subMenu .inner > ul > li a span {
	/*font-size: 1.2rem;*/
}
header .inner #gnav > ul > li .subMenu.type2 .inner ul li dl dd ul li a {
	font-size: 1.2rem;
}


/* fixedHeader
  ---------------------------------------------*/
header.fixedHeader .inner {
	/*padding: 12px 0 0 15px;*/
}
header.fixedHeader .logo {
	/*padding-top: 12px;*/
}
header.fixedHeader .inner #gnav > ul > li {
	/*padding: 0 12px 30px;*/
}

	
/* -----------------------------------------------------------------------------
  
  	footer
    
  ----------------------------------------------------------------------------- */
footer .footerTop .inner {
	width: 100%;
}
footer .footerTop .inner .footerSearch {
	width: 50%;
	margin: 0 auto 40px auto;
    position: relative;
}
footer .footerTop .inner .footerSearch input {
	width: 100%;
}
footer .footerMid .inner {
	width: 100%;
	padding: 0 10px;
}
footer .footerMid .footerNav .column {
	margin-right: 3.33333333333333%;
}
footer .footerMid .footerNav .column.column1 {
	width: 15.5%;
}
footer .footerMid .footerNav .column.column2 {
	width: 15.5%;
}
footer .footerMid .footerNav .column.column3 {
	width: 15.5%;
}
footer .footerMid .footerNav .column.column4 {
	width: 23%;
}
footer .footerMid .footerNav .column.column5 {
	width: 16.5%;
}
footer .footerBtm .footerSubNav {
	padding: 30px 0 25px;
}
footer .footerBtm .footerSubNav ul li {
	margin: 8px 0;
}

/* -----------------------------------------------------------------------------
  
  	下層共通
    
  ----------------------------------------------------------------------------- */
/* pagenav
  ---------------------------------------------*/
#pageNav .inner {
	width: 100%;
	padding: 0 10px;
}
#pageNav .inner > ul > li {
	width: 25%;
}
#pageNav .inner > ul > li:first-child > a:before,
#pageNav .inner > ul > li:nth-child(5) > a:before,
#pageNav .inner > ul > li:nth-child(9) > a:before,
#pageNav .inner > ul > li:nth-child(13) > a:before,
#pageNav .inner > ul > li:nth-child(17) > a:before,
#pageNav .inner > ul > li:nth-child(21) > a:before{
	content: "";
	display: block;
	width: 1px;
	height: 20px;
	background: #ccc;
	position: absolute;
	left: 0px;
	top: 2px;
}
#pageNav .inner > ul > li:nth-child(7) a:before,
#pageNav .inner > ul > li:nth-child(19) a:before {
	content: none;
}
#pageNav .inner > ul > li:first-child .subPageNav,
#pageNav .inner > ul > li:nth-child(2) .subPageNav,
#pageNav .inner > ul > li:nth-child(3) .subPageNav,
#pageNav .inner > ul > li:nth-child(4) .subPageNav {
	top: 50px;
}
#pageNav .inner > ul > li:nth-child(5) .subPageNav,
#pageNav .inner > ul > li:nth-child(6) .subPageNav,
#pageNav .inner > ul > li:nth-child(7) .subPageNav,
#pageNav .inner > ul > li:nth-child(8) .subPageNav {
	top: 92px;
}
#pageNav .inner > ul > li:nth-child(9) .subPageNav,
#pageNav .inner > ul > li:nth-child(10) .subPageNav,
#pageNav .inner > ul > li:nth-child(11) .subPageNav,
#pageNav .inner > ul > li:nth-child(12) .subPageNav {
	top: 135px;
}
#pageNav .inner > ul > li:nth-child(13) .subPageNav,
#pageNav .inner > ul > li:nth-child(14) .subPageNav,
#pageNav .inner > ul > li:nth-child(15) .subPageNav,
#pageNav .inner > ul > li:nth-child(16) .subPageNav {
	top: 177px;
}
#pageNav .inner > ul > li:nth-child(17) .subPageNav,
#pageNav .inner > ul > li:nth-child(18) .subPageNav {
	top: 219px;
}
#pageNav .inner > ul > li .subPageNav ul {
	width: 100%;
	padding: 4px 10px;
}

/* 3カラム */
#pageNav.column3 .inner > ul > li:nth-child(4) > a:after {
	content: none;
}


#pageNav.pageNavFooter02 .inner > ul > li:first-child > a:before,
#pageNav.pageNavFooter02 .inner > ul > li:nth-child(5) > a:before,
#pageNav.pageNavFooter02 .inner > ul > li:nth-child(9) > a:before,
#pageNav.pageNavFooter02 .inner > ul > li:nth-child(13) > a:before,
#pageNav.pageNavFooter02 .inner > ul > li:nth-child(17) > a:before,
#pageNav.pageNavFooter02 .inner > ul > li:nth-child(21) > a:before{
	height: 41px;
}

	
}

body {
   -webkit-font-smoothing: antialiased;
}

/* -----------------------------------------------------------------------------
  
  	印刷設定
    
  ----------------------------------------------------------------------------- */
@media print {
	html,
	body,
	.inner {
		width: 1000px;
		margin: auto;
	}
	#pageNav,
	header,
	footer,
	.btn.print {
		display:none;
	}
	body #wrapper {
		padding-top: 10px;
	}
}