@charset "UTF-8";

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

	
	
body #wrapper {
	position: relative;
}
body.fixed {
	overflow: hidden;
	height: 100%;
	position: fixed;
}
#wrapper.fixed {
	position: fixed;
}
/* -----------------------------------------------------------------------------
  
  	header
    
  ----------------------------------------------------------------------------- */
header {
	height: 60px;
	width: 100%;
	background: #fff;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 500;
}
header.fixed {
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
}
header .inner .headerTop {
	width: 100%;
	padding-top: 19px;
	padding-left: 15px;
	margin: 0;
	height: 60px;
	position: relative;
	box-sizing: border-box;
	background: #fff;
	z-index: 601;
}
header .inner .logo img {
	width: 160px;
}
header .inner .navWrap {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	padding: 60px 0 0;
	z-index: 600;
	overflow-y: auto;
}
header .inner .navWrap #gnav {
	background: #222;
}
header .inner .navWrap #gnav > ul > li {
	background: #222;
	border-bottom: 1px solid #3b3b3b;
	font-size: 1.4rem;
	position: relative;
}
header .inner .navWrap #gnav > ul > li > a {
	display: block;
	color: #fff;
	padding: 23px 16px;
	background: #222;
	box-sizing: border-box;
}
header .inner .navWrap #gnav > ul > li > a span {
	position: relative;
}
header .inner .navWrap #gnav > ul > li#navTop > a,
header .inner .navWrap #gnav > ul > li#navContact > a {
	background: url(../img/sp/icon_arrow_nav.png) no-repeat right center;
	background-size: 58px;
}
header .inner .navWrap #gnav > ul > li .btnAcd {
	width: 60px;
	height: 60px;
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	background: url(../img/sp/icon_plus.png) no-repeat center center;
	background-size: 58px;
}
header .inner .navWrap #gnav > ul > li .btnAcd.active {
	background: url(../img/sp/icon_minus.png) no-repeat center center;
	background-size: 58px;
}
header .inner .navWrap #gnav > ul > li .subMenu {
	display: none;
	max-height: inherit!important;
}
header .inner .navWrap #gnav > ul > li .subMenu.active {
	display: block;
}
header .inner .navWrap #gnav > ul > li .subMenu .inner {
	padding: 0;
	height: auto;
}
header .inner .navWrap #gnav > ul > li .subMenu .inner p.subTop {
	display: none;
}
header .inner .navWrap #gnav > ul > li .subMenu .inner ul.level02 {
	/*padding: 5px 0;*/
	background: #444;
}
header .inner .navWrap #gnav > ul > li .subMenu .inner ul.level02 li {
	/*float: left;
	width: 50%;
	border-bottom: 1px solid #3b3b3b;*/
	background: #444;
	box-sizing: border-box;
}
header .inner .navWrap #gnav > ul > li#navBusiness .subMenu .inner ul.level02 .other li {
	background: #666;
}
header .inner .navWrap #gnav > ul > li .subMenu .inner ul.level02 li:nth-child(odd) {
	border-right: 1px solid #3b3b3b;
}
header .inner .navWrap #gnav > ul > li .subMenu .inner ul.level02 li.btm {
	border-bottom: none;
}
header .inner .navWrap #gnav > ul > li .subMenu .inner ul.level02 li figure {
	display: none;
}
header .inner .navWrap #gnav > ul > li .subMenu .inner ul.level02 li a {
	display: block;
	color: #fff;
	font-size: 1.3rem;
	padding: 15px 25px;
	line-height: 1.3;
	/*background: url(../img/sp/icon_arrow_nav.png) no-repeat right center;
	background-size: 54px;*/
}
header .inner .navWrap #gnav > ul > li .subMenu .inner ul.level02 li a figure {
	display: none;
}
header .inner .navWrap #gnav > ul > li .subMenu .inner ul.level02 li a span.line2 {
	display: inline-block;
	line-height: 1.3;
	padding: 9px 0 0;
}
header .inner .navWrap #gnav > ul > li .subMenu.type2 .inner > ul > li {
	width: 100%;
	border-bottom: none;
	border-right: none !important;
}
header .inner .navWrap #gnav > ul > li .subMenu.type2 .inner > ul > li dl:first-child dt {
	border-top: none !important;
}
header .inner .navWrap #gnav > ul > li .subMenu.type2 .inner > ul > li dl dt {
	display: block;
	color: #fff;
	line-height: 1.3;
	padding: 15px 25px;
	/*border-top: 1px solid #3b3b3b;*/
	box-sizing: border-box;
	position: relative;
}
header .inner .navWrap #gnav > ul > li .subMenu.type2 .inner > ul > li dl dt a {
	padding: 0;
}
header .inner .navWrap #gnav > ul > li .subMenu.type2 .inner > ul > li dl dt:after {
	content: "";
	width: 60px;
	height: 49px;
	display: block;
	background: url(../img/sp/icon_plus.png) no-repeat center center;
	background-size: 58px;
	position: absolute;
	top: 0;
	right: 0;
}
header .inner .navWrap #gnav > ul > li .subMenu.type2 .inner > ul > li dl dt.active:after {
	content: "";
	width: 60px;
	height: 49px;
	display: block;
	background: url(../img/sp/icon_minus.png) no-repeat right center;
	background-size: 58px;
	position: absolute;
	top: 0;
	right: 0;
}
header .inner .navWrap #gnav > ul > li .subMenu.type2 .inner > ul > li dl dd {
	display: none;
}
header .inner .navWrap #gnav > ul > li .subMenu.type2 .inner > ul > li dl dd.active {
	display: block;
}
header .inner .navWrap #gnav > ul > li .subMenu.type2 .inner > ul > li dl dd ul.level03 {
	background: #666;
	padding: 5px 0;
}
header .inner .navWrap #gnav > ul > li .subMenu.type2 .inner > ul > li dl dd ul.level03 li {
	/*float: left;
	width: 50%;
	border-bottom: 1px solid #888;*/
	background: #666;
	box-sizing: border-box;
}
/*header .inner .navWrap #gnav > ul > li .subMenu.type2 .inner > ul > li dl dd ul.level03 li:nth-child(odd) {
	border-right: 1px solid #888;
}*/
/*header .inner .navWrap #gnav > ul > li .subMenu.type2 .inner > ul > li dl dd ul.level03 li.btm {
	border-bottom: none;
}*/
header .inner .navWrap #gnav > ul > li .subMenu.type2 .inner > ul > li p a {
	display: block;
	color: #fff;
	font-size: 1.4rem;
	padding: 15px 25px;
	line-height: 1.3;
	/*border-top: 1px solid #3b3b3b;
	background: url(../img/sp/icon_arrow_nav.png) no-repeat right center;
	background-size: 58px;*/
}

header .inner .navWrap #gnav > ul > li .subMenu.type2 .inner > div.navIrOther {
	width: 100%;
	border-bottom: none;
	border-right: none !important;
}
header .inner .navWrap #gnav > ul > li .subMenu.type2 .inner > div.navIrOther dl dd ul.level03 {
	background: #666;
	padding: 5px 0;
}
header .inner .navWrap #gnav > ul > li .subMenu.type2 .inner > div.navIrOther dl dd ul.level03 li {
	/*float: left;
	width: 50%;
	border-bottom: 1px solid #888;*/
	background: #666;
	box-sizing: border-box;
}
header .inner .navWrap #gnav > ul > li .subMenu.type2 .inner > div.navIrOther dl dd ul.level03 li a {
display: block;
    color: #fff;
    font-size: 1.4rem;
    padding: 15px 25px;
    line-height: 1.3;
}
header .inner .navWrap #gnav > ul > li .subMenu.type2 .inner > div.navIrOther dl dd ul.level03 li a.gnavbnr {
	padding-left: 15px;
	text-align: center;
}
header .inner .navWrap #gnav > ul > li .subMenu.type2 .inner > div.navIrOther dl dd ul.level03 li a.gnavbnr img {
	width: 80%;
}


header .inner .navWrap #gnav > ul > li .subMenu .inner ul.level02 li.navResearchReport > a,
header .inner .navWrap #gnav > ul > li .subMenu .inner ul.level02 li.navResearchPocket > a,
header .inner .navWrap #gnav > ul > li .subMenu .inner ul.level02 li.navResearchAccess > a{
	display: none !important;
}
header .inner .navWrap #gnav > ul > li .subMenu.type2 .inner > ul > li p a.blank{
	background: none;
}
header .inner .navWrap #gnav > ul > li .subMenu.type2 .inner > ul > li p a.blank span{
	padding:0 18px 4px 0;
	background: url(../img/sp/icon_blank_w.png) no-repeat right center;
	background-size: 10px;
}

