@charset "UTF-8";
/* BLUE
-----------------------*/
/* GRAY
-----------------------*/
/* [ ヘッダー上余白 ]
-----------------------*/
body {
	padding-top: 188px;
}

@media screen and (max-width: 740px) {
	body {
		padding-top: 65px;
	}
}

a {
	color: #185AA2;
}

/* [汎用区切り線@追加の色指定 ]
-----------------------*/
.padT-s--border, .padT-m--border, .padT-l--border {
	border-color: #185AA2;
}

/* #tpl-header
----------------------------------------------------------- */
#tpl-header {
	width: 100%;
	min-width: 980px;
	background: #FFF;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 400;
	/* .utility-list
		-----------------------*/
	/* .utility-search
		-----------------------*/
	/* gcse reset */
	/* .btn-search-open
			-----------------------*/
	/* .btn-search-close-sp
			-----------------------*/
	/* .btn-sidr
		-----------------------*/
	/* .tpl-header-other
		-----------------------*/
	/* [ 追従時 ] */
}

#tpl-header.is-fixed {
	position: fixed;
	height: 53px;
}

#tpl-header a {
	color: #333;
}

#tpl-header .tpl-inner-wrap {
	padding: 20px 0 25px;
	position: relative;
	width: 980px;
}

#tpl-header.is-fixed .tpl-inner-wrap {
	padding: 0;
}

#tpl-header.is-fixed .tpl-header-logo {
	width: 204px;
	padding-top: 10px;
}

#tpl-header.is-fixed .tpl-header-logo img {
	width: 100%;
}

#tpl-header .tpl-header-utility {
	position: absolute;
	top: 0;
	right: 0;
	height: 46px;
	overflow: hidden;
}

#tpl-header.is-fixed .tpl-header-utility {
	height: 52px;
}

#tpl-header .tpl-header-utility .wrap {
	background: #ECF2F8;
	display: table;
}

#tpl-header.is-fixed .tpl-header-utility .wrap {
	float: left;
}

#tpl-header .tpl-header-utility .utility-list {
	display: table-cell;
	letter-spacing: normal;
	border-right: 1px solid #FFF;
}

#tpl-header .tpl-header-utility .utility-list ul {
	display: table;
	height: 46px;
}

#tpl-header.is-fixed .tpl-header-utility .utility-list ul {
	height: 52px;
}

#tpl-header .tpl-header-utility .utility-list li {
	display: table-cell;
	vertical-align: middle;
}

#tpl-header .tpl-header-utility .utility-list li.only-sp {
	display: none;
}

#tpl-header .tpl-header-utility .utility-list li a {
	text-align: center;
	display: block;
	line-height: 46px;
	padding: 0 25px;
	border-left: 1px solid #fff;
}

#tpl-header.is-fixed .tpl-header-utility .utility-list li a {
	line-height: 52px;
	padding: 0 10px;
}

#tpl-header .tpl-header-utility .utility-list li a:hover {
	background: #f3f7fb;
}

#tpl-header .tpl-header-utility .utility-list li a span {
	padding: 0 0 0 10px;
	background: url("asset/c__icon_cursor_blue.png") no-repeat left center;
}

#tpl-header .tpl-header-utility .utility-search {
	display: table-cell;
	letter-spacing: normal;
	height: 46px;
	width: 46px;
	/*width: 200px;*/
	vertical-align: top;
}

#tpl-header .tpl-header-utility .utility-search .inner-wrap {
	position: relative;
	padding: 2px 1px 2px 2px;
}

#tpl-header.is-fixed .tpl-header-utility .utility-search {
	height: 52px;
}

#tpl-header .tpl-header-utility .utility-search {
	/* [ btn ] */
}

#tpl-header .tpl-header-utility .utility-search form.gsc-search-box, #tpl-header .tpl-header-utility .utility-search table.gsc-search-box {
	margin: 0;
}

#tpl-header .tpl-header-utility .utility-search input.gsc-input, #tpl-header .tpl-header-utility .utility-search .gsc-input-box, #tpl-header .tpl-header-utility .utility-search .gsc-input-box-hover, #tpl-header .tpl-header-utility .utility-search .gsc-input-box-focus {
	border: none;
}

#tpl-header .tpl-header-utility .utility-search .gsib_a {
	padding: 0;
}

#tpl-header .tpl-header-utility .utility-search .gsib_b {
	background: #FFF;
}

#tpl-header .tpl-header-utility .utility-search .gsc-input-box {
	height: auto;
}

#tpl-header .tpl-header-utility .utility-search .gsc-search-box .gsc-input > input:hover, #tpl-header .tpl-header-utility .utility-search .gsc-input-box-hover, #tpl-header .tpl-header-utility .utility-search .gsc-search-box .gsc-input > input:focus, #tpl-header .tpl-header-utility .utility-search .gsc-input-box-focus {
	border: none;
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
	box-shadow: none;
}

#tpl-header .tpl-header-utility .utility-search .gsc-search-box-tools .gsc-search-box .gsc-input {
	padding: 0;
}

#tpl-header .tpl-header-utility .utility-search input[type="text"]::-ms-clear {
	visibility: hidden;
}

#tpl-header .tpl-header-utility .utility-search .gsst_b {
	padding: 0;
}

#tpl-header .tpl-header-utility .utility-search td.gsc-search-button, #tpl-header .tpl-header-utility .utility-search td.gsc-clear-button {
	background: #FFF;
}

#tpl-header .tpl-header-utility .utility-search input.gsc-search-button {
	margin: 0;
}

#tpl-header .tpl-header-utility .utility-search .cse .gsc-search-button input.gsc-search-button-v2, #tpl-header .tpl-header-utility .utility-search input.gsc-search-button-v2 {
	width: 0;
	height: 0;
	min-width: 0;
	margin-top: 0;
	border: none;
	padding: 42px 0 0 35px;
	background: #FFF url("asset/c__icon_search.png") no-repeat center center;
	border-radius: 0;
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
}

