@charset "utf-8";
@import "html5reset-1.6.1.css";
body {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Osaka", "メイリオ", "Meiryo", "MS Pゴシック", "MS P Gothic", "Myriad Web", "Myriad Pro", Verdana, sans-serif;
	color: #333;
	font-size: 16px;
	height: 100%;
	letter-spacing:0.1em;
	background: #f1f9fc;
	position: relative;
}
html{
	height: 100%;
}
@media (min-width: 1025px) {
a, a:hover{
	transition: 0.3s;
}
}
#wrapper{
	max-width: 1600px;
	margin: 0px auto;
	background: #FFFFFF;
	box-shadow: 0 0 10px 3px rgba(0,0,0,0.3);
	-moz-box-shadow: 0 0 10px 3px rgba(0,0,0,0.3);
	-webkit-box-shadow: 0 0 10px 3px rgba(0,0,0,0.3);
	-o-box-shadow: 0 0 10px 3px rgba(0,0,0,0.3);
	-ms-box-shadow: 0 0 10px 3px rgba(0,0,0,0.3);
	overflow:hidden;
}
.pageTop {
	position: fixed;
	bottom: 20px;
	right:-100px;
	z-index: 3;
	z-index: 99999;
}
.pageTop a{
	display: block;
}
.pageTop a img{
	width:85px;
	height:auto;
}
@media(min-width: 768px) {
br.sp{
display:none;
}
}
@media (max-width: 767px){
.pageTop {
	bottom: 10px;
}
br.pc{
display:none;
}
}
/*---------------------- Header 　カラー------------------------*/
#header{
	margin: 0px auto;
	background-color: #03a9f4;
	color: #FFFFFF;
}
@media(min-width: 768px) {
#header{
	padding:0 0 15px;
}
#header .hLogo{
	float: left;
	margin:0 0 0 50px;
	text-align:center;
}
#header .hLogo a{
	display: block;
	padding:20px 20px;
	background-color: #FFFFFF;
	border-radius: 0 0 10px 10px;
	box-shadow: 0 0 10px 5px rgba(0,0,0,0.3);
	width:550px;
	box-sizing: border-box;
}
#header .hLogo a img{
	width:100%;
	height:auto;
}
#header .compLogo{
	margin:30px 0 0;
}
#header .compLogo img{
	width:550px;
	height:auto;
}
#header .hContact{
	float: right;
	padding-top:15px;
	margin-right:15px;
}
#header .hContact .tel img{
	width:550px;
	height:auto;
}
}
@media (max-width: 1230px) and (min-width: 1025px) {
#header .hLogo a{
	width:450px;
}
#header .compLogo{
	margin:25px 0 0;
}
#header .compLogo img{
	width:450px;
}
#header .hContact .tel img{
	width:450px;
}
}
@media (max-width: 1024px) and (min-width: 768px) {
#header .hLogo{
	float: none;
	text-align:center;
	margin:0;
}
#header .hLogo a{
	padding:20px 0;
	border-radius: 0;
	box-shadow: none;
	background-color: #FFFFFF;
	width:100%;
}
#header .hLogo a img{
	width:450px;
	height:auto;
}
#header .hContact{
	float: none;
	margin:0;
	padding:20px 0;
	text-align:center;
}
}
@media (max-width: 767px){
#header{
	padding:0 0 20px;
}
#header .hLogo a{
	display: block;
	padding:10px 80px 10px 15px;
	background-color: #FFFFFF;
}
#header .hLogo a img{
	width:100%;
	height:auto;
}
#header .compLogo{
	margin:6% 6% 0;
}
#header .compLogo img{
	width:100%;
	height:auto;
}
#header .hContact{
	padding:6% 6% 0;
	text-align:center;
}
#header .hContact .tel img{
	width:100%;
	height:auto;
}
}
/*---------------------- Menu Button ------------------------*/
@media (min-width: 1025px) {
#mainMenuBtn {
display: none;
}
}
@media (max-width: 1024px) {
#mainMenuBtn {
    display: block;
    top: 0;
		right:0;
    width: 60px;
    height: 60px;
    cursor: pointer;
    z-index: 99999;
    background-color:rgba(120,195,230,1);
    text-align: center;
		position: fixed;
		transition: all 0.5s ease-in-out 0.0s;
}
#mainMenuBtn span {
    display: block;
    position: absolute;
    width: 40px;
    border-bottom: solid 2px #FFFFFF;
    -webkit-transition: .35s ease-in-out;
    -moz-transition: .35s ease-in-out;
    transition: .35s ease-in-out;
    left: 10px;
		letter-spacing: normal;
}
#mainMenuBtn span:nth-child(1) {
    border: none;
    color: #FFFFFF;
    font-size: 9px;
    font-weight: bold;
    top: 8px;
		letter-spacing:normal;
		text-align: center;
		white-space: nowrap;
}
#mainMenuBtn span:nth-child(2) {
    top: 26px;
}
#mainMenuBtn span:nth-child(3) {
    top: 36px;
}
#mainMenuBtn span:nth-child(4) {
    top: 46px;
}
/* 最初のspanをマイナス45度に */
#mainMenuBtn.active span:nth-child(2) {
    top: 36px;
    left: 10px;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