/* type3 */
header .inner #gnav > ul > li .subMenu.type3 .inner ul li.topicBnr figure {
	display: block;
	margin-bottom: 0;
}
header .inner #gnav > ul > li .subMenu.type3 .inner ul li.topicBnr a img {
	max-width: 100%;
}

header .inner .navWrap #gnav > ul > li .subMenu .inner ul.level02 li.navResearchPocket dl dd ul.level03 li a.pdf span{
	padding:0 20px 4px 0;
	background: url(../img/icon_pdf_w.png) no-repeat right center !important;
}

header .inner #gnav > ul > li#navIr .navIrOther,
header .inner #gnav > ul > li#navCsr .navCsrOther,
header .inner #gnav > ul > li#navCsr .navCsrOther ul,
header .inner #gnav > ul > li#navCsr .navCsrOther ul li {
	background: #444;
}
header .inner #gnav > ul > li#navIr .navIrOther	dd ul li a,
header .inner #gnav > ul > li#navCsr .navCsrOther dd ul li a {
	display: block;
    color: #fff;
    font-size: 1.4rem;
    padding: 15px 25px;
    line-height: 1.3;
}
header .inner #gnav > ul > li#navCsr .navCsrOther dd {
	display: block !important;
}

header .inner #gnav > ul > li#navCsr2 .navCsrTop{
	display: block;
    background-color: #444;
}
header .inner #gnav > ul > li#navCsr2 .navCsrTop a{
    display: block;
    color: #fff;
    font-size: 1.3rem;
    padding: 15px 25px;
    line-height: 1.3;
    background: none;
}
header .inner #gnav > ul > li#navCsr2 .navCsrTop a::after{
	content: "";
	display: inline-block;
	width: 9px;
	height: 8px;
	margin-left: 8px;
	background: url(../img/icon_blank02.png) no-repeat right center;
	vertical-align: middle;
}

header .inner .navWrap .headerWidgetSP {
	background: #333;
	padding: 30px 0;
	/*display: none;*/
}
header .inner .navWrap .headerWidgetSP .lang {
	width: 90%;
	margin: 0 5% 20px;
}
header .inner .navWrap .headerWidgetSP .lang li {
	width: 33.333%;
	float: left;
	background: #fff;
	box-sizing: border-box;
}
header .inner .navWrap .headerWidgetSP .lang li:nth-child(2) {
	border-left: 1px solid #333;
	border-right: 1px solid #333;
}
header .inner .navWrap .headerWidgetSP .lang li.active {
	background: #999;
}
header .inner .navWrap .headerWidgetSP .lang li a {
	display: block;
	line-height: 40px;
	text-align: center;
	font-size: 1.2rem;
}
header .inner .navWrap .headerWidgetSP .lang li.active a {
	color: #fff;
}
header .inner .navWrap .headerWidgetSP .search {
	width: 90%;
	margin: 0 5%;
	overflow: hidden;
	position: relative;
}
header .inner .navWrap .headerWidgetSP .search input {
	width: 100%;
	height: 40px;
	line-height: 40px;
	padding: 0 10px 0 37px;
	border: none;
	box-sizing: border-box;
	/*background: #fff url(../img/sp/icon_search_b.png) no-repeat 12px center;
	background-size: 18px;*/
	
	-webkit-transform: translate(-20px,0) scale(0.8);
    transform: translate(-10%,0) scale(0.8);
    width: 125%;
    height: 55px;
    line-height: 35px;
    padding: 10px 10px 10px 40px;
    box-sizing: border-box;
}
header .inner .navWrap .headerWidgetSP .search input[type="submit"] {
	width: 40px;
	height: 55px;
	position: absolute;
	top: 0;
	left: 0;
	text-indent: -999em;
	background: url(../img/sp/icon_search_b.png) no-repeat center center;
	background-size: 18px;
	padding: 0;
}
header .inner .navWrap .closeBtn {
	width: 150px;
	height: 40px;
	margin: 25px auto;
	color: #fff;
	box-sizing: border-box;
	text-align: center;
	border: 1px solid #fff;
	cursor: pointer;
}
header .inner .navWrap .closeBtn span {
	font-size: 1.3rem;
	line-height: 40px;
	padding-left: 20px;
	background: url(../img/sp/icon_cross.png) no-repeat left center;
	background-size: 10px;
	margin-left: -5px;
}
.overlay {
	display: none;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.6);
	position: fixed;
	top: 0;
	z-index: 450;
}
	
header > .inner > .headerTop > .headerWidget {
	display: none;
}
	
.navBusinessGlobal.sp {
	display: block !important;
}
.navBusinessGlobal.pc {
	display: none !important;
}

/* ハンバーガーメニュー
  ---------------------------------------------*/
#gnavBtn {
	position: absolute;
	top: 18px;
	right: 18px;
}
#gnavBtn a,  #gnavBtn a span {
	display: inline-block;
	transition: all .3s;
	box-sizing: border-box;
}
#gnavBtn a {
	position: relative;
	width: 27px;
	height: 23px;
}
#gnavBtn a span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 3px;
	background-color: #222;
}
#gnavBtn a span:nth-of-type(1) {
	top: 0;
}
#gnavBtn a span:nth-of-type(2) {
	top: 10px;
}
#gnavBtn a span:nth-of-type(3) {
	bottom: 0;
}
#gnavBtn.active a span:nth-of-type(1) {
	-webkit-transform: translateY(10px) rotate(-45deg);
	transform: translateY(10px) rotate(-45deg);
}
#gnavBtn.active a span:nth-of-type(2) {
	opacity: 0;
}
#gnavBtn.active a span:nth-of-type(3) {
	-webkit-transform: translateY(-10px) rotate(45deg);
	transform: translateY(-10px) rotate(45deg);
}
/* -----------------------------------------------------------------------------
  
  	footer
    
  ----------------------------------------------------------------------------- */
footer {
	background: #212121;
	position: relative;
	z-index: 300;
}
footer .inner {
	width: 100%;
}
footer #pagetop {
	position: absolute;
	right: 10px;
	top: inherit;
	z-index: 400;
	margin-top: -60px !important;
}
footer #pagetop.fixed {
	position: fixed;
	right: 10px;
	bottom: 10px;
	top: inherit;
}
footer #pagetop a {
	opacity: 0.8;
}
footer #pagetop img {
	width: 50px;
	height: auto;
}
footer .footerTop .inner {
	padding: 30px 0 25px;
}
footer .footerTop .inner .footerSearch {
	margin: 0 5% 25px;
	position: relative;
}
footer .footerTop .inner .footerSearch input {
	width: 100%;
	height: 45px;
	line-height: 45px;
	padding: 0 10px 0 35px;
	border: none;
	border-radius: 3px;
	box-sizing: border-box;
	background: #fff;
	
	-webkit-transform: translate(-20px,0) scale(0.8);
    transform: translate(-10%,0) scale(0.8);
    width: 125%;
    height: 55px;
    line-height: 35px;
    padding: 10px 10px 10px 35px;
    box-sizing: border-box;
}
footer .footerTop .inner .footerSearch input[type="submit"] {
	width: 40px;
    height: 55px;
    position: absolute;
    top: 0;
    left: 0;
    text-indent: -999em;
    background: url(../img/sp/icon_search_b.png) no-repeat center center;
    background-size: 18px;
	padding: 0;
}
footer .footerTop .inner ul {
	margin: 0 5%;
	text-align: center;
}
footer .footerTop .inner ul li {
	display: inline-block;
    margin: 0 8px;
    min-width: 0;
}
footer .footerTop .inner ul li a {
	color: #999;
	font-size: 1rem;
}
footer .footerTop .inner ul li a img {
	width: 35px;
	float: left;
}
footer .footerTop .inner ul li a span {
	display: none;
	line-height: 1.4;
	padding-top: 0;
}
footer .footerMid .footerNavSP {
	padding-bottom: 10px;
	width: 90%;
	margin: 0 auto;
}
footer .footerMid .footerNavSP ul {
	margin: 0 -2%;
}
footer .footerMid .footerNavSP ul li {
	width: 46%;
	float: left;
	margin: 0 2%;
	border-bottom: 1px solid #3b3b3b;
}
footer .footerMid .footerNavSP ul li:first-child, footer .footerMid .footerNavSP ul li:nth-child(2) {
	border-top: 1px solid #3b3b3b;
}
footer .footerMid .footerNavSP ul li a {
	color: #fff;
	font-size: 1.2rem;
	line-height: 40px;
	display: block;
}
footer .footerBtm {
	border-bottom: 1px solid #3b3b3b;
}
footer .footerBtm .footerSubNav {
	/*max-width: 360px;
	margin: 0 auto;*/
	padding: 20px 0 15px;
}
footer .footerBtm .footerSubNav ul {
	text-align: center;
}
footer .footerBtm .footerSubNav ul li {
	display: inline-block;
	padding: 0 6px;
	margin-bottom: 13px;
	position: relative;
}
/*footer .footerBtm .footerSubNav ul li:nth-child(2):before {
	content: "";
	width: 1px;
	height: 20px;
	background: #3b3b3b;
	display: block;
	position: absolute;
	top: -3px;
	left: 0;
}
footer .footerBtm .footerSubNav ul li:nth-child(2):after, footer .footerBtm .footerSubNav ul li:nth-child(4):after {
	content: "";
	width: 1px;
	height: 20px;
	background: #3b3b3b;
	display: block;
	position: absolute;
	top: -3px;
	right: 0;
}*/
footer .footerBtm .footerSubNav ul li:after {
	content: "";
	width: 1px;
	height: 20px;
	background: #3b3b3b;
	display: block;
	position: absolute;
	top: -3px;
	right: -2px;
}
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 .copyright {
	text-align: center;
	padding: 15px 0;
}
footer .copyright small {
	color: #999;
	font-size: 1.1rem;
	font-weight: 200;
}

