@charset "UTF-8";
@import url(iconfont/material-icons.css);

/* /////////////// reset /////////////// */
* {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	vertical-align: middle;
	box-sizing: border-box;
}

article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section { 
	display:block;
}

h1,h2,h3,h4,h5,h6 {
	font-size: 1em;
	font-weight: normal;
}

table {
	border-collapse: separate;
	border-spacing: 0px;
}

ol, ul {
list-style: none;
}




/* /////////////// set /////////////// */
html {
	overflow-y: auto;
	font-size: 16px;
	line-height: 1.8em;
	width: 100%;
	height: 100%;
	position: relative;
}
body {
	position: relative;
	min-width: auto;
	color: #000;
	/* font-family: 'Avenir','Helvetica Neue','Helvetica','Arial','Hiragino Sans','ヒラギノ角ゴ Pro W3','メイリオ', Meiryo,'ＭＳ Ｐゴシック','MS PGothic, sans-serif'; */
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	
	font-size: 100%;
	line-height: 1.8em;
	-webkit-text-size-adjust: 100%;

	width: 100%;
	height: 100%;
	
	text-align: justify;
	text-justify:inter-ideograph;
}



a:link,
a:visited {
	color: rgba(34,34,34,1.0);
	text-decoration: none;
	transition: all 0.3s;
}
a:hover {
	text-decoration: underline;
	color: rgba(0,72,128,1.0);
}
#contents-main a:link,
#contents-main a:visited {
	color: rgba(0,72,128,1.0);
}
#contents-main a:hover {
	color: rgba(34,34,34,1.0);
}

.sp-on-block {
	display: block;
}
.sp-on {
	display: inline-block;
}
.pc-on {
	display: none;
}
.sp-br {
	display: inline-block;
}
.pc-br {
	display: none;
}
.sp-on768 {
	display: inline-block;
}
.pc-on768 {
	display: none;
}


.top-list-img {
	overflow: hidden;
}
img.photo-over {
	transition: all 0.5s;
}
img.photo-over:hover {
	opacity:0.6;
}
.ib-img img.photo-over:hover,
.theme-img img.photo-over:hover,
.play-img img.photo-over:hover,
.p02 #second-inner img.photo-over:hover {
	opacity:0.6;
	transform: scale(1.05,1.05);
}
img.photo-rotate {
	transition: all 0.3s;
	transform: rotateZ(0deg) scale(0.9,0.9);
}
img.photo-rotate:hover {
	opacity:0.6;
	transform: rotateZ(-7deg) scale(1.1,1.1);
}
img.photo-scale {
	transition: all 0.5s;
	opacity:1.0;
	transform: scale(1.0,1.0);
}
img.photo-scale:hover {
	opacity:0.6;
	transform: scale(1.1,1.1);
}

.no-background {
	background: none !important;
}


@media all and (-ms-high-contrast: none) {
	#main-menu p {
		-ms-transform: rotate(0.06deg);
		-moz-transform: rotate(0.06deg);
		-webkit-transform: rotate(0.06deg);
		transform: rotate(0.06deg);
	}
	#main-menu p img {
		-ms-transform: rotate(-0.06deg);
		-moz-transform: rotate(-0.06deg);
		-webkit-transform: rotate(-0.06deg);
		transform: rotate(-0.06deg);
	}
}

@supports (-ms-ime-align: auto) {
	#main-menu p {
		-ms-transform: rotate(0.06deg);
		-moz-transform: rotate(0.06deg);
		-webkit-transform: rotate(0.06deg);
		transform: rotate(0.06deg);
	}
	#main-menu p img {
		-ms-transform: rotate(-0.06deg);
		-moz-transform: rotate(-0.06deg);
		-webkit-transform: rotate(-0.06deg);
		transform: rotate(-0.06deg);
	}
}

@media screen and (-webkit-min-device-pixel-ratio:0) {
	#main-menu p {
		-ms-transform: rotate(0.06deg);
		-moz-transform: rotate(0.06deg);
		-webkit-transform: rotate(0.06deg);
		transform: rotate(0.06deg);
	}
	#main-menu p img {
		-ms-transform: rotate(-0.06deg);
		-moz-transform: rotate(-0.06deg);
		-webkit-transform: rotate(-0.06deg);
		transform: rotate(-0.06deg);
	}
}






@media print, screen and (min-width: 768px) {
.sp-br {
	display: none;
}
.pc-br {
	display: inline-block;
}
.sp-on768 {
	display: none;
}
.pc-on768 {
	display: inline-block;
}

}

@media print, screen and (min-width: 1026px) {
.sp-on {
	display: none;
}
.pc-on {
	display: inline-block;
}

}

@media print, screen and (min-width: 1260px) {

}

@media print, screen and (min-width: 1400px) {

}







