@charset "utf-8";

@import url(http://fonts.googleapis.com/earlyaccess/notosansjapanese.css);

/*----------------------------------------------------
 elements
----------------------------------------------------*/
body {
	background:#ffffff;
	color: #111111;
	font-family:'Noto Sans Japanese', "Noto Sans CJK JP Light", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-weight:300;
	width: 100%;
	font-size:14px;
	line-height:180%;
	-webkit-text-size-adjust: none; /* フォントサイズ自動調整 */
	margin:0px;
}

a:link,
a:visited {
	text-decoration: none;
	color: #606060;
}
a:hover,
a:active {
	text-decoration: underline;
	color: #606060;
}

img{vertical-align: top;}
ol, ul {list-style:none;}
table{font-size:100%;}
img{border:0; width:100%;}

h1,h2,h3,h4,h5,h6,div,p,ul,ol,li,dl,dt,dd,form{
	padding:0px;
	margin:0px;
	font-size:1em;
	font-weight:normal;
}
img{
	max-width:100%;
	height:auto;
}
img, a img {
	border:none;
	vertical-align: bottom;
}
a img:hover {
	filter: alpha(opacity=75);
	-moz-opacity:0.75;
	opacity:0.75;
}

/* float-clear */
.clear { clear:both;}
br.clear {
	height: 0;
	line-height: 0;
	font-size: 0;
}

/*=============================
	Layout-Base
===============================*/
#pagetop {}
#head {}
#wrap-content {}
#wrap-foot {}

/* --------------------------------------------------- */
/* wrapper */
/* ---------------------------------------------------- */
#wrapper {
	width: 100%;
	position:relative;
}

/* ---------------------------------------------------- */
/* header */
/* ---------------------------------------------------- */
header {
	position:relative;
	width:100%;
	text-align:center;
}
.head_box{
	width:100%;
	position: absolute;
	top:0;
	z-index:9999;
}
.h1box{
	overflow:hidden;
	position: relative;
	height:50px;
}
.head_box h1{
	position:absolute;
	top:15px;
	left:10px;
	width:200px;
}
.head_box h1 img{
	width:100%;
	height:auto;
}
.head_box .menu_btn{
	position:fixed;
	right:0;
	top:0;
	width:50px;
}
.head_box .menu_btn img{
	width:100%;
	height:auto;
}

#visual {}
    #visual h2 {}
	
	/* top image and slideshow */
	.flexslider {
		width: 100%;
		position: relative;
		z-index:0;
	}
	.slides {
		overflow: hidden;
	}
		.slides li.main01 {background:url(../images/top/bg_visual01.jpg) no-repeat center top;}
		.slides li.main02 {background:url(../images/top/bg_visual02.jpg) no-repeat center top;}
		.slides li.main03 {background:url(../images/top/bg_visual03.jpg) no-repeat center top;}

	/* Control Nav */
	.flex-control-nav {
		width: 100%;
		position: absolute;
		bottom: 17px;
		left: 0;
		text-align: center;
		z-index: 1000;
	}
	.flex-control-nav li {
		margin: 0 14px 0 0;
		display: inline-block;
		/*zoom: 1; 
		*display: inline;*/
	}
	.flex-control-nav li:last-child {margin-right:0;}
	.flex-control-paging li a {
		width: 6px;
		height: 6px;
		display: block;
		background: url(../images/top/icon_def.gif) no-repeat;
		text-indent: -9999px;
	}
	.flex-control-paging li a:hover {
		background: url(../images/top/icon_cr.gif) no-repeat;
	}
	.flex-control-paging li a.flex-active {
		background: url(../images/top/icon_cr.gif) no-repeat;
		cursor: default;
	}