footer .footerMid .footerNav {
	display: none;
}
footer .annotation {
	padding: 20px 0;
	text-align: center;
	color: #666;
	font-size: 1.2rem;
}
	
#container.fixed {
	padding-top: 60px;	
}
/* -----------------------------------------------------------------------------
  
  	下層共通
    
  ----------------------------------------------------------------------------- */
#container {
	padding: 60px 0 70px;
}
/* pagenav
  ---------------------------------------------*/
#pageNav {
	display: none;
}

/* pickupBg
	---------------------------------------------*/
.pickupBg {
	padding: 100px 0 50px;
}
#pickup .inner {
	padding-left: 15px;
	padding-right: 15px;
}


}

@media screen and (max-width: 750px) {
html, body {
	width: 100%;
	height: 100%;
	background: #fff;
	color: #333;
}
#wrapper {
	overflow: hidden;
}

.pc {
	display: none !important;
}

/* -----------------------------------------------------------------------------
  
  	main
    
  ----------------------------------------------------------------------------- */
main {
	/*padding: 60px 0 70px;*/
}
/* -----------------------------------------------------------------------------
  
  	下層共通
    
  ----------------------------------------------------------------------------- */
  /* contents
  ---------------------------------------------*/
.sub #contents {
	font-size: 1.4rem;
}
.sub #contents img {
	width: 100%;
	height: auto;
}
.sub #contents section,
.sub #contents .section {
	margin-bottom: 20px;
}
.sub #contents section .inner,
.sub #contents .section .inner {
	padding: 15px 15px 5px;
}
.sub #contents section + section .inner,
.sub #contents .section + section .inner,	
.sub #contents .section + .section .inner,
.sub #contents section + .section .inner {
	padding: 10px 15px 5px;
}

.sub #contents section .inner p,
.sub #contents .section .inner p {
	line-height: 1.8;
	margin-bottom: 1.5em;
}

/* アンカー飛び先セクション */
.sub #contents .anchorSection {
	padding-top: 60px;
	margin-top: -10px !important;
}

/* breadcrumb
  ---------------------------------------------*/
.breadcrumb ul {
	margin: 0 15px;
	padding: 10px 0;
}
.breadcrumb ul li {
	float: left;
	padding-right: 20px;
}
.breadcrumb ul li a {
	font-size: 1.1rem;
	display: block;
	position: relative;
}
.breadcrumb ul li a:after {
	content: "";
	display: block;
	background: url(../img/icon_arrow_b.png) no-repeat;
	background-size: 4px;
	width: 4px;
	height: 8px;
	position: absolute;
	top: 6px;
	right: -12px;
}
.breadcrumb ul li span {
	font-size: 1.1rem;
	color: #777;
}

/* 第三階層　ローカルナビ
  ---------------------------------------------*/
.lv3Nav {
	margin: 40px 15px;
}
.lv3Nav li {
	position: relative;
	float: left;
	width: 50%;
	font-size: 1.4rem;
	border-left: 1px solid #ccc;
	display: table-cell;
	line-height: 1.4;
}
.lv3Nav.odd li:last-child {
	border-right: 1px solid #ccc;
}
.lv3Nav li:after {
	content: "";
	width: 99%;
	height: 1px;
	background: #ccc;
	position: absolute;
	top: -5px;
	left: 0;
}
.lv3Nav.odd li:nth-last-child(2):before {
	content: "";
	width: 99%;
	height: 1px;
	background: #ccc;
	position: absolute;
	top: inherit;
	bottom: -5px;
	left: 0;
}
.lv3Nav li:first-child:after,
.lv3Nav li:first-child + li:after {
	height: 0;
}
.lv3Nav li:nth-child(even):after {
	left: inherit;
	right: 0;
}
.lv3Nav li:nth-child(even) {
	border-right: 1px solid #ccc;
}
.lv3Nav li:nth-child(n+3) {
	margin-top: 10px;
}
.lv3Nav li a {
	padding: 3px 18px;
	display: table-cell;
	vertical-align: middle;
	width: 500px;
}
.lv3Nav li a span {
	font-size: 1.3rem;
	padding-left: 14px;
	background: url(../img/sp/icon_arrow_r02.png) no-repeat left center;
	background-size: 7px;
	line-height: 1.4;
	display: inline-block;
}
.lv3Nav li.current a span{
	/*border-bottom: 1px solid #e50112;*/
	color: #e50112;
	}
/* リンクグループ
  ---------------------------------------------*/
ul.linkGroup li {
	position: relative;
	float: left;
	height: 42px;
	padding-right: 8px;
	margin-right: 8px;
	margin-bottom: 12px;
	display:table;
}
ul.linkGroup li.w23 {
	width: 23%;
}
ul.linkGroup li.w25 {
	width: 25%;
}
ul.linkGroup li.w27 {
	width: 27%;
}
ul.linkGroup li.w29 {
	width: 29%;
}
ul.linkGroup li.w35 {
	width: 35%;
}
ul.linkGroup li:after {
	content: "";
	width: 1px;
	height: 18px;
	background: #ddd;
	position: absolute;
	top: 50%;
	margin-top: -9px;
	right: 0;
}
ul.linkGroup li a {
	display:table-cell;
	vertical-align:middle;
}
ul.linkGroup li a span {
    font-size: 1.2rem;
    padding-left: 13px;
    box-sizing: border-box;
    display: block;
    background: url(../img/sp/icon_arrow_r.png) no-repeat left center;
    background-size: 6px;
    line-height: 1.3;
}
ul.linkGroup li a.iconPdf {
	background-image: url(../img/sp/icon_arrow_r.png);
	background-size: 6px;
	background-repeat: no-repeat;
	background-position: left center;
	padding-left: 10px;
	font-size: 1.2rem;
}	
ul.linkGroup li a.iconPdf span {
	background-image: url(../img/sp/icon_pdf_b.png);
	background-size: 10px;
	background-repeat: no-repeat;
	background-position: right center;
	padding-left: 0;
}	
/*padding-right: 20px;
    background: url(../img/sp/icon_pdf_b.png) no-repeat right center;
    background-size: 13px;
    margin-right: 4px;*/