/* page-navi ----------------------------------------------------------------- */
.page-navi {
	max-width: 800px;
	margin: 0px auto;
	-webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  -moz-osx-font-smoothing: grayscale;
  font-feature-settings: 'liga';
}
.page-navi a {
	position: relative;
}
.page-navi a {
	display: inline-block;
	background: rgba(242,242,242,1.0);
	border: 1px solid #999;
	color: #000 !important;
	transition: all 0.4s;
	position: relative;
	padding: 5px 0px;
	position: relative;
	width: 90%;
	max-width: calc(400px / 2);
	text-align: center;
	margin: 0px auto;
}
.page-navi a:hover {
	background: rgba(102,102,102,1.0);
	color: rgba(255,255,255,1.0) !important;
	text-decoration: none;
}
.page-navi a:before {
	font-family: 'Material Icons';
	font-weight: normal;
	font-style: normal;
	font-size: 18px;
	color: rgba(0,72,128,1.0);
	line-height: 1;
	text-transform: none;
	letter-spacing: normal;
	direction: ltr;
	vertical-align: middle;
	margin: 0px;
	position: absolute;
	right: 0px;
	transform: scale(1.0,1.8);
	content: "chevron_right";
	top: calc(50% - 8px);
}
.page-navi .b-button {
	text-align: left;
}
.page-navi .n-button {
	text-align: right;
}
.page-navi .b-button a,
.page-navi .n-button a {
	width: 100%;
}
.page-navi .b-button a:before {
	right: auto;
	left: 0px;
	content: "chevron_left";
	top: calc(50% - 8px);
}
.page-navi {
	text-align: center;
}
.page-navi {
	display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
	
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
.page-navi div {
	-ms-flex-preferred-size: 45%;
	flex-basis: 45%;
}






/* parts ----------------------------------------------------------------- */
img.photo-wide {
	height: auto;
	width: 100%;
}
img.photo-max750 {
	height: auto;
	max-width: 750px;
	width: 100%;
}
.t-right {
	text-align: right;
}
.t-left {
	text-align: left !important;
}
.w-auto {
	width: auto !important;
}

.contents-area table td,
.contents-area table th {
	vertical-align: top;
}

.material-icons {
	font-size: 160% !important;
}
.scroll-table {
	overflow: auto;
  white-space: nowrap;
}
.table {
	overflow: auto;
}
.photo-right {
	display: block;
	padding: 0px 0px 10px 15px;
	float: right;
}


sup {
	font-size: 80%;
	vertical-align: top;
	position: relative;
	top: -0.1em;
}


.outline-title {
	font-size: 110%;
	line-height: 1.5em;
	padding: 5px 10px;
	border: 1px solid #CCC;
	margin: 0px 0px 10px;
}
.line-title {
	font-size: 100%;
	line-height: 1.5em;
	padding: 0px 0px 4px;
	margin: 0px 0px 7px;
	border-bottom: 1px solid #CCC;
}


.tpadding10 {
	padding: 15px;
}

/* legacy css  */



.font-s,
.font-cap,
.stxt {
	font-size: 0.83em;
	line-height: 1.4em;
	text-align:start !important;
	text-justify:none !important;
}
span.font-cap {
	display: inline-block;
}
.stxt2 {
	font-size:0.846em;
	line-height: 1.6em;
}
.stxt3 {
	font-size:0.846em;
line-height: 1.8em;
}
.stxt12-13 {
	font-size:0.923em;
	line-height: 1.3em;
}
.stxt12-15 {
	font-size:0.923em;
	line-height: 1.5em;
}
.stxt12-17 {
	font-size:0.923em;
	line-height: 1.7em;
}
.font-l {
	font-size: 1.2em;
}
.font-ll {
	font-size: 1.4em;
}
.font-lb {
	font-size: 1.2em;
	font-weight: bold;
}
.font-llb {
	font-size: 1.4em;
	font-weight: bold;
}
.font10 {
	font-size: 10px;
	line-height: 1.3em;
}
.font12w {
	font-size: 12px;
	line-height: 2em;
}
.font12s {
	font-size: 12px;
	line-height: 1.3em;
}
.font14 {
	font-size: 14px;
}
.font14w {
	font-size: 14px;
	line-height: 2em;
}
.font-lhss {
	font-size: 88%;
	line-height: 1.5em;
}
.font-lhs {
	font-size: 88%;
	line-height: 1.9em;
}
.photo-cap-l {
	font-size: 11px !important;
	line-height: 1.4em !important;
	display: inline-block;
}


.clear {
  clear: both;
  height: 0px;
  visibility: hidden;
}

.com-list,
.coms-list {
	width: 100%;
	margin: 0px 0px 20px;
}
.com-list td,
.com-list th,
.coms-list td,
.coms-list th {
	border: none;
	vertical-align: top;
	line-height: 1.5em;
	padding: 10px;
	font-size: 90%;
	display: block;
	width: auto !important;
}
.com-list th,
.coms-list th {
	font-weight: normal;
}
.com-list td:first-child,
.coms-list td:first-child {
	background: rgba(0,0,0,0.1);
}
.com-list td:last-child,
.coms-list td:last-child {
	padding: 10px 0px;
}

.layout-table {
	width: 100%;
}
/*
.layout-table img {
	max-width: 100%;
	height: auto;
}
*/
.v-top {
	vertical-align: top;
	text-align:justify; text-justify: inter-ideograph; 
}
.v-bottom {
	vertical-align: bottom;
}
.w-right {
	text-align: right;
}
.t-center {
	text-align: center;
}

.line {
	background: #CCC;
	height: 1px;
	margin: 0px 0px 15px;
}
.body-line {
	background: #CCC;
	height: 1px;
}
.blue {
	color: #0055A2;
}


.contents-area img {
	max-width: 100%;
	height: auto;
	/* display: block;
	margin: 0px auto; */
}

.contbox {
	border: 1px solid #AAAAAA;
	padding: 14px;
	background: #FFF;
}

.fin-list {
	width: 100%;
	background: #fff;
	border-top: 1px solid #CCC;
	border-left: 1px solid #CCC;
	margin: 0px 0px 20px;
}
.fin-list td  {
	vertical-align: top;
	border-right: 1px solid #CCC;
	border-bottom: 1px solid #CCC;
	background: #FFF;
	padding: 10px;
	font-size: 90%;
	line-height: 1.5em;
	width: auto;
}
.fin-list td:first-child {
	/* background: rgba(0,0,0,0.1); */
}

.fin-list2 {
	width: 100%;
	background: #fff;
	border-top: 1px solid #CCC;
	border-left: 1px solid #CCC;
	margin: 0px 0px 20px;
}
.fin-list2 td  {
	vertical-align: top;
	border-right: 1px solid #CCC;
	border-bottom: 1px solid #CCC;
	background: #FFF;
	padding: 10px;
	font-size: 90%;
	line-height: 1.5em;
	width: auto;
}
.fin-list2 td:first-child {
	/* background: rgba(0,0,0,0.1); */
}
.fin-list4 {
    border: 1px solid #ccc;
}
.fin-list4 td  {
    padding: 20px 10px;
}
.add-list2 {
	width: 100%;
	line-height: 1.5em;
	font-size: 90%;
	padding: 10px 0px;
	border-top: 1px solid #CCC;
	border-bottom: 1px solid #CCC;
}
.add-block {
	margin-bottom: 20px;
}



/* title */
.cont-title {
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #BBBBBB;
	font-size: 120%;
	font-weight: bold;
	margin: 0px 0px 10px;
	padding: 0px 0px 5px;
}
.box-title {
	font-size: 115%;
	font-weight: normal;
	line-height: 1.6em;
	margin: 0px;
	padding: 0px;
}
.boxtitle {
	font-size: 120%;
	font-weight: normal;
	background: #FFFFFF;
	line-height: 1.4em;
	border: 1px solid #BBBBBB;
	margin: 0px 0px 12px;
	padding: 6px 10px;
}
.body-line-t {
	font-size: 120%;
	font-weight: normal;
	line-height: 1.4em;
	margin: 0px 0px 12px;
	padding: 0px 0px 6px;
	border-bottom: 1px solid #BBBBBB;
}
.cont-title-back {
	font-size: 120%;
	font-weight: normal;
	background: #EEEEEE;
	line-height: 1.4em;
	margin: 0px 0px 12px;
	padding: 6px 10px;
}
.cont-title-back2 {
	font-size: 120%;
	font-weight: normal;
	background: #EEEEEE;
    border-radius: 8px;
    line-height: 1.4em;
	margin: 0px 0px 12px;
	padding: 12px 10px;
}

.bodytitle-level2 {
	font-size: 115%;
	font-weight: normal;
	padding: 0px 0px 12px;
	line-height: 1.4em;
	color: #000000;
	border-top: 2px solid rgba(120,120,120,1.0);
}

.bodytitle-level3 {
	font-size: 110%;
	font-weight: normal;
	padding: 0px 0px 12px;
	line-height: 1.4em;
	color: #000000;
}

.white-space-n {
	white-space: normal !important;
}
.white-space-y {
	white-space: nowrap !important;
}


.mab0 {
	margin-bottom: 0px !important;
}
.mab1 {
	margin-bottom: 1px !important;
}
.mab3 {
	margin-bottom: 3px !important;
}
.mab5 {
	margin-bottom: 5px !important;
}
.mab7 {
	margin-bottom: 7px !important;
}
.mab10 {
	margin-bottom: 10px !important;
}
.mab15 {
	margin-bottom: 12px !important;
}
.mab17 {
	margin-bottom: 14px !important;
}
.mab20 {
	margin-bottom: 15px !important;
}
.mab22 {
	margin-bottom: 16px !important;
}
.mab25 {
	margin-bottom: 18px !important;
}
.mab30 {
	margin-bottom: 26px !important;
}
.mab40 {
	margin-bottom: 30px !important;
}
.mab50 {
	margin-bottom: 32px !important;
}
.mab80 {
	margin-bottom: 40px !important;
}
.mat2 {
	margin-top: 2px !important;
}
.mat5 {
	margin-top: 5px !important;
}
.mat7 {
	margin-top: 5px !important;
}
.mat10 {
	margin-top: 10px !important;
}
.mat15 {
	margin-top: 12px !important;
}
.mat20 {
	margin-top: 15px !important;
}
.mat30 {
	margin-top: 20px;
}
.mat40 {
	margin-top: 30px;
}
.mat50 {
	margin-top: 35px;
}
.mat80 {
	margin-top: 20px;
}
.mar0 {
	margin-right: 0px !important;
}
.pat5 {
	padding-top: 5px;
}
.pat10 {
	padding-top: 10px;
}
.pat15 {
	padding-top: 15px;
}
.pat20 {
	padding-top: 20px;
}
.pat30 {
	padding-top: 30px;
}
.pat0 {
	padding-top: 0px;
}
.par0 {
	padding-right: 0px !important;
}
.par4 {
	padding-right: 4px !important;
}
.par6 {
	padding-right: 6px !important;
}
.par8 {
	padding-right: 8px !important;
}
.par10 {
	padding-right: 10px !important;
}
.par15 {
	padding-right: 15px !important;
}
.par20 {
	padding-right: 20px !important;
}
.pab1 {
	padding-bottom: 1px !important;
}
.pab3 {
	padding-bottom: 3px !important;
}
.pab4 {
	padding-bottom: 4px !important;
}
.pab5 {
	padding-bottom: 5px !important;
}
.pab10 {
	padding-bottom: 10px !important;
}
.pab15 {
	padding-bottom: 15px !important;
}
.pab20 {
	padding-bottom: 20px !important;
}
.pab30 {
	padding-bottom: 20px !important;
}
.pab40 {
	padding-bottom: 26px;
}
.pab50 {
	padding-bottom: 30px;
}
.pab80 {
	padding-bottom: 80px;
}
.pab100 {
	padding-bottom: 100px;
}
.pal1em {
	padding-left: 1em;
}
.pal2em {
	padding-left: 1.5em;
}

.sup-cont {
	width: 100%;
	font-size: 88%;
	line-height: 1.9em;
}
.table-cont {
	width: 100%;
}
.sup-left,
.table-cont td:first-child {
	vertical-align: top;
	text-align: justify;
	text-justify: inter-ideograph;
	display: block;
	padding: 0px 0px 30px;
	width: auto;
}
.sup-right,
.table-cont td:last-child {
	vertical-align: top;
	width: auto;
	display: block;
}
.table-cont td:last-child {
	text-align: center;
}
.c-strong {
	color: rgba(0,72,128,1.0);
}


.sup-menu-mid {
	background: url(../../support/img/sup_menu_mid.gif) repeat-y;
	line-height: 1.3em;
	padding: 9px 13px;
	width: 339px;
}
.sup-menu-bot {
	background: url(../../support/img/sup_menu_bot.gif) no-repeat;
	height: 3px;
}
.sup-menu-cont {
	background: #EEEEEE;
	margin-bottom: 8px;
	padding-top: 3px;
	padding-right: 5px;
	padding-bottom: 3px;
	padding-left: 5px;
}
.sup-menu-contc {
	background: #EEEEEE;
	margin-bottom: 8px;
	padding-top: 3px;
	padding-right: 5px;
	padding-bottom: 3px;
	padding-left: 5px;
	text-align: center;
}

.photocap-l,
.photocap-l strong,
span.photocap-l {
	font-size: 12px !important;
	line-height: 1.5em !important;
	text-align: left;
	margin: 3px auto 5px;
}



.backbutton {
	display: none;
}




/* 主に news topics */
.block-list-n {
	width: 100%;
	margin: 0px 0px 15px;
}
/*
.block-list-n p strong {
	padding: 0px 0px 10px;
}
*/
.block-list-n td {
	vertical-align: top;
	padding: 8px 0px;
	font-size: 85%;
	line-height: 1.6em;
	display: block;
	width: 100%;
}
.block-n-left {
	white-space: nowrap;
	background: #eee;
	padding: 8px 12px !important;
}
td.block-n-right {
}
.block-nb-left {
	white-space: nowrap;
	font-weight: bold;
	background: #eee;
	padding: 8px 12px !important;
}




/* ライン付きテーブル */
table.line-table {
	width: 100%;
	font-size: 90%;
	line-height: 1.6em;
}
table.line-table td {
	display: block;
	padding: 10px;
	width: auto;
}
table.line-table td:first-child {
	background: #eee;
}
table.line-table td:last-child {
	padding: 10px 0px;
}



/* ナンバリング・ライン付のリスト */
.num-list-line {
	list-style: decimal outside;
	padding: 0px 0px 0px 1em;
}
.num-list-line li {
	padding: 6px 0px;
	border-bottom: 1px solid #CCC;
}



@media print, screen and (min-width: 768px) {

.photo-right {
	display: block;
	padding: 0px 0px 15px 20px;
	float: right;
}


.outline-title {
	font-size: 115%;
	line-height: 1.5em;
	padding: 10px 15px;
	border: 1px solid #CCC;
	margin: 0px 0px 20px;
}
.line-title {
	font-size: 108%;
	line-height: 1.5em;
	padding: 0px 0px 6px;
	margin: 0px 0px 10px;
	border-bottom: 1px solid #CCC;
}


.font-lhss {
	font-size: 95%;
	line-height: 1.5em;
}
.font-lhs {
	font-size: 95%;
	line-height: 1.9em;
}

.com-list,
.coms-list {
	margin: 0px 0px 25px;
	border-top: 1px solid #CCC;
}
.com-list td,
.com-list th,
.coms-list td,
.coms-list th {
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #CCCCCC;
	vertical-align: top;
	line-height: 1.5em;
	padding: 12px 15px 12px 0px;
	font-size: 90%;
	display: table-cell;
}
.com-list th,
.coms-list th {
}
.com-list td:first-child,
.coms-list td:first-child {
	background: none;
}
.com-list td:last-child,
.coms-list td:last-child  {
	padding: 12px 0px;
}

.contbox {
	border: 1px solid #AAAAAA;
	padding: 20px;
}
.fin-list {
	margin: 0px 0px 25px;
}
.fin-list td  {
	padding: 12px;
}

.fin-list2 {
	margin: 0px 0px 25px;
}
.fin-list2 td  {
	padding: 12px;
}



.tpadding10 {
	padding: 25px;
}



/* title */
.boxtitle {
	font-size: 125%;
	background: #FFFFFF;
	line-height: 1.35em;
	border: 1px solid #BBBBBB;
	padding: 10px 15px;
	margin: 0px 0px 16px;
}
.body-line-t {
	font-size: 125%;
	line-height: 1.35em;
	margin: 0px 0px 16px;
	padding: 0px 0px 10px;
}
.box-title {
	font-size: 118%;
	line-height: 1.5em;
}
.cont-title-back {
	font-size: 125%;
	font-weight: normal;
	background: #EEEEEE;
	line-height: 1.35em;
	padding: 10px 15px;
	margin: 0px 0px 16px;
}
.bodytitle-level2 {
	font-size: 120%;
	font-weight: normal;
	padding: 4px 0px 12px;
	line-height: 1.4em;
	border-top: 2px solid rgba(120,120,120,1.0);
	margin: 10px 0px 0px;
}

	.bodytitle-level3 {
	font-size: 114%;
	font-weight: normal;
	padding: 0px 0px 12px;
	line-height: 1.4em;
	margin: 0px 0px 0px;
}
.cont-title {
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #BBBBBB;
	font-size: 1.2em;
	font-weight: bold;
	margin-bottom: 10px;
	padding: 0px 0px 5px;
}



.sup-cont {
	font-size: 95%;
	line-height: 1.9em;
}
.sup-left {
	vertical-align: top;
	text-align: justify;
	text-justify: inter-ideograph;
	display: table-cell;
	padding: 0px 30px 0px 0px;
	width: auto;
}
.sup-right {
	width: 100%;
	vertical-align: top;
	width: 168px;
	display: table-cell;
}

.table-cont {
}
.table-cont td:first-child  {
	display: table-cell;
	padding: 0px;
	width: 60%;
}
.table-cont td:last-child {
	display: table-cell;
	text-align: right;
	width: 40px;
}

.line {
	background: #CCC;
	height: 1px;
	margin: 0px 0px 25px;
}


/*
.scroll-table {
	overflow: auto;
  white-space: nowrap;
}
*/
.table {
	overflow: visible;
}


.font-s,
.font-cap {
	font-size: 0.85em;
	line-height: 1.4em;
}
.stxt2 {
	font-size:0.95em;
	line-height: 1.6em;
}
.stxt3 {
	font-size:0.95em;
line-height: 1.8em;
}
.stxt12-13 {
	font-size:1.0em;
	line-height: 1.3em;
}
.stxt12-15 {
	font-size:1.0em;
	line-height: 1.5em;
}
.stxt12-17 {
	font-size:1.0em;
	line-height: 1.7em;
}
.font-l {
	font-size: 1.3em;
}
.font-ll {
	font-size: 1.5em;
}
.font-lb {
	font-size: 1.3em;
	font-weight: bold;
}
.font-llb {
	font-size: 1.5em;
	font-weight: bold;
}
.font10 {
	font-size: 12px;
	line-height: 1.3em;
}
.font12w {
	font-size: 14px;
	line-height: 2em;
}
.font12s {
	font-size: 14px;
	line-height: 1.3em;
}
.font14 {
	font-size: 15px;
}
.font14w {
	font-size: 15px;
	line-height: 2em;
}
.font-lhss {
	font-size: 95%;
	line-height: 1.5em;
}
.font-lhs {
	font-size: 95%;
	line-height: 1.9em;
}
.photo-cap-l {
	font-size: 12px !important;
	line-height: 1.4em !important;
	display: inline-block;
}

.mab10 {
	margin-bottom: 10px !important;
}
.mab15 {
	margin-bottom: 15px !important;
}
.mab17 {
	margin-bottom: 17px !important;
}
.mab20 {
	margin-bottom: 20px !important;
}
.mab22 {
	margin-bottom: 22px !important;
}
.mab25 {
	margin-bottom: 25px !important;
}
.mab30 {
	margin-bottom: 30px !important;
}
.mab40 {
	margin-bottom: 40px !important;
}
.mab50 {
	margin-bottom: 50px !important;
}
.mab80 {
	margin-bottom: 80px !important;
}
.mat2 {
	margin-top: 2px !important;
}
.mat5 {
	margin-top: 5px !important;
}
.mat7 {
	margin-top: 5px !important;
}
.mat10 {
	margin-top: 10px !important;
}
.mat15 {
	margin-top: 15px !important;
}
.mat20 {
	margin-top: 20px !important;
}
.mat30 {
	margin-top: 30px;
}
.mat40 {
	margin-top: 40px;
}
.mat50 {
	margin-top: 50px;
}
.mat80 {
	margin-top: 80px;
}
.mar0 {
	margin-right: 0px !important;
}
.pat5 {
	padding-top: 5px;
}
.pat10 {
	padding-top: 10px;
}
.pat15 {
	padding-top: 15px;
}
.pat20 {
	padding-top: 20px;
}
.pat30 {
	padding-top: 30px;
}
.pat0 {
	padding-top: 0px;
}
.par0 {
	padding-right: 0px !important;
}
.par4 {
	padding-right: 4px !important;
}
.par6 {
	padding-right: 6px !important;
}
.par8 {
	padding-right: 8px !important;
}
.par10 {
	padding-right: 10px !important;
}
.par15 {
	padding-right: 15px !important;
}
.par20 {
	padding-right: 20px !important;
}
.pab1 {
	padding-bottom: 1px !important;
}
.pab3 {
	padding-bottom: 3px !important;
}
.pab4 {
	padding-bottom: 4px !important;
}
.pab5 {
	padding-bottom: 5px !important;
}
.pab10 {
	padding-bottom: 10px !important;
}
.pab15 {
	padding-bottom: 15px !important;
}
.pab20 {
	padding-bottom: 20px !important;
}
.pab30 {
	padding-bottom: 30px !important;
}
.pab40 {
	padding-bottom: 40px !important;
}
.pab50 {
	padding-bottom: 50px !important;
}
.pab80 {
	padding-bottom: 80px;
}
.pab100 {
	padding-bottom: 100px;
}
.pal1em {
	padding-left: 1em;
}
.pal2em {
	padding-left: 2em;
}





/* 主に news topics */
.block-list-n {
	width: auto;
	margin: 0px 0px 20px;
}
/*
.block-list-n p strong {
	padding: 0px 0px 10px;
}
*/
.block-list-n td{
	padding: 10px 0px;
	font-size: 90%;
	line-height: 1.6em;
	display: table-cell;
	width: auto;
}
.block-n-left {
	background: none;
	padding: 10px 25px 10px 0px !important;
}
td.block-n-right {
}
.block-nb-left {
	background: none;
	padding: 10px 25px 10px 0px !important;
	display: table-cell;
}


/* ライン付きテーブル */
table.line-table {
	width: 100%;
	font-size: 95%;
	line-height: 1.6em;
	border-top: 1px solid #CCC;
	border-left: 1px solid #CCC;
}
table.line-table td {
	display: table-cell;
	padding: 15px;
	width: auto;
	border-right: 1px solid #CCC;
	border-bottom: 1px solid #CCC;
}
table.line-table td:first-child {
	background: none;
	white-space: nowrap;
}
table.line-table td:last-child {
	padding: 15px;
}


/* ナンバリング・ライン付のリスト */
.num-list-line {
	list-style: decimal outside;
	padding: 0px 0px 0px 1em;
}
.num-list-line li {
	padding: 12px 0px;
	border-bottom: 1px solid #CCC;
}



.photocap-l,
.photocap-l strong,
span.photocap-l {
	font-size: 13px !important;
	line-height: 1.5em !important;
	text-align: left;
	margin: 4px auto 7px;
}


}







@media print, screen and (min-width: 1026px) {
/*
.outline-title {
	font-size: 120%;
	line-height: 1.5em;
	padding: 15px 20px;
	border: 1px solid #CCC;
	margin: 0px 0px 25px;
}
*/


.font-lhss {
	font-size: 100%;
	line-height: 1.6em;
}
.font-lhs {
	font-size: 100%;
	line-height: 1.9em;
}
.com-list,
.coms-list {
	margin: 0px 0px 30px;
}
.contbox {
	border: 1px solid #AAAAAA;
	padding: 30px;
}
.fin-list {
	margin: 0px 0px 30px;
}
.fin-list td  {
	padding: 12px;
}

.fin-list2 {
	margin: 0px 0px 0px;
}
.fin-list2 td  {
	padding: 12px;
}



.font-cap {
	font-size: 0.9em;
	line-height: 1.5em;
}


/* title */
.boxtitle {
	font-size: 125%;
	background: #FFFFFF;
	line-height: 1.35em;
	border: 1px solid #BBBBBB;
	padding: 12px 20px;
	margin: 0px 0px 20px;
}
.body-line-t {
	font-size: 125%;
	line-height: 1.35em;
	margin: 0px 0px 20px;
	padding: 0px 0px 12px;
}

.box-title {
	font-size: 120%;
	line-height: 1.5em;
}
.cont-title-back {
	font-size: 125%;
	font-weight: normal;
	background: #EEEEEE;
	line-height: 1.35em;
	padding: 12px 20px;
	margin: 0px 0px 20px;
}
.bodytitle-level2 {
	font-size: 125%;
	font-weight: normal;
	padding: 5px 0px 15px;
	line-height: 1.3em;
	border-top: 2px solid rgba(120,120,120,1.0);
	margin: 20px 0px 0px;
}
	.bodytitle-level3 {
	font-size: 115%;
	font-weight: normal;
	padding: 0px 0px 15px;
	line-height: 1.3em;
	margin: 0px 0px 0px;
}

.cont-title {
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #BBBBBB;
	font-size: 120%;
	font-weight: bold;
	margin: 0px 0px 18px;
	padding: 0px 0px 6px;
	line-height: 1.5em;
}
.sup-cont {
	font-size: 100%;
	line-height: 1.9em;
}

.line {
	background: #CCC;
	height: 1px;
	margin: 0px 0px 30px;
}






/* 主に news topics */
.block-list-n {
	width: auto;
	margin: 0px 0px 35px;
}
/*
.block-list-n p strong {
	padding: 0px 0px 10px;
}
*/
.block-list-n td {
	padding: 10px 0px;
	font-size: 95%;
	line-height: 1.6em;
	display: table-cell;
	width: auto;
}
.block-n-left {
	padding: 10px 30px 10px 0px !important;
}
.block-nb-left {
	padding: 10px 30px 10px 0px !important;
}


}





@media print, screen and (min-width: 1260px) {
.contbox {
	border: 1px solid #AAAAAA;
	padding: 40px;
}
.line {
	background: #CCC;
	height: 1px;
	margin: 0px 0px 40px;
}
}


@media print, screen and (min-width: 1400px) {

}









/* Utilities ----------------------------------------------------------------- */

/* Toggle Button */
#nav-toggle {
	position: absolute;
	right: 15px;
	top: 20px;
	width: 30px;
	height: 36px;
	cursor: pointer;
	text-align: center;
	z-index: 1001;
}
#nav-toggle div {
    position: relative;
}
#nav-toggle span {
	display: block;
	position: absolute;
	height: 4px;
	width: 100%;
	background: rgba(0,72,128,1.0);
	left: 0;
	-webkit-transition: .35s ease-in-out;
	-moz-transition: .35s ease-in-out;
	transition: .35s ease-in-out;
}

