@charset "utf-8";
.globalMenuSp .main_menu dd ul ul li br{
	display: none;
	white-space: pre-line;
}
.navToggle {
    display: block;
    position: absolute;    /* bodyに対しての絶対位置指定 */
    right: 0px;
    top: 15px;
    width: 70px;
    height: 70px;
    cursor: pointer;
	z-index: 99999;
	background: #FFF;
}
.navToggle .menus-wrap{
	position: relative;
	width: 100%;
	height: 100%;
}
.navToggle span {
    display: block;
    position: absolute;    /* .navToggleに対して */
    width: 40px;
    border-bottom: solid 3px #207ec3;
    -webkit-transition: .35s ease-in-out;
    -moz-transition: .35s ease-in-out;
    transition: .35s ease-in-out;
    left: 15px;
}
 
.navToggle span:nth-child(1) {
    top: 15px;
}
 
.navToggle span:nth-child(2) {
    top: 24px;/*+9ずつしていく*/
}
 
.navToggle span:nth-child(3) {
    top: 33px;/*+9ずつしていく*/
}
 
.navToggle span:nth-child(4) {
    border: none;
    color: #207ec3;
    font-size: 12px;
    font-weight: bold;
    top: 42px;
	text-align: center;
}

/* 最初のspanをマイナス45度に */
.navToggle.active span:nth-child(1) {
    top: 25px;
    left: 15px;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
 
/* 2番目と3番目のspanを45度に */
.navToggle.active span:nth-child(2),
.navToggle.active span:nth-child(3) {
    top: 25px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    transform: rotate(45deg);
}


/*menu*/

.overflowHidden {
    overflow: hidden;
}

nav.globalMenuSp .forpc {
	margin: 0 auto;
	padding-top: 100px;
	width:100%;
	display: block;
	color: #207ec3;
    
}
nav.globalMenuSp .forpc .inframe{
	width: 96%;
	margin: 0 2% 1%;
}
nav.globalMenuSp .forpc .inframe .inwrap{
	background: #FFF;
}
.globalMenuSp .main_menu dl{
	margin: 0;
}

.globalMenuSp .inframe .ttl,
.globalMenuSp .inframe dt.sh,
.globalMenuSp .inframe ul.main_menu > li{
	display: block;
	background: #FFF;
	padding: 0 10px;
	-webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
	color: #207ec3;
	font-weight: bold;
	line-height: 50px;
	border-bottom: 1px solid #207ec3;
}
.globalMenuSp .inframe dt.sh:last-child{
	border: 0;
}
.globalMenuSp .inframe .ttl a{
	color: #207ec3;
	display: block;
}
.globalMenuSp .inframe dl dd.main_menu{
	background: #54a8e5;
}
.globalMenuSp .inframe dd.main_menu ul{
	background-color: rgba( 255, 255, 255, 0.15 );
}
.globalMenuSp .main_menu li{
}
.globalMenuSp .main_menu li a{
	color: #FFF;
	display: inline-block;
}
.globalMenuSp .main_menu ul li span,
.globalMenuSp .main_menu ul li > a{
	color: #FFF;
	border-bottom: 1px solid #207ec3;
	line-height: 50px;
	display: block;
	padding: 0 10px;
}
.globalMenuSp .inframe ul.main_menu > li a{
	color: #207ec3;
	font-weight: normal;
}
.globalMenuSp .main_menu li img{
	vertical-align: middle;
	margin: 0 10px 0 0;
	width: 25px;
	height: auto;
}
.globalMenuSp .main_menu dt.sh span,
.globalMenuSp .main_menu ul li span{
	display: block;
	position: relative;
	cursor: pointer;
}
.globalMenuSp .main_menu dt.sh span::after,
.globalMenuSp .main_menu ul li span::after{
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
	right: 1em;
	width: 1em;
	content: "＋";
	font-weight: bold;
	color: #207ec3;
}
.globalMenuSp .main_menu dt.sh.active span::after,
.globalMenuSp .main_menu ul li span.active::after{
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
	right: 1em;
	width: 1em;
	content: "－";
	font-weight: bold;
	color: #207ec3;
}

.globalMenuSp .main_menu ul li span::after,
.globalMenuSp .main_menu ul li span.active::after{
	color: #FFF;
}
.globalMenuSp .main_menu dd ul.child li ul.child{
	background: #FFF;
}
.globalMenuSp .main_menu dd ul.child li ul.child li span{
	color: #FFF;
	border-bottom: 1px dotted #ccc;
	line-height: 35px;
	display: block;
	padding: 0 1em;
}
.globalMenuSp .main_menu dd ul.child li ul.child li a{
	color: #000;
	display: inline-block;
}
.globalMenuSp .main_menu dd ul.child li ul.child li > a{
	color: #000;
	display: block;
	border-bottom: 1px dotted #ccc;
	line-height: 35px;
	padding: 0 1em;
}
.globalMenuSp .main_menu dd ul ul li a{	
	padding-left: 2em;
}
.globalMenuSp .main_menu dd ul ul li ul li a{	
	padding-left: 4em;
}
@media screen and (min-width: 980px) {
	.navToggle,
	nav.globalMenuSp{
		display: none;
	}
}
@media screen and (max-width: 979px) {
	nav.globalMenuSp {
		position: fixed;
		z-index: 77777;
		top: 0;
		left: 0;
		height: 100%;
		overflow: auto;
		background-color: rgba( 220, 240, 251, 0.9 );
		color: #000;
		transform: translateX(-100%);
		transition: all 0.6s;
		width: 100%;
		-webkit-overflow-scrolling: touch;
	}
	nav.globalMenuSp.active {
		transform: translateX(0%);
	}

	nav.globalMenuSp .forpc {
		margin: 0 auto;
		width: 100%;
		display: block;
		padding-top: 80px;/*headerの高さ+α*/
	}
	
	.navToggle {
	}
	nav.globalMenuSp .forpc{
		padding: 80px 0 0 0;
	}
}