@charset "utf-8";
@import url('base.css');

/* strcture */
body{
	background: #fff;
	font-family: 'メイリオ',Meiryo,'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','ＭＳ Ｐゴシック',sans-serif;	
}
a{ color : #000000; }
a:hover {
	text-decoration : underline;
	filter : alpha(opacity=50);
	-moz-opacity : 0.5;
	opacity : 0.5;
}

.alphaNo:hover{
	filter : alpha(opacity=100);
	-moz-opacity : 1.0;
	opacity : 1.0;
}

.wrap #contents{
	font-size : 1.1em;
	flex : 1;
	margin-bottom : 100px;
}
.wrap #contents .newsEntryList{
	margin-top : 50px;
	box-sizing: border-box;
}
.wrap #contents .newsEntryList dt {
	box-sizing: border-box;
	float: left;
	width: 8.5em;
	padding : 5px 0;
	border-top : 1px dashed #999;
	font-family : serif;
	font-size : 18px;
}
.wrap #contents .newsEntryList dt:first-child {
	border : none;
}

.wrap #contents .newsEntryList dd {
	box-sizing: border-box;
	border-top : 1px dashed #999;
	margin-left : 8.5em; /* dtの幅以上のpaddingをとる*/
	padding : 5px 0;
}
.wrap #contents .newsEntryList dd:nth-child(2) {
	border : none;
}
.wrap #contents .newsEntryList dd:after {
	content: '';
	display: block;
	clear: both;
}

.widget-list{
	list-style : none;
	columns : 3;
	margin : 35px 0 0 0 ! important;
	padding-left : 0px ! important;
}
.widget-list li{
	width : 262px;
	background : #f4f4f4;
	border : 1px solid #cbcbcb;
	border-bottom : 3px solid #dedede;
	padding : 20px 12px;
	font-size : 18px;
	margin-bottom : 20px;
	line-height : 1 ! important;
	page-break-inside: avoid;
	break-inside: avoid;
}
.widget-list li a{
	color : #000000; 
	text-decoration : none;
	display : block;
	background : url(/templates/elements/d_arrow01.png) no-repeat 100% 50%;
}

/* 背景色：黒 */
body.color {
    background: #000 ! important;
    background-color: #000 ! important;
    color: #FFF ! important;
}
.color a{ color: #fff ! important; }
.color img { background : #fff; }
.color table th { color : #000 ! important; } 
.color #tabnavi li a, #tabnavi2 li a{ color: #fff !important; }
.color #pcHeader{ background: #000; }
.color .widget-list li{ background : #040404 ! important; }
.color #footlogo img{ background : transparent; }
.color .contentListInner li { background : #000 ! important; }
.color .box1_marT5{ color : #000; }

/* ここまで */
	
/* ---------------------------------------------------
pagetop
--------------------------------------------------- */
.pagetop {
	display: none;
	position: fixed;
	bottom: 30px;
	right: 30px;
	margin: 40px 20px 20px 20px;
	padding: 0 10px 0 0;
	text-align: right;
	font-size: 93%;
}
#container .pagetop {
	margin 20px 0;
	padding: 0;
}
.pagetop a {
	display : block;
	width : 81px;
	height : 81px;
	background : url(/templates/elements/pageup.png) no-repeat 0 0;
	text-indent : 100%;
	white-space : nowrap;
	overflow : hidden;
	-moz-transition: -moz-transform 0.25s linear;
	-webkit-transition: -webkit-transform 0.25s linear;
	-o-transition: -o-transform 0.25s linear;
	-ms-transition: -ms-transform 0.25s linear; 
	transition: transform 0.25s linear; 
}
	
/* ---------------------------------------------------
error
--------------------------------------------------- */
#errorImageBox{
	position : relative;
	width : 100%;
}
#errorImageBox .errorImage img{
	width : 100%;
	max-width : 100%;
}
#errorImageBox .errorText{
	position : absolute;
	z-index : 10;
	top : 0;
	left : 0;
	font-size : 32px;
	font-weight : 500;
	line-height : 1.3em;
}
#errorImageBox .errorText{
	padding : 15% 0 0 45%;
	color : #fff;
}
#errorBox{
	margin : 110px auto 300px auto;
	text-align : center;
}
#errorBox p{
	margin-top : 68px;
	line-height : 2;
}

/* ---------------------------------------------------
header
--------------------------------------------------- */
header{	
	width : 100%;
	border-bottom : 4px solid #ccf0fd;
	font-size : 0.88em;
}
header a{
	color : #818181;
}

header #headerBox{
	width: 1200px;
	margin : auto;
	font-size : 0.88em;
	display : table;
	table-layout : fixed;
	margin : 13px auto -4px auto;
	border-bottom : 4px solid #00b4f3;
}
header #navBox{
	display : table-cell;
}
header #logo{
	width : 418px;
	padding-right : 26px;
	display : table-cell;
	vertical-align : top;
}
header #logo a{
	display : block;
	width : 418px;
	height : 50px;
}
	
