@charset "utf-8";

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td{border:0;font-family:inherit;font-size:100%;font-style:inherit;font-weight:inherit;margin:0;outline:0;padding:0;vertical-align:baseline;}
:focus{outline:0;}

ol, ul{list-style:none;}
table{border-collapse:separate;border-spacing:0;}
caption, th, td{font-weight:normal;text-align:left;}
blockquote:before, blockquote:after,q:before, q:after{content:"";}
blockquote, q{quotes:"" "";}
a img{border:0;}
figure{margin:0}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section{display:block;}
/* -------------------------------------------------------------- */

body{
color:#555;
font-size:13px;
font-family:verdana,"ヒラギノ丸ゴ ProN W4","Hiragino Maru Gothic ProN","メイリオ","Meiryo","ＭＳ Ｐゴシック","MS PGothic",Sans-Serif;
line-height:1.5;
-webkit-text-size-adjust:100%;
}


/* リンク設定
------------------------------------------------------------*/
a{color:#6caefe;text-decoration:none;}
a:hover{color:#488fdd;}
a:active, a:focus {outline:0;}


/* 全体
------------------------------------------------------------*/
#wrapper{
margin:0 auto;
padding:0 1%;
width:98%;
position:relative;
}

.inner{
margin:0 auto;
width:100%;
}

.sub{
	font-size: 16px;
	margin: auto;
	line-height: 30px;
}
.sub span{
	font-size: 14px;
}

.dia{
	list-style:none;
	word-wrap: break-word;
	margin-top: 30px;
	padding: 0;
}
/* dia */
.dia li{
	position:relative;
	font-size: 16px;
	padding-left: 20px;
	margin: 10px;
}
.dia li:before {
	content: "";
	width: 10px;
	height: 10px;
	background: #4450f5;
	position: absolute;
	top: 7px;
	left: 0;
	transform: rotate(45deg);
}
.dia li a{
color: #155bb6;
}
.dia li a:hover{
color: #6a9ddf;
}

/*************
/* MAP
*************/
.gmap {
	position: relative;
	width: 90%;
	padding-top: 50%;
	margin: 10px auto 50px;
}
.gmap iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/*************
/* ヘッダー
*************/

#header h1{
padding:5px 0 10px;
font-size:12px;
font-weight:normal;
}

/*************
/* ロゴ
*************/

.inquiry {
	height: 100px;
	line-height: 100px;
	text-align: center;
	display: flex;
	justify-content: space-between;
}
.child1 {
	margin: 5px;
}
.child2 {
	position: absolute;
	top: 35px;
	right: 10px;;
	font-size: 16px;
	padding: 0.5em 0.6em;
	text-decoration: none;
	color: #ffffff;
	transition: .4s;
}
.btn-inquiry {
	position: relative;
	font-size: 16px;
	padding: 0.5em 0.6em;
	text-decoration: none;
	color: #ffffff;
	background: #336ab3;
	transition: .4s;
}
.btn-inquiry:hover {
	background: #00bcd4;
	color: white;
}

@media only screen and (max-width:1080px){

	.child2 {display:none;}

}

/*************
/* 電話番号
*************/
.info{
float:right;
padding-right:20px;
text-align:right;
}

.info .open{font-size:11px;}


/*************
/* ロゴ+電話番号
*************/
.logo,.info .tel{
margin-top:6px;
font-size:20px;
font-weight:bold;
}

.logo span,.info span{
font-size:.6em;
font-weight:normal;
}

#breadcrumb{
    letter-spacing: 0;
    list-style: none;
    margin: 0;
    padding: 0;
    overflow-x: auto;
    white-space: nowrap;
}
#breadcrumb li{
    display: inline-block;
    font-size: 13px;
}
#breadcrumb li::after{
    content: ">";
    display: inline-block;
    margin: 0 0.5em;
}
#breadcrumb li:last-child::after{
    content: none;
}
#breadcrumb li a{
	color: #3b6baa;
}

/**************************
/* メイン画像（トップページ+サブページ）
**************************/
#mainBanner{
clear:both;
margin:0px auto 30px;
padding:0;
position:relative;
text-align:center;
}
#mainBanner .inner{position:relative;}

#mainBanner img{
max-width:100%;
height:auto;
}

