@charset "UTF-8";
/*---------------------------------------------------------------------
　CSS : Layout
---------------------------------------------------------------------*/
/* 	Base
++++++++++++++++++++++++++++++++++*/
html{}

body{
  position: relative;
  width:100%;
  min-width: 1000px;
  margin:0;
  padding:0;
  font-size: 1.5rem;
  line-height: 1.3;
  -webkit-text-size-adjust: 100%;
}

@media screen and (max-width:1000px ){
	body{
		min-width: 100% ;
	}
}

.inner{
	padding: 0 0 0 0;
	position: relative;
	margin: 0 auto;
}

.baseWidth{
	width: 1000px ;
}

.clearfix::after{
	content: "";
	display: block;
	clear: both;
}

@media screen and (max-width:1000px ){
	.baseWidth{
		width: 100% ;
	}
}


/* 	main_wrapper
++++++++++++++++++++++++++++++++++*/
#main_wrapper{
  position: relative ;
/*	overflow: hidden ;*/
	margin: 0 auto ;
}

  #main_wrapper:before{
    position: relative ;
    display: block ;
    content: '' ;
    width: 100% ;
    height: 10px ;
    background-image: url("../images/bar.jpg") ;
    background-position: top center ;
    background-repeat: no-repeat ;
    background-size: cover ;}

@media screen and (max-width:680px ){
  #main_wrapper:before{
    height: 5px ;
    background-position: top right ;}  
}


/* 	Header
++++++++++++++++++++++++++++++++++*/
header{
  position: relative ;
  z-index: 150 ;
}

	/*  .inner  */
	header .inner{
		display: flex;
    align-items:center ;
		padding-top: 15px;
    padding-bottom: 15px ;
	}

		/*  h_logo  */
		header #h_logo{
			width: calc(100% - 380px);
			vertical-align: top ;}
		.fontLarge header #h_logo{
      width: 400px ;}

		/*  h_submenu  */
		header #h_submenu{
      width: 380px;
			display: table-cell;
			vertical-align: top;}
		.fontLarge header #h_submenu{
      width: calc(100% - 400px);
      padding-top: 3px ;}