#tpl-header .tpl-header-utility .utility-search.is-open .gsib_a {
	padding-left: 42px;
}

#tpl-header .tpl-header-utility .utility-search input[type="text"] {
	height: 42px !important;
}

#tpl-header.is-fixed .tpl-header-utility .utility-search input[type="text"] {
	height: 52px !important;
}

#tpl-header .tpl-header-utility .utility-search input[type="image"] {
	position: absolute;
	top: 2px;
	left: 2px;
}

#tpl-header.is-fixed .tpl-header-utility .utility-search input[type="image"] {
	padding: 52px 0 0 35px;
}

#tpl-header .tpl-header-utility .utility-search .btn-search-open {
	background: #ECF2F8 url("asset/c__icon_search.png") no-repeat center center;
	width: 46px;
	height: 46px;
	cursor: pointer;
	position: absolute;
	right: 0;
	top: 0;
}

#tpl-header.is-fixed .tpl-header-utility .utility-search .btn-search-open {
	height: 52px;
}

#tpl-header .tpl-header-utility .utility-search .btn-search-open:hover {
	background-color: #f3f7fb;
}

#tpl-header .tpl-header-utility .utility-search .btn-search-close-sp {
	display: none;
}

#tpl-header .btn-sidr {
	/*hidden*/
	width: 1px;
	height: 1px;
	margin: -1px;
	overflow: hidden;
}

#tpl-header .tpl-header-other {
	position: absolute;
	right: 0;
	bottom: 25px;
}

#tpl-header .tpl-header-other.clone {
	/*hidden*/
	width: 1px;
	height: 1px;
	margin: -1px;
	overflow: hidden;
}

#tpl-header.is-fixed .tpl-header-other {
	display: none;
}

#tpl-header.is-fixed .tpl-header-other.clone {
	/*visible*/
	width: auto;
	height: auto;
	margin: auto;
	overflow: visible;
	display: table;
	position: static;
	float: left;
	background: #FFF;
	height: 52px;
	padding-right: 20px;
}

#tpl-header .tpl-header-other > div {
	float: left;
}

#tpl-header.is-fixed .tpl-header-other.clone.tpl-header-other > div {
	display: table-cell;
	vertical-align: middle;
	float: none;
}

#tpl-header .tpl-header-other > div li {
	letter-spacing: normal;
	float: left;
}

#tpl-header .tpl-header-other .other-01 li {
	border-right: 1px solid #DDD;
}

#tpl-header .tpl-header-other .other-01 li:first-child {
	border-left: 1px solid #DDD;
}

#tpl-header .tpl-header-other .other-01 li a {
	display: block;
	line-height: 20px;
	text-align: center;
	padding: 0 20px;
}

#tpl-header.is-fixed .tpl-header-other .other-01 li a {
	padding: 0 15px;
}

#tpl-header .tpl-header-other .other-01 li a:hover {
	color: #185AA2;
}

#tpl-header .tpl-header-other .other-01 li a .icon {
	display: inline-block;
	height: 20px;
	vertical-align: middle;
	position: relative;
	top: -2px;
	margin-right: 5px;
}

#tpl-header .tpl-header-other .other-01 li.btn-exam a .icon {
	background: url("asset/c__tpl_header_icon_exam_splite.png") no-repeat;
	width: 17px;
}

#tpl-header .tpl-header-other .other-01 li.btn-access a .icon {
	background: url("asset/c__tpl_header_icon_access_splite.png") no-repeat;
	width: 17px;
}

#tpl-header .tpl-header-other .other-01 li a:hover .icon {
	background-position: 0 -20px;
}

@media screen and (max-width: 740px) {
	#tpl-header {
		min-width: 0;
	}
	#tpl-header.is-fixed {
		position: static;
		height: auto;
	}
}

@media screen and (max-width: 740px) {
	#tpl-header .tpl-inner-wrap {
		max-width: 740px;
		padding: 13px 12px 15px;
		width: auto;
		box-sizing: border-box;
		height: 65px;
	}
}

@media screen and (max-width: 740px) {
	#tpl-header .tpl-header-logo {
		width: 165px;
		position: relative;
	}
	#tpl-header .tpl-header-logo img {
		width: 100%;
	}
}

@media screen and (max-width: 740px) {
	#tpl-header .tpl-header-utility {
		position: fixed;
		height: 50px;
		overflow: visible;
		z-index: 400;
		width: 190px;
		margin-left: -10px;
	}
	#tpl-header .tpl-header-utility .wrap {
		background: #185AA2;
		float: right;
		height: 40px;
		position: relative;
	}
}

@media screen and (max-width: 300px) {
	#tpl-header .tpl-header-utility {
		width: 290px;
	}
}

@media screen and (max-width: 740px) {
	#tpl-header .tpl-header-utility .utility-list {
		display: table-cell;
		letter-spacing: normal;
		border-right: none;
	}
}

@media screen and (max-width: 740px) {
	#tpl-header .tpl-header-utility .utility-list ul {
		height: 50px;
	}
}

@media screen and (max-width: 740px) {
	#tpl-header .tpl-header-utility .utility-list li.only-pc {
		display: none;
	}
	#tpl-header .tpl-header-utility .utility-list li.only-sp {
		display: table-cell;
	}
}

@media screen and (max-width: 740px) {
	#tpl-header .tpl-header-utility .utility-list li a {
		line-height: 1.2;
		padding: 0 10px;
		border-left: none;
		color: #fff;
		display: table-cell;
		height: 50px;
		font-size: 10px;
		vertical-align: middle;
		width: 90px;
		box-sizing: border-box;
	}
}

@media screen and (max-width: 740px) {
	#tpl-header .tpl-header-utility .utility-list li a:hover {
		background: #185AA2;
	}
}