/* ---------------------------------------------------- */
/* footer */
/* ---------------------------------------------------- */
footer{
	font-size:12px;
	background:#265e9e;
	margin-top:50px;
}
footer .pagetop a{
	display:block;
	background:#fff;
	padding:10px 0;
}
footer .pagetop a img{
	width:70px;
	height:auto;
	display:block;
	margin:0 auto;
}
footer nav ul{}
footer nav ul li{
	width:50%;
	float:left;
	box-sizing:border-box;
	border-right:1px solid #fff;
	border-bottom:1px solid #fff;
}
footer nav ul li a{
	display:block;
	padding:10px;
}
footer nav ul li:nth-child(1){
	width:100%;
	float:none;
	border-right:none;
}
footer nav ul li:nth-child(odd){border-right:none;}
footer nav ul li:nth-child(8),
footer nav ul li:nth-child(9){border-bottom:1px solid #134783;}
footer nav ul li a:link,
footer nav ul li a:visited,
footer nav ul li a:hover,
footer nav ul li a:active{ color:#fff; text-decoration: none;}

/* copy */
footer .copyright {
	font-size:12px;
	clear:both;
	line-height:160%;
	text-align:center;
	padding:10px;
	color:#fff;
	border-top:1px solid #3f72ad;
}
footer .copyright address{font-style: normal;}
footer .copyright address a{color:#fff;}

/*=============================
	TopPage setting
===============================*/
section {
	width:100%;
	margin:0 auto;
	padding:0 10px;
	box-sizing:border-box;
}

#greeting{
	background:url(../images/top/bg_greeting.jpg) no-repeat center;
	background-size:cover;
	padding:30px 0;
}
.greeting h3{
	width:90%;
	margin:0 auto 10px;
}

#point {
	background:url(../images/top/bg_point.jpg) no-repeat center top;
	background-size:cover;
	padding:30px 0;
}	
.point {text-align:center;}
.point h3{
	width:70%;
	margin:0 auto 10px;
}
.point li {
	width:47%;
	display:inline-block;
	margin:1%;
}

#support {
	background:url(../images/top/bg_support.jpg) no-repeat center top;
	background-size:cover;
	padding:0px 0 30px 0;
}	

.support {text-align:center;}
.support h3 {
	width:50%;
	margin:0 auto 10px;
}
.support li {
	width:47%;
	display:inline-block;
	margin:1%;
}
	
#top_menu {
	background:url(../images/top/bg_menu.jpg) no-repeat center top;
	background-size:cover;
	padding:30px 0 50px 0;
}	
.top_menu {}
.top_menu li {
	position:relative;
	z-index:0;
	background:#fff;
	margin-bottom:30px;
}
.top_menu li:last-child{margin-bottom:0px;}
.top_menu .m_img {}
.top_menu h4 {
	width:80%;
	margin:10px auto 0px;
}
.top_menu p {
	margin:0 auto;
	text-align:left;
	line-height:20px;
	letter-spacing:1px;
	padding:10px 10px 30px 10px;
}
.top_menu .btn_menu {
	position:absolute;
	z-index:10;
	bottom:-20px;
	right:0;
	left:0;
	width:50px;
	margin:0 auto;
}

.news {padding:30px 10px;}
.news h3 {
	float:left;
	margin-bottom:10px;
}
.news .btn_news {
	float:right;
	margin-top:13px;
}
.news ul {}	
.news li {
	background:url(../images/top/bg_line.gif) repeat-x bottom;
	padding-top:10px;
}
.news li span {
	width: 100px;
	background:#0278bd;
	color:#fff;
	display:block;
	padding:3px 0;
	text-align:center;
}
.news li a {
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	text-align:left;
	display:block;
	padding:5px;
}

.map {}
.map p {
	font-family:"小塚ゴシック Pro L", "Noto Sans CJK JP Light", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	margin-top:10px;
}
.map .btn_com {
	float:right;
	margin-top:10px;
	width:135px;
}

/*=============================
	SubPage setting
===============================*/

/* main-visual
-------------------------*/
.subvisual {
	background:url(../images/common/bg_subvisual01.jpg) no-repeat center;
	background-size:cover;
	padding:80px 10px 30px 10px;
}
.subvisual h2 {
	text-align:right;
	overflow: hidden;
	color:#aaa;
	font-size:24px;
	font-weight:100;
}