/* 2カラム */
.listCol2, .listCol3, .listCol4 {
	margin: 0 -2%;
}
.listCol2 li, .listCol3 li, .listCol4 li {
	float: left;
	width: 46%;
	margin: 0 2% 15px;
	text-align: center;
}
.listCol2 li:nth-child(2n+1), .listCol3 li:nth-child(2n+1), .listCol4 li:nth-child(2n+1) {
	clear: both;
}
.listCol2 li figure, .listCol3 li figure, .listCol4 li figure {
	margin-bottom: 12px;
}
.listCol2 li figure img, .listCol3 li figure img, .listCol4 li figure img {
	width: 100%;
}
.listCol2 li span, .listCol3 li span, .listCol4 li span {
	font-size: 1.3rem;
	padding-left: 10px;
	background: url(../img/sp/icon_arrow_r.png) no-repeat left center;
	background-size: 6px;
}
.listCol2 li.pdf span, .listCol3 li.pdf span, .listCol4 li.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;
}

/* 扉ページリンク
  ---------------------------------------------*/
.groupLink > li {
	width: 100%;
	height: auto !important;
	margin: 0 0 20px !important;
	overflow: hidden;
}
.groupLink > li:last-child {
	margin: 0 !important;
}
.groupLink li figure {
	margin-bottom: 14px !important;
}
.groupLink li figure img {
	width: 100%;
}
.groupLink li h3,
.groupLink li h4,
.groupLink li h5 {
	font-size: 1.8rem;
	font-weight: 500;
	margin-bottom: 10px;
	background: url(../img/sp/icon_arrow_r.png) no-repeat left center;
	background-size: 6px;
	padding-left: 13px;
}
.groupLink li h3.nonLink,
.groupLink li h4.nonLink,
.groupLink li h5.nonLink {
	background: none;
	padding-left: 0;
}


/* フッター上リンク
  ---------------------------------------------*/
#contentsBtmLink {
	position: relative;
	overflow: hidden;
	padding: 80px 0 20px;
	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 15px;
	text-align: center;
	position: relative;
	z-index: 2;
	padding: 10% 0 50px;
}
#contentsBtmLink.normal {
	padding: 0 0 60px;
	margin-bottom: -70px;
	background: #efefef;
}
#contentsBtmLink.normal:before {
	content: none;
}
#contentsBtmLink.normal .inner {
	padding: 30px 15px 40px !important;
	margin: 0;
}
#contentsBtmLink figure {
	margin-bottom: 10px;
}
#contentsBtmLink li {
	margin-bottom: 5px;
}

/* お知らせ
  ---------------------------------------------*/
/* type01 */
.newsType01 .newsList ul li {
	position: relative;
	border-bottom: 1px dotted #ccc;
	padding-bottom: 15px;
}
.newsType01 .newsList ul li + li {
	margin-top: 15px;
}
.newsType01 .newsList ul li span {
	font-size: 1.4rem;
	display: inline-block;
}
.newsType01 .newsList ul li .date {
	color: #666;
	font-size: 1.3rem;
}
.newsType01 .newsList ul li .date .tag {
	width: 100px;
	margin-left: 20px;
	text-align: center;
	background: #666;
	font-size: 1.2rem;
	color: #fff;
}
.newsType01 .newsList ul li a {
	font-size: 1.4rem;
	display: block;
	margin-top: 7px;
}
	
/* type02 */
.newsType02 .newsList {
	border-bottom: 1px dotted #ccc;
	margin-top: 10px;
}
.newsType02 .newsList ul li {
	padding: 10px 0 15px;
	border-top: 1px dotted #ccc;
}
.newsType02 .newsList ul li {
	font-size: 1.4rem;
	position: relative;
}
.newsType02 .newsList ul li .date {
	display: block;
	color: #666;
}
.newsType02 .newsList ul li .text {
	display: block;
}
.newsType02 .newsList ul li .text span {
	margin-right: 4px;
}
.newsType02 .newsList ul li a.iconPdf span {
	padding-right: 20px;
	background: url(../img/sp/icon_pdf_b.png) no-repeat right center;
	background-size: 13px;
}

/* type03 */
.newsType03 .newsList {
	padding: 0;
	border-bottom: none;
}
.newsType03 .newsList ul li {
	padding: 10px 0 15px;
	border-bottom: 1px solid #ddd;
	border-top: none;
}
.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 a.iconPdf span {
	padding-right: 20px;
	background: url(../img/sp/icon_pdf_b.png) no-repeat right center;
	background-size: 13px;
	margin-right: 4px;
}
.newsType03 .newsList ul li .text a {
	margin-left: 0;
}

/* type04 */
.newsType04 .newsHead,
.newsType07 .newsHead {
	position: relative;
	border-bottom: 1px solid #ccc;
	padding: 0 0 15px;
}
.newsType04 .newsHead .ttl,
.newsType07 .newsHead .ttl {
	font-size: 2.4rem;
	font-weight: 400;
	display: inline-block;
	margin-right: 10px;
}
.newsType04 .newsHead .more,
.newsType07 .newsHead .more {
	display: inline-block;
	position: relative;
	top: 4px;
	left: 4px;
}
.newsType04 .newsHead .more li,
.newsType07 .newsHead .more li {
	float: left;
	padding-left: 15px;
	margin-right: 15px;
}
.newsType04 .newsHead .more li.rss,
.newsType07 .newsHead .more li.rss {
	background: url(../img/sp/icon_rss.png) no-repeat left center;
	background-size: 12px;
}
.newsType04 .newsHead .more li.list,
.newsType07 .newsHead .more li.list {
	padding-left: 10px;
	background: url(../img/sp/icon_arrow_r.png) no-repeat left center;
	background-size: 6px;
}
.newsType04 .newsHead .more li a,
.newsType07 .newsHead .more li a {
	font-size: 1.2rem;
}
.newsType04 .newsList,
.newsType07 .newsList {
	padding: 0;
	border-bottom: none;
}
.newsType04 .newsList ul li,
.newsType07 .newsList ul li {
	padding: 15px 0;
	border-bottom: 1px dotted #ddd;
	border-top: none;
}
.newsType04 .newsList ul li + li,
.newsType07 .newsList ul li + li {
	margin-top: 0;
}
.newsType04 .newsList ul li .tagWrap,
.newsType07 .newsList ul li .tagWrap {
	margin: 0 0 0 -10px;
}
.newsType04 .newsList ul li .tagWrap .tag,
.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;
}
.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 .date,
.newsType07 .newsList ul li .date {
	display: block;
	position: relative;
}
.newsType04 .newsList ul li .date .tag,
.newsType07 .newsList ul li .date .tag {
	margin-left: 20px;
	text-align: center;
	background: #666;
	font-size: 1.2rem;
	color: #fff;
	width: auto;
	padding: 0 12px;
}
.newsType04 .newsList ul li .text,
.newsType07 .newsList ul li .text {
	display: block;
	margin-top: 5px;
}
.newsType04 .newsList ul li a.iconPdf span,
.newsType07 .newsList ul li a.iconPdf span {
	padding-right: 20px;
	background: url(../img/sp/icon_pdf_b.png) no-repeat right center;
	background-size: 13px;
	margin-right: 4px;
}
.newsType04 .newsList ul li .text a,
.newsType07 .newsList ul li .text a {
	margin-left: 0;
}

/* 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;
}


/* .pager
---------------------------------------------*/
.pager {
	text-align:center;
	font-size: 0;
	padding: 0 50px;
	position: relative;
	margin: -30px 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.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: 0;
}
.pager li.next {
	right: 0;
}
.pager li.prev span,
.pager li.next span {
	text-indent: -9999px;
}
.pager li.prev span {
	background: url(../img/sp/icon_arrow_l.png) center center no-repeat;
	background-size: 6px;
}
.pager li.next span {
	background:url(../img/sp/icon_arrow_r.png) no-repeat center center;
	background-size: 6px;
}
.pager li.hidden {
	visibility: hidden;
}
.pager li.more {
	border: 1px solid #fff;
}
.pager li.more span {
	width: 30px;
}



/* 資料リスト
---------------------------------------------*/
.reportList .thumb {
	max-width: 250px;
	margin: 30px auto 0;
}
.reportList .thumb img {
	width: 100%;
}
.reportList table {
	margin-bottom: 20px;
}
.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.6rem;
	display: block;
}
.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.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;
}
/* ebook */
.reportList ul li a.icon_ebook span {
	padding-right: 24px;
	background: url(../img/icon_ebook.png) right center no-repeat;
}

.reportList .btnWrap .btn {
	margin: 0 !important;
}
.reportList .btnWrap .btn + .btn {
	margin-top: 15px !important;
}
	
