@charset "UTF-8";

/* -------------------------------------
__ヘッダーエリア
------------------------------------- */
#headerarea {
  width: 100%;
  margin: 0 auto 4px auto;
  padding-top: 8px;
  background: #e4f1ff url(../p_img/header/header_bg.gif) left bottom repeat-x;
  border-bottom: 3px solid  #a8c2e3;
}
#header {
  width: 960px;
  height: 56px;
  margin: 0 auto 0 auto;
}
#top {
  float: left;
  width: 330px;
  height: 56px;
  background-image: url(../p_img/header/logo_bg.gif);
  font-size: 1px;
}
#header_search {
  width: 322px;
  height: 56px;
  float: left;
  padding-left: 18px;
}
#header_search_bottom {
  width: 322px;
  height: 27px;
}
#header_search_upper {
  width: 318px;
  height: 27px;
  padding-left: 4px;
}
#header_searchform {
  display: block;
  position: relative;
  width: 245px;
  height: 27px;
  background-image: url(../p_img/header/header_serch.gif);
}
#header_keywords  {
  position: absolute;
  left: 26px;
  top: 4px;
  width: 208px;
  height: 18px;
  background: none;
  border-style: none;
}
#header_keywords { top: 6px\9; } /* IE8以下 */

#header_searchbtn {
  position: absolute;
  left: 249px;
}
#header_search_goo  {
  padding-left: 88px;
}
#header_search_submit  {
  padding-left: 4px;
}
#header_apply  {
  float: left;
  width: 150px;
  height: 56px;
  padding-left: 8px;
}
#header_melogo  {
  float: left;
  width: 120px;
  height: 56px;
  padding-right: 3px;
  padding-left: 8px;
}
#globalnavi {
  clear: right;
}
#globalnavi li {
  float: left;
}
#header_tool_bg {
  clear: both;
  width: 100%;
  border-bottom: 1px solid #cfd6dd;
}
*:first-child+html #header_tool_bg { padding-top:97px; } /* IE7 */

#header_tool {
  clear: both;
  width: 960px;
  height: 32px;
  margin-right: auto;
  margin-left: auto;
  padding-bottom: 5px;
}
#topicpath {
  float: left;
  width: 600px;
  padding: 10px 0 10px 15px;
}
#topicpath ul {
}
#topicpath li {
  float: left;
  padding-left: 3px;
}
#topicpath li a {
  background: url(../p_img/header/topicpath_bg.gif) right center no-repeat;
  padding-right: 10px;
}
#fontsize {
  float: right;
  width: 85px;
  height: 25px;
  padding-top: 4px 4px 4px 64px;
  background-image: url(../p_img/header/fontsize_bg.gif) left center no-repeat;
}

/* ---- for navi_active --- */
#globalnavi li.navi_active a img {
  filter: alpha(opacity=0);
  -moz-opacity: 0;
  opacity: 0;
}
#globalnavi li.navi_active { 
  background-repeat: no-repeat
}
#globalnavi li#join.navi_active { background-image: url(../p_img/header/gnav/join_current.gif); }
#globalnavi li#collabo.navi_active { background-image: url(../p_img/header/gnav/collabo_current.gif); }
#globalnavi li#ftth.navi_active { background-image: url(../p_img/header/gnav/ftth_current.gif); }
#globalnavi li#special.navi_active { background-image: url(../p_img/header/gnav/special_current.gif); }
#globalnavi li#service.navi_active { background-image: url(../p_img/header/gnav/service_current.gif); }
#globalnavi li#support.navi_active { background-image: url(../p_img/header/gnav/support_current.gif); }


/* -------------------------------------
__サイドメニューエリア
------------------------------------- */
#mainarea_right {
  float: left;
  width: 250px;
  padding-top: 7px;
  padding-left: 20px;
}
.mainarea_right_menukanrentitle {
  padding-top: 15px;
}
.mainarea_right_menublock {
  padding-bottom: 4px;
  padding-right: 6px;
  padding-left: 6px;
  background: url(../p_img/menublock_bg.gif) left bottom no-repeat;
  _margin-top:-2px; /* for IE 6 */
}
.mainarea_right_menublock li {
  font-size: 1.2em;
  background-color: #F6FAFE;
}
.mainarea_right_menublock li a {
  display: block;
  width: 205px;
  padding: 10px 5px 10px 28px;
  border-bottom: 1px solid #CCC;
  background: url(../p_img/menu_li_bg.gif) 1em 1.1em no-repeat;
}
.mainarea_right_menublock li a:hover {
  background-color: #FFFFFF;
}