@media all and (-ms-high-contrast:none) {
  header #h_submenu{
    width: 545px ;}
}

			header #h_submenu .skip-link,
			header #h_submenu .h_access,
			header #h_submenu .h_fontsize,
			header #h_submenu .h_bgcolor,
			header #h_submenu .h_search,
			header #h_submenu .h_language{
				display: inline-block ;
			}

			/*  skip-link  */
			header #h_submenu .skip-link{
				position: absolute;
				top: -1000px ;
				opacity: 0 ;
			}

			/*  h_fontsize  */
      header #h_submenu .h_fontsize{}
			header #h_submenu .h_fontsize span{
				display: none ;
			}
			header #h_submenu .h_fontsize button{
				height: 25px ;
				border: 1px solid #b8b8b8 ;
        border-radius:5px ;
				margin: 0 2px ;
				box-sizing: border-box;
				cursor: pointer ;
				vertical-align: middle ;
			}
			header #h_submenu .h_fontsize button.fontsize_small{
				font-size: 1.2rem ;}
			header #h_submenu .h_fontsize button.fontsize_middle{
				font-size: 1.5rem ;}
			header #h_submenu .h_fontsize button.fontsize_big{
				font-size: 1.7rem ;}
			header #h_submenu .h_fontsize button.active{
				background-color: #e3e3e3 ;
			}

			/*  h_bgcolor  */
			header #h_submenu .h_bgcolor{
        margin-left: 13px ;}
			.fontLarge header #h_submenu .h_bgcolor{
        margin-left: 5px ;}
			header #h_submenu .h_bgcolor span{
				display: none ;
			}
			header #h_submenu .h_bgcolor button{
				height: 25px ;
				width: 25px ;
				background-color: #eaeaea ;
				border: 1px solid #b8b8b8 ;
        border-radius:5px ;
				margin: 0 2px ;
				cursor: pointer ;
				text-align: left ;
				vertical-align: middle ;
        text-indent:-9999em ;
			}
			header #h_submenu .h_bgcolor button.bgcolor_black{
				background-color: #000000 ;
				color: #000000 ;
			}
			header #h_submenu .h_bgcolor button.bgcolor_blue{
				background-color: #0006ff ;
				color: #0006ff ;
			}
			header #h_submenu .h_bgcolor button.bgcolor_white{
				background-color: #ffffff ;
				color: #ffffff ;
			}
			header #h_submenu .h_bgcolor button.bgcolor_yellow{
				background-color: #fffc0a ;
				color: #fffc0a ;
			}
			header #h_submenu .h_bgcolor button.active{
				background-color: #656565 ;
				color: #656565 ;
			}

			/*  h_english  */
			header #h_submenu .h_language{
        margin-left: 15px ;}
			header #h_submenu .h_language ul.language{
        width: 120px ;
        /*display: flex;*/
        margin: 0 auto;
				border: 1px solid #b8b8b8 ;
				height: 25px ;
        border-radius:5px ;}
      header #h_submenu .h_language ul > li {
        position: relative ;
        padding: 0 5px ;
        box-sizing: border-box ;}
      header #h_submenu .h_language ul > li:before{
        position: absolute;
        display: block;
        content: '';
        width: 5px;
        height: 0px;
        top: 12px;
        right: 10px;
        border: 4px solid transparent;
        border-left: 6px solid #000000;
        -webkit-transform: rotate(-45deg);
        transform: rotate(90deg);
      }

      /*全てのリスト・リンク共通*/
      header #h_submenu .h_language ul li {
        width: 100%;
        list-style: none;
        position: relative;
      }
      header #h_submenu .h_language ul li ul{
        position:absolute ;
        top: 100% ;
        left: 0 ;
        width: 120px ;
        display: none ;}
      header #h_submenu .h_language ul li:hover ul{
        display: block ;}
      header #h_submenu .h_language ul li li{
        padding: 0 ;}
      header #h_submenu .h_language ul li li:before{
        display: none ;}
      header #h_submenu .h_language ul li li a {
        width:100% ;
        display: block;
        padding: 5px 5px 5px 30px ;
        box-sizing: border-box ;
        background: #ffffff ;
        border-bottom: 1px solid #cccccc;
        text-decoration: none;
        background-position: 4px 9px ;
        background-repeat: no-repeat ;
        background-size: 22px 15px ;}
      header #h_submenu .h_language ul li li a {
        background-image: url("../images/icon_ja.png") ;}
      header #h_submenu .h_language ul li li:nth-child(2n) a {
        background-image: url("../images/icon_en.png") ;}
      header #h_submenu .h_language ul li li:nth-child(3n) a {
        background-image: url("../images/icon_cn.png") ;}
      header #h_submenu .h_language ul li li:nth-child(4n) a {
        background-image: url("../images/icon_tw.png") ;}
      header #h_submenu .h_language ul li li a:hover {
        background-color: #187fc4 ;
        color: #ffffff ;}

			/*  h_search  */
			header #h_submenu .h_search{
        margin-left: 15px ;}
			header #h_submenu .h_search button{
				width: 26px ;
				height: 25px ;
				border: none ;
        text-align: left ;
				background: #ffffff ;
				background-image: url("../images/h_search.png") ;
				background-repeat: no-repeat;
				text-indent:-9999em ;
			}

			/*  h_access  */
			header #h_submenu .h_access{
        margin: 5px 0 0 10px ;}
			header #h_submenu .h_access a{
				display: block;
				min-height: 25px ;
				border: 1px solid #c9deec ;
        background: #c9deec ;
				padding: 0 10px ;
				border-radius:5px ;
        font-weight: bold ;
				text-decoration: none ;
			}
			header #h_submenu .h_access a:hover,
			header #h_submenu .h_access a:focus{
        background: #187fc4 ;
        color: #ffffff ;}


@media screen and (max-width:1000px ){
	/*  .inner  */
	header .inner{
    width: 98% ; }

		/*  h_logo  */
		header #h_logo{
			width: calc(100% - 535px);
      padding-right: 5px ;
		}
}


@media screen and (max-width:680px ){
	/*  .inner  */
	header .inner{
    width: 95% ;
    margin: 0 auto ;}
  /*  h_logo  */
  header #h_logo{
    width: calc(100% - 50px) ;}
  /*  h_submenu  */
  header #h_submenu{
    display: none ;}
}