/* 資料バックナンバー
---------------------------------------------*/
.coverList {
	margin: 0 -15px;
}
.coverList li {
	float: left;
	width: 40%;
	padding: 0 3% 40px;
	margin: 10px 0 10px;
	text-align: center;
	box-sizing: unset;
	position: relative;
}
.coverList li:nth-child(odd) {
	padding-left: 7%;
	float: left;
}
.coverList li:nth-child(even) {
	padding-right: 7%;
	float: right;
}
.coverList li:nth-child(odd):before {
	content: "";
	width: 200%;
	height: 120px;
	background: url(../img/bg_shadow.png) repeat-x left bottom;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: -1;
}
.coverList li figure {
	margin-bottom: 8px;
	background: #fff;
}
.coverList li img {
	width: 100%;
	height: auto;
}

/* 絞り込みリスト
---------------------------------------------*/
.searchSort {
	margin: 20px 0 30px;
}
.searchSort .title {
	float: none;
	margin: 0 0 15px!important;
	padding: 0;
	width: auto;
	text-align: left;
	line-height: 1.2;
	position: relative;
	top: -2px;
	font-size: 1.5rem;
}
.searchSort .checkAll {
	padding-bottom: 5px;
}
.searchSort dl {
	clear: both;
	margin: 15px 0 0;
	padding: 15px 0 0;
	border-top: 1px solid #ddd;
}
.searchSort dl dt {
	float: none;
	margin: 0 0 10px;
	width: auto;
	text-align: left;
}
.searchSort dl dd {
	margin: 0;
}
.searchSort dl dd ul {
	margin: -10px 0 0 -20px;
}
.searchSort dl dd ul li {
	float: left;
	margin: 10px 0 0 20px;
	width: auto !important
}
	
/* 年月絞り込み */
.yearBox .selectBox {
	float: none;
	width: 100%;
}
.yearBox .selectBox select {
	font-size: 1.6rem;
	padding: 0 40px 0 15px;
	width: 100%;
	background: url(../img/icon_arrow_btm_r.png) no-repeat 96% center; 
}
.yearBox .anchorList {
	width: auto;
	float: none;
	margin: 35px 0;
}
.yearBox .anchorList li {
	padding: 0;
	margin: 5px 0;
}
.yearBox .anchorList li a {
	padding: 3px 18px;
}
.yearBox .anchorList li.notyet a {
	cursor: default;
	color: #ccc;
}
.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.blank {
	padding-right: 17px;
	background: url(../img/icon_blank02.png) no-repeat right center;
}
a.link {
	position: relative;
}
a.link:before {
	content: "";
	display: inline-block;
	width: 7px;
	height: 11px;
	margin-right: 7px;
	background: url(../img/sp/icon_arrow_r02.png) no-repeat left center;
	background-size: 7px;
}
a.link.white{
	color: #fff;
}
a.link.white:before {
	content: "";
	display: inline-block;
	width: 7px;
	height: 11px;
	margin-right: 7px;
	color: #fff;
	background: url(../img/icon_arrow_w.png) no-repeat left center;
}
a.blankRed {
	color: #e60012;
	padding: 0 15px 0 0;
	background: url(../img/sp/icon_blank_red.png) no-repeat right 7px;
	background-size: 9px;
	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 {
	padding-right: 20px;
	background: url(../img/sp/icon_pdf_b.png) no-repeat right center;
	background-size: 13px;
	margin-right: 4px;
}
a.iconMovie span {
	margin-right: 4px;
	padding-right: 20px;
	background: url(../img/sp/icon_movie.png) no-repeat right center;
	background-size: 13px;
}

/* btn
  ---------------------------------------------*/
.btn {
	border: 1px solid #ccc;
	width: 200px;
}
.btn a {
	font-size: 1.3rem;
	display: block;
	height: 38px;
	line-height: 38px;
	text-align: center;
	background: #fff;
}
.btn.arrow a {
	background: #fff url(../img/sp/icon_arrow_r.png) no-repeat 93% center;
	background-size: 6px;
}
.btn.back a {
	background: url(../img/sp/icon_arrow_l.png) no-repeat 7% center;
	background-size: 6px;
}
.btn.grey a {
	background: #efefef url(../img/sp/icon_arrow_r.png) no-repeat 93% center;
	background-size: 6px;
}
.btn.white {
	border: 1px solid #fff;
}
.btn.white a {
	background: url(../img/sp/icon_arrow_w.png) no-repeat 93% center;
	background-size: 6px;
	color: #fff;
}
.btn.red {
	border: 1px solid #cb151d;
}
.btn.red a {
	background: #cb151d;
	color: #fff;
}
.btn.red.arrow a {
	background: #cb151d url(../img/sp/icon_arrow_w.png) no-repeat 93% center;
	background-size: 6px;
	color: #fff;
}

.btn.blank a span {
	padding-right: 17px;
	background: url(../img/sp/icon_blank02.png) no-repeat right center;
	background-size: 9px;
}
.btn.popup a span {
	padding-right: 17px;
	background: url(../img/sp/icon_blank.png) no-repeat right center;
	background-size: 10px;
}
.btn.print {
	display: none;
}
.btn.pdf,
.btn.xlsx,
.btn.blank02 {
    width: 100%;
    display: table;
    min-height: 60px;
}
.btn.pdf a,
.btn.xlsx a,
.btn.blank02 a {
    background: none;
    line-height: 1.6;
    display: table-cell;
    padding: 10px 5px;
    vertical-align: middle;
}
.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.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: 0 20px 0 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: 6px;
	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: 260px;
}
.btn.search a {
	background: #cb151d;
	width: 260px;
}
.btn.search a span {
	font-size: 1.4rem;
	padding: 0 0 0 25px;
	margin-right: 6px;
	background: url(../img/sp/icon_search_w.png) no-repeat left center;
	background-size: 15px;
}
.btn.middle {
	width: 100%;
}
.btn.middle a {
	width: 100%;
	height: 60px;
	line-height: 60px;
	font-size: 1.6rem;
}
.btnCenter {
	margin: 20px 0;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: flex-start;
	align-items: flex-start;
}
.btnCenter .btn {
	width: 48%;
}
.btnCenter .btn:nth-child(2n) {
	margin-left: 4%;
}
.btnCenter .btn:nth-last-child(-n+2) {
	margin-bottom: 0 !important;
}
.btnCenter .btn a {
	font-size: 1.2rem;
	line-height: 1.4;
	padding: 10px 5px;
	height: auto;
}
.btn.return a {
	background: #fff url(../img/sp/icon_arrow_l.png) 8% center no-repeat;
	background-size: 6px;
}
.btn.longTxt a {
	height: auto;
	line-height: 1.4;
	padding: 14px 25px;
}
.btn.large {
	width: 100%;
}	
.btn.large a {
	height: 55px;
	line-height: 55px;
	font-size: 1.4rem;
}


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


/* コンテンツ内タイトル */
#pageTtlSub.ttlImg {
	background: #efefef;
	background-size: cover;
	background-position: center center;
	position: relative;
	margin-bottom: 40px;
}
#pageTtlSub.ttlImg .inner {
	display: table;
	width: 100%;
	height: 140px;
	padding: 15px !important;
}
#pageTtlSub.ttlImg .inner .ttl {
	font-size: 1.6em;
	font-weight: 400;
	display: table-cell;
	vertical-align: middle;
	line-height: 1.2;
	position: relative;
	font-feature-settings: "palt";
}



.ttl01 {
	font-size: 1.8rem;
	font-weight: 400;
	line-height: 1.3;
	padding: 0 0 11px;
	margin-bottom: 15px;
	border-bottom: 1px solid #aaa;
}
.ttl01 span{
	font-size: 0.7em;
	display: block;
}
.ttl01.note span {
	padding-top: 5px;
	font-size: 0.6em;
}
.ttl02 {
	font-size: 1.6rem;
	font-weight: bold;
	line-height: 1.4;
	padding: 10px 0 0;
	margin-bottom: 15px;
}
.ttlCenter01 {
	font-size: 2.4rem;
	font-weight: 500;
	text-align: center;
	margin-bottom: 25px;
	line-height: 1.2;
}
.ttlCenter01 span {
	font-size: 0.4em;
	display: block;
	margin-bottom: 5px;
	font-weight: normal;
}
.ttlCenter01 span.mid {
	font-size: 1.2rem;
	padding-top: 10px;
}
.ttlResult {
	font-weight: 600;
	font-size: 2.4rem;
}
.ttlResult .sum {
	color: #e60012;
	display: inline;
	font-size: 1em;
}