/* 2番目と3番目のspanを45度に */
#mainMenuBtn.active span:nth-child(3),
#mainMenuBtn.active span:nth-child(4) {
    top: 36px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    transform: rotate(45deg);
}
#mainMenuBtn.active {
		right:300px;
		box-shadow: 0 0 10px 5px rgba(0,0,0,0.3);
}
}
@media (max-width: 767px){
#mainMenuBtn.active {
		right:75%;
		box-shadow: 0 0 10px 5px rgba(0,0,0,0.3);
}
}
/*---------------------- Main Menu  カラー------------------------*/
@media (min-width: 1025px) {
#mainMenuList {
	background: #7dcf86;
	margin: 0 auto;
}
#mainMenuList ul{
	display: table;
	width:100%;
	border-bottom: 1px solid #03a9f4;
}
#mainMenuList ul li{
	display: table-cell;
	width:16.6%;
	text-align:center;
	position: relative;
	vertical-align: middle;
	z-index: 99999;
	box-sizing: border-box;
	border-right: 1px solid #03a9f4;
}
#mainMenuList ul li:last-child a{
	border-right: none;
}
#mainMenuList li a {
	display: block;
	text-align: center;
	text-decoration: none;
	line-height:150%;
	font-size:1.2em;
	box-sizing: border-box;
	vertical-align: middle;
	color: #ffffff;
	
	padding:15px 5px 25px;
	background:url(../images/pc_mainmenu_down_arrow_white.svg) no-repeat center bottom;
}
#mainMenuList li ul {
	width:100%;
	display: none;
	position: absolute;
	z-index:100;
	left:0;
	border-bottom: none;
}
#mainMenuList li ul li {
	float: none;
	width: 100%;
	border-bottom: 1px solid #faaa32;
	border-right: 1px solid #faaa32;
	border-left: 1px solid #faaa32;
	box-sizing: border-box;
	display: block;
	height:auto;
}
#mainMenuList li ul li:last-child{
	border-right: 1px solid #faaa32;
}
#mainMenuList li ul li a {
	background: #FFFFFF;
	color:#faaa32;
	border-right: none;
	text-align:left;
	padding:15px 10px;
}
#mainMenuList ul li a:hover {
	color: #ffffff;
	border-right: 1px solid #faaa32;
	background:#faaa32 url(../images/pc_mainmenu_down_arrow_white.svg) no-repeat center bottom;
}
#mainMenuList li ul li:first-child {
	border-top:1px solid #faaa32;
}
#mainMenuList li ul li a:hover {
	background: #faaa32;
	color:#FFFFFF;
}
}
@media (max-width: 1024px) {
#mainMenu {
  height: 100%;
  background-color: #FFFFFF;
  transition: all 0.5s ease-in-out 0.0s;
  position: fixed;
	z-index: 999999;
  top: 0;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}