/* 第２層 */
.mainarea_right_menublock li.submenublock {
  border-top: 1px solid #CCC;
}
.mainarea_right_menublock li.submenublock h2, /* 全サイドメニューの見出しを<h2>に修正 */
.mainarea_right_menublock li.submenublock h5 {/* ←影響がなければ削除 */
  width: 205px;
  padding: 10px 5px 10px 28px;
  border-bottom: none;
  background: #ECF0FF url(../p_img/menu_label_bg.gif) 1em 1.4em no-repeat;
  font-weight: normal;
}
.mainarea_right_menublock li.submenublock ul {
  background-image: none;
  border-bottom: 2px solid #CCC;
}
.mainarea_right_menublock li.submenublock ul li {
  padding-left: 24px;
  background-color: #ECF0FF;
  font-weight: normal;
}
.mainarea_right_menublock li.submenublock ul li a {
  display: block;
  width: 192px;
  padding: 4px 5px 4px 16px;
  border-bottom: none;
  border-top: 1px dotted #CCC;
  border-left: 1px dotted #CCC;
  background: #F6FAFE url(../p_img/menu_open_bg.gif) 8px 0.8em no-repeat;
  font-size: 0.8em;
  text-indent: 0;
}
/* /第２層 */

.mainarea_right_menublock li.submenublock ul li div {
  width: 192px;
  padding: 4px 5px 4px 16px;
  border-bottom: none;
  border-top: 1px dotted #CCC;
  border-left: 1px dotted #CCC;
  background-color: #F6FAFE;
  font-size: 0.8em;
  text-indent: 0;
}

/* 第３層 */
.mainarea_right_menublock li.submenublock ul li h6 {
  width: 192px;
  padding: 8px 5px 5px 16px;
  border-bottom: none;
  background: #fafafa;
  border-top: 1px dotted #CCC;
  border-left: 1px dotted #CCC;
  font-weight: normal;
  font-size: 0.8em;
  color: #333;
}
.mainarea_right_menublock li.submenublock ul li ul {
  background-image: none;
  border-bottom: none;
  border-left: 1px dotted #CCC;
}
.mainarea_right_menublock li.submenublock ul li ul li {
  padding-left: 22px;
  background-color: #fafafa;
  font-weight: normal;
}
.mainarea_right_menublock li.submenublock ul li ul li a {
  display: block;
  width: 169px;
  padding: 4px 5px 4px 16px;
  border-bottom: none;
  border-top: 1px dotted #CCC;
  border-left: 1px dotted #CCC;
  background: #F6FAFE url(../p_img/menu_open_bg.gif) 8px 0.8em no-repeat;
  font-size: 0.7em;
  text-indent: 0;
}
/* /第３層 */

.mainarea_right_menublock li.menu_active {
  background-color: #FFFFFF;
}
.mainarea_right_menublock li.menu_active a {
  background: url(../p_img/menu_li_active_bg.gif) 1em 1em no-repeat;
  color: #000;
  font-weight: bold;
}
.mainarea_right_menublock li.submenublock ul li.menu_active a {
  background-color: #ffffff;
  color: #000;
  font-weight: bold;
}
.mainarea_right_menublock li.menu_active a:hover,
.mainarea_right_menublock li.submenublock ul li.menu_active a:hover {
  text-decoration: none;
}
.mainarea_right_bannar {
  padding-top: 15px;
}

/*------ 関連ページ --------*/
#related_pages {
  background: url(../p_img/menublock_r_bg.gif) left bottom no-repeat;
}
#related_pages li {
  background-color: #fdfff7;
}
#related_pages li.submenublock h5 {
  background-color: #fbffef;
}
#related_pages li.submenublock ul li {
  background-color: #fbffef;
}
#related_pages li.submenublock ul li a {
  background-color: #fdfff7;
}
.btn_ul {
  background:url(../p_img/course/navi_btn_bg.gif) no-repeat top left;
  background-position:1px 0;
  width:230px;
  height:115px;
  padding:6px 9px 12px;
  _padding:9px 9px 12px;
  margin-bottom:12px;
}
.btn_ul li {
  margin:3px 0;
}
#loginform {
  background:url(../p_img/menublock_login_bg.gif) no-repeat bottom left;
  padding:20px;
  _margin-top:-2px;
}
#loginform input {
  width:200px;
  border:1px solid #ccc;
  padding:2px;
}
#loginform dl {
  margin-bottom:6px;
}
#loginform dt,
#loginform dd {
  margin-bottom:4px;
}
#loginform p {
  margin-top:0.4em;
}