/* Bread_crumb_List */
.bread_crumb_list{
	padding:10px;
	border-bottom:1px solid #DFDFDF;
}
.bread_crumb li { display:inline;}
.bread_crumb li:after {
	content : '>>';
	padding-left:5px;
}
.bread_crumb li:last-child:after { content : '';}
.bread_crumb li.current { font-weight:500;}

.contents.subcon {
	background:url(../images/top/bg_support.jpg) no-repeat top;
	background-size:100% auto;
}
.contents.subcon section h3{
	padding-top:40px;
	padding-bottom:15px;
	margin-bottom:10px;
	border-bottom:1px solid #DFDFDF;
	font-weight:200;
	font-size:20px;
}
.contents.subcon section p{margin-bottom:5px;}
.contents.subcon section p.midashi01{
	font-weight:200;
	font-size:16px;
	color:#0278bd;
	margin-bottom:10px;
}
.contents.subcon section .img{margin:10px 0;}

ul.ul01{
	list-style:outside disc;
	margin-left:22px;
}
ul.ul01 li{ margin-bottom:5px;}

dl.dlbox01{}
dl.dlbox01 dt{
	padding-top:20px;
	font-size:16px;
	font-weight:400;
}
dl.dlbox01 dt span{
	border-left:3px solid #275e9f;
	display:block;
	padding-left:10px;
}
dl.dlbox01 dd{padding-top:10px;}

/* =========================================================
■contact.php
========================================================= */
.contactTable{width :100%;}
.contactTable th{
	display:block;
	text-align:left;
	padding:10px 10px 0 10px;
}
.contactTable td{
	display:block;
	padding:10px;
	border-bottom:solid 1px #ccc;
}
.contactTable td.cen{
	border-bottom:none;
	text-align:center;
}
.contactTable td input[type="text"] ,
.contactTable td textarea{width : calc(100% - 10px);}
.contactTable td.tel_area input[type="text"]{width :25%;}
.fontcontact01{ margin:20px 0;}

/* =========================================================
■sitemap.html
========================================================= */
.sitemapbox{}
.sitemapbox ul{}
.sitemapbox ul li{
	padding:15px 20px;
	background:url(../images/common/arw01.png) no-repeat 0px 22px,url(../images/common/dot01.png) repeat-x bottom;
}
.sitemapbox ul li > ul > li{
	padding:10px 0px;
	background:none,url(../images/common/dot01.png) repeat-x bottom;
	list-style: inside disc;
	margin-left:5px;
}
.sitemapbox ul li > ul > li:last-child{
	padding:10px 0px 0px 0px;
	background:none,none;
}

/* =========================================================
■company.html
========================================================= */
.companybox {}
.companybox dl {
	border-bottom:solid 1px #ccc;
	padding:10px 0px;
}
.companybox dl.bottom {border-bottom:solid 0px #003366;}
.companybox dl dt {
	font-weight:bold;
	margin-bottom:5px;
}
.companybox dl dd {}
.g_map{}
.g_map iframe{
	width:100%;
	height:300px;
}

/* =========================================================
■service.html
========================================================= */
#servicenavi{
	margin-top:40px;
	padding:10px;
	background:#DFDFDF;
}
#servicenavi li{
	float:left;
	width:49%;
	margin-bottom:2%;
}
#servicenavi li:nth-child(2n){ float:right;}
#servicenavi li:nth-child(5){
	width:100%;
	margin-bottom:0;
}
#servicenavi li span{
	display:block;
	border:1px solid #CCC;
	background:#fff;
	padding:10px 0px;
	text-align:center;
	opacity: 0.9;
}
#servicenavi li span a:link,
#servicenavi li span a:visited {
	text-decoration: none;
	color: #606060;
}
#servicenavi li span a:hover,
#servicenavi li span a:active {
	text-decoration: none;
	color: #606060;
	padding-bottom:2px;
	border-bottom:1px solid #275e9f;
}