/* 	globalMenu
++++++++++++++++++++++++++++++++++*/
#globalMenu{
	position: relative ;
	background-color: #187fc4 ;
  border-top: 1px solid #187fc4;
  border-bottom: 1px solid #187fc4;
	z-index: 100 ;}

	#globalMenu nav{
    max-width: 1000px ;
    margin: 0 auto ;
		position: relative ;}

	#globalMenu nav ul{
		display: table ;
		width: 100% ;}

	#globalMenu nav ul li{
		position: relative ;
		display: table-cell ;
		list-style: none ;}

	#globalMenu nav ul li.lang{
		display: none ;}

		#globalMenu nav ul li a{
			position: relative ;
			display: block ;
			color: #ffffff ;
			padding: 17px 10px ;
      box-sizing: border-box ;
			text-align: center ;
			text-decoration: none ;}

		#globalMenu nav ul li.first:hover > a,
		#globalMenu nav ul li.first a.active{
      background: #ffffff ;
      color: #187fc4 ;
      font-weight: bold ;}

		#globalMenu nav ul li.first:hover > a:before,
		#globalMenu nav ul li.first a.active:before,
		#globalMenu nav ul li.first:hover > a:after,
		#globalMenu nav ul li.first a.active:after{
      display: none ;
    }

		#globalMenu nav ul li.first:nth-child(1) > a:before{
      position: absolute ;
      content: '' ;
      display: block ;
      width: 1px ;
      height: 30px ;
      top: 12px ;
      left: 0 ;
      background: #7fb9e0 ;}
      
		#globalMenu nav ul li.first > a:after{
      position: absolute ;
      content: '' ;
      display: block ;
      width: 1px ;
      height: 30px ;
      top: 12px ;
      right: 0 ;
      background: #7fb9e0 ;}

		#globalMenu nav ul li.sub{
			display: none ;
		}

  	#globalMenu nav ul li .sub_navi{
      display: none ;
      position: absolute ;
      top:100% ;
      left: -1px ;
      width: 265px ;
      word-break: keep-all ;
      background-color: rgba(255,255,255,1) ;
      padding: 10px 15px ;
      box-sizing: border-box ;
      border: 1px solid #187fc4 ;
      border-top: none ;
    }

  	#globalMenu nav ul li .sub_navi.half{
      width: 530px ;}

  	#globalMenu nav ul li.first:nth-child(6n) .sub_navi,
  	#globalMenu nav ul li.first:nth-child(7n) .sub_navi,
  	#globalMenu nav ul li.first:nth-child(8n) .sub_navi,
  	#globalMenu nav ul li.first:nth-child(9n) .sub_navi{
      right: -1px ;
      left: auto ;}

@media screen and (min-width:680px ){  
    #globalMenu nav ul li:hover .sub_navi,
    #globalMenu nav ul li .sub_navi.focused{
      display: block ;
    }
}

		#globalMenu nav ul li .sub_navi ul{
      overflow: hidden ;
			margin: 0 auto 5px auto ;
		}

			#globalMenu nav ul li .sub_navi ul li{
        display: block ;
				margin: 0 0 5px 0 ;
			}

		  #globalMenu nav ul li .sub_navi.half ul{
        display: flex ;
        flex-wrap: wrap;}
			#globalMenu nav ul li .sub_navi.half ul li{
        width: 50% ;
				margin: 0 0 5px 0 ;
			}
			#globalMenu nav ul li .sub_navi.half ul li:nth-child(even){
       }
			#globalMenu nav ul li .sub_navi ul li a{
        position: relative;
        display: block;
        color: #005298;
        font-weight: bold;
        padding: 5px 5px 5px 15px;
        box-sizing: border-box;
        text-align: left;
        text-decoration:underline;
        word-break: break-all ;
   }
			#globalMenu nav ul li .sub_navi ul li a:before{
        position: absolute;
        display: block;
        content: '';
        top: 12px;
        left: 0;
        width: 5px;
        height: 5px;
        border-top: 2px solid #005298;
        border-right: 2px solid #005298;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        }

			/*navigation*/
			#sp_menu{
				display: none;
			}