/* box
  ---------------------------------------------*/
.boxBorder {
	border: 1px solid #ccc;
	padding: 25px 20px;
}
.boxBorder + .boxBorder {
	margin-top: 20px;
}
dl.boxTtl {
	border: 1px solid #ddd;
	height: auto !important;
}
dl.boxTtl dt {
	font-size: 1.7rem;
	font-weight: bold;
	text-align: center;
	background: #efefef;
	padding: 12px 0;
}
dl.boxTtl dd {
	padding: 15px;
}
dl.boxTtl + .boxTtl {
	margin-top: 20px;
}
.boxBorderRed {
	border: 1px solid #e60012;
	padding: 25px 20px;
	height: auto !important;
}
.boxBorderRed + .boxBorderRed {
	margin-top: 20px;
}
.boxBorder02 {
	border: 10px solid #f8f8f8;
	padding: 30px 15px;
	overflow: hidden;
}
/* バナー
  ---------------------------------------------*/
.boxBnr {
	border: solid 1px #ddd;
	width:auto;
	padding:25px 25px 0;
}
.boxBnr h3 {
	margin: 0 0 15px;
}
/* タブ
  ---------------------------------------------*/
.tabWrap {
	width: 100%;
	overflow-x: auto;
}
.tabWrap .tabList {
	width: 930px;
	padding: 0 5px;
	border-bottom: 2px solid #cb151d;
}
.tabWrap .tabList li {
	width: 180px;
	height: 50px;
	margin: 4px 2px 0;
	text-align: center;
	line-height: 50px;
	font-size: 1.4rem;
	letter-spacing: -0.05em;
	color: #000;
	background: #efefef;
	float: left;
}
.tabWrap .tabList li.active {
	background: #cb151d;
	color: #fff;
	position: relative;
}
.tabWrap .tabList li.active:after {
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 5px 4px 0 4px;
	border-color: #fff transparent transparent transparent;
	position: absolute;
	bottom: 5px;
	left: 50%;
	margin-left: -4px;
}

.tabWrap .tabList.tab2 {
	width: 100%;
}
.tabWrap .tabList.tab2 li {
	width: 49%;
	margin: 0 0.5%;
}
.tabWrap .tabList.tab3 {
	width: 100%;
}
.tabWrap .tabList.tab3 li {
	width: 32%;
	margin: 0 0.66666%;
}
.tabWrap .tabList.tab4 {
	width: 768px;
}
.tabWrap .tabList.tab4 li {
	width: 24.2%;
	margin: 0 0.4%;
}
.tabCont {
	padding-top: 40px;
}
.tabCont .tabBox {
	display: none;
}
.tabCont .tabBox.active {
	display: block;
}

/* tabimage */
.tabImage {
	margin-bottom: 30px;
}
.tabImage li {
	width: 33.33333%;
	padding: 1px;
	float: left;
}
.tabImage li.not {
	display: none;
}
.tabImage li > img {
	width: 100%;
	height: auto;
}
.tabImage li .figure {
	position: relative;
	cursor: pointer;
}
.tabImage li.active .figure {
	background: #000;
}
.tabImage li .figure figure {
	overflow: hidden;
	margin: 0;
}
.tabImage li .figure figure img {
	width: 100%;
	height: auto;
}
.tabImage li.active .figure figure img {
	opacity: 0.6;
}
.tabImage li .figure span {
	position: absolute;
	bottom: 5px;
	left: 7px;
	color: #fff;
	font-size: 1.3rem;
	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: 1.5;
	padding: 10px 15px;
	font-size: 16px;
	border-radius: 0;
	font-family: 'Noto Sans JP', "メイリオ", Meiryo,"ヒラギノ角ゴ Pro W3","HIragino Kaku Gothic Pro W3","HIragino Kaku Gothic Pro",Osaka,"ＭＳ Ｐゴシック", "MS P Gothic",sans-serif;
}
textarea {
	height: 170px;
	width: 100%;
	padding: 10px 15px;
	border: 1px solid #ccc;
	box-sizing: border-box;
	font-family: 'Noto Sans JP', "メイリオ", Meiryo,"ヒラギノ角ゴ Pro W3","HIragino Kaku Gothic Pro W3","HIragino Kaku Gothic Pro",Osaka,"ＭＳ Ｐゴシック", "MS P Gothic",sans-serif;
	-webkit-appearance: none;
	border-radius: 0;
	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;
}
select::-ms-expand {
	display: none;
}
/* checkbox, radio */
input[type="checkbox"], input[type="radio"] {
	width: 0;
	height: 0;
	margin: 0;
	position: absolute;
	opacity: 0;
}
input[type="radio"] + label {	
	padding: 9px 10px 9px 37px;
	position: relative;
	display: block;
	border: 1px solid #ccc;
	background: none;
	border-radius: 4px;
	line-height: 1.4;
}
input[type="radio"] + label:before {
	content: "";
	display: block;
	width: 20px;
	height: 20px;
	position: absolute;
	top: 50%;
	margin-top: -10px;
	left: 10px;
	border: 1px solid #ccc;
	border-radius: 50%;
	box-sizing: border-box;
	background: #fff;
}
input[type="radio"]:checked + label {
	background: #e60012;
	color: #fff;
	border-color: #e60012;
}
input[type="radio"]:checked + label:after {
	content: "";
	display: block;
	width: 12px;
	height: 12px;
	background: #e60012;
	position: absolute;
	top: 50%;
	margin-top: -6px;
	left: 14px;
	border-radius: 50%;
}
input[type="checkbox"] + label {
	padding: 0 0 0 30px;
	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/sp/icon_check.png) no-repeat 0 0;
	background-size: 16px;
	position: absolute;
	top: 3px;
	left: 2px;
}

.freeWord input {
	width: 68%;
	font-size: 1.6rem;
	height: 45px;
	float: left;
}
.freeWord input[type="text"] {
	padding: 10px 15px;
}
.freeWord .search {
	width: 32%;
	margin: 0;
	float: left;
}
.freeWord .btn.search a {
	height: 43px;
	width: 100%;
}
.freeWord .btn.search a span {
	font-size: 1.4rem;
}

.inputBox dt {
	float:none;
	width: auto;
	line-height: 1.6;
	margin-bottom: 5px;
}
.inputBox dd {
	margin: 0;
	padding: 0 80px 0 0;
	position: relative;
}
.inputBox dd input {
	width: 100%;
}
.inputBox dd button {
	width: 80px;
	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: 30px 20px;
	margin: 25px 15px;
}
#search .searchWrap ul li {
	margin-bottom: 10px;
}
#search .searchWrap ul li p {
	font-size: 1.6rem;
	font-weight: 600;
}
#search .searchWrap ul li p span {
	display: block;
	font-size: 1.2rem;
	font-weight: 400;
	letter-spacing: -0.09em;
}
#search .searchWrap ul li input,
#search .searchWrap ul li select {
	width: 100%;
	margin: 5px 0 0;
}
#search .searchWrap ul li input {
	background: #fff;
	background-size: 15px;
}
#search .btn {
	margin: 20px auto 40px;
}


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

/* img
  ---------------------------------------------*/
figcaption {
	text-align: center;
	padding-top: 7px;
	font-size: 1.1rem;
	line-height: 1.4;
}
figcaption.center {
	text-align: center !important;
}
figure {
    margin-bottom: 20px;
}

.imageW100 {
	text-align: center;
	margin: 30px 0;
}
.imageW100 img {
	width: 100%;
}

span.caption {
	display: block;
	text-align: center;
}
/* anchor list
  ---------------------------------------------*/
.anchorList {
	margin: 40px 15px;
}
.anchorList li {
	position: relative;
	float: left;
	width: 50%;
	font-size: 1.4rem;
	border-left: 1px solid #ccc;
	display: table-cell;
	line-height: 1.4;
}
.anchorList li:after {
	content: "";
	width: 99%;
	height: 1px;
	background: #ccc;
	position: absolute;
	top: -5px;
	left: 0;
}
.anchorList li:first-child:after,
.anchorList li:first-child + li:after {
	height: 0;
}
.anchorList li:nth-child(even):after {
	left: inherit;
	right: 0;
}
.anchorList li:nth-child(even) {
	border-right: 1px solid #ccc;
}
.anchorList li:nth-child(n+3) {
	margin-top: 10px;
}
.anchorList li a {
	padding: 3px 18px;
	display: table-cell;
	vertical-align: middle;
	width: 500px;
}
.anchorList li span {
	background: url(../img/icon_arrow_anchor.png) no-repeat right center;
	background-size: 9px;
	padding-right: 20px;
	display: block;
	font-size: 1.3rem;
}
/* type02 */
.anchorList.type02 ul {
	background: #f8f8f8;
	padding: 15px;
}
.anchorList.type02 li > span {
	background: none;
	padding: 0;
}
.anchorList.type02 li:after {
	content: none;
}