#mainMenu.active {
  box-shadow: 0 0 10px 5px rgba(0,0,0,0.3);
}
#mainMenuList ul li{
	border-bottom: 1px solid #CCCCCC;
	letter-spacing: normal;
}
#mainMenuList ul li ul li{
	border-bottom: 1px solid #faaa32;
	letter-spacing: normal;
}
#mainMenuList ul li ul li:last-child{
	border-bottom: 4px solid #faaa32;
}
#mainMenuList li a {
	display: block;
	color: #333333;
	text-decoration: none;
	line-height:150%;
	box-sizing: border-box;
	background:url(../images/mainmenu_down_arrow_gray.png) no-repeat right center;
}
#mainMenuList li a.active {
	color: #FFFFFF;
	background:#faaa32 url(../images/mainmenu_up_arrow_white.png) no-repeat right center;
	font-weight: bold;
}
#mainMenuList li.link a {
	background:url(../images/mainmenu_link_arrow.png) no-repeat right center;
}
#mainMenuList li ul li a {
	background:#FFFFFF url(../images/mainmenu_link_arrow.png) no-repeat right center;
	font-weight: bold;
}
#mainMenu {
  width: 300px;
  right: -300px;
}
#mainMenu.active {
  right: 0px;
}
#mainMenuList li a {
	padding:15px 40px 15px 1em;
	transition: 0.3s;
}
#mainMenuList li ul li a {
	padding:15px 40px 15px 2em;
	transition: 0.3s;
	color: #faaa32;
}
}
@media (max-width: 767px){
#mainMenu {
  width: 75%;
  right: -75%;
}
#mainMenu.active {
  right: 0px;
}
#mainMenuList li a {
	padding:10px 40px 10px 0.8em;
	font-size:0.9em;
}
#mainMenuList li ul li a {
	padding:10px 40px 10px 1.8em;
	font-size:0.9em;
}
}
/*---------------------- Sub Menu ------------------------*/
@media(min-width: 768px) {
#subMenu h2{
	display: none;
}
#subMenu .secInner{
	padding: 0;
}
#subMenuList{
	margin: 0 3.33% 3.33%;
	background-color: #ebf6fb;
}
#subMenuList ul{
	display:-webkit-box;
    display:-moz-box;
    display:-ms-box;
    display:-webkit-flexbox;
    display:-moz-flexbox;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:-ms-flex;
    display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
	-webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}