@media screen and (max-width:680px ){
  #globalMenu{
    display: none ;
  	position:absolute;
    top: 70px ;
    width: 100% ;
    z-index: 1000 ;}

	#globalMenu nav{
    width: 100%;}

	#globalMenu nav ul{
		display: block ;}

	#globalMenu nav ul li{
    display: block ;
    border-bottom: 1px solid #ffffff ;}

			#globalMenu nav ul li.lang{
				display: block ;}

	
		#globalMenu nav ul li a{
      width: 100% ;
			padding: 15px 15px ;
			text-align: left ;}
		#globalMenu nav ul li.first > a{
      position: relative ;}
		#globalMenu nav ul li.first:nth-child(1) > a::before,
		#globalMenu nav ul li.first > a::before{
      position: absolute;
      display: block;
      content: '';
      top: 15px;
      left: auto ;
      right: 15px;
      width: 10px;
      height: 10px;
      background: none ;
      border-top: 3px solid #ffffff;
      border-right: 3px solid #ffffff;
      -webkit-transform: rotate(135deg);
      transform: rotate(135deg);}
		#globalMenu nav ul li.first > a.active:before{
      display: block ;
      top: 22px ;
      border-top: 3px solid #187fc4;
      border-right: 3px solid #187fc4;
      -webkit-transform: rotate(-45deg);
      transform: rotate(-45deg);}

		#globalMenu nav ul li a.active{
      border-bottom: 1px solid #187fc4 ;}
		#globalMenu nav ul li.first > a:after{
      display: none ;}

    #globalMenu nav ul li.first:hover > a{
      background: #187fc4 ;
      color: #ffffff ;    
    }
    #globalMenu nav ul li.first:hover > a.active{
      background: #ffffff ;
      color: #187fc4 ;    
    }
    #globalMenu nav ul li.first:hover > a:before{
      display: block ;
    }
    #globalMenu nav ul li.first a.active:before{
      display: block ;
    }
				#globalMenu nav ul li.lang a{
					background: #3D3D3D ;}

  	#globalMenu nav ul li .sub_navi{
      display: none ;
      position: relative;
      width: 100% ;
      background-color: rgba(255,255,255,1) ;
      padding: 0;
      border: none;
    }
  	#globalMenu nav ul li .sub_navi{
      left: 0 ;
      width: 100% ;
    }
  	#globalMenu nav ul li .sub_navi.half{
      width: 100% ;
  }
      #globalMenu nav ul li .sub_navi ul{
        width: 100% ;
        margin: 0 auto ;}
			#globalMenu nav ul li .sub_navi ul li{
        border-bottom: 1px solid #cccccc ;
        margin: 0 ;
			}
			#globalMenu nav ul li .sub_navi ul li:last-child{
        border-bottom: none ;}
		  #globalMenu nav ul li .sub_navi.half ul{
        display: block ;}
			#globalMenu nav ul li .sub_navi.half ul li{
        width: 100% ;
				margin: 0 ;}
			#globalMenu nav ul li .sub_navi ul li a{
        position: relative ;
				padding: 10px 15px 10px 25px ;
				text-align: left ;
				text-decoration: none;
			}
      #globalMenu nav ul li .sub_navi ul li a:before {
        top: 16px;
        left: 5px;
      }

/*  sp_menu  */
	#sp_menu{
    width: 45px ;
		display: block;}
	#panel-btn{
		display: block;
		position: relative;
		background: #0075c4;
		padding: 28px 39px 11px 0px;
		cursor:pointer;
		border-radius:3px;
		color: #ffffff;
		font-size: 1rem;
		line-height: 1;
		border: none ;
    margin-left: 5px ;
	}
		#panel-btn-icon{
			display: block;
			position: absolute;
			top: 49%;
			left: 31%;
			width: 26px;
			height: 3px;
			margin: -1px 0 0 -6px;
			background: #ffffff;
			transition: .2s;
			text-indent: -9999em ;
		}
		#panel-btn-icon:before, #panel-btn-icon:after{
			display: block;
			content: "";
			position: absolute;
			top: 43%;
			left: 0;
			width: 26px;
			height: 3px;
			background: #ffffff;
			transition: .3s;
		}
		#panel-btn-icon:before{
			margin-top: -11px;
		}
		#panel-btn-icon:after{
			margin-top: 9px;
		}
		#panel-btn .close{
			background: transparent;
		}
		#panel-btn .close:before, #panel-btn .close:after{
			margin-top: 0;
		}
		#panel-btn .close:before{
			transform: rotate(-45deg);
			-webkit-transform: rotate(-45deg);
		}
		#panel-btn .close:after{
			transform: rotate(-135deg);
			-webkit-transform: rotate(-135deg);
		}
}


