@charset "utf-8";

/*
**  COSMO Corporation.
**
**  COMMON.CSS | 2010.05.10 updated.
**
**
*/

/*
**  FONT SIZE CHEAT
**  
**  16px : 114%
**  15px : 107%
**  14px : 100%
**  13px : 92.8%
**  12px : 85.7%
**  11px : 78.5%
**  10px : 71.4%
**
*/

/*------------------------------------------------------------
  @_Font
------------------------------------------------------------*/

/* font initial setting */

body {
  font-family: "ヒラギノ角ゴ Pro W3", Hiragino Kaku Gothic Pro, Osaka, "ＭＳ Ｐゴシック", "メイリオ", Meiryo, sans-serif;
  font-size:14px;
  line-height:1;
  color: #303030;
}

/* for ie6 hack */
* html body {
  font-family: "ＭＳ Ｐゴシック", "メイリオ", Meiryo, sans-serif;
  font-size:85.7%; /* 14px */
}

/* for ie7 hack */
*:first-child+html body {
  font-family: "ＭＳ Ｐゴシック", "メイリオ", Meiryo, sans-serif;
  font-size:85.7%; /* 14px */
}

/* for ie8 hack */
.ie8 body {
  font-family: "ＭＳ Ｐゴシック", "メイリオ", Meiryo, sans-serif;
  font-size:85.7%; /* 14px */
}

/* link */

a:link    { color: #2a68e5; text-decoration: underline; outline:none; }
a:visited { color: #2a68e5; text-decoration: underline; outline:none; }
a:hover   { color: #666; text-decoration: underline; outline:none; }
a:active  { color: #666; text-decoration: underline; outline:none; }

/*
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
++                                                          ++
++  @_BASE LAYOUT                                           ++
++                                                          ++
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
*/

html {
  margin-bottom:1px;
  height:100%;
}

/*------------------------------------------------------------
	Clearfix
------------------------------------------------------------*/
.clearfix:after {
	visibility:hidden;
	display:block;
	font-size:0;
	content:" ";
	clear:both;
	height:0;
	}
* html .clearfix             { zoom:1; } /* IE6 */
*:first-child+html .clearfix { zoom:1; } /* IE7 */

/*------------------------------------------------------------
	STRUCTURE
------------------------------------------------------------*/
/* Page Container */
#container {
  width:972px;
  min-height:578px;
  height:auto !important;
  height:578px;
  margin:0 auto;
  background:url(../images/bg_head.png) no-repeat 0 0;
}

#pagebody {
  clear:both;
  width:968px; /* 970px */
  margin:0 auto;
  border-left:1px solid #cecece;
  border-right:1px solid #cecece;
}

#contents {
  width:950px;
  min-height:364px;
  height:auto !important;
  height:364px;
  background-color:#fff;
  line-height:1.8;
}

body.sbar #contents {
  width:920px;
  margin-left:9px;
  margin-right:39px;
}

body.nosbar #contents {
  width:890px;
  margin:0 39px;
  padding-top:15px;
}

#maincol {
  float: right;
  width:640px;
  padding-top:15px;
}

/*------------------------------------------------------------
  Sidebar
------------------------------------------------------------*/
#sidebar {
  float:left;
  width:240px;
}

/* Local Navi */
#lnav {
  width:240px;
  min-height:302px; /* 354px */
  height:auto !important;
  height:302px; /* 354px */
  background:url(../images/lnav_bg.png) no-repeat 0 0;
}

#lnav h2 {
  margin-bottom:15px; /* 15px */
}

#lnav ul {
  margin-left:15px;
  margin-bottom:25px; /* 25px */
}

#lnav ul li {
  margin-bottom:3px;
  padding-left:17px;
  background:url(../images/arrow_middle.png) no-repeat 0 0.35em;
  font-size:13px;
}

/* Local Navi - Service Lineup */
#lnav #sv-lineup {
  position:relative;
  width:240px;
  height:131px;
  margin:0 auto;
  padding-top:44px;
  background:url(../images/sb_svlineup_bg.png) no-repeat 0 0;
}
#lnav #sv-lineup h3 {
  position:absolute;
  top:15px;
  left:18px;
  line-height:1;
}

#lnav #sv-lineup ol {
  padding-left:20px;
}

#lnav #sv-lineup ol li {
  padding-left:12px;
  font-size:12px;
  line-height:2;
  background:url(../images/sb_svlineup_bullet.gif) no-repeat 0 center;
  _position:relative;
  _zoom:1;
}

