@charset "shift-jis";

/* .comレギュレーション要素 */

/* ========= 文字サイズ・行間 ========= */
.content {line-height: 180%} /* コンテンツ本文 */
h1, h2, h3, h4, h5, h6 {line-height: 1.4;}

img {font-size: 100%;}

ul, ol {margin: 1.5em 0 1.5em 2.5em; line-height: 1.5;}
.content li {zoom: normal;}

ul li, ol li {margin: 0.5em 0; padding-left: 0;}

ul.note {margin: 0; padding-left: 1.4em;}

p {margin: 0.5em 0;}

.sm {line-height: 1.5;}
.ss {line-height: 1.5;}

.sm li, .ss li, li.sm,
p.sm, p.ss,
div.sm p, div.ss p {margin-top: 0.3em; margin-bottom: 0.3em;}

/* スマホのみ改行（PC非表示） */
br.sp {display: none}

/* -- コンテンツ中の角丸 -- */
.rad {border-radius: 4px; -moz-border-radius: 4px; -webkit-border-radius: 4px;} /* モダンブラウザのみ */

/* -- フロート -- */
.fll {float: left;}
.flr {float: right;}
.fll_li {margin: 0; padding: 0; list-style: none;}
.fll_li li {float: left; margin: 0; padding: 0;}

/* -- 囲みのカラーパターン -- */
div.type-blue, div.type-green, div.type-white, div.type-glay, div.type-red, div.type-yellow {margin: 1em 0; padding: 14px; zoom: 1;}
ul.type-blue, ul.type-green, ul.type-white, ul.type-glay, ul.type-red, ul.type-yellow {margin-left: 0; padding: 14px 14px 14px 40px;}