.slogan{
color:#fff;
font-weight:bold;
position:absolute;
max-width:100%;
height:auto;
bottom:42%;
left:40px;
padding:5px 10px;
line-height:1.4;
text-align:left;
}

.slogan h1{
padding-bottom:5px;
font-size:22px;
}

/**************************
/* トピックス
**************************/
.topic .icon{
    display: inline-block;
    margin-bottom: 20px;
    font-size: 40px;
    width: 2em;
    line-height: 2em;
    border-radius: 50%;
    text-align: center;
    background-color: #ddd;
    color: #fff;
}
.topic .text{
    text-align: center;
}
.text h2{
	font-size:20px;
	font-weight: bold;
	padding: 5px 0 15px;
	text-align: center;
}
.text p{
	text-align:left;
	font-size: 14px;
}

/*コンテンツ内の間隔調整　*/
.topic .container{
    padding-top: 50px;
    padding-bottom: 80px;
}
.topic .text{
    padding-left: 10px;
    padding-right: 10px;
    padding-bottom: 60px;
}
.photo {
	width: 100%;   /* 横幅を限界まで広げる */
	height: auto;  /* 縦横比を維持する高さにする */
 }

@media (min-width: 768px){
    .topic .container{
        display: flex;
    }
    .topic .text{
        flex: 1;
    }
}

.btn-square:hover{
color:#ffffff;
background: #103f80;
}

.btn-square {
margin-top: 30px;
line-height: 20px;
position: relative;
display: inline-block;
padding: 0.3em 0.6em;
text-decoration: none;
color: #FFF;
background: #04224b;/*背景色*/
border-bottom: solid 2px #0a3066;/*少し濃い目の色に*/
border-radius: 20px;/*角の丸み*/
box-shadow:  0 2px 2px #3d5d86;

}
.btn-square:active {
/*ボタンを押したとき*/
border-bottom: solid 2px #103f80;
box-shadow: 0 0 2px rgba(0, 0, 0, 0.30);
}