/* type03 */
.anchorList.type03 li > span {
	background: none;
	padding-right: 0px;
	display: block;
}
	
#contents > .anchorList.odd li:last-child {
	/*border-right: 1px solid #ccc;*/
}
#contents > .anchorList.odd li:last-child:before {
	content: "";
	width: 1px;
	height: 100%;
	background: #ccc;
	position: absolute;
	top: 0;
	right: -1px;
}
#contents > .anchorList.odd li:nth-last-child(2):before {
	content: "";
	width: 99%;
	height: 1px;
	background: #ccc;
	position: absolute;
	top: inherit;
	bottom: -6px;
	left: 1px;
}



/* 扉ページリンク
  ---------------------------------------------*/
ul.panelList li {
	text-align:center;
}
ul.panelList li + li {
	margin-top: 40px;
}
ul.panelList li figure {
	margin-bottom: 12px;
}
ul.panelList li figure img {
	width: 100%;
}
ul.panelList li span {
	font-size: 1.6rem;
	padding-left: 10px;
	background: url(../img/sp/icon_arrow_r.png) no-repeat left center;
	background-size: 6px;
}
ul.panelList li span:hover {
	text-decoration: underline;
}
ul.panelList li span .iconPdf {
	padding: 0 20px 0 0;
	margin-right: 4px;
	background: url(../img/sp/icon_pdf_b.png) no-repeat right center;
	background-size: 13px;
}
ul.panelList li span .iconExcel {
	padding: 0 20px 0 0;
	margin-right: 4px;
	background: url(../img/sp/icon_ezcel_b.html) no-repeat right center;
	background-size: 13px;
}
ul.panelList li span .iconWord {
	padding: 0 20px 0 0;
	margin-right: 4px;
	background: url(../img/sp/icon_word_b.png) no-repeat right center;
	background-size: 13px;
}
ul.panelList li span .iconPowerpoint {
	padding: 0 20px 0 0;
	margin-right: 4px;
	background: url(../img/sp/icon_ppt_b.png) no-repeat right center;
	background-size: 13px;
}

ul.panelList li dl {
	text-align:left;
}
ul.panelList li dl dt {
    font-size: 1.8rem;
    padding-left: 10px;
    background: url(../img/sp/icon_arrow_r.png) no-repeat left center;
    background-size: 6px;
    margin-bottom: 8px;
    font-weight: 500;
}

/* グループリンク
  ---------------------------------------------*/
ul.groupLink > li + li {
	margin-top:30px;
}
ul.groupLink > li figure {
	margin-bottom:18px;
}
ul.groupLink li h5 {
    font-size: 1.8rem;
    padding-left: 10px;
    background: url(../img/sp/icon_arrow_r.png) no-repeat left center;
    background-size: 6px;
    font-weight: 500;
}
ul.groupLink li .linkGroup {
	margin-top:5px;
}


/* ボタンリンク
  ---------------------------------------------*/
ul.btnList li + li {
	margin-top: 20px;
}
ul.btnList li a {
	display: table;
	width: 100%;
	height: 80px;
	border: 1px solid #ccc;
	text-align: left;
	background: #fff url(../img/sp/icon_arrow_r.png) no-repeat 93% center;
	background-size: 6px;
	font-size: 1.6rem;
	padding: 0 9% 0 4%;
}
ul.btnList li a span {
	display: table-cell;
	vertical-align: middle;
}
ul.btnList li a br.tb {
	display: none;
}

/* table
  ---------------------------------------------*/
table {
	font-size: 1.4rem;
	width: 100%;
}
table th {
	/* font-weight: normal; */
	background: #efefef;
	padding: 10px 15px;
	text-align: left;
	width: 100%;
	display: block;
	word-break: break-all;
}
table td {
	padding: 10px 15px 12px;
	width: 100%;
	display: block;
	word-break: break-all;
}
table + p.attention {
	margin-top: 10px;
}
.tableScroll {
	overflow: auto;
	white-space: nowrap;
	padding-bottom: 10px;
}
.tableScroll th,
.tableScroll td {
	width: auto;
	display: table-cell;
}
.tableScroll::-webkit-scrollbar{
	height: 5px;
}
.tableScroll::-webkit-scrollbar-thumb{
	background: #ccc;
}
.tableScroll::-webkit-scrollbar-track-piece:start,
.tableScroll::-webkit-scrollbar-track-piece:end{
	background: #eee;
}
.tableScroll table th {
	font-weight: normal;
	vertical-align: middle;
	padding: 20px 30px;
	border-top: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
	border-right: 1px solid #ddd;
}
.tableScroll table th.ttl {
	background: #777;
	color: #fff;
	text-align: center;
}
.tableScroll table td {
	padding: 20px 30px;
	border-top: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
	border-left: 1px solid #ddd;
}
.tableScroll table caption {
	text-align: left;
	margin-bottom: 14px;
	font-size: 1.8rem;
	font-weight: bold;
}
.tableScroll table + p.attention {
	margin: 6px 0 0 !important;
}
.tableScroll table + p.attention:before {
	content: "";
}
	
.tableScroll table th,
.tableScroll table td {
	padding: 10px 15px;
}

table.stripe02 tr:nth-child(odd) td {
	background: #fafafa;
}
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: 12px 25px;
}

/* type02 */
table.type02 th {
	padding: 8px 15px;
	display: table-cell;
	border-top: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
	border-right: 1px solid #ddd;
	width: 30%;
	vertical-align: middle;
	font-weight: normal;
}
table.type02 th.ttl {
    background: #777;
    color: #fff;
    font-size: 1.6rem;
    font-weight: 500;
    padding: 12px 10px;
}
table.type02 th.ttl.normal {
	font-size: 1.5rem;
	font-weight: normal;
	padding: 8px 20px;
}
table.type02 td {
	padding: 8px 15px;
	display: table-cell;
	border-top: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
	border-left: 1px solid #ddd;
	width: 70%;
	vertical-align: middle;
}

/* type03 */
table.type03 th {
	padding: 10px 15px;
	text-align: center;
}
table.type03 th.ttl {
    background: #777;
    color: #fff;
    padding: 10px 15px;
}
table.type03 th.ttl:first-child {
	border-left: none;
	width: auto;
}
table.type03 td {
	padding: 10px 15px;
	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 */
.tableScroll table .cellWidthL { width: 22.5%;}
.tableScroll table .cellWidthM { width: 18%;}
.tableScroll table .cellWidthS { width: 11.666%;}

/* Link Arrow */
table .linkArrow {
	min-width: 140px;
	text-align: left;
	vertical-align: middle;
}
table .linkArrow a {
	padding-left: 1em;
	background: url(../img/icon_arrow_r.png) no-repeat left center;
}
table .lineTop {
	border-top: 1px solid #efefef;
	padding: 10px 0;
}
table .middle {
	vertical-align: middle;
}
table .center {
	text-align: center;
}


/* imgZoom
  ---------------------------------------------*/
.imgZoom {
	margin-bottom: 50px;
}
.imgZoom .btn {
	border: 1px solid #ccc;
	width: 210px;
	margin: 0 auto;
	text-align: center;
	padding: 8px 0;
}
.imgZoom .btn span {
	background: url(../img/icon_zoom.png) right center no-repeat;
	background-size: 12px;
	padding: 0 18px 0 10px;
}
.imgZoom .btn + div {
	display: none;
	z-index: 502;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: 25% 25px !important;
}
.imgZoom .pht {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: 25% 25px !important;
	background: #fff;
	overflow: auto;
	-webkit-overflow-scrolling: touch
}
.imgZoom .pht img {
	width: auto !important;
	max-width: inherit !important;
	height: 100% !important;
}
.imgZoom .close {
	width: 40px !important;
	height: 40px !important;
	position: absolute;
	top: -20px;
	right: -20px;
}

/* list
  ---------------------------------------------*/

.list-left{
	float: none;
	width: 100%;
}
.list-right{
	float: none;
	width: 100%;
	margin-top: 2.5%;
}

/* dot */
.listDot {
	font-size: 1.4rem;
}
.listDot > li {
	text-indent: -1em;
	padding-left: 1em;
}
.listDot > li:before {
	content: "・";
}
.listDot > li + li {
	margin-top: 8px;
}
	
/* asterisk */
.listAst {
	font-size: 1.4rem;
}
.listAst > li {
	padding-left: 2em;
	position: relative;
}
.listAst > li:before {
	position: absolute;
	top: 0;
	left: 0;
}
.listAst > li:nth-child(1):before {
	content: "*1";
}
.listAst > li:nth-child(2):before {
	content: "*2";
}
.listAst > li:nth-child(3):before {
	content: "*3";
}
.listAst > li:nth-child(4):before {
	content: "*4";
}
.listAst > li:nth-child(5):before {
	content: "*5";
}
.listAst > li:nth-child(6):before {
	content: "*6";
}
.listAst > li:nth-child(7):before {
	content: "*7";
}
.listAst > li:nth-child(8):before {
	content: "*8";
}
.listAst > li:nth-child(9):before {
	content: "*9";
}
.listAst > li:nth-child(10):before {
	content: "*10";
}
.listAst > li:nth-child(11):before {
	content: "*11";
}
.listAst > li:nth-child(12):before {
	content: "*12";
}
.listAst > li:nth-child(13):before {
	content: "*13";
}
.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/sp/icon_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: 10px 0;
}
.listBorder li + li {
	border-top: 1px solid #efefef;
}