/* -------------------------------------
__フッターエリア
------------------------------------- */
#footer_bg {
  background: url(../p_img/footer/footer_bg.gif) repeat-x 0 100%;
}
/* 消費税に関する文言(フッター挿入＆フリーテンプレート) */
#footer_bg .footer_tax,/* ←フッター挿入用 */
.footer_tax_freetmp {/* ←フリーテンプレート用(headerにpersonal.css読込ソース追加要) */
  border-bottom: 2px solid #f2e9d1;
  padding: 2em 0.5em;
  clear:both;
  margin-top:0;
  margin-bottom:0;
  background-color:#ffffff;
}
#footer_bg .footer_tax .notice,
.footer_tax_freetmp .notice {
  text-align:center;
  font-weight: bold;
  color:#333333;
  font-size:1.3em;
  border-top: 1px dashed #cccccc;
  border-bottom: 1px dashed #cccccc;
  padding:1em;
}
.footer_tax_freetmp {
  border-bottom: none;
}
* html #footer_bg {
  background-position: 0 -160px;
}
#footer_upper_up h2 {
  background: url(../p_img/footer/footer_upper_up_bg.gif) repeat-x;
}
#footer_upper_up li {
  background: url(../p_img/footer/footer_upper_up_allow.gif) no-repeat 0 0.2em;
}
#footer_upper_up01 {
  padding-left: 20px;
  float: left;
  width: 240px;
}
#footer_upper_up01 #footer_upper_up01l {
  width: 140px;
  float: left;
  margin: 0;
  padding: 0;
}
#footer_upper_up01 #footer_upper_up01r {
  width: 100px;
  float: left;
  margin: 0;
  padding: 0;
}
#footer_upper_up02 {
  width: 180px;
  padding-left: 20px;
  float: left;
}
#footer_upper_up02 ul {
  padding-right: 0;
  margin-right: 0;
}
#footer_upper_up03 {
  padding-left: 20px;
  float: left;
  width: 305px;
}
#footer_upper_up03 #footer_upper_up03l {
  float: left;
  width: 150px;
  margin: 0;
  padding: 0;
}
#footer_upper_up03 #footer_upper_up03r {
  float: left;
  width: 155px;
  margin: 0;
  padding: 0;
}
#footer_upper_bt {
  background-image: url(../p_img/footer/footer_upper_bt_bg.gif);
}
#footer_searchform {
  background-image: url(../p_img/footer/footer_upper_bt_window.gif);
}
#footer_bottom {
  border-top: 1px solid #f2e9d1;
}

/* -------------------------------------
__メインエリア
------------------------------------- */
#mainarea {
  clear: both;
  width: 930px;
  margin-right: auto;
  margin-left: auto;
  padding-right: 15px;
  padding-left: 15px;
}

/* -------------------------------------
__メインエリア上部
------------------------------------- */
#mainarea_top {
  clear: both;
  width: 930px;
  height: 90px;
  padding-top: 5px;
  padding-bottom: 5px;
  border-bottom: 1px solid #aaaaaa;
}
.subnavi li {
  display: inline;
  padding-left: 15px;
  background: url(../p_img/menu_li_bg.gif) left center no-repeat;
  color: #0d3084;
  font-weight: bold;
  font-size: 1.1em;
  line-height: 1.8em;
}
.subnavi li a {
  padding-right: 10px;
  font-weight: normal;
}
.subnavi li.subnavi_active {
  background: url(../p_img/menu_li_active_bg.gif) left center no-repeat;
}
.subnavi li.subnavi_active a {
  color: #000;
  font-weight: bold;
}
.subnavi li.subnavi_active a:hover {
  text-decoration: none;
}

/* -------------------------------------
__本文エリア 基本装飾
------------------------------------- */
#contents {
  float: left;
  width: 660px;
  padding: 8px 0 30px 0;
  font-size: 1.25em;
  color: #333;
  margin: 0;
}
#contents.full {
  width: 930px;
}
#contents h1 {
  padding: 15px 0 15px 0;
}
/* ▼削除予定▼ */
#contents h1.h1_text {
  width: 636px;
  height: 33px;
  margin-top: 18px;
  padding-left: 24px;
  background: url(../p_img/h1_bg.gif) left top no-repeat;
  font-size: 1.3em;
  line-height: 1.3em;
}
#contents h1.h1_longtext {
  margin: 18px 0 18px 0;
  width: 660px;
  padding: 0 0 8px 0;
  background: url(../p_img/h1_longtext_bg.gif) left bottom no-repeat;
}
#contents h1.h1_longtext span {
  display: block;
  width: 624px;
  padding: 14px 12px 6px 24px;
  background: url(../p_img/h1_longtext_bg.gif) left top no-repeat;
  font-size: 1.3em;
  line-height: 1.3em;
}
#contents h2 {
  position: relative;
  left: -4px;
  width: 629px;
  height: 30px;
  margin-bottom: 1em;
  padding-top: 25px;
  padding-left: 19px;
  background: url(../p_img/h2_bg.gif) left top no-repeat;
  color: #004570;
  font-size: 1.44em;
  line-height: 16px;
}
/* ▲削除予定▲ */