@media screen and (max-width: 740px) {
	#tpl-header .tpl-header-utility .utility-list li a span {
		background: none;
		background-size: auto 6px;
		padding-left: 0;
	}
}

@media screen and (max-width: 740px) {
	#tpl-header .tpl-header-utility .utility-search {
		display: none;
		height: 40px;
		/* ひとまず */
		width: 40px !important;
	}
}

@media screen and (max-width: 740px) {
	#tpl-header {
		/* SP時の検索窓 */
	}
	#tpl-header .tpl-header-utility .utility-search .inner-wrap {
		/* ひとまず */
		opacity: 1 !important;
		position: static;
	}
	#tpl-header #___gcse_0 {
		display: none;
	}
	#tpl-header .utility-search.is-open #___gcse_0 {
		display: block;
		position: absolute;
		top: 42px;
		left: -150px;
		padding: 5px;
		background: #185AA2;
		width: 300px;
	}
}

@media screen and (max-width: 740px) {
	#tpl-header .tpl-header-utility .utility-search .gsib_a {
		padding-left: 40px;
	}
}

@media screen and (max-width: 740px) {
	#tpl-header .tpl-header-utility .utility-search input[type="image"] {
		background: #FFF url("asset/c__icon_search_sp.png") no-repeat center center;
		background-size: 15px auto;
		padding: 40px 0 0 40px;
		outline: none;
		display: block;
		position: absolute;
		top: 5px;
		left: 5px;
	}
}

@media screen and (max-width: 740px) {
	#tpl-header .tpl-header-utility .utility-search .btn-search-open {
		background: #ECF2F8 url("asset/c__icon_search_sp.png") no-repeat center center;
		background-size: 15px auto;
		width: 40px;
		height: 40px;
		right: 41px;
	}
}

@media screen and (max-width: 740px) {
	#tpl-header .tpl-header-utility .utility-search .btn-search-close-sp.is-visible {
		display: block;
		position: absolute;
		right: 0;
		top: 0;
		z-index: 10000;
		background: #185AA2 url("asset/c__icon_close_sp.png") no-repeat center center;
		background-size: 14px auto;
		width: 40px;
		height: 42px;
		right: 41px;
		cursor: pointer;
	}
}

@media screen and (max-width: 740px) {
	#tpl-header .btn-sidr {
		/*visible*/
		width: auto;
		height: auto;
		margin: auto;
		overflow: visible;
		display: table-cell;
		width: 50px;
		height: 50px;
		vertical-align: top;
		border-left: 1px solid #FFF;
	}
	#tpl-header .btn-sidr a {
		display: block;
		height: 50px;
		background: #185AA2 url("asset/c__tpl_header_btn_sidr_splite.png") no-repeat;
		background-size: 50px auto;
		text-indent: -99999px;
	}
	#tpl-header .btn-sidr a.is-open {
		background-position: 0 -50px;
		background-color: #185AA2;
	}
	#tpl-header .btn-sidr a:hover.is-open {
		background-color: #185AA2;
	}
}

@media screen and (max-width: 740px) {
	#tpl-header .tpl-header-other {
		display: none;
	}
}

/* #tpl-header-navi
----------------------------------------------------------- */
#tpl-header-navi {
	position: absolute;
	z-index: 300;
	top: 108px;
	left: 0;
	width: 100%;
	background: #185AA2;
	/* .inner-list
		-----------------------*/
	/* .list-item-wrap
			-----------------------*/
}

#tpl-header-navi.is-fixed {
	top: 53px;
	position: fixed;
}

#tpl-header-navi > .wrap {
	position: relative;
}

#tpl-header-navi a {
	color: #333;
}

#tpl-header-navi > .wrap > ul {
	height: 80px;
	display: table;
	width: 980px;
	margin: 0 auto;
}

#tpl-header-navi.is-fixed > .wrap > ul {
	height: 46px;
}

#tpl-header-navi.is-fixed > .wrap > ul > li > a {
	height: 46px;
	line-height: 46px;
}

#tpl-header-navi > .wrap > ul > li {
	display: table-cell;
	vertical-align: middle;
	text-align: center;
	width: 162px;
}

#tpl-header-navi > .wrap > ul > li > a {
	color: #FFF;
	font-size: 18px;
	line-height: 80px;
	height: 80px;
	display: block;
	border-right: 1px solid #467BB5;
}

#tpl-header-navi > .wrap > ul > li:first-child > a {
	border-left: 1px solid #467BB5;
}

#tpl-header-navi > .wrap > ul > li > a:hover, #tpl-header-navi > .wrap > ul > li > a.is-open, #tpl-header-navi > .wrap > ul > li > a.is-active {
	text-decoration: none;
	background: #ECF2F8;
	color: #185AA2;
}

#tpl-header-navi .inner-list {
	/*hidden*/
	width: 1px;
	height: 1px;
	margin: -1px;
	overflow: hidden;
}

#tpl-header-navi .inner-list.is-visible {
	/*visible*/
	width: auto;
	height: auto;
	margin: auto;
	overflow: visible;
	background: #ECF2F8;
	position: absolute;
	width: 100%;
	z-index: 5;
	left: 0;
	top: 80px;
	text-align: left;
}

#tpl-header-navi.is-fixed .inner-list.is-visible {
	top: 46px;
}

#tpl-header-navi .inner-list .wrap {
	position: relative;
	width: 980px;
	margin: 0 auto;
	padding: 40px 0;
	overflow: hidden;
}

#tpl-header-navi .inner-list .list-item-wrap {
	width: 100%;
	margin: 0 25px 0 0;
	line-height: 1;
	overflow: hidden;
	width: 224px;
	float: left;
	margin-right: 28px;
}

#tpl-header-navi .inner-list .list-item-wrap dt {
	width: 100%;
}