.type-white  {background: #ffffff; border: solid 1px #c0c0c0;}
.type-glay   {background: #f2f2f2; border: solid 1px #f2f2f2;}
.type-yellow {background: #fffae5; border: solid 1px #ffe57f;}
.type-blue   {background: #f2f9fe; border: solid 1px #bfe4fb;}
.type-green  {background: #f2faf5; border: solid 1px #bfe6ce;}
.type-red    {background: #fef5f2; border: solid 1px #fbd0bf;}

/* ポジション */
.pos_rel {position: relative;}
.pos_abs {position: absolute; margin: 0;}

/* ディスプレイ */
.dsp_blk {display: block;}
.dsp_ilb {display: inline-block;}
.dsp_inl {display: inline;}
.dsp_non {display: none;}

/* テキスト */
.txt_lft {text-align: left;}
.txt_cnt {text-align: center;}
.txt_rgt {text-align: right;}

.wid_aut {width: auto;}

/* 注記等の強調 */
.att_red {background: #ffffff; border: solid 1px #cc0000; padding-left: 0.3em; padding-right: 0.3em;}

.marker {background: rgba(0, 0, 0, 0) linear-gradient(transparent 75%, #f9ed32 75%) repeat scroll 0 0;}


/* ========= リンク ========= */

/* --- 文中用 --- */
a.link, span.link, u.link  {background: url(/cgi/shared/images/arrow_link.gif) no-repeat 2px 0.4em; padding-left: 15px;}
a.anchor, span.anchor, u.anchor {background: url(/cgi/shared/images/arrow_anchor.gif) no-repeat 2px 0.4em; padding-left: 15px;}

/* --- clearfix --- */
ul.links:after, ul.anchors:after, ul.nav_sub:after {content: "."; display: block; clear: both; visibility: hidden; height: 0;}
ul.links, ul.anchors, ul.nav_sub {clear: both; zoom: 1;}

/* --- リセット --- */
ul.icon_link,
ul.nav_sub, ul.link, ul.links, ul.anchor, ul.anchors, ul.link-r, ul.link-rr, ul.pdf, ul.excel, ul.totop {list-style: none;}
ul.icon_link,
ul.link, ul.links, ul.anchor, ul.anchors {margin: 1em 0 1em 1.5em; padding: 0;}
ul.link-r, ul.link-rr {margin: 1em 0; padding: 0;}
ul.icon_link li,
ul.link li, ul.links li, ul.anchor li, ul.anchors li, ul.link-r li, ul.link-rr li, ul.totop li, ul.pdf li, ul.excel li{margin: 0.3em 0; zoom: 1; background-repeat: no-repeat !important;}

ul.icon_link li a[target="_blank"]::after,
a.js_icon_blank[target="_blank"]::after {content: url("/cgi/shared/images/icon_blank.gif");}

/* --- 個別定義 ---  */
ul.icon_link li,
ul.link   li {background: url(/cgi/shared/images/arrow_link.gif)   left 0.4em; padding-left: 14px;}
ul.anchor li {background: url(/cgi/shared/images/arrow_anchor.gif) left 0.4em; padding-left: 14px;}

ul.links   li {background: url(/cgi/shared/images/arrow_link.gif)   left center; margin-right: 1.5em; padding-left: 14px; float: left; white-space: nowrap;}
ul.anchors li {background: url(/cgi/shared/images/arrow_anchor.gif) left center; margin-right: 1.5em; padding-left: 14px; float: left; white-space: nowrap;}

html.rsp ul.links li,
html.rsp ul.anchors li {white-space: normal;}

ul.link  li.off {background: url(/cgi/shared/images/arrow_link_off.gif) left 0.4em; color: #ccc;}
ul.links li.off {background: url(/cgi/shared/images/arrow_link_off.gif) left center; color: #ccc;}

ul.link-r, ul.link-rr {text-align: right;}
ul.link-rr li  {background: url(/cgi/shared/images/arrow_link.gif) right center; padding-right: 14px;}
ul.link-r li a {background: url(/cgi/shared/images/arrow_link.gif) left center; padding-left: 14px;  background-repeat: no-repeat;}

/* 右寄せリンク2 */
ul.link.txt_right li {float: right; clear: right;}
ul.link.txt_right:after {content: ""; clear: both; display: block;}
/* sp（左に寄せ） */
html.rsp ul.link.txt_right.sp_txt_left li {float: none;}

ul.pdf {margin: 1em 0 1em 1.5em; padding: 0;}
ul.pdf li {background: url(/cgi/shared/images/icon_pdf.gif) left 0.2em; padding: 5px 0 5px 30px;}

ul.excel {margin: 1em 0 1em 1.5em; padding: 0;}
ul.excel li {background: url(/cgi/shared/images/icon_excel.gif) left 0.2em; padding: 5px 0 5px 30px;}

table.type01 ul.link, table.type01 ul.links,
table.type02 ul.link, table.type02 ul.links,
dd ul.link, dd ul.links {margin: 0; margin-left: 1em;}

/* --- アプリ専用 ローカルサブナビ --- */
ul.nav_sub {margin: 0 0 20px; padding: 0 0 12px 5px; border-bottom: dotted 1px #aaa;}
ul.nav_sub li {background: url(/cgi/shared/images/arrow_link.gif) no-repeat left center; padding-left: 14px; margin: 0 1.5em 6px 0; float: left; white-space: nowrap;}
ul.nav_sub.anchors li, ul.nav_sub li.anchor {background-image: url(/cgi/shared/images/arrow_anchor.gif);}
ul.nav_sub li.off {background-image: url(/cgi/shared/images/arrow_link_off.gif); color: #aaa;}


/* ========= タイトル各種 ========= */
body#next .container h1,
body#light .container h1,
body#bflets .container h1 {position: relative; padding-right: 130px;}
body#next .container h1 img,
body#light .container h1 img,
body#bflets .container h1 img {position: absolute; top: 3px; right: 0;}

h2 {font-size: 20px; margin: 2em 0 1em 0; padding: 8px 10px 8px 8px; background-color: #fff; position: relative;
border: 1px solid #ccc; border-width: 1px 2px 2px 1px; border-radius: 4px; -moz-border-radius: 4px; -webkit-border-radius: 4px;}

h2.type01 {border: none; background-color: transparent; padding: 0;
border-radius: 0; -moz-border-radius: 0; -webkit-border-radius: 0;}

/* .content > h1:first-child, */
.content > h2:first-child,
.content > h3:first-child {margin-top: 0;}

/* h2 * {vertical-align: middle;} */

h2 i {display: block; padding-left: 8px; border-left: solid 3px #002ddb; font-style: normal;}
h3 {font-size: 16px; margin: 2.5em 0 1em; padding-bottom: 0.3em; border-bottom: 1px solid #999;}
h3.type01 {border-bottom: none; padding-bottom: 0; margin-bottom: 0.5em;}
h4 {font-size: 16px; margin: 1.5em 0 0.5em;}
h5 {margin: 1.5em 0 0.5em;}
h6 {margin: 0.75em 0 0.5em}

h3 i, h4 i, h5 i, h6 i {font-family: 'Osaka','ＭＳ ゴシック'; font-style: normal; color: #002ddb; font-size: 75%; font-weight: normal; margin-right: 3px; vertical-align: middle;}

/* -- タイトル解除 -- */
body.no_dc_all h2,
body.no_dc_all h3,
body.no_dc_all h4,
body.no_dc_all h5,
body.no_dc_all h6,
body.h1 h1,
body.h2 h2,
body.h3 h3,
body.h4 h4,
body.h5 h5,
body.h6 h6,
h1.no_dc,
h2.no_dc,
h3.no_dc,
h4.no_dc,
h5.no_dc,
h6.no_dc {border: none; padding: 0; margin: 0; background-color: transparent; font-size: 100%;}

body.h2 h2, 
body.no_dc_all h2,
h2.no_dc {border-radius: 0; -moz-border-radius: 0; -webkit-border-radius: 0;}

/* 装飾消去（文字サイズママ） */
body.h2dn h2 {border: none; padding: 0; background-color: transparent; border-radius: 0; -moz-border-radius: 0; -webkit-border-radius: 0}
body.h3dn h3 {border: none; padding: 0}

/* -- プロモエリア系タイトル -- */
h2.prom,
h2.catch,
div.catch {margin: 0; padding: 0; border: none; background-repeat: no-repeat !important;}

h2.catch,
div.catch {height: 155px; font-size: 14px; line-height: 180%;}

h2.prom,
div.prom {height: 230px; font-size: 18px; line-height: 160%;}

h2.catch span,
div.catch strong,
h2.prom span,
div.prom strong {display: block; padding: 50px 0 0 50px; letter-spacing: 2px;}

/* -- 特定条件 -- */
.nav_local_top + h2,
.nav_sub + h2 {margin-top: 1.5em;}

h2 + h3,
h2 + h4,
h2 + h5,
h2 + h6 {margin-top: 1.5em;}

h1 + h3 {margin-top: 1.5em;}

h3 + table,
h3 + div.type-white,
h3 + div.type-glay,
h3 + div.type-yellow,
h3 + div.type-blue,
h3 + div.type-green,
h3 + div.type-red {margin-top: 0;}

/* -- 強調、注意文 -- */
.red {color: #b00;}
.blue {color: #184d96;}
sup {font-weight: normal; font-size: 11.4px; white-space: nowrap;}

/* -- テキストインデント -- */
.indent-1w,
.indent {padding-left: 1em; text-indent: -1em;}
.indent-2w {padding-left: 2em; text-indent: -2em;}
span.indent {padding-left: 1em; text-indent: -1em; display: block; text-align: left;}

/* -- 注意事項 -- */
.attention {border:1px solid #c90; margin:20px 0; padding:15px 15px 15px 70px; text-align: left; background: url(/cgi/shared/images/icon_attention.gif) no-repeat #fffae5;}
.attention h5 {color:#900; margin:0 0 0.5em 0;}

/* -- 隠し -- */
.hide {display: none;}


/* ========= 標準のテーブル（料金系はfee.cssで管理） ========= */
table.type01,
table.type02 {border-spacing: 0; margin: 1em 0; *border-collapse: collapse; /* IE7 and lower */
border: 1px solid #c0c0c0; border-width: 1px 0 0 1px; background-color: #fff;}

table.lay_fix {table-layout: fixed;}

table.type01 caption,
table.type02 caption {text-align: right; padding-bottom: 5px;} /* 税金用に専用で使用 */

table.type01 th, table.type02 th {font-weight: normal; background-color: #f2f2f2;}
table.type01 th, table.type02 th,
table.type01 td, table.type02 td {line-height: 1.5; border: 1px solid #c0c0c0; border-width: 0 1px 1px 0;}

table.type01 th {text-align: center;}
table.type02 th {text-align: left;}

/* -- 表中のリスト -- */
table ul, table ol {margin: 0.3em 0  0.3em 1.75em;}
table ol {margin-left: 2.25em;}
table li {margin: 0.3em 0;}

/* -- 表中の入れ子テーブル制御（レイアウト用） -- */
table.type01 table, table.type02 table {margin: 0;}
table.type01 table,
table.type01 table.type00,
table.type02 table,
table.type02 table.type00,
table.type01 table th, table.type01 table td,
table.type01 table.type00 th, table.type01 table.type00 td,
table.type02 table th, table.type02 table td
table.type02 table.type00 th, table.type02 table.type00 td {background: none; border: none;}


/* ========= お知らせ ========= */
div.infomation .clearfix strong {float: left;}
div.infomation + hr.shadow  {margin-top: 2.5em;}
br + div.infomation {margin-top: 0;}

div.infomation dl {margin: 8px 0 0 0; height: 150px; overflow: auto; line-height: 1.5; font-size: 85%;}
div.infomation dt {margin: 0; padding: 0 0 0 0; clear: left; float: left; width: 5em;}
div.infomation dd {margin: 0; padding: 0 0.5em 0.3em 8em; text-indent: -14px;}
div.infomation dl a {padding-left: 14px; background: url(/cgi/shared/images/arrow_link.gif) no-repeat left 0.4em;}
div.infomation dl a:hover {text-decoration: underline;}
div.infomation {padding-right: 0; padding-bottom: 0; line-height: normal;}
div.infomation .new {background: url("/cgi/shared/images/icon_new.gif") no-repeat right center; padding-right: 25px;}
div.infomation .link-r, div.infomation .link-r li {margin: 0;}
div.infomation .link-r {margin-right: 15px;}

/* -- 緊急時・重要（総合トップ上部） -- */
div.info_important {margin: 10px 25px;}
div.info_important dl {margin: 8px 0 0 0; padding-left: 30px; overflow: auto; line-height: 1.5; background: url(/cgi/shared/images/icon_attention_s.gif) no-repeat left top;}
div.info_important dt {margin: 0; padding: 0; clear: left; float: left; width: 5em;}
div.info_important dd {margin: 0; padding: 0 0.5em 0.3em 7em; text-indent: -14px;}
div.info_important dl a {padding-left: 14px; background: url(/cgi/shared/images/arrow_link.gif) no-repeat left 0.4em; color: #c33;}
div.info_important dl a:hover {color: #900;}


/* ====== よくあるご質問 ====== */
.faq_box {border: 1px solid #ccc; margin: 2em 0;
border-radius: 4px;
-moz-border-radius: 4px;
-webkit-border-radius: 4px;
-moz-box-shadow:    0 0 4px rgba(0, 0, 0, 0.15);
-webkit-box-shadow: 0 0 4px rgba(0, 0, 0, 0.15);
box-shadow:         0 0 4px rgba(0, 0, 0, 0.15);}

.faq_box h5 {letter-spacing: 0; padding: 8px 10px; margin: 0; border: 1px solid #fff; border-bottom: none;
border-radius: 4px 4px 0 0;
-moz-border-radius: 4px 4px 0 0;
-webkit-border-radius: 4px 4px 0 0;
background: #f2f2f2;
background: -webkit-gradient(linear, left top, left bottom, from(#EBEBEB), to(#F9F9F9) );
background: -moz-linear-gradient(-90deg, #EBEBEB, #F9F9F9);}

.faq_box h5 span {float: left;}
.faq_box h5 a {float: right; font-weight: normal;}

.faq_box a.que {padding: 8px 10px 8px 35px; color:#000 ; line-height: 1.5; display: block; text-decoration: none; border-top: solid 1px #ccc;
background: url(/cgi/shared/images/faq_q.gif) no-repeat 8px 6px;}

.faq_box.top a.que {padding: 8px 10px 8px 45px; background: url(/cgi/shared/images/faq_ql.gif) no-repeat 8px 10px;}
.faq_box a.que:hover {background-color: #f2faff; text-decoration: underline; color: #0099FF;}

.cat {font-size: 80%;}

/* .faq-ctg {border: solid 1px #ccc; border-bottom: none; padding: 5px 12px 10px 12px;} */

.faq_box .ctg01 {border: solid 1px #ccc; padding: 14px;
border-width: 1px 2px 2px 1px;
border-radius: 4px;
-moz-border-radius: 4px;
-webkit-border-radius: 4px;}


/* ========= CAOとシミュレーション ========= */

/* -- 本文中のCAOとシミュレーション -- */
.content form.cao {background: #f2f2f2; padding: 25px 15px; position: relative; text-align: center;
border-radius: 4px;
-moz-border-radius: 4px;
-webkit-border-radius: 4px;}

/* -- フォーム -- */
input, select {font-family: 'メイリオ', Meiryo, 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro', 'hirakakupro-w3', 'ＭＳ Ｐゴシック', sans-serif;}
.content form.yellow {background: #ffe57f;}
form.cao h4 {margin: 0 0 10px 0; font-size: 120%; letter-spacing: 3px;}
form.cao .zip1, form.cao .zip2 {font-size: 28px; font-family: 'dinFs', 'Arial'; border-width: 2px;}
form.cao .zip1 {width: 3em;}
form.cao .zip2 {width: 4em;}
span.cao_input {display: inline-block;}
.cao_input *, form.cao .vcenter * {vertical-align: middle; margin: 10px 0;}

form.cao.balloon {position: relative; margin-top: 2em;}
form.cao.balloon img.balloon {position: absolute; left: 10px; top:-10px;}
form.cao.balloon h4 {text-align: left; padding-left: 125px; letter-spacing: 0.1em;}

/* ========= 古いソース ========= */
/* -- よくあるご質問 -- */
.faq_q:hover {background-color: #fffae5;}
.faq_q, .faq_a {display: block; margin: 0; border-bottom: dotted 1px #999;}
.faq_q {padding: 5px 0  5px 30px; background: url(/cgi/shared/images/faq_q.gif) no-repeat 3px 5px; text-decoration:underline; color:#36c; cursor:pointer;}
.faq_a {padding: 5px 0 10px 30px; background: url(/cgi/shared/images/faq_a.gif) no-repeat 3px 5px;}
.info_a .close, .faq_a .close {display: block; margin-top: 8px; padding: 3px 5px 3px 0; background-color: #efefef; text-align: right; line-height: 120%; font-size: 80%; color: #36c; text-decoration: underline; cursor: pointer;}

/* -- index下部リンクガイド用 -- */
.guides {background: url(/cgi/shared/legacy/images/index_guide_bot.gif) left bottom no-repeat; padding-bottom: 11px;}
.guides .guide {float: left; width: 226px; background:url(/next/images/index_guide_bg.gif) top left no-repeat}
.guides .guide img {margin-bottom: 3px;}
.guides .guide a {display: block; margin: 11px 13px 0 13px; color: #333; text-decoration: none; }
.guides .guide a:hover {text-decoration: underline;}

/* -- カスタマ配下 -- */
body.gn_sup ul.app {list-style: none outside none; margin: 0;}
body.gn_sup ul.app a {display: block; float: left; padding-bottom: 1px;}
body.gn_sup ul.app li {float: left; margin: 0 0 10px 15px; width: 210px;}
body.gn_sup ul.app li img {margin-right: 7px; vertical-align: middle;}


/* ========= キャンペーン ========= */

/* -- メイン -- */
.ln_cmp .main {border-bottom: 1px solid #ccc; padding: 20px 0;}
.ln_cmp .main h2 {border: none; width: 160px; font-size: 120%; letter-spacing: 0;}
.ln_cmp .main h3 {margin: 10px 0 0;}
.ln_cmp .main .logo {float: left; text-align: center;}
.ln_cmp .main .txt {float: right; padding-left: 20px; border-left: 1px solid #ccc; min-height: 130px; height: auto !important; height: 130px; width: 505px;}
.ln_cmp .nobd {border: none !important; padding-bottom: 0;}

/* -- サブ -- */
.ln_cmp .sub {padding: 15px 0; border-bottom: 1px solid #ccc;}
.ln_cmp .sub h3 {margin: 0 0 15px; font-size: 100%;}
.ln_cmp .sub .box {text-align: left; width: 340px;}
.ln_cmp .sub .left {float: left; border-right: 1px solid #ccc; padding-right: 10px; min-height: 200px; height: auto !important; height: 200px;}
.ln_cmp .sub .right {float: right;}
.ln_cmp .sub .date {float: right; padding-left: 10px; font-size: 84%; line-height: 160%; width: 200px;}
.ln_cmp .sub .more {text-align: center; padding: 10px 0 0;}
.ln_cmp .sub a img {float: left;}


/* ========= キャンペーン（修正版） ========= */
.camp.main, .camp.main .box.nobd, .camp.tieup .nobd {border: none !important; padding-bottom: 0;}

.camp.main .box {border-bottom: 1px solid #ccc; padding: 20px 0; zoom: 1; clear: both;}
.camp.main .box h3 {float: left; text-align: center; border: none; width: 180px; font-size: 120%; letter-spacing: 0;}
.camp.main .box h3 a {text-decoration: none; color: #000; font-size: 90%;}
.camp.main .box h4 {margin: 10px 0 0;}
.camp.main .box .txt {float: right; padding-left: 20px; border-left: 1px solid #ccc; min-height: 130px; height: auto !important; height: 130px; width: 505px;}

.camp.tieup .box {text-align: left; width: 330px; float: left; border-right: 1px solid #ccc; padding: 10px; min-height: 200px; height: auto !important; height: 200px; zoom: 1; clear: both;}
.camp.tieup .box h3 {margin: 0 0 15px; font-size: 100%; border: none;}
.camp.tieup .box .date {float: right; padding-left: 10px; font-size: 84%; line-height: 160%; width: 190px;}
.camp.tieup .box .more {text-align: center; padding: 10px 0 0;}
.camp.tieup .box a img {float: left;}
.camp.tieup hr {background:url(/cgi/shared/images/hr_line.gif) center 15px repeat-x; border: none; height: 10px; *height: 2px; *border-bottom: solid 1px #dedede; color: #999; padding-top: 10px;}

.camp.main .box:after,
.camp.tieup .box:after {content: "."; display: block; clear: both; visibility: hidden; height: 0;}


/* ========= タブ（汎用） ========= */
ul.tab_btn {height: 55px; margin: 30px 0 0 0; padding: 0; border-bottom: 1px solid #aaa; list-style: none;}
ul.tab_btn li {margin: 0 15px 0 0; padding: 0; float: left; width: 300px; text-align: center; line-height: 1.4; height: 54px; border: solid 1px #aaa; background: #fff; overflow: hidden; position: relative; _top: 1px;}
ul.tab_btn li.on,
ul.tab_btn li:hover {border-bottom-color: #fff;}

ul.tab_btn li a {display: block; text-decoration: none; height: 54px; background: #eee;}
ul.tab_btn li.on a,
ul.tab_btn li a:hover {background: none;}
ul.tab_btn li strong {display: block; padding-top: 17px; color: #000; letter-spacing: 1px;}

ul.tab_btn li.on a {cursor: default;}

.tab_content{display: none;}
.tab_content.on{display: block;}

.v-mid * {vertical-align: middle;}

.adobeReader {margin-top: 3em;}

/* ========= ムービープレイボタン ========= */
a.play {display: inline-block; position: relative;}
a.play:after {position: absolute; left: 50%; top: 50%; margin-left: -30px; margin-top: -30px; content: url("/cgi/shared/images/mov_play.png");}
a.play.sm:after {content: url("/cgi/shared/images/mov_play_sm.png");}
a.play img {border: solid 1px #bbb;}


/* ========= 下部お申し込み ========= */
.order_bot {margin-top: 35px; padding: 35px 0; text-align: center; background: url(/cgi/shared/images/hr_shadow.png) no-repeat center 0;}

/* ========= フレッツ光工事費 ========= */
body.const table.koji td {text-align: center; white-space: nowrap;}
body.const table.koji th {background: #fff3d0;}
body.const table.koji.sm th {font-size: 90%;}
body.const table.koji .slash {padding: 0 5px; background: #feeab0;}
body.const table.koji .slash2 {padding: 0 5px; background: #feeab0;}
body.const table.koji .plan {background: #ffe3a1;}
body.const table.koji .before {padding: 5px; text-align: left; background: #ffe3a1; vertical-align: bottom;}
body.const table.koji .after {padding: 5px; text-align: right; background: #ffe3a1; vertical-align: top; border-bottom: none;}
body.const table.koji .left {text-align: left;}


/* ========= 初期費用（「flets_initial.txt」「flets_initial_hikaridenwa.txt」） ========= */
.ssi_initial.hikaridenwa {width: 710px;}
.ssi_initial.hikaridenwa .ctg {float: left; border-left: 1px dotted #999; margin: 0; padding: 0 10px;}
.ssi_initial.hikaridenwa .tit {border: 1px solid #ddd; margin: 0 0 5px; padding: 5px 0;}

.ssi_initial_const_fm,
.ssi_initial_const_mn {margin-left: 10px;}
.ssi_initial_const_fm .icon,
.ssi_initial_const_mn .icon {width: 95px; display: inline-block; text-align: left; white-space: nowrap;}
.ssi_initial_const_fm img,
.ssi_initial_const_mn img {vertical-align: middle; margin-right: 5px;}

/* フレッツ光（760px） */
.initial_w760 .ssi_initial.flets {width: 760px;}
.initial_w760 .ssi_initial.flets .fee.box01 {width: 160px !important;}
.initial_w760 .ssi_initial.flets .fee.box02 {width: 590px !important;}
.initial_w760 .ssi_initial.flets .plus {left: 145px !important;}

/* フレッツ光（800px） */
.initial_w800 .ssi_initial.flets {width: 800px;}
.initial_w800 .ssi_initial.flets .fee.box01 {width: 160px !important;}
.initial_w800 .ssi_initial.flets .fee.box02 {width: 630px !important;}
.initial_w800 .ssi_initial.flets .plus {left: 145px !important;}

/* フレッツ光（950px） */
.initial_w950 .ssi_initial.flets {width: 950px;}
.initial_w950 .ssi_initial.flets .fee.box01 {width: 220px !important;}
.initial_w950 .ssi_initial.flets .fee.box02 {width: 720px !important;}
.initial_w950 .ssi_initial.flets .plus {left: 205px !important;}


/* ひかり電話（760px） */
.initial_w760 .ssi_initial.hikaridenwa {width: 760px;}
.initial_w760 .ssi_initial table.flets .ctg.box01 {width: 145px !important; *width: 144px !important;}
.initial_w760 .ssi_initial table.flets .ctg.box02 {width: 570px !important;}
.initial_w760 .ssi_initial table.flets .plus {left: 150px !important;}

.initial_w760 .ssi_initial table.hikaridenwa .ctg.box01 {width: 470px !important;}
.initial_w760 .ssi_initial table.hikaridenwa .ctg.box02 {width: 244px !important;}
.initial_w760 .ssi_initial table.hikaridenwa .plus {left: 476px !important;}

/* ひかり電話（800px） */
.initial_w800 .ssi_initial.hikaridenwa {width: 800px;}
.initial_w800 .ssi_initial table.flets .ctg.box01 {width: 155px !important; *width: 154px !important;}
.initial_w800 .ssi_initial table.flets .ctg.box02 {width: 600px !important;}
.initial_w800 .ssi_initial table.flets .plus {left: 160px !important;}

.initial_w800 .ssi_initial table.hikaridenwa .ctg.box01 {width: 500px !important;}
.initial_w800 .ssi_initial table.hikaridenwa .ctg.box02 {width: 254px !important;}
.initial_w800 .ssi_initial table.hikaridenwa .plus {left: 506px !important;}

/* ひかり電話（950px） */
.initial_w950 .ssi_initial.hikaridenwa {width: 950px;}
.initial_w950 .ssi_initial table.flets .ctg.box01 {width: 260px !important; *width: 154px !important;}
.initial_w950 .ssi_initial table.flets .ctg.box02 {width: 645px !important;}
.initial_w950 .ssi_initial table.flets .plus {left: 160px !important;}

.initial_w950 .ssi_initial table.hikaridenwa .ctg.box01 {width: 600px !important;}
.initial_w950 .ssi_initial table.hikaridenwa .ctg.box02 {width: 304px !important;}
.initial_w950 .ssi_initial table.hikaridenwa .plus {left: 606px !important;}


/* 映像サービス（初期費用 切替ボタン） */
.switch_content_wrap .switch_content {display: none;}
.switch_content_wrap .switch_content.on {display: block;}
ul.switch_btn li        {width: 230px; height: 50px; *width: 228px; *height: 48px; line-height: 1.4; text-align: center; margin-bottom: 5px; letter-spacing: 0.05em;}
ul.switch_btn li a      {*width: 200px; *height: 20px; background: #eee; padding-top: 10px;}
ul.switch_btn li a.pad0 {*width: 228px; *height: 48px;}
ul.switch_btn li:active {margin-top: 0; margin-bottom: 0;}
ul.switch_btn li.on,
ul.switch_btn li:hover {border-bottom-color: #ccc;}
ul.switch_btn li.on a,
ul.switch_btn li a:hover {background: none;}
ul.switch_btn li .num {color: #f60;}
ul.switch_btn li strong {margin-top: -3px; *margin-top: 0px;}

/* テキスト縁 */
.txt_shadow {text-shadow: 0.1em 0 0.1rem #000, 0 0.1em 0.1em #000, -0.1em 0 0.1em #000, 0 -0.1em 0.1em #000}
.txt_shadow_wht {text-shadow: 0.1em 0 0.1rem #fff, 0 0.1em 0.1em #fff, -0.1em 0 0.1em #fff, 0 -0.1em 0.1em #fff}

/* ボーダーボックス */
.brd_box,
.brd_box * {-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;}

/* ========= プロバイダページ ========= */
body.ln_isp table.fee td.mark,
body.ln_isp table.fee td.mark2 {position: relative;}

body.ln_isp table.fee td.mark span:after,
body.ln_isp table.fee td.mark2 span:after {content: "☆"; font-size: 12px; position: absolute; right: 0;}

body.ln_isp table.fee td.mark span:after {top: 8px;}
body.ln_isp table.fee td.mark2 span:after {top: 22px;}