/* Service Banners */
#sv-banner ul {
  padding-top:15px;
  margin-bottom:29px;
}

#sv-banner ul li {
  margin-bottom:6px;
}

#sv-banner ul li.lastchild {
  margin-bottom:0;
}

/* LCA Group Links */
#grouplink {
  width:240px;
  min-height:302px;
  height:auto !important;
  height:302px;
  background:url(../images/sb_group_bg.png) no-repeat 0 0;
}

#grouplink h3 {
  padding-bottom:19px;
}

#grouplink ul {
  margin-left:19px;
  margin-bottom:23px;
}

#grouplink ul li {
  padding-left:12px;
  background:url(../images/arrow_small.gif) no-repeat 0 0.45em;
  line-height:25px;
  font-size:12px;
}

.mac #grouplink ul li:first-child span {
  letter-spacing:-2px;
}

#grouplink ul li a {
  color:#303030;
}
#grouplink ul li a:hover {
  color:#2a68e5;
}

#grouplink #tosho {
  margin-left:19px;
}

/*------------------------------------------------------------
  HEADER
------------------------------------------------------------*/
#header {
  position:relative;
  width:970px;
  height:120px;
  margin:0 auto;
}

/* Logo */
#header-logo {
  position:absolute;
  top:32px;
  left:25px;
}

/* Description */
#header-description {
  position:absolute;
  top:56px;
  left:154px;
}

/* Tel */
#header-tel {
  position:absolute;
  top:21px;
  right:10px;
}

#header-h1 {
  position:absolute;
  top:5px;
  left:25px;
	font-size:10px;
}

#header-h2 {
  position:absolute;
  top:5px;
  right:10px;
	font-size:10px;
}

/* Font Size Changer */
ul#function-fontsize {
  position:absolute;
  top:80px;
  right:10px;
  background:url(../images/header_fontsize.png) no-repeat 0 0;
  width:94px; /* 161px */
  height:25px;
  padding-left:67px;
}
ul#function-fontsize li.add,
ul#function-fontsize li.minus {
  float:left;
  width:45px;
  cursor: pointer;
}

/*------------------------------------------------------------
  Global Navi
------------------------------------------------------------*/
#gnav {
  clear:left;
  width:947px; /* 950px */
  height:46px; /* 49px */
  margin:0 auto;
  padding-top:3px;
  padding-left:3px;

  background:url(../images/gnav_bg.png) no-repeat 0 0;
}
#gnav ul li {
  float:left;
  margin-right:3px;
}

/*------------------------------------------------------------
  Courtesy Navi
------------------------------------------------------------*/
#cnav {
  width:921px; /* 950px */
  height:30px; /* 45px */
  margin:0 auto;
  padding-top:15px;
  padding-left:19px;
  padding-right:10px;
}

/* Topic Path */
#topic-path {
  float:left;
  font-size: 85.7%; /* 12px */
  line-height:1.1;
}
#topic-path li {
  float:left;
}
#topic-path li {
  margin-right:6px;
  padding-right:12px;
  background:transparent url(../images/topic-path.png) no-repeat right 0;
}
#topic-path li.current {
  background:none;
  color:#303030;
}

/* Print Button */
#print {
  float:right;
}

/*------------------------------------------------------------
  Scroll to Pagetop
------------------------------------------------------------*/
#pagetop {
  width:950px;
  height:33px;
  margin:0 auto;
  padding-top:56px;
}
#pagetop ul {
  float:right;
}

.pagetop {
  width:640px;
  height:26px;
  margin:0 auto;
  padding:28px 0 42px;
}
.pagetop ul {
  float:right;
}


/*------------------------------------------------------------
  FOOTER
------------------------------------------------------------*/
#footer {
  clear:both;
  width:950px; /* 970px */
  height:139px; /* 158px */
  margin:0 auto;
  padding-top:19px;
  padding-left:10px;
  padding-right:10px;
  background:url(../images/footer_bg.png) no-repeat 0 0;
} 

/* Footer Nav */
ul#fnav li {
  float:left;
  padding:0 15px;
  background:url(../images/footer_fnav_separate.png) no-repeat right 0;
}
ul#fnav li.lastchild {
  background:none;
}
ul#fnav li a:hover img {
  opacity:0.7;
  filter:alpha(opacity=70);
}

/* Copyright */
p#copyright {
  float:right;
}