#tpl-header-navi .inner-list .list-item-wrap dt a {
	font-size: 15px;
	font-weight: bold;
	color: #185AA2;
	padding: 15px;
	display: inline-block;
	width: 500px;
	background: url("asset/c__icon_cursor_blue.png") left center no-repeat;
}

#tpl-header-navi .inner-list .list-item-wrap dd a {
	font-size: 13px;
	margin-top: -1px;
	display: block;
	border-top: 1px dotted #AAA;
	border-bottom: 1px dotted #AAA;
	padding: 15px 0 15px 10px;
	background: url("asset/c__icon_cursor_blue.png") left center no-repeat;
}

#tpl-header-navi .inner-list .btn-close {
	position: absolute;
	top: 40px;
	right: 0;
	display: block;
}

#tpl-header-navi .inner-list .btn-close a {
	display: block;
	padding: 0 35px 0 0;
	line-height: 30px;
	color: #185AA2;
	font-size: 15px;
	font-weight: bold;
	background: url("asset/c__tpl_header_btn_close_splite.gif") no-repeat right 0;
}

#tpl-header-navi .inner-list .btn-close a:hover {
	background-position: right -30px;
}

@media screen and (max-width: 740px) {
	#tpl-header-navi > .wrap > ul {
		display: none;
	}
}

/* #tpl-topicpath
----------------------------------------------------------- */
#tpl-topicpath {
	background: #ECF2F8;
}

#tpl-topicpath li {
	background: url("asset/c__icon_cursor_slim_blue.png") no-repeat right center;
}

#tpl-topicpath a {
	color: #185AA2;
}

@media only screen and (max-width: 740px) {
	#tpl-topicpath li.is-parent a, #tpl-topicpath li.last {
		background: url("asset/c__icon_cursor_slim_blue.png") no-repeat left center;
	}
}

/* #tpl-contents
----------------------------------------------------------- */
#tpl-contents {
	background: #FFF;
	font-size: 15px;
	overflow: hidden;
	min-width: 980px;
}

#tpl-contents p {
	line-height: 1.8;
}

#tpl-contents > .tpl-inner-wrap {
	padding-bottom: 60px;
}

#tpl-contents > .tpl-inner-wrap > .page-title-wrap {
	padding: 60px 0 0;
}

#tpl-contents > .tpl-inner-wrap > .page-title-wrap .title {
	font-size: 36px;
	font-weight: 500;
	color: #185AA2;
	line-height: 1.4;
	text-align: center;
}

@media only screen and (max-width: 740px) {
	#tpl-contents {
		min-width: 320px;
		font-size: 12px;
	}
}

@media only screen and (max-width: 740px) {
	#tpl-contents p {
		line-height: 1.5;
	}
	#tpl-contents .tpl-inner-wrap {
		padding: 0 10px;
	}
	#tpl-contents img {
		max-width: 100%;
	}
}

/* [ ページ基本要素 ]
	-----------------------*/
@media only screen and (max-width: 740px) {
	#tpl-contents > .tpl-inner-wrap {
		padding-bottom: 30px;
	}
}

@media only screen and (max-width: 740px) {
	#tpl-contents > .tpl-inner-wrap > .page-title-wrap {
		padding: 40px 0 0;
	}
}

/* .page-title-wrap
		-----------------------*/
@media only screen and (max-width: 740px) {
	#tpl-contents > .tpl-inner-wrap > .page-title-wrap .title {
		font-size: 24px;
	}
}

/* #tpl-category-visual
----------------------------------------------------------- */
#tpl-category-visual {
	text-align: center;
	padding-top: 30px;
}

@media only screen and (max-width: 740px) {
	#tpl-category-visual {
		background: none;
	}
	#tpl-category-visual .only-sp .title {
		font-size: 23px;
		line-height: 1;
		color: #185AA2;
		font-weight: bold;
	}
	#tpl-category-visual .only-sp .pic {
		padding-top: 18px;
	}
}

/* #tpl-category-title
----------------------------------------------------------- */
#tpl-category-title {
	text-align: center;
	height: 150px;
	display: table;
	width: 100%;
}

#tpl-category-title .title {
	display: table-cell;
	vertical-align: middle;
	color: #FFF;
	font-size: 25px;
	font-weight: bold;
}

@media only screen and (max-width: 740px) {
	#tpl-category-title {
		height: 75px;
		background-size: auto 75px;
	}
}

@media only screen and (max-width: 740px) {
	#tpl-category-title .title {
		font-size: 18px;
		background-size: auto 75px;
	}
}

/* #tpl-tool
-----------------------*/
#tpl-tool {
	background: #EEE;
	border-top: 1px solid #DDD;
	font-size: 13px;
}

#tpl-tool .tpl-inner-wrap {
	display: table;
	width: 100%;
}

#tpl-tool .title {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	width: 163px;
	border-left: 1px solid #DDD;
}

#tpl-tool .cate-list {
	display: table-cell;
	border-right: 1px solid #DDD;
}

#tpl-tool .cate-list li {
	width: 162px;
	height: 89px;
	border: 1px solid #DDD;
	border-right: none;
	border-top: none;
	display: table;
	float: left;
}

#tpl-tool .cate-list li a {
	color: #333;
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	background: url("asset/c__tpl_tool_btn_cursor.png") no-repeat bottom right;
}

#tpl-tool .cate-list li a:hover {
	background-color: #FFF;
	text-decoration: none;
}

@media screen and (max-width: 740px) {
	#tpl-tool .tpl-inner-wrap {
		display: block;
	}
}

@media screen and (max-width: 740px) {
	#tpl-tool .title {
		display: block;
		width: auto;
		border: none;
		padding: 15px 0;
	}
	#tpl-tool .title img {
		width: 76px;
	}
}

@media screen and (max-width: 740px) {
	#tpl-tool .cate-list {
		display: block;
		border: none;
		overflow: hidden;
	}
}