.contact{
margin: 40px auto 70px;
}
.contact-btn{
text-align: center;
}
.contactbtn {
display: inline-block;
font-size: 18px;
padding: 0.8em 2em;
text-decoration: none;
color: #FFF;
background-image: linear-gradient(#0082D0 0%, #0F5BAB 100%);
transition: .4s;
}
  
.contactbtn:hover {
color: #c4d1eb;
background-image: linear-gradient(#1393e2 0%, #2271c5 70%);
}

/*************
メイン コンテンツ
*************/
section.content article{
padding:30px 0 20px 0;
margin-bottom:10px;
overflow:hidden;
}

section.news-con {
padding:30px 0 100px 0;
background-color: #faf5f5;
overflow:hidden;
}
	
section.toppage article,section.content .archive{border:0;}

.yurai{
	margin-bottom: 100px;
}
.yurai p{
	width: 90%;
	margin: 25px auto;
	font-size: 16px;
	line-height: 35px;
}

.yurai span{
	font-size: 25px;
}

.rinen{
	margin-bottom: 80px;
}
.rinen p{
	width: 80%;
	margin: 30px auto;
	font-size: 18px;
	line-height: 35px;
}

.koudou{
	list-style-type: decimal;
	width: 80%;
	margin: 10px auto;
	font-size: 18px;
}
.koudou li{
	margin: 20px;
}

.wrap {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
  
.item {
	width: 45%;
	text-align: center;
	padding: 10px;
	background-color: #fff;
}
.item span{
	font-size: 15px;
	font-weight: bold;
}
  
@media not all and (min-width: 768px) {
	.item{
	  width: 100%;
	}

}

  /*PC・スマホ共通*/

  .block3{
	display: block;
	text-align: center;
	margin: 30px 0 60px 0;
}
  .block{
	width: 100%;
	height: auto;
	font-size: 15px;
	margin-top: 20px;
  }
@media(min-width:768px){
	.block3{
	  display:flex;
	}
	.block{
		width: 100%;
	}
}

  

.right{
	margin: 50px auto;
    display:flex;
    justify-content: space-between;
}
.rightimg{
	flex: none;
}
.lefttxt p{
	display: inline-block;
	font-size: 16px;
	margin: 10px;
}
.righttxt{
	width: 95%;
	text-align: right;
	font-weight: bold;
}

@media screen and (max-width:768px) { 
.right{
	display: block;
}
.rightimg{
	text-align: center;
}
}

.center{
	margin: 30px 0px 30px 0px;
	text-align: center;
	font-size: 15px;
}

/* アーカイブページ */
section.content .archive{
padding:0;
border-bottom:1px dotted #ccc;
}

section.content p{margin-bottom:5px;}

h2.heading strong,h2.heading span{display:block;}

h2.heading{
margin-left: auto;
margin-right: auto;
width: 150px;
color:#006699;
font-size:40px;
text-align:center;
font-weight:normal;
padding:15px 0;
margin-top:10px;
margin-bottom:5px;
border-bottom: solid 4px #006699;
}

h2.heading span{
color:#1b1a1a;
font-size:15px;
}

h3{
	padding:10px;
	margin: 40px auto;
	font-size:22px;
	border:1px solid #325A8C;
	background: #325A8C;
	color:#FFF;
	box-shadow:inset 1px 1px 0 rgba(255,255,255,0.5);
}
h4 {
	position: relative;
	margin: 20px 0px 20px 20px;
	padding-left: 30px;
	font-size:20px;
	color: #325A8C;
}
h4::before,
h4::after{
	content: "〇";
	position: absolute;
}
h4::before{
	left:0;
	top:-3px;
}
h4::after{
	left: 5px;
	top: 3px;
	color: #A1B8D1;
}
h5 {
	position: relative;
	margin: 20px 0px 20px 20px;
	padding-left: 30px;
	font-size: 17px;
	font-weight: bold;
}

.page{
	text-align: center;
	margin-bottom: 50px;
}
.page-link ul li {
	display: inline-block;
	font-size: 15px;
	margin: auto 30px;
}
.cp_link {
	position: relative;
	padding: 0.1em 0.3em;
	display: inline-block;
	transition: .3s;
	color: #264e9e;
}
.cp_link::after {
	position: absolute;
	bottom: 0;
	left: 50%;
	content: '';
	width: 0;
	height: 1px;
	background-color: #264e9e;
	transition: .3s;
	transform: translateX(-50%);
}
.cp_link:hover::after {
	width: 100%;
}

/*************
/* Q&A
*************/
.cp_qa *, .cp_qa *:after, .cp_qa *:before {
	font-family: 'FontAwesome', sans-serif;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	width: 90%;
	margin: auto;
}
.cp_qa dt,.cp_qa dd {
	position: relative;
	padding: 0.5em;
	box-shadow: 0px 1px 1px rgba(0,0,0,0.2);
	border-radius: 0.3em;
}
.cp_qa dt {
	margin: 0 3em 1em 3em;
	background: #ffcdcd;
	font-size: 16px;
	font-weight: bold;
}
.cp_qa dd {
	margin: 0 3em 3em 3em;
	background: #b2ebf2;
	font-size: 16px;
	font-weight: bold;
}
/* 吹き出し▶︎ */
.cp_qa dt::before,.cp_qa dd::before{
	position: absolute;
	z-index: 99;
	top: 0.5em;
	display: inline-block;
	width: 0;
	height: 0;
	content: '';
	border-style: solid;
}
/* 質問吹き出し▶︎ */
.cp_qa dt::before {
	left: -0.5em;
	border-width: 5px 8.7px 5px 0;
	border-color: transparent #ffcdcd transparent transparent;
}
/* 答え吹き出し▶︎ */
.cp_qa dd::before {
	right: -0.5em;
	border-width: 5px 0 5px 8.7px;
	border-color: transparent transparent transparent #b2ebf2;
}
/* ?!アイコン */
.cp_qa dt::after,.cp_qa dd::after {
	font-size: 1.2em;
	position: absolute;
	top: 0;
	color: #ffffff;
	border-radius: 50%;
	display: inline-block;
	width: 1.5em;
	height: 1.5em;
	line-height: 1.2em;
}
/* ?アイコン */
.cp_qa dt::after {
	left: -2.5em;
	margin: 0 0.5em 0 0;
	padding: 0.2em 0.35em;
	content: 'Q';
	font-weight: normal;
	background: #a51515;
}
/* !アイコン */
.cp_qa dd::after {
	right: -2.5em;
	margin: 0 0 0 0.5em;
	padding: 0.2em 0.4em;
	content: 'A';
	font-weight: normal;
	background: #0097a7;
}

/*************
/* テーブル
*************/
.kaisha {
	width: 850px;
	margin: auto;
	text-align:  center;
	font-size: 16px;
	border-collapse: collapse;
}
	
.kaisha th,	.kaisha td{
	border: 1px solid #ccc;
	padding: 20px;
}
	
.kaisha th {
	font-weight: bold;
	background-color: #f0f0f0; 
}
	
@media screen and (max-width: 768px) {
	.kaisha{
		width: 100%;
	}
}

.seido{
	width: 800px;
	margin: auto;
	font-size: 16px;
	border-collapse: collapse;
  }
  
.seido tr{
	border-bottom: solid 2px #ffffff;
  }
  
.seido tr:last-child{
	border-bottom: none;
  }
  
.seido th{
	position: relative;
	vertical-align: middle;
	text-align: left;
	width: 20%;
	background-color: #277b86;
	color: white;
	text-align: center;
	padding: 10px 0;
  }
  
 .seido th:after{
	display: block;
	content: "";
	width: 0px;
	height: 0px;
	position: absolute;
	top:calc(50% - 10px);
	right:-10px;
	border-left: 10px solid #277b86;
	border-top: 10px solid transparent;
	border-bottom: 10px solid transparent;
  }
  
.seido td{
	text-align: left;
	width: 80%;
	background-color: #eee;
	padding: 10px 20px 10px 40px;
}
.seidotxt{
	margin-top: 5px;
	margin-left: auto;
    margin-right: auto;
	width: 800px;
	font-size: 14px;
}
@media screen and (max-width: 768px) {
	.seido, .seidotxt{
		width: 100%;
	}
}

.support {
	width: 85%;
	margin: 30px auto;
	display: flex;
	justify-content: space-between;
}
  
.support img{
	width: 400px;
	height: 100%!important;
	margin-right: 20px;
}

ul.sample1{
	padding: 0;
	font: 14px/1.6 'arial narrow', sans-serif;
	width:450px;
	list-style: none;
  }
  ul.sample1 li{
	position: relative;
	padding: 0.5em 1em 0.5em 2.3em;
	margin-bottom:5px;
	font-size: 16px;
  }
  ul.sample1 li:after,
  ul.sample1 li:before{
	content: "";
	position: absolute;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
  }
  ul.sample1 li:before{
	top: 0.7em;
	left: 0.2em;
	width: 10px;
	height: 10px;
	border:2px solid rgba(93, 157, 214, 0.5);
  }
  ul.sample1 li:after{
	top: 0.9em;
	left: 0.7em;
	width: 12px;
	height: 12px;
	background: rgba(57, 108, 153, 0.3);
	-webkit-transform: rotate(60deg);
	-moz-transform: rotate(60deg);
	-o-transform: rotate(60deg);
	-ms-transform: rotate(60deg);
	transform: rotate(60deg);
  }

.text2{
	margin-left: 15px;
}

.text2 span{
	font-size: 18px;
	border-bottom: #006699;
	font-weight: bold;
}
.text2 p{
	width: 500px;
	font-size: 16px;
	padding: 0 5px;
	line-height: 30px;
}
.text2 ul{
	width: 500px;
}
  
  @media(max-width: 768px) {
	.support {
	flex-direction: column;
	padding: 0 10px;
	margin: 0 auto;
	}
	.support img {
	width: 100%;
	}
}

.text-sp{
	width: 88%;
	margin: 15px auto;
	font-size: 16px;
}

section.content img{
max-width:90%;
height:auto;
}

.alignleft{
float:left;
clear:left;
margin:3px 10px 10px 0;
}

.alignright{
float:right;
clear:right;
margin:3px 0 10px 10px;
}

.news {
	margin:0 auto;
	padding-top: 50px;
	text-align: left;
	font-size: 18px;
	color: #444;
	width: 90%;
}
.news dl {
	text-align: center;
	padding: 15px 0;
	border-bottom: 1px solid #ccc;
}
.news dl dt {
	width: 30%;
}
.news dl dd {
	text-align: left;
}
.news dl dd a{
	color: #155bb6;
}
.news dl dd a:hover{
	color: #6a9ddf;
}


@media screen and (min-width: 768px) {
.news dt {clear: left;float: left;}
.news dd {margin-left: 0.5em;}
}
  


/*************
/* サイドバー
*************/
#sidebar article{
clear:both;
margin-bottom:20px;
}

#sidebar ul{padding:15px 0;}

#sidebar li{
margin-bottom:10px;
padding-bottom:10px;
list-style:none;
border-bottom:1px dashed #ebebeb;
}

#sidebar li:last-child{
border:0;
margin-bottom:0px;
}