#nav-toggle span:nth-child(1) {
    top: 0;
}
#nav-toggle span:nth-child(2) {
    top: 11px;
}
#nav-toggle span:nth-child(3) {
    top: 22px;
}
#nav-toggle.open span:nth-child(1) {
		top: 11px;
		-webkit-transform: rotate(135deg);
		-moz-transform: rotate(135deg);
		transform: rotate(135deg);
}
#nav-toggle.open span:nth-child(2) {
		width: 0;
		left: 50%;
}
#nav-toggle.open span:nth-child(3) {
		top: 11px;
		-webkit-transform: rotate(-135deg);
		-moz-transform: rotate(-135deg);
		transform: rotate(-135deg);
}






@media print, screen and (min-width: 768px) {
#nav-toggle {
	right: 20px;
	top: 35px;
}
}
@media print, screen and (min-width: 1026px) {
#nav-toggle {
	display: none;
}
}


@media print, screen and (min-width: 1260px) {

}


@media print, screen and (min-width: 1400px) {
}










/* page-anchor */
.page-anchor {
	margin: 0px 0px 20px;

  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;

	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;

	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}
.page-anchor::before{
  content:"";
  display: block;
  width:23%;
  order:1;
}
.page-anchor::after{
  content:"";
  display: block;
  width:23%;
}
.page-anchor li {
	-ms-flex-preferred-size: calc(50% - 10px);
	flex-basis: calc(50% - 10px);
	border-bottom: 3px solid #eeeeee;
}
.page-anchor li a {
	display: block;
	position: relative;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
	-moz-osx-font-smoothing: grayscale;
	font-feature-settings: 'liga';
	color: rgba(0,0,0,1.0) !important;
	padding: 4px 10px 4px 2px;
}
.page-anchor li a::before {
	font-family: 'Material Icons';
  font-weight: normal;
  font-style: normal;
	font-size: 18px;
	color: rgba(102,102,102,1.0);
  line-height: 1;
  text-transform: none;
  letter-spacing: normal;
  direction: ltr;
	vertical-align: middle;
	margin: 0px 4px 0px 0px;
}
.page-anchor li a::before {
	color: rgba(0,72,128,1.0);
	content: "chevron_right";
	position: absolute;
	transform: scale(1.4,1.2) rotate(90deg);
	top: calc(50% - 8px);
	right: 0px;
}
.page-anchor li a:hover {
	background: rgba(102,102,102,0.2);
	text-decoration: none;
}