@media screen and (max-width: 740px) {
	#tpl-tool .cate-list li {
		box-sizing: border-box;
		width: 50%;
		height: auto;
		float: left;
		border: 1px solid #DDD;
		border-right: none;
		border-bottom: none;
	}
	#tpl-tool .cate-list li a {
		background: url("asset/c__tpl_tool_btn_cursor_sp.png") no-repeat bottom right;
		background-size: 12px auto;
		padding: 15px;
	}
}

@media screen and (max-width: 740px) {
	#tpl-tool {
		font-size: 12px;
	}
}

/* #tpl-pagetop-box
----------------------------------------------------------- */
#tpl-pagetop-box {
	position: fixed;
	bottom: 50px;
	right: 50px;
	z-index: 350;
}

@media screen and (max-width: 740px) {
	#tpl-pagetop-box {
		bottom: 0;
		right: 0;
		width: 50px;
		height: 50px;
	}
	#tpl-pagetop-box img {
		display: block;
		width: 100%;
	}
}

/* #tpl-footer-sitemap
-----------------------*/
#tpl-footer-sitemap {
	background: url("asset/c__tpl_footer_sitemap_bg.jpg") no-repeat center top;
	background-size: cover;
	height: 583px;
	min-width: 980px;
	overflow: hidden;
}

#tpl-footer-sitemap > .wrap {
	width: 1020px;
	margin: 0 auto;
	overflow: hidden;
	padding: 70px 0 0;
}

@media screen and (max-width: 740px) {
	#tpl-footer-sitemap {
		display: none;
	}
}

/* #sitemap-list-main
	-----------------------*/
#sitemap-list-main {
	background: url("asset/c__tpl_footer_sitemap_inner_bg.png");
	width: 741px;
	padding: 30px;
	float: left;
}

#sitemap-list-main .logo {
	padding: 6px 15px 0 0;
	float: left;
}

/* #list-main-article
		-----------------------*/
#list-main-article {
	clear: both;
	margin: 0 0 0 -30px;
	padding: 30px 0 0;
}

#list-main-article .sitemap-cate-list {
	/*hidden*/
	width: 1px;
	height: 1px;
	margin: -1px;
	overflow: hidden;
}

#list-main-article .sitemap-cate-list.is-visible {
	/*visible*/
	width: auto;
	height: auto;
	margin: auto;
}

#list-main-article .sitemap-cate-list .item {
	float: left;
	padding: 0 0 0 23px;
}

#list-main-article .sitemap-cate-list .item > .title {
	font-size: 15px;
	color: #185AA2;
	font-weight: bold;
	padding: 0 0 15px;
}

#list-main-article .sitemap-cate-list .item > ul > li {
	padding: 13px 0 0;
}

#list-main-article .sitemap-cate-list .item > ul > li:first-child {
	padding: 0;
}

#list-main-article .sitemap-cate-list .item > ul > li a {
	color: #333;
	display: inline-block;
	background: url("asset/c__icon_cursor_blue.png") no-repeat left 5px;
	padding: 0 0 0 10px;
	font-size: 13px;
}

#list-main-article .sitemap-cate-list .item.other > ul > li a {
	color: #185AA2;
}

/* #sitemap-list-sub
	-----------------------*/
#sitemap-list-sub {
	background: url("asset/c__tpl_footer_sitemap_inner_bg.png");
	width: 218px;
	float: right;
}

#sitemap-list-sub ul {
	padding: 30px;
}

#sitemap-list-sub li {
	padding: 13px 0 0;
}

#sitemap-list-sub li:first-child {
	padding: 0;
}

#sitemap-list-sub li a {
	display: inline-block;
	background: url("asset/c__icon_cursor_blue.png") no-repeat left 6px;
	padding: 0 0 0 10px;
	font-size: 13px;
	color: #185AA2;
}

/* [ SPのみサイドメニュー ]
-----------------------*/
.sidr {
	display: none;
	position: absolute;
	position: fixed;
	top: 0;
	height: 100%;
	z-index: 999999;
	width: 280px;
	overflow-x: none;
	overflow-y: auto;
	font-size: 15px;
	background: #333;
	color: #fff;
}

.sidr.right {
	left: auto;
	right: -260px;
}

.sidr.left {
	left: -260px;
	right: auto;
}

.sidr ul li a {
	display: block;
	text-decoration: none;
	color: #fff;
}

#tpl-header .btn-sidr.is-hidden, #sidr.is-hidden {
	display: none;
}