#sidebar li a{
color:#555;
font-size:12px;
display:block;
}

#sidebar li a:hover{
color:#999;
font-size:12px;
display:block;
}

#gotop{
    display: block;
    width: 60px;
    height: 60px;
	border-radius: 50%;
    box-sizing: border-box;
    background: #325A8C;
    padding-top: 30px;
    text-align: center;
    letter-spacing: -1px;
    font-size: 16px;
    text-decoration: none;
    color: #ffffff;
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index: 10000;
}
#gotop::before{
    content: "";
    display: block;
    border-top: 2px solid #ffffff;
    border-right: 2px solid #ffffff;
    width: 25%;
    height: 25%;
    top: 25%;
    left: 0;
    right: 0;
    margin: auto;
    position: absolute;
    transform: rotate(-45deg);
}
#gotop:hover{
	color: #ffffff;
    opacity: 0.8;
}

/* page navigation
------------------------------------------------------------*/
.pagenav{
clear:both;
width:100%;
height:30px;
margin:5px 0 20px;
}

.prev{float:left}
.next{float:right;}

#pageLinks{
clear:both;
text-align:center;
}


/* タイポグラフィ
*****************************************************/
.dateLabel{
margin:0 0 10px;
text-align:right;
font:italic 1em "Palatino Linotype", "Book Antiqua", Palatino, serif;
}