@media print, screen and (min-width: 768px) {
/* page-anchor */
.page-anchor {
	margin: 0px 0px 40px;
}
.page-anchor li {
	-ms-flex-preferred-size: calc(25% - 10px);
	flex-basis: calc(25% - 10px);
}
}


@media print, screen and (min-width: 1026px) {


}


@media print, screen and (min-width: 1260px) {

}


@media print, screen and (min-width: 1400px) {
}








/* search ----------------------------------------------------------------- */
.search #main-layout {
	max-width: 900px;
}


#srchBox
{
	width: 100%;
	color: #000000;
	text-align: left;
	margin: 0px 0px 50px;
	background: #f5f5f5;
	box-shadow: 0px 0px 10px 2px rgba(0,0,0,0.3);
	padding: 20px !important;
}
#srchBox *
{
margin:0;
padding:0;
font-size:100%;
}
#srchBox a img
{
border:none;
}
#srchBox #srch
{
	padding: 0px;
}
#srchBox #srch #srchForm
{
	white-space: nowrap;
	padding: 0px;
}
#srchBox #srchInput
{
	width: 70%;
	padding: 8px;
	font-size: 110%;
	border: 1px solid #ccc;
	line-height: 1.5em;
	vertical-align: middle;
	margin: 0px 10px 0px 0px;
}
#srchBox #srchBtn
{
	display       : inline-block;
	border-radius : 3px;
	font-size     : 110%;
	text-align    : center;
	cursor        : pointer;
	padding       : 8px 20px;
	background    : #FFFFFF;
	color         : #000000;
	line-height   : 1em;
	transition    : 0.3s;
	box-shadow    : 1px 1px 5px rgba(0,0,0,0.5);
	border        : 1px solid #CCCCCC;
}

