@charset "UTF-8";

/* ========== common ========== */

body
{
font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
color: #000000;
font-size: 14px;
line-height: 1.75em;
word-wrap: break-word;

border-top:5px solid #365ca2;
}

a { color: #005bab; text-decoration: none; }
a:visited { color: #005bab; text-decoration: none; }
a:hover { color: #005bab; text-decoration: underline; }

br.clear-both, div.clear-both { clear:both; font: 1px/1px monospace; display: block; }
.left { float: left; }
.right { float: right; }

/* clearfix */
.clearfix:after {
display:block;
clear:both;
visibility:hidden;
height:0;
content:".";
}
.clearfix { display:inline-block; }
.clearfix { display:block; }
* html .clearfix { height:1%; }

/* iepng */
* html .iepng { behavior: expression(IEPNGFIX.fix(this)); }

/* margin */
.marginB0 	{margin-bottom:0;}
.marginB5 	{margin-bottom:5px;}
.marginB8 	{margin-bottom:8px;}
.marginB10 	{margin-bottom:10px;}
.marginB12 	{margin-bottom:12px;}
.marginB15 	{margin-bottom:15px;}
.marginB20 	{margin-bottom:20px;}
.marginB30 	{margin-bottom:30px;}
.marginB40 	{margin-bottom:40px;}
.marginB50 	{margin-bottom:50px;}
.marginB60 	{margin-bottom:60px;}
.marginL3 	{margin-left:3px;}
.marginL5 	{margin-left:5px;}
.marginL8 	{margin-left:8px;}
.marginL10 	{margin-left:10px;}
.marginL15 	{margin-left:15px;}
.marginL20 	{margin-left:20px;}
.marginL25 	{margin-left:25px;}
.marginL30 	{margin-left:30px;}
.marginL35 	{margin-left:35px;}
.marginT5 	{margin-top:5px;}
.marginT8 	{margin-top:8px;}
.marginT10 	{margin-top:10px;}
.marginT50 	{margin-top:50px;}
.marginLR5 {margin:0 5px;}
.marginR15 	{margin-right:15px;}
.marginR30 	{margin-right:30px;}

/* ========== CONTENTS ========== */
/* ----- COMMON ----- */
/* IMG LINK */
a img { background:none!important; }
a:hover img { opacity:0.6; filter:alpha(opacity=60); -ms-filter: "alpha( opacity=60 )"; background:none!important; }

.inner { display:block; width:970px; margin: 0 auto 0 auto; position:relative; }
.center { text-align:center; }
.strong { font-weight:bold; }
/*.notice { color:#F00; }*/

sup { font-size: 75.5%; vertical-align: top; position: relative; top: -0.2em; }

/* ========== HEADER ========== */
header { display:block; width:970px; height:100px; margin:0 auto; padding:15px 0 0; position:relative; }
header .tagline { font-size:11px; font-weight:bold; }
header .link { font-size:10px; display:block; position:absolute; top:15px; left:625px; }
header .tel { display:block; position:absolute; top:45px; left:625px; }
header .contact { display:block; position:absolute; top:45px; right:0; }
header .tel img, header .contact img { display:block; }

/* ========== ARTICLE ========== */
article { display:block; width:970px; margin:0 auto; position:relative; }
.message { font-size:12px; line-height:1.5em; display:block; text-align:center; width:780px; margin:0 auto 25px; padding:10px 0; border:1px solid #191919; }

/* ========== NAV ========== */
nav {}
nav ul {}
nav ul a { color:#000000; font-size:17px; font-weight:bold; text-align:center; background:url(../images/bg_nav_off.png) repeat-x; display:block; float:left; width:322px; height:45px; padding-top:20px; margin-bottom:20px; border-right:1px solid #fff; }
nav ul #g03 a { width:323px; border-right:none; }
nav ul a:visited { color:#000000; }
nav ul a:hover { color:#fff; background:url(../images/bg_nav_on.png) repeat-x; text-decoration: none; }

/* ========== MAIN ========== */
#main .catch1, #main .catch2 { font-weight: bold; line-height: 100%; text-align: center; }
#main .catch1 { font-size: 33px; margin-bottom: 15px; }
#main .catch2 { font-size: 42px; margin-bottom: 20px; }
#main .inner { background: url(../images/main.jpg) no-repeat; height: 530px; padding-top: 25px; position: relative; }
#main .inner h1 { color: #ffffff; font-size: 28px; font-weight: bold; text-align: center; display: block; }
#main .inner p { color: #ffffff; font-size: 18px; font-weight: bold; text-align: center; display: block; left: 0; right: 0; margin:0 auto; position: absolute; top: 75px; width: 747px; /*height: 97px;*/ }

/* ========== ABOUT ========== */
#about { background: #d7d7f2; margin-bottom: 30px; }
#about .inner { padding: 35px 0;}
#about p { font-size: 19px; font-weight: bold; line-height: 2rem; }

/* ========== SECTION ========== */
h2 { color: #ffffff; font-size: 28px; font-weight: bold; line-height: 100%; background: url(../images/bg_hdh2.png) no-repeat; display: block; height: 38px; padding: 9px 25px 0; margin-bottom: 35px; }
.catch { font-size: 46px; font-weight: bold; line-height: 125%; display: block; margin-bottom: 20px; padding-left: 20px; border-left: 8px solid #474098; }
.lead { font-size: 18px; font-weight: bold; line-height: 150%; display: block; margin-bottom: 20px; padding-left: 28px; }

/* ========== S01 ========== */
#s01 { margin-bottom: 20px; }
#s01 h3 { font-size: 46px; font-weight: bold; line-height: 100%; background: url(../images/dot_border.png) repeat-x bottom; display:  block; height: 60px; padding: 10px 0 0 100px; margin-bottom: 30px; position: relative; }
#s01 h3 font { color: #ffffff; font-size: 65px; font-weight: bold; line-height: 100%; background: url(../images/bg_num.png) no-repeat; display: block; text-align: center; width: 65px; height: 65px; padding: 5px 0 0 10px; position: absolute; top: 0; left: 0; }
#s01 h3 span { display: block; width: 129px; height: 130px; position: absolute; top: 0; right: 0; }
#s01 .tx { font-size: 15px; line-height: 175%; margin-bottom: 50px; }

/* ========== S02 ========== */
#s02 {}
#s02 h3 { font-size: 30px; font-weight: bold; line-height: 100%; background: url(../images/icn_02_hd.png) no-repeat; display: block; height: 36px; padding: 5px 0 0 30px; margin-bottom: 15px; }
#s02 .ln_catch { font-size: 40px; font-weight: bold; line-height: 125%; background: #D8D8E7 url(../images/bg_lncatch.png) repeat-y right; padding: 15px 0 15px 25px; margin-bottom: 25px; border-left: 20px solid #6c66ad; }
#s02 .ln_catch2 { color: #474098; font-size: 31px; font-weight: bold; line-height: 150%; margin-bottom: 30px; }

#s02 .tx { font-size: 16px; line-height: 175%; display: block; padding-left: 20px; margin-bottom: 30px; }

#s02 .img1 { display: block; margin-bottom: 65px; position: relative; }
#s02 .img1 img { display: block; }
#s02 .img1 span { font-size: 12px; display: block; position: absolute; bottom: 0; left: 500px; }
#s02 .img23, #s02 .img45 { margin-bottom: 65px; }
#s02 .img23, #s02 .img23 dt, #s02 .img23 dd, #s02 .img45, #s02 .img45 dt, #s02 .img45 dd { display: block; }
#s02 .img23 dt, #s02 .img23 dd, #s02 .img45 dt, #s02 .img45 dd { float: left; position: relative; }
#s02 .img23 dt, #s02 .img45 dt { margin-right: 30px}
#s02 .img23 dd, #s02 .img45 dd { padding-top: 50px;}
#s02 .img23 dt span, #s02 .img23 dd span, #s02 .img45 dt span, #s02 .img45 dd span { font-size: 12px; display: block; position: absolute; } 
#s02 .img23 dt span, #s02 .img45 dt span { /*bottom: 0;*/ left: 175px; }
#s02 .img23 dd span, #s02 .img45 dd span { left: 40px; }
#s02 .img89 { width: 476px; }
#s02 .img6, #s02 .img8, #s02 .img9 { display: block; position: relative; }
#s02 .img6 span, #s02 .img8 span, #s02 .img9 span { font-size: 12px; display: block; position: absolute; left: 30px; }
#s02 .img8 { margin-bottom: 50px; }
#s02 .img8 span { left: 0; }
#s02 .img7 { display: block; margin-bottom: 65px; position: relative; }
#s02 .img7 img { display: block; }
#s02 .img7 span { font-size: 12px; display: block; position: absolute; bottom: -50px; left: 0; }
#s02 .img11 { display: block; margin-bottom: 30px; position: relative; }
#s02 .img11 span { font-size: 12px; }

#s02 .cap { font-size: 12px; display: block; width: 450px; padding-left: 20px; margin-bottom: 20px; }

/* ========== S03 ========== */
#s03 {}
#s03 ul, #s03 li, #s03 li img { display: block; }
#s03 li { float: left; margin-bottom: 45px; }
#s03 li.first { margin-right: 20px;}

/* ========== FT ========== */
#ft { margin-bottom:20px; }
#ft .inner { /*padding-top:45px; border-top:1px solid #989898; */}
#ft dl { display:block; margin-bottom:20px; }
#ft dl dt { float:left; }
#ft dl dd { float:right; padding-top:80px; }
#ft dl img { display:block; }

#ft .contact { font-size:19px; line-height:1.5em; font-weight:bold; text-align:center; display:block; background: url(../images/bg_ft.png) repeat-x; height:67px; padding:15px 0 0; margin-bottom:25px; }
#ft .comname { font-size:24px; font-weight:bold; text-align:center; display:block; }
#ft .comname span { font-size:19px; font-weight:normal; }
#ft .cominfo { font-size:17px; text-align:center; display:block; } 

/* ========== FOOTER ========== */
footer { display:block; background:url(../images/bg_footer.png) repeat-x; }
footer { padding:35px 0; }
footer dl {}
footer dl dt { float:left; }
footer dl dd { float:right; }

footer dl dt .tagline { color:#727171; font-size:10px; }
footer dl dt img { display:block; }
footer dl dd { font-size:10px; line-height:1.5em; text-align:right; }

.btn_pagetop {}
.btn_pagetop a { background: url(../images/btn_pagetop.png) no-repeat; display: block; text-indent: -9999px; width: 46px; height: 47px; position: fixed; bottom: 10px; right: 10px; }