.post p{padding-bottom:10px;}

.post ul{margin:0 0 10px 10px;}

.post ul li{
margin-bottom:5px;
padding-left:15px;
background:url(../img/bullet.png) no-repeat 0 8px;
}

.post ol{margin:0 0 10px 30px;}

.post ol li{list-style:decimal;}

.post h1{
margin:20px 0;
padding:5px 0;
font-size:150%;
color:#000;
border-bottom:3px solid #cf6a88;
}

.post h2{
margin:10px 0;
padding-bottom:2px;
font-size:130%;
font-weight:normal;
color:#333;
border-bottom:2px solid #cf6a88;
}

.post h2{
margin:10px 0 25px 0;
padding:10px 0 10px 0;
font-size:120%;
font-weight:normal;
border-bottom:1px solid #ddd;
}

.post blockquote{
clear:both;
padding:10px 0 10px 15px;
margin:10px 0 25px 30px;
border-left:5px solid #ccc;
}
 
.post blockquote p{padding:5px 0;}

.post table{
border-collapse:collapse;
margin:5px auto 15px auto;
}

.post table td{
border-collapse:collapse;
background-color:#F9F9F9;
text-align:left;
padding:8px;
border:1px solid #D6D6D6;
line-height:20px;
}

.post table th{
background-color:#F5F5F5;
text-align:right;
padding:8px;
white-space:nowrap;
color: #151515;
border-top:1px solid #D4D4D4;
border-right:4px solid #D4D4D4;
border-bottom:1px solid #D4D4D4;
border-left:1px solid #D4D4D4;
font-size:13px;
font-weight:normal;
letter-spacing:1px;
background-repeat:repeat-x;
background-position:top;
}


.post dt{font-weight:bold;}

.post dd{padding-bottom:10px;}

.post img{max-width:100%;height:auto;}

img.aligncenter{
display:block;
margin:5px auto;
}

img.alignright, img.alignleft{
padding:4px;
margin:0 0 2px 7px;
display:inline;
}

img.alignleft{margin:0 7px 2px 0;}

.alignright{float:right;}
.alignleft{float:left;}


