@charset "UTF-8";

/* -------------------------- */
/* basis */
/* -------------------------- */

ul ,li {
	list-style: none;
}

* {
	box-sizing: border-box;
}		

a {
  text-decoration: none;
}

.smponly {
  display: block;
}
.pconly {
  display: none;
}


/* -------------------------- */
/* btocFooter */
/* -------------------------- */

.btocFooter {
}
	.btocFooter .topNavi {
    margin-bottom: 0;
		background-color: #0b5897;
		border-bottom: 1px solid #2f7ebe;
		font-size: 1.4em;
		line-height: 1.4em;
	}
    .btocFooter .topNavi span {
      display: block;
      padding: 15px 10px;
      color: #fff;
      cursor: pointer;
      pointer-events: all;
    }
			.btocFooter .topNavi .iconDown {
				display: inline-block;
				padding-right: 8px;
				width: 18px;
				height: 18px;
				fill: #fff;
				vertical-align: middle;
        transform: rotate(90deg);
			}
			.btocFooter .topNavi .open .iconDown {
        position: relative;
        bottom: 7px;
        transform: rotate(-90deg);
			}
		.btocFooter .topNavi span:hover {
			text-decoration: none;
			background-color: #1d76bd;
		}
	.btocFooter .btocFooterNaviWrap {
    display: none;
  }
	.btocFooter .btocFooterNaviWrap.open {
    display: block;
  }
  .btocFooter .btocFooterNavi {
    display: block;
		background-color: #0b63aa;
	}
		.btocFooterNavi .naviListBox .naviList {
			margin: 0;
			padding: 0;
		}
		.btocFooterNavi .naviListBox .naviList li {
			border-bottom: 1px solid #2f7ebe;
			font-size: 1.2em;
			line-height: 1.4em;
		}
			.btocFooterNavi .naviListBox .naviList li a ,
			.btocFooterNavi .naviListBox .naviList li .noLinks {
				display: block;
				padding: 12px 10px 12px 12px;
				color: #fff;
			}
			.btocFooterNavi .naviListBox .naviList li .noLinks {
				color: #7faed3;	
			}
				.btocFooterNavi .naviListBox .naviList li .icon {
					display: inline-block;
					padding-right: 8px;
					width: 15px;
					height: 15px;
					fill: #fff;
					vertical-align: middle;
				}
				.btocFooterNavi .naviListBox .naviList li .noLinks .icon {
					fill: #7faed3;
				}
				.btocFooterNavi .naviListBox .naviList .thirdNavi {
					display: none;
				}
			.btocFooterNavi .naviListBox .naviList li a:hover {
				text-decoration: none;
				background-color: #1d76bd;
			}




/* ================================================================================================================================================================================== */
/* pc */
/* ================================================================================================================================================================================== */

@media only screen and (min-width:1024px) {

/* -------------------------- */
/* basis */
/* -------------------------- */

.smponly {
  display: none;
}
.pconly {
  display: block;
}


/* -------------------------- */
/* btocFooter */
/* -------------------------- */

.btocFooter {
}
	.btocFooter .topNavi {
		font-size: 1.6em;
	}
	.btocFooter .btocFooterNavi {
		display: table!important;
		width: 100%;
		table-layout: fixed;
	}
		.btocFooterNavi .naviListBox {
			display: table-cell;
			padding: 20px 0 15px 15px;
			vertical-align: top;
		}
		.btocFooterNavi .naviListBox:not(:last-of-type) {
			border-right: 1px solid #2f7ebe;
		}
		.btocFooterNavi .naviListBox:nth-of-type(2) {
			border-right: 0;
		}
			.btocFooterNavi .naviListBox:nth-of-type(3) {
        padding: 20px 0 15px;
			}
			.btocFooterNavi .naviListBox:nth-of-type(3) .naviList {
				margin-top: 31px;
        padding-left: 20px;
				border-left: 1px solid #2f7ebe;
			}
			.btocFooterNavi .naviListBox .naviList li {
				border-bottom: 0;
				font-size: 1.4em;
			}
			.btocFooterNavi .naviListBox .naviList li:not(:last-child) {
				margin-bottom: 10px;
			}
				.btocFooterNavi .naviListBox .naviList li a ,
				.btocFooterNavi .naviListBox .naviList li .noLinks {
					display: inherit;
					padding: 0;
				}
					.btocFooterNavi .naviListBox .naviList .thirdNavi {
						display: block;
						margin: 12px 0 0 15px;
            padding: 0;
					}
						.btocFooterNavi .naviListBox .naviList .thirdNavi li {
							font-size: 1.4em;
						}
						.btocFooterNavi .naviListBox .naviList li .thirdNavi li {
							font-size: 1.0em;
						}
				.btocFooterNavi .naviListBox .naviList li a:hover {
					text-decoration: none;
					background-color: inherit;
					color: #d1ebff;
				}

}




/* ================================================================================================================================================================================== */
/* pc */
/* ================================================================================================================================================================================== */
@media only screen and (min-width:1280px) {


/* -------------------------- */
/* btocFooter */
/* -------------------------- */

.btocFooter {
}
	.btocFooter .btocFooterNavi {
	}
		.btocFooterNavi .naviListBox {
			padding: 30px 0 25px 20px;
		}


}