#srchBox #srchBtn:hover {
  box-shadow    : none;
  color         : #eeeeee;
  background    : #666666;
}



#srchBox ul
{
margin-top:6px;
text-align:left;
}
#srchBox li
{
list-style-type:none;
display:inline;
zoom:1;
padding-right:10px;
}
#srchBox li input
{
zoom:1;
margin-right:2px;
_margin:-4px 0 -4px -4px;
vertical-align:middle;
border:0;
}
*:+html #srchBox li input
{
margin:-4px 0 -4px -4px;
}
#srchBox #srchLogo
{
margin:6px 6px 6px 0;
text-align:right;
}
#srchBox #srchLogo a
{
color:#666666;
text-decoration:none;
font-size:85%;
}
#srchBox #srchLogo a:hover
{
text-decoration:underline;
}
#srchBox.watermark
{
padding-bottom: 6px;
}
#srchBox.watermark #srchInput
{
padding:1px 1px 2px 1px;
border:1px solid #a5acb2;
}
#srchBox.watermark #srchInput.nomark
{
background: #fff;
}
#srchBox.watermark #srchLogo
{
display: none;
}



@media print, screen and (min-width: 768px) {
#srchBox
{
	padding: 40px !important;
}
#srchBox #srchInput
{
	width: 80%;
	padding: 8px;
	font-size: 110%;
}
}