/* PC用
------------------------------------------------------------*/
@media only screen and (min-width:1080px){
	nav div.panel{
	display:block !important;
	float:left;
	}

	a#menu{display:none;}
	
  #mainNav{
	clear:both;
	z-index:200;
	position:relative;
	}

	#mainNav li{
	float:left;
	position:relative;
	}

	#mainNav li a{
	color:#555;
	display: block;
	text-align: center;
	_float:left;
	font-size:18px;
	width:216px;
	height:30px;
	padding:15px 0;
	border-bottom:4px solid #ffffff;
	}

	#mainNav li a span,#mainNav li a strong{display:block;}

	#mainNav li a span{
	color:#bababa;
	font-size:10px;
	}
	
	#mainNav ul ul{width:216px;background:#ffffff;}
	#mainNav li ul{display:none;}

	#mainNav li:hover ul{
	display:block;
	position:absolute;
	top:64px;
	z-index:500;
	}
	
	#mainNav li li{
	margin:0;
	float:none;
	width:216px;
	border:0;
	}

  #mainNav li li:last-child{border:0;}
	
	#mainNav li li a{
	width: 196px;
	line-height: 28px;
	padding:10px;
	font-size:95%;
	text-align:left;
	font-size: 15px;
	border:0;
	}

	#mainNav li li span{padding:0 10px;}
	
	#mainNav li.current-menu-item a{
	border-bottom-color:#003399;
	border-bottom-width: 4px;
	}

	#mainNav li a:hover{
	color:#999;
	border-bottom-color:#003399;
	border-bottom-width: 4px;
	}

	#mainNav li li :hover{
	color:#ffffff;
	background-color: #003399;
	}
		
	#header,#wrapper,.inner{
	width:1080px;
	padding:0;
	margin:0 auto;
	}
	
	#wrapper{clear:both;padding: 0;}
	
	#main{
	float:right;
	width:680px;
	padding:15px 0 0 0;
	}
	
	#sidebar{
	float:left;
	width:250px;
	padding:15px 0;
	overflow:hidden;
	}
	
	#sidebar article{
	margin-bottom:20px;
	overflow:hidden;
	}
	
	.logo{width:500px;}
	
	/* グリッド全体 */
	.gridWrapper{
	display:table;
	border-collapse:separate;
	border-spacing:0px;
	}
	
	/* グリッド */
	.grid{
	width:320px;
	display:table-cell;
	}

}


@media only screen and (max-width:959px){
	*{
    -webkit-box-sizing:border-box;
       -moz-box-sizing:border-box;
         -o-box-sizing:border-box;
        -ms-box-sizing:border-box;
            box-sizing:border-box;
	}
	
	#mainNav{
	clear:both;
	width:100%;
	margin:0 auto;
	padding:0;
  border:1px solid #e4e4e4;
	border-left:0;
	border-right:0;
	}

	#mainNav a.menu{
	color:#555;
	width:100%;
	display:block;
	height:40px;
	line-height:40px;
	font-weight: bold;
	text-align:left;
	}

	#mainNav a#menu span{
	padding-left:10px;
	}
	#mainNav a.menu span:before{content:"≡ ";}
	#mainNav a.menuOpen span:before{content:"× ";}

	#mainNav a#menu:hover{cursor:pointer;}

	nav .panel{
	display:none;
	width:100%;
	position:relative;
	right:0;
	top:0;
	z-index:1;
	}
	
	#mainNav ul{margin:0;padding:0;}

  #mainNav li{
	float:none;
	clear:both;
	width:100%;
	height:auto;
	line-height:1.2;
	}

	#mainNav li a,#mainNav li.current-menu-item li a{
	color:#555;
	display: block;
	padding:15px 10px;
	text-align:left;
	border-bottom:1px dashed #ccc;
	}
	
 	#mainNav li a span{padding-left:10px;}
	
	
	#mainNav ul > li:last-child a{border:0;}
	#mainNav li li:last-child a{border-bottom:1px dashed #ccc;}
 
	#mainNav li.current-menu-item a,#mainNav li a:hover,#mainNav li.current-menu-item a,#mainNav li a:active, #mainNav li li.current-menu-item a, #mainNav li.current-menu-item li a:hover, #mainNav li.current-menu-item li a:active{
	color:#555;
	}

	#mainNav li li{
	float:left;
	border:0;
	}

	#mainNav li li a, #mainNav li.current-menu-item li a, #mainNav li li.current-menu-item a{
	padding-left:40px;
	background:url(../img/sub1.png) no-repeat 20px 18px;
	}

	#mainNav li li.current-menu-item a,#mainNav li li a:hover, #mainNav li.current-menu-item li a:hover{background:url(../img/sub1.png) no-repeat 20px -62px;}

	#mainNav li li:last-child a{background:url(../img/subLast.png) no-repeat 20px 20px;}
	#mainNav li li:last-child.current-menu-item a,#mainNav li li:last-child a:hover,#mainNav li.current-menu-item li:last-child a:hover{background:url(../img/subLast.png) no-repeat 20px -65px;}

	nav div.panel{float:none;}
	
	#header{padding-left:10px;}
	
	#main{padding-top:15px;}
	section.toppage{margin:0;}
	#sidebar{padding-bottom:15px;}
	#sidebar article{padding:7px 8px;}
	
	#footer .grid,#footer ul.footnav{float:none;width:100%;text-align:center;}
	ul.footnav li{float:none;display:inline-block;}
	
	.grid{
	float:left;
	width:32%;
	margin:10px 0 0 1%;
	}

	#footer .grid img,#footer .info{float:none;}
	#footer .grid p{display:block;}
	#footer #info .info{float:none;text-align:center;}
	#footer.logo,#footer .info{width:100%;float:none;}
	#footer .logo p{float:none;display:block;	}
	#footer .logo img{float:none;padding:0;}
}