.ulservice01{
	margin:20px 0;
	padding:20px 10px;
	background:url(../images/service/bg_001.jpg) no-repeat 0px 0px;
	background-size:cover;
}
.ulservice01 li{
	float:left;
	width:49%;
	margin-bottom:2%;
}
.ulservice01 li:nth-child(2n){ float:right;}
.ulservice01 li:nth-child(7){
	width:100%;
	margin-bottom:0;
}
.ulservice01 li span{
	display:block;
	border:1px solid #ccc;
	background:#f7f7f7;
	padding:10px 0px;
	text-align:center;
	opacity: 0.9;
	font-size:13px;
}

/* =========================================================
■practice.html
========================================================= */
.tablePractice01{ margin-top:20px;}
.tablePractice01 th{
	width:120px;
	background:url(../images/practice/practice_arw01.png) no-repeat center bottom,#0278bd;
	background-size:contain;
	text-align:center;
	color:#fff;
	vertical-align:top;
	opacity:0.8;
	padding: 10px 0 50px 0;
	margin-bottom:10px;
}
.tablePractice01 th > span{
	display:block;
	font-size:12px;
	color:#cedff3;
	font-weight:200;
}
.tablePractice01 th > span + span{
	color:#fff;
	font-weight:200;
	font-size:13px;
}
.tablePractice01 td{
	font-size:14px;
	vertical-align:top;
	background:#fff;
	font-weight:200;
	padding:10px;
	margin-bottom:10px;
}

/* =========================================================
■news.html
========================================================= */
.newsList ul.list {}	
.newsList ul.list li {
	background:url(../images/top/bg_line.gif) repeat-x bottom;
	padding-top:10px;
}
.newsList ul.list li span {
	width: 100px;
	background:#0278bd;
	color:#fff;
	display:block;
	padding:3px 0;
	text-align:center;
}
.newsList ul.list li a {
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	text-align:left;
	display:block;
	padding:5px;
}

.newsArea{}
.newsArea p{}
.newsArea p.date{
	padding:10px 0;
	text-align:right;
}

/* 詳細ページ 前後の記事へのリンク
------------------------------ */
.paginated-link {
	margin:40px auto 0;
	overflow: hidden;
	padding:0 10px;
}
.paginated-link li {
	width: 48%;
	padding: 0 5px;
	text-align: center;
	font-size: 13px;
	background: #0278bd;
	box-sizing: border-box;
}
.paginated-link li:hover{opacity:0.75;}
.paginated-link li.prev-link {float: left;}
.paginated-link li.next-link {float: right;}
.paginated-link li a {
	height: 40px;
	line-height: 40px;
	display: block;
	overflow: hidden;
	color:#fff;
}
.paginated-link li a:hover{ text-decoration:none;}

/* ページネーション
------------------------------ */
ul.pagenation {
	margin:20px 0 0 0;
	text-align: center;
	font-size: 0;
	letter-spacing: 0;
}
ul.pagenation li {
	width: 25px;
	margin: 0 3px;
	text-align: center;
	line-height: 30px;
	font-size: 13px;
	border: 1px solid #0278bd;
	vertical-align: top;
	display: inline-block;
	background:#fff;
}
ul.pagenation li a{color: #0278bd !important;}
ul.pagenation li.current {
	color: #fff;
	background:#0278bd;
}
ul.pagenation li.dot {
	width: 15px;
	margin: 0 1px;
	border: none;
}
ul.pagenation li a {
	text-decoration: none;
	display: block;
}
ul.pagenation li a:hover {
	text-decoration: underline;
}

/* 詳細ページ SNSシェアボタン
------------------------------ */
.sns-sharerbtn-list {
	width:100%;
	margin:40px auto 0;
	padding: 8px 0;
	text-align: center;
	background: #02328d;
	clear: both;
	color:#fff;
}
.sns-sharerbtn-list li {
	margin: 0 4px;
	vertical-align: top;
	display: inline-block;
}