header #headerNav{
	display : table;
	padding-top : 10px;
}

header #navigation{
	display : table-cell;
	vertical-align : top;
	list-style: none;
}
header #navigation li{
	display : inline-block;
}
header #navigation a{
	display : block;
}

header #fontsize{
	display : table-cell;
	vertical-align : top;
	font-size : 0.88em;
}
header #fontsize ul{
	display : table;
	table-layout : fixed;
}
header #fontsize li{
	display : table-cell;
	padding-right : 5px;
}
header #fontsize li.fontCap{
	vertical-align : middle;
}

header #fontsize a#standard{
	display : block;
	width : 25px;
	color : #6c6c6c;
	border : 1px solid #dcdcdc;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	text-align : center;
	padding : 15px 10px;
}
header #fontsize a#magnify{
	display : block;
	width : 25px;
	color : #6c6c6c;
	border : 1px solid #dcdcdc;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	text-align : center;
	padding : 15px 10px;
}
header #bg{
	display : table-cell;
	vertical-align : top;
	padding-right : 24px;
}
header #bg ul{
	display : table;
	table-layout : fixed;
}
header #bg li{
	display : table-cell;
	padding-right : 5px;
}
header #bg li.bgCap{
	vertical-align : middle;
}
header #bg a#white, header #bg a#black{
	display : block;
	width : 27px;
	border : 1px solid #dcdcdc;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	padding : 15px 10px;
	text-align : center;
}
header #navigation{
	display : table-cell;
	vertical-align : top;
	width : 222px;
}
header #navigation li{
	display : inline-block;
	width : 49%;
}
header #navigation li a{
	display : block;
	background : #04b6f2;
	color : #fff;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	padding : 15px 0px;
	text-align : center;
}
header #kango{
	float : right; 
	margin : 10px 0;
}
header #kango a{
	display : block;
	width : 222px;
	height : 40px;
	background : url(../elements/kango.png) no-repeat 0 0;
	text-indent : 100%;
	white-space : nowrap;
	overflow : hidden;
}

header #search{
	display: table-cell;
	padding-right : 12px;
	width : 245px;
}
header #search form{
	width : 245px;
	border: 1px solid #d6d6d6;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}
header #search form input{
    margin: 0px;
    width : 205px;
    height : 45px;
    line-height: 45px;
    box-sizing: border-box;
    background-color: transparent;
    border: none;
    padding : 2px;
}
header #search form .submit{
    width: 30px;
    border: none;
    text-indent: -9999px;
    background: url(/templates/elements/search.png) no-repeat center;
    background-size: auto auto;
}

/* ---------------------------------------------------
global navigation
--------------------------------------------------- */
#global{
	display : block;
	width : 100%;
	min-width : 1200px;
	height : 60px;
	margin-bottom : 16px;
}
#globalBox{
	width: 1200px; 
	margin : 20px auto 0 auto;
}
#global ul{
	display : table;
	width : 1200px;
	margin : auto;
	list-style : none;
}
#global li{
	display : table-cell;
	margin : 0;
	padding : 0;
	text-align : center;
	border-right : 1px solid #e1e1e1;
	font-size : 18px;
}
#global li:last-child{
	border-right : 0;
}
#global a{
	display: block;
	line-height : 42px;
	margin : 0 15px;
}

#global .active a{
	border-bottom : 4px solid #ff4f91;
}


/* ---------------------------------------------------
structure
--------------------------------------------------- */
#breadcrumbs{
	margin : 50px auto 14px auto;
}
.wrap{
	display : flex;
	margin : 0 auto;
	clear : both;
	overflow : hidden;
}
.wrap #leftnavi{
	width : 245px;
	margin-right :34px;
	margin-bottom : 100px;
}
.wrap #leftnavi ul{
	width : 100%;
	list-style : none;
}
.wrap #leftnavi li{
 	background : #00b4f2;
	padding : 14px;
	font-size : 18px;
	color : #fff;
	border-top : 2px solid #fff;
}
.wrap #leftnavi .contentListInner li{
	background : #fff;
	border-bottom : 1px solid #d8d8d8;
	font-size : 0.96em;
}
.wrap #leftnavi .contentListInner li:last-child{
	border: 0;
}

.wrap #leftnavi li a{
	display : block;
	color : #fff;
	background : url(/templates/elements/arrow02.png) no-repeat 100% 50%;
	padding-right : 2em;
}
#leftnavi li.active a{
	border-left : 5px solid #ff4f91 ! important;
	margin-left : -14px;
	padding-left : 9px;
}
.wrap #leftnavi li.current a{
	background : url(/templates/elements/arrow03.png) no-repeat 100% 50%;
}
.wrap #leftnavi .contentListInner li a{
	color : #000;
	background : none;
}