/* column
  ---------------------------------------------*/	
.col2 li,
.col3 li,	
.col4 li {
	margin-bottom: 20px;
	height: auto !important;
}
.col2 li:last-child,
.col3 li:last-child,	
.col4 li:last-child {
	margin-bottom: 10px;
}
.col2 li:last-child figure,
.col3 li:last-child figure,	
.col4 li:last-child figure {
	margin-bottom: 0;
}
.col4 li figcaption {
	display: block;
	font-size: 1.3rem;
	color: #222;
	padding-top: 7px;
}

/* レイアウト
  ---------------------------------------------*/	
.imgLeft .image,
.imgRight .image {
	margin-bottom: 30px;
}

.imgCenter {
	text-align: center;
}
#contents .imgCenter img {
	width: auto;
	max-width: 100%;
	padding: 0 0 30px;
}

/* 小サイズ画像 */
#contents .imgLeft.smallImg .image,
#contents .imgRight.smallImg .image {
	text-align: center;
}
#contents .imgLeft.smallImg .image img,
#contents .imgRight.smallImg .image img {
	width: auto;
	max-width: 100%;
}


/* text
  ---------------------------------------------*/
.txtArwR {
	font-size: 1.8rem;
	font-weight: bold;
	color: #e60012;
	line-height: 1.5 !important;
}
.txtArwR span {
	background: url(../img/icon_arw01.png) no-repeat left 7px;
	background-size: 11px;
	padding-left: 20px;
}
.txtArwB {
	font-size: 1.8rem;
	font-weight: bold;
	color: #333;
	line-height: 1.5 !important;
}
.txtArwB span {
	background: url(../img/icon_arw02.png) no-repeat left 7px;
	background-size: 11px;
	padding-left: 20px;
}
.txtRit{
	text-align: right;
}
.txtRit > img {
	max-width: 100%;
	width: auto !important;
	margin-left: 20px;
}
.txtCenter {
	text-align: center;
}
.txtCaption {
	font-size: 1.1rem;
}


/* text color
  ---------------------------------------------*/
.red {
	color: #e60012;
}
.txtRed {
	color: #e60012;
	font-weight: bold;
}

/* text size
  ---------------------------------------------*/
.txtSmall {
	font-size: 1.1rem;
}
.txtMid {
	font-size: 1.6rem;
}
.txtLarge {
	font-size: 1.8rem;
}

/* attention
  ---------------------------------------------*/
.attention {
	font-size: 1rem !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-left: 2em;
	margin-bottom: 14px;
	padding-left: 1em;
}
ol.olDefault > li {
	margin-top: 0.5em;
	padding-left: 0.5em;
}
ol.olDefault > li ol { margin-left: 1.5em;}
ol.olDefault > li ol > li {
	list-style: lower-roman outside;
	padding-left: 0.5em;
}

/* pickupBg
  ---------------------------------------------*/
.pickupBg {
	padding: 90px 0 0;
	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 15px;
	clear: both;
}
.faqList .faqBox {
	margin: 15px 0 0;
}
.faqList .faqBox > div {
	position: relative;
	min-height: 30px;
	padding: 4px 0 0 40px;
}
.faqList .faqBox > div + div {
	margin: 10px 0 0;
}
.faqList .faqBox > div .icon {
	display: block;
	border-radius: 50%;
	width: 30px;
	height: 30px;
	line-height: 30px;
	color: #fff;
	text-align: center;
	position: absolute;
	top: 0;
	left: 0;
	font-size: 1.2rem
}
.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: 15px;
}
.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;
	text-align: left;
	margin-bottom: 10px;
}
.faqList .faqBox > div table th {
	padding: 10px 30px;
}
.faqList .faqBox > div table td {
	padding: 10px 30px;
}

/* 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;
}

/* -----------------------------------------------------------------------------
  
  	404ページ
    
  ----------------------------------------------------------------------------- */
.notFound  #pageTtl .inner .ttl {
	line-height: 1.3;
}
.notFound .btnArea {
	margin-top: 30px;
}
.notFound .btnArea p {
	width: 48%;
	height: 70px;
	line-height: 1!important;
	margin-bottom: 0!important;
}
.notFound .btnArea p a {
	display: table;
	padding: 0 0 0 2%;
	height: 70px;
	background-size: 6px;
	width: 100%;
	line-height: 1.4;
}
.notFound .btnArea p a span {
	display: table-cell;
	vertical-align: middle;
}
.notFound .btnArea .return {
	float: left;
}
.notFound .btnArea .arrow {
	float: right;
}




}



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

footer .footerBtm .footerSubNav {
	max-width: 360px;
	margin: 0 auto;
	padding: 20px 0 15px;
}
footer .footerBtm .footerSubNav ul li:after {
	content: none;
}
footer .footerBtm .footerSubNav ul li:nth-child(2):before,
footer .footerBtm .footerSubNav ul li:last-child:before {
	content: "";
	width: 1px;
	height: 20px;
	background: #3b3b3b;
	display: block;
	position: absolute;
	top: -3px;
	left: -2px;
}
footer .footerBtm .footerSubNav ul li:nth-child(2):after {
	content: "";
	width: 1px;
	height: 20px;
	background: #3b3b3b;
	display: block;
	position: absolute;
	top: -3px;
	right: -2px;
}

}
/* -----------------------------------------------------------------------------
  
  	印刷設定
    
  ----------------------------------------------------------------------------- */
@media print {
	#pageNav,header,footer{
		display: none;
	}
}




/* -----------------------------------------------------------------------------
  
  	/en/固有記述
    
  ----------------------------------------------------------------------------- */

@media screen and (max-width: 950px) {
	
	
	header .inner .navWrap #gnav > ul > li .subMenu.type2 .inner > ul > li dl dt {
		padding: 15px 40px 15px 25px;
	}
	header .inner #gnav > ul > li .subMenu .inner > ul > li a.pdf span {
		background: url(../img/icon_pdf_w.png);
		background-repeat: no-repeat;
		background-position: right center;
	}
	footer .footerMid .footerNavSP ul li a {
		line-height: 1;
		padding: 14px 0;
	}
	ul.panelList li:last-child figure {
	    margin-bottom: 12px;
    }
	
}

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

footer .footerBtm .footerSubNav ul li:nth-child(2):before,
footer .footerBtm .footerSubNav ul li:nth-child(4):before {
	content: "";
	width: 1px;
	height: 20px;
	background: #3b3b3b;
	display: block;
	position: absolute;
	top: -3px;
	left: -2px;
}
footer .footerBtm .footerSubNav ul li:nth-child(2):after {
	content: "";
	width: 1px;
	height: 20px;
	background: #3b3b3b;
	display: block;
	position: absolute;
	top: -3px;
	right: -2px;
}
footer .footerBtm .footerSubNav ul li:last-child:before {
	content: none;
}

	
}