/* 	main
++++++++++++++++++++++++++++++++++*/
main{
	position: relative;}

	/*  パンくず
	------------------------------*/
	main #footprint{
		padding: 15px 30px ;
		box-sizing: border-box ;
		margin: 0 auto 50px auto ;
		background-color: #eeeeee ;
	}

		main #footprint a{
			display: inline-block ;
			text-decoration: none ;
			color:#000;
			margin: 0 5px 0 0 ;
		}


	/*  Wapper
	------------------------------*/
	main #wrapper{
		position: relative ;
		overflow: hidden ;
		margin: 0 auto 0 auto ;
	}

	#under main #wrapper{

		max-width: 1000px ;
		margin: 0 auto 50px ;
		overflow: hidden ;
	}

		/*  メインカラム
		------------------------------*/
		main #main_column{
			width: 720px ;
			float: right ;
		}

		.p404 main #main_column,
		.english main #main_column{
			width: 100% ;
			float: none ;
			margin: 0 auto ;
		}
		main .content{
			margin: 0 auto 0 auto ;
			word-break: break-all ;
		}


		/*  サブカラム
		------------------------------*/
		main #sub_column{
			width: 240px ;
			float: left ;
		}

			main #sub_column aside{}
			main #sub_column aside h4{
				width: 100% ;
				border-top:5px solid #001a45 ;
				border-bottom: 1px solid #6e6e6e ;
			}

			main #sub_column aside h4 a{
				display: block ;
				width: 100% ;
				padding: 17px 10px;
				box-sizing: border-box ;
				font-size: 1.6rem ;
				font-weight: bold ;
				color: #000000 ;
				text-decoration: none ;
			}

			main #sub_column aside h4 a.active,
			main #sub_column aside h4 a:hover{
				background-color: #e9f4f9 ;
			}

			main #sub_column aside ul{
				width: 100% ;
				margin: 0 ;
			}
			main #sub_column aside ul li{
				list-style: none ;
				border-bottom: 1px solid #6e6e6e ;
			}
			main #sub_column aside ul li a{
				display: block ;
				padding: 17px 10px ;
				box-sizing: border-box ;
				color: #000000 ;
				text-decoration: none ;
				font-size: 1.6rem ;
				font-weight: bold ;
			}
			main #sub_column aside ul li a:hover,
			main #sub_column aside ul li a.active{
				background-color: #e9f4f9 ;
			}

			main #sub_column aside ul li ul{}
			main #sub_column aside ul li ul li{
				border-bottom: 1px dashed #6e6e6e ;
			}
			main #sub_column aside ul li ul li:nth-child(1){
				border-top: 1px dashed #6e6e6e ;
			}
			main #sub_column aside ul li ul li a{
				position: relative ;
				padding: 10px 10px  10px 30px;
				font-size: 1.4rem ;
			}
			main #sub_column aside ul li ul li:last-child{
				border-bottom: none ;

			}
			main #sub_column aside ul li ul li a:hover,
			main #sub_column aside ul li ul li a.active{
				background-color: #e9f4f9 ;
			}
			main #sub_column aside ul li ul li a:before{
				position:absolute;
				display: block ;
				content: '' ;
				top:16px ;
				left: 14px;
				width: 4px;
				height: 4px;
				border-top: 1px solid #000000;
				border-right: 1px solid #000000;
				-webkit-transform: rotate(45deg);
				transform: rotate(45deg);
			}

@media screen and (max-width:1050px ){
	/*  パンくず
	------------------------------*/
	main #footprint{
		display: none ;
	}

	/*  Wapper
	------------------------------*/
	main #wrapper{}
	main .w_base{
		width: 95% ;
	}
	
	#under main #wrapper{
		width: 95% ;
		max-width:none ;
		padding-top: 30px ;
		margin: 0 auto 50px;
	}

		/*  メインカラム
		------------------------------*/
		main #main_column{
			width: 100%;
			float: none ;
			margin: 0 auto 20px auto ;
		}

		/*  サブカラム
		------------------------------*/
		main #sub_column{
			width: 100%;
			float: none ;
			margin: 0 auto 20px auto ;
		}	
}