@media screen and (max-width: 740px) {
	#sidr {
		background: none;
	}
	.sidr p {
		font-size: 12px;
		margin: 0;
		display: block;
		padding: 15px;
	}
	.sidr ul {
		display: block;
		margin: 0;
		padding: 0;
		border-top: none;
		border-bottom: none;
	}
	.sidr ul li {
		background: #185AA2;
		font-size: 12px;
		line-height: 1.4;
		border-top: 1px solid #FFF;
		border-bottom: none;
	}
	.sidr ul li a {
		padding: 15px;
		background: #185AA2;
	}
	.sidr ul li ul li {
		line-height: 1.4;
	}
	.sidr ul li ul li.size-fix {
		font-size: 10px;
	}
	.sidr ul li ul li a {
		color: #FFF;
		padding-left: 0;
		padding: 12px;
		background: #185AA2;
		word-wrap: break-word;
	}
	.sidr ul li ul li:hover, .sidr ul li ul li.active, .sidr ul li ul li.sidr-class-active {
		line-height: 1.4;
	}
	/* [ アコーディオン用の最適化 ]
	-----------------------*/
	/* INIT */
	.sitemap-cate-list {
		/*display: none !important;*/
	}
	/* #sidr-search
	-----------------------*/
	#sidr-search {
		/* reset */
		/* [ btn ] */
		/* unique */
		position: relative;
	}
	#sidr-search > div {
		display: block;
		padding: 5px;
		background: #185AA2;
		border-bottom: 1px solid #fff;
	}
	#sidr-search form.gsc-search-box {
		margin: 0;
		position: relative;
	}
	#sidr-search table.gsc-search-box {
		margin: 0;
	}
	#sidr-search input.gsc-input, #sidr-search .gsc-input-box, #sidr-search .gsc-input-box-hover, #sidr-search .gsc-input-box-focus {
		border: none;
	}
	#sidr-search .gsib_a {
		padding: 0;
	}
	#sidr-search .gsib_b {
		background: #FFF;
	}
	#sidr-search .gsc-input-box {
		height: auto;
	}
	#sidr-search .gsc-search-box .gsc-input > input:hover, #sidr-search .gsc-input-box-hover, #sidr-search .gsc-search-box .gsc-input > input:focus, #sidr-search .gsc-input-box-focus {
		border: none;
		-moz-box-shadow: none;
		-webkit-box-shadow: none;
		box-shadow: none;
	}
	#sidr-search .gsc-search-box-tools .gsc-search-box .gsc-input {
		padding: 0;
	}
	#sidr-search input[type="text"]::-ms-clear {
		visibility: hidden;
	}
	#sidr-search .gsst_b {
		padding: 0;
	}
	#sidr-search td.gsc-search-button, #sidr-search td.gsc-clear-button {
		background: #FFF;
	}
	#sidr-search input.gsc-search-button {
		margin: 0;
	}
	#sidr-search .cse .gsc-search-button input.gsc-search-button-v2, #sidr-search input.gsc-search-button-v2 {
		width: 0;
		height: 0;
		min-width: 0;
		margin-top: 0;
		border: none;
		padding: 42px 0 0 35px;
		background: #FFF url("asset/c__icon_search.png") no-repeat center center;
		border-radius: 0;
		-webkit-border-radius: 0;
		-moz-border-radius: 0;
		position: absolute;
		top: 0;
		left: 0;
	}
	#sidr-search .gsib_a {
		padding-left: 40px;
	}
	#sidr-search .gsib_a input[type="text"] {
		height: 44px !important;
		vertical-align: bottom;
	}
	#sidr-search .cover {
		position: absolute;
		width: 100%;
		height: 100%;
		z-index: 10000;
	}
	/* [ スマホ対策 ]
	-----------------------*/
	.sidr-open #sidr-search .cover {
		display: none;
	}
	/* #sidr-section01
	-----------------------*/
	#sidr-section01 > p {
		border-top: 1px solid #FFF;
		height: 44px;
		padding: 0;
		cursor: pointer;
	}
	#sidr-section01 > p:first-child {
		border-top: none;
	}
	#sidr-section01 > p span.icon {
		display: inline-block;
		width: 44px;
		height: 44px;
		vertical-align: middle;
		background: #355D84 url("asset/c__icon_accordion_large_splite_sp.png") no-repeat;
		background-size: 44px auto;
		margin-right: 10px;
	}
	#sidr-section01 > p.is-open span.icon {
		background-position: 0 -44px;
	}
	#sidr-section01 .sitemap-cate-list .item {
		border: none;
		clear: both;
		border-top: 1px solid #FFF;
	}
	#sidr-section01 .sitemap-cate-list .item:first-child {
		border-top: none;
	}
	#sidr-section01 .sitemap-cate-list .item .title {
		background: #185AA2;
		color: #FFF;
		cursor: pointer;
		padding: 0;
	}
	#sidr-section01 .sitemap-cate-list .item .title .icon {
		display: inline-block;
		width: 44px;
		height: 44px;
		vertical-align: middle;
		background: #3771B0 url("asset/c__icon_accordion_large_splite_sp.png") no-repeat;
		background-size: 44px auto;
		margin-right: 10px;
	}
	#sidr-section01 .sitemap-cate-list .item .title.is-open .icon {
		background-position: 0 -44px;
	}
	#sidr-section01 .sitemap-cate-list .item ul {
		background: #ECF2F8;
		overflow: hidden;
		/* INIT */
		display: none;
	}
	#sidr-section01 .sitemap-cate-list .item li {
		width: 50%;
		float: left;
		display: table;
		background: #ECF2F8;
		border-top: 1px solid #185AA2;
		border-left: 1px solid #185AA2;
		margin-left: -1px;
		box-sizing: border-box;
	}
	#sidr-section01 .sitemap-cate-list .item li a {
		background: #ECF2F8;
		display: table-cell;
		vertical-align: middle;
		color: #333;
	}
	#sidr-section01 .sitemap-cate-list .item li a span {
		background: url("asset/c__icon_cursor_blue.png") no-repeat left;
		background-size: auto 6px;
		padding-left: 7px;
	}
	/* #sidr-section02
	-----------------------*/
	#sidr-section02 {
		overflow: hidden;
	}
	#sidr-section02 ul {
		margin-left: -1px;
		background: #185AA2;
		overflow: hidden;
	}
	#sidr-section02 li {
		width: 50%;
		float: left;
		height: 47px;
		border-left: 1px solid #FFF;
		box-sizing: border-box;
		margin-left: -1px;
	}
	#sidr-section02 li.btn-special {
		background: #335C86;
	}
	#sidr-section02 li a {
		font-size: 10px;
	}
	#sidr-section02 li.btn-special a {
		background: #335C86;
	}
	#sidr-section02 li a span {
		background: url("asset/c__icon_cursor_white.png") no-repeat left;
		background-size: auto 6px;
		padding-left: 7px;
	}
	#sidr-section02 li a span.icon-blank {
		background: url("assets/images/icon/ico_window-bl.svg") no-repeat left;
		background-size: auto 6px;
		width: 13px;
		height: 15px;
		background-size: 100% auto;
		padding-left: 0;
	}
	/* #sidr-section03
	-----------------------*/
	#sidr-section03 {
		font-size: 12px;
		background: #EEE;
		border: 1px solid #185AA2;
	}
	#sidr-section03 .tpl-inner-wrap {
		display: block;
	}
	#sidr-section03 .title {
		display: table-cell;
		text-align: center;
		vertical-align: middle;
		width: 163px;
		border-left: 1px solid #DDD;
		display: block;
		width: auto;
		border: none;
		padding: 15px 0;
	}
	#sidr-section03 .title img {
		width: 76px;
	}
	#sidr-section03 .cate-list {
		display: block;
		border: none;
		overflow: hidden;
	}
	#sidr-section03 .cate-list li {
		background: none;
		display: table;
		float: left;
		box-sizing: border-box;
		width: 50%;
		height: auto;
		float: left;
		border: 1px solid #FFF;
		border-right: none;
		border-bottom: none;
	}
	#sidr-section03 .cate-list li a {
		color: #333;
		background: none;
		font-size: 10px;
		display: table-cell;
		vertical-align: middle;
		background-size: 12px auto;
		padding: 15px;
	}
	#sidr-section03 .cate-list li a:hover {
		background-color: #FFF;
		text-decoration: none;
	}
	#sidr-section03 .cate-list li a span {
		background: url("asset/c__icon_cursor_blue.png") no-repeat left;
		background-size: auto 6px;
		padding-left: 7px;
	}
}