@media print, screen and (min-width: 1026px) {

}


@media print, screen and (min-width: 1400px) {

}





/* page-top-button */
#page-top-button {
	position: fixed;
	bottom: -100px;
	right: 10px;
	font-size: 77%;
	z-index: 100;
}
#page-top-button a {
	text-decoration: none;
	color: #fff;
	width: 40px;
	height: 40px;
	text-align: center;
	display: block;
	border-radius: 20px;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
	box-shadow: 0px 1px 10px 0px rgba(255, 255, 255, 0.4);
	background: rgba(0,60,110,1.0);
	
	text-indent: -9999px;
	transition: all 0.5s;
}
#page-top-button a:hover {
	text-decoration: none;
	background: rgba(108,173,192,1);
	box-shadow: 0px 2px 12px 1px rgba(255, 255, 255, 0.6);
}
#page-top-button a:after {
	content: '';
	width: 19px;
	height: 19px;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	top: 14px;
	left: 10px;
	border-top: 1px solid #fff;
	border-left: 1px solid #fff;
}


@media print, screen and (min-width: 768px) {

}


@media print, screen and (min-width: 1026px) {
#page-top-button {
	position: fixed;
	bottom: -100px;
	right: 20px;
	font-size: 77%;
	z-index: 1000;
}
#page-top-button a {
	text-decoration: none;
	color: #fff;
	width: 50px;
	height: 50px;
	text-align: center;
	display: block;
	border-radius: 25px;
	-webkit-border-radius: 25px;
	-moz-border-radius: 25px;
	box-shadow: 0px 2px 12px 0px rgba(255, 255, 255, 0.4);
}
#page-top-button a:hover {
	box-shadow: 0px 2px 16px 1px rgba(255, 255, 255, 0.6);
}
#page-top-button a:after {
	content: '';
	width: 22px;
	height: 22px;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	top: 20px;
	left: 14px;
	border-top: 1px solid #fff;
	border-left: 1px solid #fff;
}
}


