@charset "utf-8"; 

/* reset
-------------------------------------- */
* {margin: 0;padding: 0;}
html{overflow-y: scroll;}
body {
	font-size:80%; /* 基本のフォントサイズ */
	line-height: 1.7em; /* 基本の行間 */
	text-align:center;
	font-family:"ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", Osaka, "メイリオ", "ＭＳ Ｐゴシック", Meiryo, sans-serif;
	text-align:justify; /* Firefox用*/
	text-justify:inter-ideograph;/* ie用 */
	color: #444;
	margin: 0;
	padding: 0;
	}

a:link, a:visited {color: #3366cc; text-decoration:underline}
a:hover, a:active {color: #3366cc; text-decoration:none}
.clearfix{zoom:1;/*for IE 5.5-7*/overflow:hidden}
.clearfix:after{/*for modern browser*/ content:"."; display: block; height:0px; clear:both; visibility:hidden}	
.imglink a:hover img {opacity:0.7;	filter:alpha(opacity=70);-moz-opacity: 0.7}

dl:after{
	content: "";
	display: block;
	height: 1px;
	clear: both;
	visibility: hidden
	}

dl{display:inline-block;min-height:1%}
* html dl{height: 1%}
dl{display: block}
.clearfix:after { content: ""; display: block; clear: both}
.clearfix {display: inline-block}
* html .clearfix {height: 1%}
.clearfix {display: block}
a{ outline:none}

/* header
--------------------------*/
#header{
	margin:0 auto;
	width: 960px;
	height:120px;
	overflow:hidden;
	}

h1{	margin: 0 auto;}
#logo{
	float:left;
	padding-top:20px;
	width:293px;

	}

#header-right{
	float:right;
	width:388px;
	}

/* navi
------------------ */
#navi-bg {
	clear:both;
	margin:0 auto;
	background:url(../images/bg.jpg) repeat-x;
	}

#navi {
	clear:both;
	margin:0 auto;
	width:960px;
	line-height:0;
	vertical-align:bottom;
	height:50px;
	}

#navi ul{
	line-height:0;
	}

#navi li{
	float:left;
	height:50px;
	list-style:none;
	line-height:0;
	vertical-align:bottom}

#navi img{display:block}	

/* wrapper
--------------------------*/
#wrapper{width:100%;}

/* main
--------------------------*/
#main-bg{
	clear:both;
	margin:0 auto;
	height:350px;
	overflow:hidden;
	background:#d7e5ff	
	}

#main {
	clear:both;
	width:960px;
	height:350px;
	overflow:hidden;	
	margin:0 auto;
	background:url(../images/main.jpg) no-repeat;	
	}

#main p{
	text-align:right;
	padding:250px 40px 0 0
	}

/* pagebody
--------------------------*/
#pagebody-bg{
	clear:both;
	margin:0 auto;
	}

#pagebody{
	margin:0 auto;
	width: 960px;
	padding:30px 0 
	}	

/* footer
-------------------------- */
#footer-bg{
	clear:both;	
	margin:0 auto;
	background:#3366cc;
	}

#footer{
	width:960px;
	margin:0 auto;
	padding:10px 0;
	}

.flink-ul{
	width:700px;
	list-style:none;
	margin-left:170px;
	}

.flink-ul li{
	float:left;
	font-size:80%;	
	border-right:1px solid #fff;	
	padding:0 10px 0 10px;
	}

.flink-ul a:link,
.flink-ul a:visited {
	color: #fff;
	text-decoration:none;
	}

.flink-ul a:hover,
.flink-ul a:active {
	color: #fff;
	text-decoration:underline
	}	

.flink-ul li.first{ padding:0 10px 0 0 }
.flink-ul li.last{border:none;}

#copy-bg{
	clear:both;	
	margin:0 auto;
	}
	
#copy{
	width:960px;
	margin:0 auto;
	padding:20px 0;
	}

address{
	float:left;
	width:400px;
	font-size:80%;
	margin-left:300px;
	font-style:normal;	
	}