/* [ Magnific Popup CSS ]
-----------------------*/
.mfp-bg {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1042;
	overflow: hidden;
	position: fixed;
	background: #FFF;
	opacity: 0.8;
	filter: alpha(opacity=80);
}

.mfp-wrap {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1043;
	position: fixed;
	outline: none !important;
	-webkit-backface-visibility: hidden;
}

.mfp-container {
	text-align: center;
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	padding: 0 8px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.mfp-container:before {
	content: '';
	display: inline-block;
	height: 100%;
	vertical-align: middle;
}

.mfp-align-top .mfp-container:before {
	display: none;
}

.mfp-content {
	position: relative;
	display: inline-block;
	vertical-align: middle;
	margin: 0 auto;
	text-align: left;
	z-index: 1045;
}

.mfp-inline-holder .mfp-content, .mfp-ajax-holder .mfp-content {
	width: 100%;
	cursor: auto;
}

.mfp-ajax-cur {
	cursor: progress;
}

.mfp-zoom-out-cur {
	cursor: -moz-zoom-out;
	cursor: -webkit-zoom-out;
	cursor: zoom-out;
	background: none;
}

.mfp-zoom-out-cur .mfp-image-holder .mfp-close {
	cursor: -moz-zoom-out;
	cursor: -webkit-zoom-out;
	cursor: zoom-out;
	background: none;
}

.mfp-zoom {
	cursor: pointer;
	cursor: -webkit-zoom-in;
	cursor: -moz-zoom-in;
	cursor: zoom-in;
}

.mfp-auto-cursor .mfp-content {
	cursor: auto;
}

.mfp-close, .mfp-arrow, .mfp-preloader, .mfp-counter {
	-webkit-user-select: none;
	-moz-user-select: none;
	user-select: none;
}

.mfp-loading.mfp-figure {
	display: none;
}

.mfp-hide {
	display: none !important;
}

.mfp-preloader {
	color: #CCC;
	position: absolute;
	top: 50%;
	width: auto;
	text-align: center;
	margin-top: -0.8em;
	left: 8px;
	right: 8px;
	z-index: 1044;
}

.mfp-preloader a {
	color: #CCC;
}

.mfp-preloader a:hover {
	color: #FFF;
}

.mfp-s-ready .mfp-preloader, .mfp-s-error .mfp-content {
	display: none;
}

button.mfp-close, button.mfp-arrow {
	overflow: visible;
	cursor: pointer;
	border: 0;
	-webkit-appearance: none;
	display: block;
	outline: none;
	padding: 0;
	z-index: 1046;
	-webkit-box-shadow: none;
	box-shadow: none;
}

button::-moz-focus-inner {
	padding: 0;
	border: 0;
}

.mfp-close {
	width: 44px;
	height: 44px;
	line-height: 44px;
	position: absolute;
	right: 0;
	top: 0;
	text-decoration: none;
	text-align: center;
	padding: 0 0 18px 10px;
	font-style: normal;
	font-size: 40px;
	font-family: Arial, Baskerville, monospace;
}

.mfp-close:hover, .mfp-close:focus {
	opacity: 1;
	filter: alpha(opacity=100);
}

.mfp-close:active {
	top: 1px;
}

.mfp-close-btn-in .mfp-close {
	color: #333;
}

.mfp-image-holder .mfp-close, .mfp-iframe-holder .mfp-close {
	color: #185AA2;
	right: -6px;
	text-align: right;
	padding-right: 6px;
	width: 100%;
}

.mfp-counter {
	position: absolute;
	top: 0;
	right: 0;
	font-size: 12px;
	line-height: 18px;
	white-space: nowrap;
}

.mfp-arrow {
	position: absolute;
	margin: 0;
	top: 50%;
	margin-top: -55px;
	padding: 0;
	width: 90px;
	height: 110px;
	-webkit-tap-highlight-color: transparent;
}

.mfp-arrow:active {
	margin-top: -54px;
}

.mfp-arrow:hover, .mfp-arrow:focus {
	opacity: 1;
	filter: alpha(opacity=100);
}

.mfp-arrow:before, .mfp-arrow:after, .mfp-arrow .mfp-b, .mfp-arrow .mfp-a {
	content: '';
	display: block;
	width: 0;
	height: 0;
	position: absolute;
	left: 0;
	top: 0;
	margin-top: 35px;
	margin-left: 35px;
}

.mfp-arrow:after, .mfp-arrow .mfp-a {
	border-top-width: 13px;
	border-bottom-width: 13px;
	top: 8px;
}

.mfp-arrow:before, .mfp-arrow .mfp-b {
	border-top-width: 21px;
	border-bottom-width: 21px;
}

.mfp-arrow-left {
	left: 10px;
	width: 54px;
	height: 54px;
	background: url("asset/tpl_lb_btn_prev.gif") no-repeat;
}

/*.mfp-arrow-left:after, .mfp-arrow-left .mfp-a {
	border-right: 17px solid #FFF;
	margin-left: 31px;
}
.mfp-arrow-left:before, .mfp-arrow-left .mfp-b {
	margin-left: 25px;
	border-right: 27px solid #3F3F3F;
}*/
.mfp-arrow-right {
	right: 10px;
	width: 54px;
	height: 54px;
	background: url("asset/tpl_lb_btn_next.gif") no-repeat;
}

.mfp-arrow-right:after, .mfp-arrow-right .mfp-a {
	border-left: 17px solid #FFF;
	margin-left: 39px;
}

.mfp-arrow-right:before, .mfp-arrow-right .mfp-b {
	border-left: 27px solid #3F3F3F;
}

.mfp-iframe-holder {
	padding-top: 40px;
	padding-bottom: 40px;
}

.mfp-iframe-holder .mfp-content {
	line-height: 0;
	width: 100%;
	max-width: 900px;
}

.mfp-iframe-holder .mfp-close {
	top: -40px;
}

.mfp-iframe-scaler {
	width: 100%;
	height: 0;
	overflow: hidden;
	padding-top: 56.25%;
}

.mfp-iframe-scaler iframe {
	position: absolute;
	display: block;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
	background: #000;
}

/* Main image in popup */
img.mfp-img {
	width: auto;
	max-width: 100%;
	height: auto;
	display: block;
	line-height: 0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	padding: 40px 0 40px;
	margin: 0 auto;
}

/* The shadow behind the image */
.mfp-figure {
	line-height: 0;
}

.mfp-figure:after {
	content: '';
	position: absolute;
	left: 0;
	top: 40px;
	bottom: 40px;
	display: block;
	right: 0;
	width: auto;
	height: auto;
	z-index: -1;
	box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
	background: #444;
}

.mfp-figure small {
	color: #BDBDBD;
	display: block;
	font-size: 12px;
	line-height: 14px;
}

.mfp-figure figure {
	margin: 0;
}

.mfp-bottom-bar {
	margin-top: -36px;
	position: absolute;
	top: 100%;
	left: 0;
	width: 100%;
	cursor: auto;
}

.mfp-title {
	text-align: left;
	line-height: 18px;
	color: #333;
	word-wrap: break-word;
	padding-right: 36px;
}

.mfp-image-holder .mfp-content {
	max-width: 100%;
}

.mfp-gallery .mfp-image-holder .mfp-figure {
	cursor: pointer;
}

@media screen and (max-width: 800px) and (orientation: landscape), screen and (max-height: 300px) {
	/**
       * Remove all paddings around the image on small screen
       */
	.mfp-img-mobile .mfp-image-holder {
		padding-left: 0;
		padding-right: 0;
	}
	.mfp-img-mobile img.mfp-img {
		padding: 0;
	}
	.mfp-img-mobile .mfp-figure:after {
		top: 0;
		bottom: 0;
	}
	.mfp-img-mobile .mfp-figure small {
		display: inline;
		margin-left: 5px;
	}
	.mfp-img-mobile .mfp-bottom-bar {
		bottom: 0;
		margin: 0;
		top: auto;
		padding: 3px 5px;
		position: fixed;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		color: #185AA2;
	}
	.mfp-img-mobile .mfp-bottom-bar:empty {
		padding: 0;
	}
	.mfp-img-mobile .mfp-counter {
		right: 5px;
		top: 3px;
	}
	.mfp-img-mobile .mfp-close {
		top: 0;
		right: 0;
		width: 35px;
		height: 35px;
		line-height: 35px;
		position: fixed;
		text-align: center;
		padding: 0;
	}
}

@media all and (max-width: 900px) {
	.mfp-arrow {
		-webkit-transform: scale(0.75);
		transform: scale(0.75);
	}
	.mfp-arrow-left {
		-webkit-transform-origin: 0;
		transform-origin: 0;
	}
	.mfp-arrow-right {
		-webkit-transform-origin: 100%;
		transform-origin: 100%;
	}
	.mfp-container {
		padding-left: 6px;
		padding-right: 6px;
	}
}

.mfp-ie7 .mfp-img {
	padding: 0;
}

.mfp-ie7 .mfp-bottom-bar {
	width: 600px;
	left: 50%;
	margin-left: -300px;
	margin-top: 5px;
	padding-bottom: 5px;
}

.mfp-ie7 .mfp-container {
	padding: 0;
}

.mfp-ie7 .mfp-content {
	padding-top: 44px;
}

.mfp-ie7 .mfp-close {
	top: 0;
	right: 0;
	padding-top: 0;
}

/* [SPのみフッターサイトマップ]
	#sp-footer-sitemap
-----------------------*/
#sp-footer-sitemap {
	display: none;
}

#sp-footer-sitemap .item {
	width: 100%;
	vertical-align: bottom;
}

#sp-footer-sitemap .item li {
	display: table !important;
}

#sp-footer-sitemap .item li a {
	display: table-cell !important;
	vertical-align: middle;
	color: #333 !important;
	padding: 12px !important;
}

#sp-footer-sitemap #sidr-section02 li {
	border-top: 1px solid #fff;
	display: table !important;
}

#sp-footer-sitemap #sidr-section02 li a {
	padding: 15px !important;
	display: table-cell !important;
	vertical-align: middle;
}

@media screen and (max-width: 740px) {
	#sp-footer-sitemap {
		display: block;
	}
}

@media screen and (max-width: 740px) {
	#tpl-footer-global .inner-list-01 {
		display: none;
	}
}