#subMenuList ul li{
	float: left;
	width:25%;
	position: relative;
}
#subMenuList li a {
	display: block;
	padding:15px 15px 15px 35px;
	color:#000000;
	text-align:left;
	text-decoration: none;
	line-height:150%;
	font-size:0.8em;
	background:url(../images/link_icon_blue.svg) no-repeat left center;
	letter-spacing: normal;
}
}
@media (min-width: 1025px) {
#subMenuList li a:hover {
	color: #ffffff;
	background: #78c3e6 url(../images/link_icon_white.svg) no-repeat left center;
}
}
@media (max-width: 1024px) and (min-width: 768px) {
#subMenuList li a {
	font-size:0.7em;
	padding:10px 10px 10px 30px;
}
}
@media (max-width: 767px){
#subMenu{
	margin:0 6% 6%;
}
#subMenu .secInner{
	padding: 0;
}
#subMenu h2{
	background: #ebf6fb url(../images/down_icon_blue.svg) no-repeat right center;
	text-align:center;
	color:#2e3192;
	padding:0 50px;
	border: 1px solid #78c3e6;
	position: relative;
	line-height: 50px;
	border-radius: 6px;
}
#subMenu h2.active{
	border-radius: 6px 6px 0 0;
	background: #ebf6fb url(../images/up_icon_blue.svg) no-repeat right center;
}
#subMenu h2 .mainMenuBtn {
    display: block;
    position: absolute;
    right: 10px;
    bottom: 4px;
    cursor: pointer;
    z-index: 3;
    text-align: center;
		width:40px;
		height:40px;
}
#subMenu h2 .mainMenuBtn img{
    display: block;
		position: absolute;
    transition: .3s ease-in-out;
}
#subMenu h2.active .mainMenuBtn img{
    -webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    transform: rotate(180deg);
}
#subMenuList li a {
	display: block;
	padding:15px 15px 15px 35px;
	color:#2e3192;
	text-align:left;
	text-decoration: none;
	line-height:150%;
	background:url(../images/link_icon_blue.svg) no-repeat left center;
	letter-spacing: normal;
}
#subMenuList ul li{
	float: none;
	width:100%;
	text-align:center;
	border-left: 1px solid #78c3e6;
	border-right: 1px solid #78c3e6;
	border-bottom: 1px solid #78c3e6;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
}
#subMenuList ul li:last-child{
	border-bottom: 1px solid #00a968;
	border-radius: 0 0 6px 6px;
}
}
/*---------------------- Footer ------------------------*/
#footer{
	text-align: center;
	color: #FFFFFF;
	padding: 0;
}
#footer .bgNavy .secInner {
    padding: 2% 0 1px;
}
#footer .fBanner1{
	margin:0 2.33% 2%;
}
#footer .fBanner1 ul{
	width:100%;
	letter-spacing: -.40em;
	margin-bottom: 2%;
}
#footer .fBanner1 li{
	display: inline-block;
	width:31.33%;
	list-style-type: none;
	margin:0 1%;
}
#footer .fBanner1 li img{
	width:100%;
	height: auto;
}
#footer .fBanner2{
	margin:2% 3.33% 2%;
}
#footer .fBanner2 li.pre{
	margin-bottom:2%;
}
#footer .fBanner2 li.bannerLeft{
	float:left;
	width:49%;
	list-style-type: none;
}
#footer .fBanner2 li.bannerRight{
	float:right;
	width:49%;
	list-style-type: none;
}
#footer .fBanner2 li img{
	width:100%;
	height: auto;
}
/*---------------------- フッターカラー ------------------------*/
#footer .fBottom{
	background-color: #03a9f4;
	padding:3% 0;
}
#footer .sns{
margin: 0 0 3%;
}
#footer .sns li{
display:inline-block;
margin: 0 20px;
}
#footer .link{
	margin-bottom:1.5em;
}
#footer .link a{
	text-decoration: none;
	color:#FFFFFF;
}
#footer .copy{
	font-size:0.7em;
	letter-spacing: normal;
	line-height: 150%;
}
@media (max-width: 767px){
#footer .bgNavy .secInner {
    padding: 6% 0 1px;
}
#footer .fBanner1{
	margin:0 6%;
}
#footer .fBanner1 ul{
	margin-bottom: 0;
}
#footer .fBanner1 li{
	float:none;
	width:100%;
	list-style-type: none;
	margin:0 0 6%;
}
#footer .fBanner1 li img{
	width:100%;
	height: auto;
}
#footer .fBanner2{
	margin:3% 6% 6%;
}
#footer .fBanner2 li.pre{
	margin-bottom:4%;
}
#footer .fBanner2 li.bannerLeft{
	float:none;
	width:100%;
	list-style-type: none;
	margin-bottom:6%;
}
#footer .fBanner2 li.bannerRight{
	float:none;
	width:100%;
	list-style-type: none;
}
#footer .fBottom {
    padding: 6% 0;
}
#footer .sns{
margin: 0 0 6%;
}
#footer .sns li{
display:inline-block;
margin: 0 10px;
}
#footer .sns li img{
height:60px;
width:60px;
}
#footer .link{
	margin-bottom:30px;
}
}
/*---------------------- Clearfix ------------------------*/
.clearfix:after {
 content: ".";
 display: block;
 height: 0;
 clear: both;
 visibility: hidden;
}
.clearfix {
 display: inline-block;
}
* html .clearfix {
 height: 1%;
}
.clearfix {
 display: block;
}


.bold{font-weight:bold;
}
.red{
	color: #F10C47;
}
.big200{
	font-size:200%;
}
.big500{
	font-size:500%;
}
.sml80{
	font-size:80%;
}
.sml70{
	font-size:70%;
}
.sm60{
	font-size:60%;
}
.sm65{
	font-size:65%;
}


/* パソコンで見たときは"pcimg"のclassがついた画像が表示される */
.pcimg { display: block !important; }
.spimg { display: none !important; }
/* スマートフォンで見たときは"spimg"のclassがついた画像が表示される */
@media only screen and (max-width: 1025px) {
.pcimg { display: none !important; }
.spimg { display: block !important; }
}