.wrap #leftnavi h2{
	background : #6a6a6a;
	color : #fff;
	font-size : 23px;
	text-align : center;
	padding : 50px 15px;
	font-weight : 500;
}

/* ---------------------------------------------------
footer
--------------------------------------------------- */
#footerBox{
	width: 100%; 
	background:-moz-inear-gradient(#1297d4, #1dc2e3);
	background:-webkit-linear-gradient(#1297d4, #1dc2e3);
	background:linear-gradient(#1297d4, #1dc2e3);
}
footer{
	margin: 0px auto; 
	font-size : 0.88em;
	margin-bottom : 13px;
	clear : both;
	overflow: hidden;
}
footer #footlogo{
	display: block;
	width : 652px;
	height : 78px;
	margin : 45px auto;
}
footer nav{
	width: 754px; 
	margin : auto;
}
footer nav ul{
	display : table;
	border-collapse : separate;
	border-spacing : 14px;
	table-layout : fixed;
}
footer nav li{
	display : table-cell;
	white-space : nowrap;
}
footer nav li a{
	color : #fff;
	margin-left : 17px;
	margin-right : 17px;
}
footer nav li#f01 a{
	display : block;
	width : 142px;
	height : 17px;
	background : url(/templates/elements/foot_menu.png) no-repeat 0 0;
	text-indent : 100%;
	white-space : nowrap;
	overflow : hidden;
}
footer nav li#f02 a{
	display : block;
	width : 87px;
	height : 17px;
	background : url(/templates/elements/foot_menu.png) no-repeat -181px 0;
	text-indent : 100%;
	white-space : nowrap;
	overflow : hidden;
}
footer nav li#f03 a{
	display : block;
	width : 157px;
	height : 17px;
	background : url(/templates/elements/foot_menu.png) no-repeat -309px 0;
	text-indent : 100%;
	white-space : nowrap;
	overflow : hidden;
}
footer nav li#f04 a{
	display : block;
	width : 105px;
	height : 17px;
	background : url(/templates/elements/foot_menu.png) no-repeat -505px 0;
	text-indent : 100%;
	white-space : nowrap;
	overflow : hidden;
}
footer nav li#f05 a{
	display : block;
	width : 105px;
	height : 17px;
	background : url(/templates/elements/foot_menu.png) no-repeat -649px 0;
	text-indent : 100%;
	white-space : nowrap;
	overflow : hidden;
}

#footerBox small{
	display : block;
	width : 100%;
	margin: 0px auto; 
	text-align : center;
	color : #fff;
	background : #0080ad;
	padding : 24px 0;
	font-family : serif;
}


/* ============================================================ */
/* PC */
/* ============================================================ */

@media screen and (min-width:751px){

/* off */
#sidr, #spHeader, #spUserNav, #spfootArea,#spSearch,.sp, .spOnly { display : none; }

div.container{
	width : 100%;
}
#pcHeader{
width : 100%;
display: block;
/*
position : fixed;
top: 0;
height: 159px;
*/
background : #fff;
z-index : 10;
}
#breadcrumbs{
	width : 1200px;
}
.wrap{
	width : 1200px;
}
footer{
	width: 1200px;
}

}

/* ============================================================ */
/* smartphone */
/* ============================================================ */
@media screen and (max-width : 750px ){

/* off */
header,#sidr,#leftnavi,#rightnavi,#global, .pcOnly { display : none; }

body {
	font-size: 1.8em ! important;
	min-width: initial;
}

#breadcrumbs{
	padding : 0px 25px 14px 25px;
}
.wrap{
	padding : 0px 25px;
}

.sp { display : block; }
img{
	max-width : 100%;
	height : auto;
}

#carousel #er00 .carouselText{
	padding-left : 274px;
	color : #fff;
}