/* ▼暫定的にstatusから整える▼ */
/* 変更予定CSS
#contents h1.h1_text {
  width: 636px;
  height: 33px;
  margin-top: 18px;
  padding-left: 24px;
  background: url(../p_img/h1_bg.gif) left top no-repeat;
  font-size: 1.23em;
  line-height: 1.3em;
}
#contents h1.h1_longtext {
  margin: 18px 0 18px 0;
  width: 660px;
  padding: 0 0 8px 0;
  background: url(../p_img/h1_longtext_bg.gif) left bottom no-repeat;
}
#contents h1.h1_longtext span {
  display: block;
  width: 624px;
  padding: 14px 12px 6px 24px;
  background: url(../p_img/h1_longtext_bg.gif) left top no-repeat;
  font-size: 1.23em;
  line-height: 1.3em;
}
#contents h2 {
  color: #004570;
  font-size: 1.23em;
  line-height: 16px;
  margin: 0 0 1em;
  padding: 0.7em 0 0.8em 20px;
  display: block;
  background: url(../p_img/h2_bg.gif) no-repeat 0 0;
}
#contents.full h2 { //←現在FAQのh2のみ使用中
  width: 910px;
  background: url(../p_img/h2_bg_full.gif) no-repeat 0 0;
}
*/
/* ▲暫定的にstatusから整える▲ */

#contents h2 a {
  text-decoration: none;
  color: #004570;
}
#contents.full h2 {
  width: 910px;
  background: url(../p_img/h2_full_bg.gif) left top no-repeat;
}
#contents h2.h2_img {
  position: inherit;
  width: 640px;
  height: auto;
  padding: 0;
  background: none;
}
#contents h3 {
  margin-top: 0;
  margin-bottom: 0.6em;
  padding-left: 1em;
  padding-bottom: 8px;
  border-bottom: 2px solid #cacaca;
  background: url(../p_img/h3_bg.gif) left 8px no-repeat;
  font-size: 1.2em;
  line-height: 1.2em;
}
#contents h3.h3_p1, #contents h3.h3_p2, #contents h3.h3_p3, #contents h3.h3_p4, #contents h3.h3_p5,
#contents h3.h3_p6, #contents h3.h3_p7, #contents h3.h3_p8, #contents h3.h3_p9, #contents h3.h3_p10
{
  position: relative;
  top: -6px;
  height: 22px;
  margin: 0;
  padding: 21px 0 0 100px;
  border: none;
  background-position: left top;
  color: #ef6a11;
  font-size: 1.44em;
}
#contents h3.h3_p1 { background-image: url(../p_img/h3_bg_p1.gif); }
#contents h3.h3_p2 { background-image: url(../p_img/h3_bg_p2.gif); }
#contents h3.h3_p3 { background-image: url(../p_img/h3_bg_p3.gif); }
#contents h3.h3_p4 { background-image: url(../p_img/h3_bg_p4.gif); }
#contents h3.h3_p5 { background-image: url(../p_img/h3_bg_p5.gif); }
#contents h3.h3_p6 { background-image: url(../p_img/h3_bg_p6.gif); }
#contents h3.h3_p7 { background-image: url(../p_img/h3_bg_p7.gif); }
#contents h3.h3_p8 { background-image: url(../p_img/h3_bg_p8.gif); }
#contents h3.h3_p9 { background-image: url(../p_img/h3_bg_p9.gif); }
#contents h3.h3_p10 { background-image: url(../p_img/h3_bg_p10.gif); }

#contents h3.h3_markerless {
  padding-top: 6px;
  padding-bottom: 5px;
  padding-left: 0;
  background-image: none;
}
#contents h4 {
  margin-top: 0;
  margin-bottom: 0.6em;
  padding: 6px 0 5px 15px;
  border-bottom: 1px dotted #b8b8b8;
  background: url(../p_img/h4_bg.gif) left center no-repeat;
  font-size: 1.2em;
  line-height: 1em;
}
#contents h4.h4_markerless {
  padding-left: 0;
  background-image: none;
}
#contents p {
  margin-top: 0.5em;
  margin-bottom: 0.5em;
  font-size: 1em;
  line-height: 1.33em;
}
#contents p.lead {
  margin-bottom:1.5em;
}
#contents a {
  text-decoration: underline;
}