@media only screen and (max-width:640px){
	#header{height:auto;padding-bottom:20px;}
	
	#header h1,.logo,.info{text-align:center;}
	
	.logo,.info{clear:both;width:100%;float:none;}
	
	.logo p{float:none;display:block;}
	.logo img{float:none;padding:0;}
	
	.box img{
	float:left;
	margin-right:5px;
	}
	
	.box h2{padding-top:0;}

  .alignleft,.alignright,img.alignleft,img.alignright{float:none;display:block;margin:0 auto 10px;}

}


@media only screen and (max-width:480px){
	.grid{width:100%;margin:10px 0;}
	.box img{max-width:100px;}
	#mainBanner h1,#mainBanner p{font-size:80%;}
}
@media only screen and (max-width:1080px){
	.grid{width:100%;margin:10px 0;}
	.box img{max-width:100px;}
	#mainBanner h1,#mainBanner p{font-size:80%;}
}


/*PC・タブレット・スマホ共通設定
---------------------------------------------------------------------------*/

/*画面幅767px以下の設定
---------------------------------------------------------------------------*/
@media screen and (max-width:1079px){

/*ヘッダー（サイトロゴが入った最上段のブロック）
------------------------------------------------------------*/


#mainbanner{
	background:#f6f2e7 !important;
}

}

.txt_right {
	padding: 10px 0 20px 0;
	text-align: right;
}

@media only screen and (min-width:1080px){

.header_inner .menu01 li {
	display: none;
}

}

.container {
padding: 40px 40px 40px 40px!important;
text-align: center;
line-height: 180%;
}

.container p.txt_left {
	text-align: left;
	padding: 20px 20px!important;
}

/* 送信ボタン */
.form_submit_button {
	/* buttonタグのリセットCSS */
	background-color: transparent;
	border: none;
	cursor: pointer;
	outline: none;
	appearance: none;
	color: #fff;
	padding: 8px 24px!important;
	background-color: #999!important;
	border: #999!important;
	margin: 20px auto!important;
  
	/* ボタン有効時のスタイル */
	color: #fff;
	padding: 8px 24px!important;
	background-color: #3abec1!important;
	border: #3abec1!important;
	cursor: pointer; /* ポインターカーソルを表示 */
  }
  .txt_right{
	  text-align: right!important;
  }

  /* ボタン無効時のスタイル */
  .form_submit_button[disabled] {
	background-color: #ccc!important;
	cursor: not-allowed!important; /* クリック不可のカーソルを表示 */
  }

  #form_submit{
	  border: none!important;
  }

/* フォームレイアウト
*****************************************************/
.rpos{
width: 15px;
height: 15px;
margin-left: 0;
top: 3px;
position: relative;
}

label.pos{
padding-left: 4px !important;
}