/* header */
#spHeader{
	width : 100%;
}
#spHeader #spHeaderBox{
	width : 100%;
	display : flex;
	justify-content: flex-end;
	border-bottom : 3px solid #00b5f2;
}
#spHeader #spHeaderBox #spLogo{
	padding : 18px 18px 25px;
}
#spHeader #spHeaderBox #spTel{
	padding : 24px 30px 12px 0;
}
#spHeader #spHeaderBox #spLogo a{
	display : block;
	width : 418px;
	height : 50px;
}
#spHeader #spHeaderBox #spTel a{
	display : block;
	width : 148px;
	height : 45px;
	background : url(../elements/sp_tel.png) no-repeat 0 0;
	text-indent : 100%;
	white-space : nowrap;
	overflow : hidden;
}
#spHeader #spmenu{
	width : 86px;
	padding : 0;
	background:-moz-inear-gradient(135deg, #13bef3, #02daf4);
	background:-webkit-linear-gradient(135deg, #13bef3, #02daf4);
	background:linear-gradient(135deg, #13bef3, #02daf4);
}
#spHeader #spmenu a {
	display : block;
	background: URL(/templates/elements/sp_humberger.png) no-repeat 50% 50%;
	background-size : 60px auto;
	width: 86px;
	height: 94px;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
	box-sizing : border-box;
}
#spHeader #spmenu a.on {
	display : block;
	background: URL(/templates/elements/sp_humberger_on.png) no-repeat 50% 50%;
	background-size : 60px auto;
	width: 86px;
	height: 94px;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
	box-sizing : border-box;
}
#spHeader #spHeaderMenu{
	padding : 10px 25px 45px 25px;
}
#spHeader #spHeaderMenu ul{
	width : 100%;
	list-style : none;
	font-size : 0;
}
#spHeader #spHeaderMenu li{
	width : 32%;
	display : inline-block;
	text-align : center;
	border-left : 3px solid #b2e8fb;
}

#sidr{
	position : absolute;
	width: 100%;
	z-index : 100;
}
#sidr ul{
	list-style: none;
}
#sidr ul li{
	border-top : 1px solid #00b4f2;
	background : #fff;
}
#sidr ul li a{
	display : block;
	width : 100%;
	padding : 32px 0 32px 32px;
	font-weight: 500;
	box-sizing : border-box;
	background : url(/templates/elements/sp_arrow01.png) no-repeat 95% 50%;
}
#sidr ul li a.open{
	background : url(/templates/elements/menu_open.png) no-repeat 95% 50%;
	background-size : 37.5px auto;
}
#sidr ul li ul{
	padding : 20px 0px 20px 25px;
	background : #f5f5f5;	
}
#sidr ul li ul li{
	border-top : 1px solid #dfd2d2;
	border-left : 1px solid #dfd2d2;
}
#sidr ul li ul li:last-child{
	border-bottom : 1px solid #dfd2d2;
}
#sidr #sidr2 {
	border-bottom : 1px solid #dfd2d2;
	letter-spacing: -.4em;
}
#sidr #sidr2 li{
	display : inline-block;
	width : 49.9%;
	background : #f5f5f5;	
	border-top : 1px solid #dfd2d2;
	border-right : 1px solid #dfd2d2;
	letter-spacing: normal;
}
#sidr #sidr2 li:nth-child(2n){
	border-right : 0;
}
#sidr #spSearch{
	background : #f5f5f5;
	padding : 24px 0;
}
#sidr form{
	background : #fff;	
	width : 215px;
	border: 1px solid #d6d6d6;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	margin : auto;
}
#sidr form input{
    margin: 0px;
    width : 175px;
    height : 45px;
    line-height: 45px;
    box-sizing: border-box;
    background-color: transparent;
    border: none;
    padding : 2px;
}
#sidr form .submit{
    width: 30px;
    border: none;
    text-indent: -9999px;
    background: url(/templates/elements/search.png) no-repeat center;
    background-size: auto auto;
}

#sidr #sidr3 {
}
#sidr #sidr3 li{
	border : 0;
	background : #f5f5f5;	
}
#sidr #sidr3 li a{
	display : block;
	width : 100%;
	padding : 18px 0 18px 42px;
	font-weight: 500;
	box-sizing : border-box;
	background : url(/templates/elements/sp_arrow01.png) no-repeat 32px 50%;
}
#sidr #sidr2 #n16{ background :  #f87694; }

.widget-list{
	columns : 2;
}

/* footer */
#footerBox{
	width: 100%; 
	background:-moz-inear-gradient(#1297d4, #1dc2e3);
	background:-webkit-linear-gradient(#1297d4, #1dc2e3);
	background:linear-gradient(#1297d4, #1dc2e3);
}
footer{
	width: 100%;
	margin: 0px auto; 
	font-size : 0.88em;
	clear : both;
	overflow: hidden;
}
footer #footlogo{
	display: block;
	width : 75%;
	height : 170px;
	background : url(../elements/sp_foot_logo.png) no-repeat 0 0;
	background-size : 100% auto;
	margin : 35px auto 50px auto;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
}
footer nav{
	display : none;
}

#footerBox small{
	display : block;
	width : 100%;
	margin: 0px auto; 
	text-align : center;
	color : #fff;
	padding : 0 0 14px 0; 
	font-family : serif;
}

.wrap #contents .newsEntryList dt {
	width: 3.5em;
}
.wrap #contents .newsEntryList dd {
	margin-left : 3.5em;
}

/* 2020.01.16 added */
.scroll {
	overflow: scroll;
}

.scroll_table {
	width: 240%;
}

}

@media print {
	#sidr, #spHeader, #spUserNav, #spfootArea,#spSearch,.sp, .spOnly { display : none; }
}