/* 	Footer
++++++++++++++++++++++++++++++++++*/
footer{
  position: relative ;
	color: #ffffff ;
}
  footer:before{
    position: relative ;
    display: block ;
    content: '' ;
    width: 100% ;
    height: 10px ;
    background-image: url("../images/bar.jpg") ;
    background-position: top center ;
    background-repeat: no-repeat ;
    background-size: cover ;}

  footer #f_upper{
    padding: 30px 0 20px 0 ;
    height: 280px ;
    background-image: url("../images/f_bg.png") ;
    background-position: center bottom ;
    background-repeat: no-repeat ;
    background-size: cover ;
  }

	/* 	f_navi
	--------------------------------*/
	footer #f_navi{
    min-height: 160px ;
		margin: 0 auto 20px;
		overflow: hidden ;
	}

  	footer #f_navi .inner{
      margin: 0 auto ;}

  	footer #f_navi .inner ul{
      width: 850px;
      float: left;
      display: flex;
      flex-wrap: wrap;
      }

  	footer #f_navi .inner ul li{
      list-style: none;
      width: 210px;
      margin: 0 0 10px 0;
      }
      
  	footer #f_navi .inner ul li a{
      color: #ffffff ;
      font-size: 1.4rem ;
      text-decoration: none ;}

  	footer #f_navi .inner .sns{
      width: 138px;
      float: right;
      }

  	footer #f_navi .inner .sns a{
      display: inline-block ;
      width: 40px ;
      height: 40px ;
    }

  	footer #f_navi .inner .sns a svg{
      width: 20px ;
      height: 20px ;
      fill: #ffffff ;
      stroke: #ffffff ;}

  /* 	f_contact
  --------------------------------*/
  footer #f_contact{
    margin: 0 auto ;
    overflow: hidden ;
  }

  	footer #f_contact .inner{
      overflow: hidden ;
      margin: 0 auto ;}

		footer #f_contact .inner .f_contact_logo{
      float: left ;}
		footer #f_contact .inner .f_contact_logo svg{
      width: 256px ;
      height: 33px ;}

		footer #f_contact .inner .f_contact_info{
      float: left ;
      margin: 15px 0 0 15px ;}

		footer #f_contact .inner .f_contact_info p{
      display: inline-block ;
      padding: 0 0 0 20px ;
      background-position: 2px 2px ;
      background-repeat: no-repeat ;}
		footer #f_contact .inner .f_contact_info p svg{
      margin-right: 5px ;}
		footer #f_contact .inner .f_contact_info p.address{}
		footer #f_contact .inner .f_contact_info p.tel{
      margin-left: 10px ;}
		footer #f_contact .inner .f_contact_info p.tel a{
      color: #ffffff ;
      text-decoration: none ;
    }

  /* 	f_copyright
  --------------------------------*/
  footer #f_copyright{
    padding: 15px 0 50px 0;
    background: #182b4d ;}

    footer #f_copyright .inner{
      margin: 0 auto ;}


@media screen and (max-width:1000px ){
	/* 	f_navi
	--------------------------------*/
  footer #f_navi .inner{
    width: 95% ;}

  	footer #f_navi .inner .sns{
      width: calc(100% - 710px) ;}
  
  /* 	f_contact
  --------------------------------*/
  footer #f_contact .inner{
    width: 95% ;}

  /* 	f_copyright
  --------------------------------*/
  footer #f_copyright .inner{
    width: 90% ;}
  
}

@media screen and (max-width:860px ){
  footer #f_upper{
    padding: 30px 0 20px 0 ;
    height: auto ;
  }
  
	/* 	f_navi
	--------------------------------*/
  footer #f_navi .inner ul{
    width: 100% ;
    float: none ;
    margin: 0 auto 15px auto ;}

  	footer #f_navi .inner ul li{
      width: 32% ;}
      
  	footer #f_navi .inner .sns{
      width: 100% ;
      float: none ;}

  	footer #f_navi .inner .sns a{
      display: inline-block ;
      width: 40px ;
      height: 40px ;
    }


  /* 	f_contact
  --------------------------------*/
  footer #f_contact .inner .f_contact_logo{
    width: 100% ;
    text-align: center ;
    margin: 0 auto 15px auto ;
    float: none ;}

  footer #f_contact .inner .f_contact_info{
    width: 100% ;
    text-align: center ;
    margin: 0 auto 15px auto ;
    float: none ;}


  /* 	f_copyright
  --------------------------------*/
  footer #f_copyright .inner{
    margin: 0 auto ;}
  footer #f_copyright .inner p{
    margin-right: 40px ;}
}