#copy p{
	float:right;
	width:22px;
	height:14px;
	}

/* index.html
-------------------------- */
.blue-box{
	width:300px;
	background:url(../images/bottom.jpg) bottom no-repeat;
	padding-bottom:20px;
	margin-bottom:25px;
	}

.blue-box p{
	padding:0 20px;
	border-right:3px solid #a0dbff;
	border-left:3px solid #a0dbff;	
	}
	
.point-box{
	background:url(../images/point.jpg) no-repeat top;
	margin-bottom:25px;}

.point-box p{
	font-size:140%;
	text-align:center;
	font-weight:bold;
	padding:20px 0 10px 0;
	}
	
.p01-box{
	background:url(../images/line.jpg) top no-repeat;
	padding-top:10px;
	}	

/* h2
--------------------------*/
#h2-bg{
	clear:both;
	margin:0 auto;
	height:150px;
	background:#d7e5ff	
	}

#h2-img {
	clear:both;
	width:960px;
	height:150px;
	margin:0 auto;	
	}

/* input
------------------------------*/
input[type="checkbox"], input[type="radio"] {vertical-align:middle;}
input{font-size:100%;vertical-align:middle;font-family:"メイリオ", Meiryo, "ヒラギノ角ゴｴPro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", sans-serif}
input[type="text"], input[type="password"], select{border:1px solid #ccc;padding:4px;}
textarea{font-size:100%;border:1px solid #ccc;padding:4px;width:98%;}

input[type="text"]:hover,
input[type="password"]:hover,
select:hover[type="password"]{border:1px solid #ccc;padding:4px;line-height:normal;}
textarea:hover{border:1px solid #999;padding:4px;}

input[type="text"]:focus,
input[type="password"]:focus,
select:focus,
textarea:focus{border:1px solid #ccc;padding:4px;background:#f6f6f6;}

textarea{ font-size:12px;width:700px}

#form_button {padding: 20px 40px;}

.form-ss{width:60px}
.form-s{width:150px}
.form-m{width:250px}
.form-l{width:400px}
.form-h{width:650px}
.input{ padding:5px;}

/* table
------------------------------*/	
.table{
	border:1px solid #ccc;
	border-bottom:0px solid #ccc;
	border-right:0px solid #ccc;
	background:#fff;
/*
	border-top:1px #fff solid;
*/
	word-break: break-all;
	}

.table td{
	padding:8px 10px;	
	border-bottom:1px solid #ccc;
	border-right:1px solid #ccc;
	border-top:1px #fff solid
	}

.table th{
	background:#eee;
	border-top:1px #fff solid;
	border-bottom:1px solid #ccc;
	border-right:1px solid #ccc;	
	padding:6px 8px;
	text-align:center
	}

.table .need{background:url(../images/icon_need.gif) no-repeat 95% center #eee;}

/* question
------------------------------*/
.que{
	color:#3366cc;
	font-weight:bold;
	}

.answer{
	border-top:1px dotted #aaa;
	padding-top:3px;
	margin-top:5px;
	background:#fff;
	padding:15px 20px;
	}
	
	
/* table th　td
------------------------------*/
.th20 th{width:20%}
.th25 th{width:25%}
.th30 th{width:30%}
.th40 th{width:40%}

.td1{ background:#FFD7D7}
.td2{
	font-size:110%;
	background:#0066cc;
	color:#fff;
	width:30px;
	text-align:center;
	font-weight:bold;
	}
	
/* common
------------------------------*/
p{margin-bottom:0}
img {border: 0}
ul {list-style:none}
.f-left{float:left}
.f-right{float:right}
.ctr{text-align:center}
.rgt{text-align:right}
.lft{text-align:left}
.clear {clear:both; margin:0;padding:0}
.bold{font-weight:bold}

.red {color:#F00}	
.blue{color:#0066cc}
.navy{color:#10355a}

.lhn{line-height:normal; margin-bottom:10px;}

.bb{border-bottom:1px dotted #aaa; padding-bottom:3px; margin-bottom:3px}
	
.w40{width:40px;}
.w60{width:60px;}	
.w80{width:80px;}	
.w120{width:120px;}	
.w140{width:140px;}	
.w160{width:160px;}
.w180{width:180px;}
.w190{width:190px;}	
.w200{width:200px;}
.w210{width:210px;}
.w220{width:220px;}
.w240{width:240px;}	
.w250{width:250px;}	
.w260{width:260px;}
.w270{width:270px;}
.w280{width:280px;}
.w290{width:290px;}	
.w300{width:300px;}	
.w310{width:310px;}	
.w320{width:320px;}	
.w330{width:330px;}
.w340{width:340px;}
.w350{width:350px;}
.w370{width:370px;}
.w360{width:360px;}
.w380{width:380px;}
.w390{width:390px;}
.w400{width:400px;}
.w420{width:420px;}
.w430{width:430px;}
.w450{width:450px;}
.w460{width:460px;}
.w470{width:470px;}
.w480{width:480px;}
.w500{width:500px;}
.w510{width:510px;}
.w530{width:530px;}
.w540{width:540px;}
.w550{width:550px;}
.w560{width:560px;}
.w580{width:580px;}
.w600{width:600px;}
.w610{width:610px;}
.w620{width:620px;}
.w640{width:640px;}
.w660{width:660px;}
.w670{width:670px;}
.w680{width:680px;}
.w700{width:700px;}
.w740{width:740px;}
.w750{width:750px;}
.w760{width:760px;}
.w820{width:820px;}
.w860{width:860px;}
.w900{width:900px;}
.w920{width:920px;}

.fs85{font-size:85%}
.fs90{font-size:90%}
.fs110{font-size:110%}
.fs120{font-size:120%}
.fs140{font-size:140%}

.mb5{ margin-bottom:5px}
.mb10{ margin-bottom:10px}
.mb15{ margin-bottom:15px}
.mb20{ margin-bottom:20px}
.mb25{ margin-bottom:25px}
.mb30{ margin-bottom:30px}
.mb40{ margin-bottom:40px}

.mr5{ margin-right:5px}
.mr10{ margin-right:10px}
.mr15{ margin-right:15px}
.mr20{ margin-right:20px}
.mr25{ margin-right:25px}
.mr30{ margin-right:30px}

.ml20{ margin-left:30px}
.mt10{ margin-top:10px}
.mt30{ margin-top:30px}


/*----box--------------------*/
.box{
	padding:9px;
	border:1px solid #ccc;
	}

.box-radius{
	padding: 15px;
	font-size: 12px;
	border-radius: 6px;
	border:1px solid #ccc;
	}

.box-gray{
	background: #ccc;
	padding: 13px;
	}
	
.box-gray2{
	background:#f6f6f6;
	}

.box-height{
	border:1px solid #ccc;
	padding:18px;
	margin-bottom:20px;
	height:220px;
	overflow:scroll;
	overflow-x:hidden;}		

/*----順不同リスト--------------------*/


/* 画像リストあり */
ul.mark {list-style:none;}
ul.mark li{
	padding:3px 0 3px 10px;}
	
/* リストなし */	
ul.none {list-style:none}
ul.none li{padding:3px 0}

/* ディスク */	
ul.disc{list-style: disc;}
ul.disc li{margin-left: 24px}

/* 数字振り */
ul.decimal{list-style:decimal;padding-left:22px;}
ul.decimal li{padding:3px 0px;
border-bottom:1px dotted #999;}	


/*----順序リスト-----------------------*/


/*小文字のアルファベット*/
ol.lower-latin{
	list-style:lower-latin;
	padding-left:22px;}
ol.lower-latin li{margin-left: 24px;
padding:3px 0px;
border-bottom:1px dotted #999;
}	

/*2進法*/
ol.decimal{list-style: decimal;}
ol.decimal li{margin-left: 24px;}

/*olノーマル　左余白つき*/
ol.normal li{margin-left: 24px;}

/*ol　数字　視覚的*/
ol.number {
    counter-reset:li; /* Initiate a counter */
    padding:0; /* Remove the default left padding */
    list-style:none; /* Disable the normal item numbering */

}
ol.number li {
    position:relative; /* Create a positioning context */
    margin:0 0 1px 2em; /* Give each list item a left margin to make room for the numbers */
    padding:8px 8px 8px 20px;
    border-top:1px solid #ccc;
}
ol.number li:before {
    content:counter(li); /* Use the counter as content */
    counter-increment:li; /* Increment the counter by 1 */
    /* Position and style the number */
    position:absolute;
    top:-1px;
    left:-2em;
    width:2em;
    padding:8px 6px;
    border-top:1px solid #0066cc;
    color:#fff;
	background:	#3366cc;
	background: -moz-linear-gradient(
		top,
		#3399cc 0%,
		#3366cc);
	background: -webkit-gradient(
		linear, left top, left bottom,
		from(#3399cc),
		to(#3366cc));	
    font-weight:bold;
    font-family:"Helvetica Neue", Arial, sans-serif;
    text-align:center;
}

/* title
------------------------------*/
h2,h3,h4,h5{
	margin: 0;
	padding: 0;
	font-size: 100%;
	font-style:normal;
	font-weight:normal;
	clear:both
	}

.title01{
	font-size:120%;	
	font-weight:bold;
	padding:8px 15px 8px 15px;
	color:#fff;
	margin-bottom:20px;
	background:#3366cc;
	}

.title02{
	font-size:120%;	
	font-weight:bold;
	margin-bottom:20px;
	padding:10px 15px 8px 15px;
	border-top:3px solid #3366cc;
	border-bottom:1px solid #ccc;
	background:url(../images/graybg.jpg) repeat-x bottom;
	}

.title03{
	font-size:100%;		
	font-weight:bold;	
	border-left: 4px solid #3366cc;
	color:#3366cc;
	padding-left: 11px;
	margin-bottom:20px;
	}
	
.title04{
	font-size:100%;	
	font-weight:bold;
	margin-bottom:10px;
	border-bottom:1px solid #ccc;
	}	

/* print
----------------------------*/	
@media print{
	}
	
/* privacy policy
----------------------------------------------------------*/
.cmnbox{background: #fff;margin-bottom: 20px;border:1px solid #ccc;}
.cmninbox{padding: 19px;}
.cmninbox h3{color:#10355a;margin:-20px -19px 19px;padding:16px 19px 14px;line-height: 14px;font-size: 14px;border-top:2px solid #47619c;border-bottom:1px solid #ccc;}


/* 相互リンク用 */
.footer-middle {
    padding: 30px;
    text-align: start;
	margin: 0 auto;
	max-width: 1440px;
}
.group_link_block h2 {
    font-size: 14px;
    margin-bottom: 10px;
}
.group_link_list {
    list-style: none;
    display: flex;
    flex-wrap: wrap;
}
.group_link_list li {
    margin-bottom: 10px;
    list-style: none;
    display: list-item;
    unicode-bidi: isolate;
    margin-bottom: 5px;
    height: auto;
}
.group_link_list > li {
    width: 30%;
}
.group_link_cat {
    position: relative;
    font-size: 13px;
    font-weight: 500;
    padding-left: 20px;
    transition: all .5s ease;
	color: #999;
    padding: 0;
    cursor: auto;
}
.group_link_box {
    display: block;
    padding: 10px 0px 0px;

}
.group_link_list li {
    margin-bottom: 5px;
}
.group_link_box li a {
    position: relative;
    display: block;
    font-size: 12px;
    padding-left: 20px;
    transition: all .4s;
    margin-bottom: 4px;
	color: #999;
}
.group_link_box li a::before {
    position: absolute;
    content: "・";
    width: 2px;
    height: 2px;
    border-radius: 5px;
    top: 1px;
    left: 2px;
}