@media print, screen and (min-width: 1200px) {

}


@media print, screen and (min-width: 1400px) {

}

/*テーブル画像配置 */

.table-center-w350{
  width: 350px;/* 要素の幅指定は必須です */
	margin-left : auto ;
	margin-right : auto ;
	}

.table-center-w400{
  width: 400px;/* 要素の幅指定は必須です */
	margin-left : auto ;
	margin-right : auto ;
	}

.table-center-w450{
  width: 450px;/* 要素の幅指定は必須です */
	margin-left : auto ;
	margin-right : auto ;
	}

.table-center-w500{
  width: 500px;/* 要素の幅指定は必須です */
	margin-left : auto ;
	margin-right : auto ;
	}

.table-center-w600{
  width: 600px;/* 要素の幅指定は必須です */
	margin-left : auto ;
	margin-right : auto ;
	}



/* パンくずリスト */

.sus-breadcrumbs-wrap {
  display: none;
}
@media print, screen and (min-width: 768px) {
  .sus-breadcrumbs-wrap {
    display: block;
  }
}

@media print, screen and (min-width: 768px) {
  .sus-breadcrumbs {
    display: flex;
    align-items: center;
    max-width: 1140px;
    margin: 0 auto;
    padding: 5px 20px;
  }
}

@media print, screen and (min-width: 768px) {
  .sus-breadcrumbs_item {
    position: relative;
    font-size: 75%;
  }
}

@media print, screen and (min-width: 768px) {
  .sus-breadcrumbs_item:not(:last-of-type) {
    padding-right: 40px;
  }
}

@media print, screen and (min-width: 768px) {
  .sus-breadcrumbs_item:not(:last-of-type)::after {
    content: "";
    position: absolute;
    top: 54%;
    right: 16px;
    transform: translateY(-50%) rotate(45deg);
    width: 5px;
    height: 5px;
    border-top: 2px solid #98A6B5;
    border-right: 2px solid #98A6B5;
  }
}

@media print, screen and (min-width: 768px) {
  .sus-breadcrumbs_link {
    vertical-align: baseline;
  }
}