@media screen and (max-width:680px ){
  footer #f_navi .inner ul li{
    width: 49% ;}
}

/* 	pageTop
++++++++++++++++++++++++++++++++++*/
#pageTop a {
	background: rgba(0, 0, 0, 0.4);
	border-radius: 5px;
	box-sizing: border-box;
	color: #fff;
	height: 50px;
	padding-top: 19px;
	padding-left: 19px;
	position: fixed;
	right: 50px;
	bottom: 35px;
	text-decoration: none;
	width: 50px;
	line-height: 1;
	z-index: 20;
	-webkit-transition: background-color 0.4s linear;
	-moz-transition: background-color 0.4s linear;
	-o-transition: background-color 0.4s linear;
	transition: background-color 0.4s linear;
	}
#pageTop a span{
	display: block ;
	text-indent: -9999em ;
}
#pageTop a:hover {
	background-color: #001a2b;
}

#pageTop a::before {
  display: block;
  content: '';
  width: 13px;
  height: 13px;
  background-image: url("../images/icon_pagetop.png");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  }

@media screen and (max-width:767px ){
	#pageTop a{
		right: 5px;
		bottom: 15px;
	}
}





/* 	モーダルウィンドウのスタイル
++++++++++++++++++++++++++++++++++*/
#siteSearchBox{
  position: fixed ;
  width:100%;
  height:100vh;
  top:0;
  left:0;
  z-index: 900 ;
  display: none ;
} 
/* オーバーレイのスタイル */
#siteSearchBox .overLay {
  position:absolute;
  width:100%;
  height:100vh;
  overflow-y: hidden;
  top:0;
  left:0;
  background:rgba(0,0,0,0.8);
  z-index:900;
}
 
/* モーダルウィンドウの中身のスタイル */
#siteSearchBox .inner {
  position: absolute ;
  top:0;
  left:0;
  width: 100% ;
  height: 150px ;
  z-index: 910 ;
  padding: 25px ;
  box-sizing: border-box ;
}

#siteSearchBox .inner form{
  width: 80% ;
  text-align: center ;
  margin: 0 auto ;
}

#siteSearchBox .inner form p{
  color: #ffffff ;
  margin: 0 auto 15px auto ;}

#siteSearchBox .inner form input[type=text]{
  width: calc(100% - 110px) ;
  border: none ;
  padding: 5px !important;
  box-sizing: border-box ;}
#siteSearchBox .inner form input[type=submit]{
  width: 100px ;
  border: none ;
  padding: 2px 5px ;
  box-sizing: border-box ;
  background: #187fc4 ;
  color: #ffffff ;
  cursor: pointer ;}
#siteSearchBox .inner form .modalClose{
  display: block ;
  width: 100% ;
  text-align: center ;
  padding-top: 15px ;
}
#siteSearchBox .inner form .modalClose a{
  display: inline-block ;
  padding: 5px 20px ;
  text-decoration: none ;
  background:#626262 ;
  color: #ffffff ;
  
}


@keyframes modal{
  0% {top:-100%}
  100% {top:50%}
}
@keyframes modalClose {
  0% {top:50%}
  100% {top:100%}
} 



/* 	モーダルウィンドウのスタイル
++++++++++++++++++++++++++++++++++*/
ul.switch{
  display: none;
  padding:10px 0;
  width: 100% ;
  overflow: hidden ;
  position: relative ;
  background: #187fc4 ;
  text-align: center;
}
 
ul.switch li{
  width: 50% ;
  float: left ;
  list-style: none ;}

#btnPC,
#btnSP{
  display: block ;
  margin: 0 auto ;
  background: #ffffff ;
  border: 1px solid #cccccc ;
  width: 95% ;
  padding: 10px 0 ;
  text-align: center ;
}

.selectWrap{
bottom:13px !important;
left:20px !important;}
