@charset "utf-8";

/* CSS Document */
/*===============================================
●画面の横幅が498pxまで（スマホ用）
===============================================*/
@media screen and (max-width: 498px) {
body {
    width: 100%;
    font-size: 90%;
}

/*-----テキスト-----*/

p {
    margin: 0 0 0.7em 0;
    line-height: 1.4em;
}
	
header {
   width: 100%;
   height: auto;
   padding: 0;
}
.header_left {
    display: none;
}
.header_bg {
	position: inherit;
	background: none;
	height: auto;
}

	
.index .header_bg {	/* indexのみ適用 */
	position: inherit;
	background: none;
	height: inherit;
}
.block {
	width: 100%;
}

/* ========================================  nav　スマホ用メニュー　*/
nav {
	float: none;
	width: 100%;
	margin: 0;
}
nav ul {
	margin: 0;
}
nav ul li, nav ul li.support {
	border: none;
}

nav ul li {
	padding: 0;
}

nav ul li span.eng {
	display: none;
}

nav ul li a {
	text-align: left
}
nav ul li a::after {
  position: relative;
  bottom: 0;
  left: 0;
  content: '';
  width: 100%;
  height: 0;
  background: none;
}
nav ul li a:hover::after {
  bottom: 0;
  opacity: 1;
}
nav .sm_index {
	display: block;
    position: absolute;
    top: 10px;
    left: 5px;
}
nav .sm_index img {
    width: 85%;
}
nav .form {
	display: block;
}
.mddWrap {
	display: none;
}

.individual {
    float: left !important;
    width: 50% !important;
    background: #ef5350;
}
.corporation {
    float: right !important;
    width: 50% !important;
    background: #ea8e0a;
}
.individual a {
    text-align: center;
    color: #fff !important;
}
.corporation a {
    text-align: center;
    color: #fff !important;
}
.procedure {
    float: left !important;
    width: 50% !important;
    background: #696969;
}
.webmail {
    float: right !important;
    width: 50% !important;
    background:  #33B1E4;
}
.procedure a {
    text-align: center;
    color: #fff !important;
}
.webmail a {
    text-align: center;
    color: #fff !important;
}
nav .contact_sm {
	display: block;
    width: 100% !important;
    background: #c9161d;
}

.contact_sm a {
    text-align: center;
    color: #fff !important;
	padding: 1.2em !important;
	font-size: 120% !important;
	font-weight: bold !important;
}

/* ========================================  nav　スマホ用メニューここまで　*/


.slider {
    width: 100%;
}
.main {
    width: 93%;
    margin: 0 auto;
	padding: 0;
}
#slideR {
    display: none;
}
.pc {
    display: none;
}
.sm {
    display: block;
}
img {
    max-width: 100%;
    height: auto;
}
/*-----パンくず-----*/
#breadcrumbs {
    display: none;
}
#breadcrumbs ul {
    display: inline;
}
#breadcrumbs li {
    float: left;
    padding: 0 4px 0 2px;
    font-size: 1.15em;
}
#breadcrumbs li:after {
    content: ">";
    margin-left: 7px;
}
#breadcrumbs li:last-child:after {
    content: none;
}
#breadcrumbs li a {
    color: #000884;
    text-decoration: none;
}
#breadcrumbs li a:hover {
    text-decoration: underline;
}

/*-----コンテンツ-----*/

#contents {
    width: 100%;
    margin: 10px auto 0 auto;
	padding: 0 1em;
}

.contents_wrap {
	margin: 0 auto;
	padding: 0;
	box-shadow: none;
}

/*-----リスト-----*/
ul.list_circle li {
    padding-left: 1.2em;
	margin-left: 0;
}

/*-----ボタンメニュー-----*/
.button_menu li a {
    width: 90%;
    padding: 10px 20px;
    background: #ef5350 url("../images/arrow02.png") no-repeat top 14px right 15px;
    background-size: 6px 14px;
    color: #fff;
    text-decoration: none;
    list-style: none !important;
    margin-top: 0.5em;
}
.button_menu li a:hover {
    opacity: 0.7;
    filter: top_menu(opacity=70);
    -ms-filter: "top_menu(opacity=70)";
}
.button_menu_4 li {
    list-style: none !important;
    background: none !important;
}
.button_menu_4 li a {
    float: left;
    width: 90%;
    padding: 10px 10px;
    background: #ef5350 url("../images/arrow02.png") no-repeat top 14px right 15px;
    background-size: 6px 14px;
    color: #fff;
    text-decoration: none;
    margin-right: 0.5em;
    margin-top: 0.5em;
}
.button_menu_4 li a:hover {
    opacity: 0.7;
    filter: top_menu(opacity=70);
    -ms-filter: "top_menu(opacity=70)";
}

/* ---------------------- サブページ見出し(第二階層以下) ---------------------- */

.h1_bg,.h1_bg01,.h1_bg02 {
    width: 100%;
    height: auto;
	clear: both;
    min-width: inherit;
	margin-top: 0;
	padding: 10px 0 20px 0;
}
h1 {
    width: 100%;
    font-size: 130% !important;
    margin: 10px auto 0 auto;
    padding: 0px 20px 24px 20px;
	border-radius: 0;
}
h1 span {
    display: none;
}
h2 {
    font-size: 110%;
    margin-top: 30px;
    padding: 1.1em 0.5em 0.5em 1.2em;
    background:  url("../images/h2.png") no-repeat 0em 1em;
	line-height: 140%;
	background-size: 9px;
}
h2:first-child {
    margin-top: 0;
}
h3 ,.h3 {
   margin-top: 40px;
    margin-bottom: 16px;
	font-size: 95%;
	background: url("../images/h3.png") no-repeat 0 4px;
    padding: 0 0.5em 0.2em 1.2em;
    border-bottom: solid 2px #eee;
    background-size: 5px;
}

/*----- メニュー一覧 -----*/

.service_menu {
    float: none !important;
    width: 100% !important;
	margin-right: 0;
}

.service_menu ul {
	margin: 20px 0 30px 5px !important;
}

.service_menu ul li {
	margin-bottom: 0.5em !important;
	padding-left: 0.5em !important;
    background: url(../images/arrow01.png) no-repeat 6px 5px !important;
    background-size: 7px 10px !important;
}

/*-----契約約款-----*/

.article ol {
    margin-left: 0 !important;
}

/*-----スライドショー-----*/

.mypattern .slick-slide {
    margin: 0 5px 10px 5px;
}

/*-----会員様向けサポート-----*/

.user_menu {
    width: 100%;
    height: auto;
}
.user_menu_l {
    float: none;
    width: 100%;
	height: 70px;
	margin: -6px 0 0 0;
	padding: 18px 0 20px 0;
    background: -moz-linear-gradient(left, #ef5350, #ea8e0a);
    background: -webkit-linear-gradient(left, #ef5350, #ea8e0a);
    background: linear-gradient(to right, #ef5350, #ea8e0a);
	color: #fff;
	text-align: center;
	line-height: 80%;
}

.user_menu_l img {
	display: none;
}

.user_menu_l span {
	display: block;
	font-size: 75%;
	letter-spacing: 2px;
}

.user_menu_l span {
    font-family: "UD新ゴNT DB";
	font-size: 18px;
}

.user_menu_r {
    float: none;
    width: 90%;
	margin: 0 auto;
    padding: 0;
}

.user_menu_r_top .user_menu_r_down {
    width: 100%;
}

.user_menu_text {
    color: #000;
    font-family: "ヒラギノUD角ゴ W5 JIS2004";
    font-size: 95%;
    margin: 6px 0 8px 0;
    letter-spacing: 0;
}
.user_menu_r_top1, .user_menu_r_top2, .user_menu_r_down1, .user_menu_r_down2 {
    width: 49%;
    text-align: center;
    margin-top: 20px;
    margin-bottom: 20px;
}

/*-----indexのお問い合わせ枠-----*/

.index_contact {
    width: 100%;
    min-width: inherit;
	margin-bottom: 0;
    padding: 20px 10px;
	line-height: 110%;
}

.index_contact .box {
    width: 98%;
    margin: 0 auto 10px auto;
	padding: 5px 10px 14px 10px;
}
.index_contact .number {
    font-size: 200%;
    text-align: center;
    margin-top: 10px;
    font-family: "UD新ゴNT DB";
    letter-spacing: 0.05em;
	line-height: 120%;
}

.index_contact .fax01 {
	margin-left: 0;
	font-size: 50%;
    font-family: "ヒラギノUD角ゴ W3 JIS2004";
}
.index_contact .fax02 {
	font-size: 80%;
}

.index_contact .time {
	margin-top: 10px;
	font-size: 80%;
    letter-spacing: 0;
	line-height: 150%;
}

.index_contact .text {
    font-size: 80%;
}

/* お問い合わせ */

.inquiry .fax01 {
	margin-left: 0 !important;
}

.inquiry .number a {
	color: #c4040b;
	text-decoration: none;
}

/*-----個人・法人のお客様向けサービス-----*/

.new_menu_wrap {
    width: 100%;
    margin: 0 auto;
}
.new_menu {
    width: 100%;
    float: none;
}
/*.new_menu_l a:hover,.new_menu_r a:hover{
opacity: 0.7;
    filter: top_menu(opacity=70);
	-ms-filter: "top_menu(opacity=70)";}*/
.individual_menu_bg, .corporation_menu_bg {
    background: #edf0f4;
    text-align: center;
    padding-bottom: 20px;
}
.individual_menu_l {
    width: 40%;
    height: auto;
	background: #ef5350;
}
.individual_menu_r {
    margin-right: 10px;
    margin-left: 16px;
    font-family: "ヒラギノUD角ゴ W5 JIS2004";
    color: #000;
    width: 50%;
}
.individual_menu_r ul {
    margin-top: 15px;
}
.individual_menu_r li {
    line-height: 2.4em;
}
.corporation_menu_l {
    width: 40%;
    height: auto;
	background: #ea8e0a;
}
.corporation_menu_r {
    float: left;
    margin-left: 16px;
    width: 50%;
}
.corporation_menu_r ul {
    margin-top: 15px;
}
.corporation_menu_r li {
    line-height: 2.4em;
}
.individual_menu_r li a, .corporation_menu_r li a {
    text-decoration: none;
    color: #000;
}
.individual_menu_r li a:hover, .corporation_menu_r li a:hover {
    text-decoration: underline;
}

/*-----サンフィールドフォン-----*/

.ip_left {
    float: none !important;
    width: 100% !important;
}
.ip_right {
    float: none !important;
    width: 100% !important;
    text-align: center;
}
.ip_fee_left {
	float: none !important;
    width: 100% !important;
    margin-top: 20px;
}
.ip_fee_right {
 	float: none;
    width: 100%;
    margin-top: 40px;
    text-align: center;
}

/* ---------    横幅指定　　----------- */

.w10, .w15, .w20, .w25, .w30, .w35, .w33, .w40, .w45, .w48, .w50, .w60, .w65, .w70, .w75, .w80, .w85, .w90, .w100 {
    width: auto !important;
}

/*-----テーブル-----*/

.scroll-table {
    overflow: auto;
    white-space: nowrap;
}
.table01 {
    width: 100%;
    border-collapse: collapse;
    border: #ccc 1px solid;
}
.table01 th {
    background: #edf0f4;
    border-right: #ccc 1px solid;
    border-bottom: #ccc 1px solid;
}
.table01 td {
    text-align: center;
    border-right: #ccc 1px solid;
    border-bottom: #ccc 1px solid;
}
.table01 td a, .table01 th a {
    color: #1111cc;
}
.table01 td a, .table01 th a:hover {
    text-decoration: none;
}

.table01_left {
    width: 100%;
    border-collapse: collapse;
    border: #ccc 1px solid;
    margin: 5px 0 20px 0;
}

.table01_right {
}
.table01_left th, .table01_right th {
    background: #edf0f4;
    border-right: #ccc 1px solid;
    border-bottom: #ccc 1px solid;
}
.table01_left td, .table01_right td {
    text-align: center;
    border-right: #ccc 1px solid;
    border-bottom: #ccc 1px solid;
}
.sm_table tbody tr {
    display: block;
}
.sm_table tbody th, .sm_table tbody td {
    display: block;
    width: auto !important;
}

/*-----トップページ保守・故障情報-----*/

.index_maintenance {  /* 枠 */
	min-width: inherit;
    padding: 30px 10px;
}

.index_maintenance .block {
    width: 100%;
	margin: 0 auto;
}
.index_maintenance a {
    color: #000;
    text-decoration: underline;
    text-decoration-color: #7e7f80;
}
.index_maintenance a:hover {
    opacity: 0.7;
    filter: top_menu(opacity=70);
    -ms-filter: "top_menu(opacity=70)";
}
.maintenance_info {
    width: 100%;
    padding-left: 20px;
    padding-right: 5px;
    margin-bottom: 30px;
}
.maintenance_info ul {
    margin-top: 15px;
}
.maintenance_info li {
    line-height: 1.8em;
    font-size: 85%;
    font-family: "ヒラギノUD角ゴ W5 JIS2004";
    letter-spacing: 0.07em;
}
.title2 {
    width: 100%;
    font-size: 100%;
}
.new_iconm {
    font-size: 60% !important;
}
.maintenance_date {
    letter-spacing: 0;
    font-size: 90%;
}
.area {
    height: 15px !important;
    background: #424242;
    color: #fff !important;
    border-radius: 30px !important;
    font-size: 70% !important;
    padding: 2px 10px !important;/*    margin-left: 20px !important;
*/
}
.area_long {
    height: 20px !important;
    background: #424242;
    color: #fff !important;
    border-radius: 30px !important;
    font-size: 80% !important;
    padding: 2px 10px !important;
}
hr {
    width: 100%;
    margin: 0 auto;
    margin-bottom: 30px;
    border: 0;
    border-top: 1px dotted #b8b8b8;
}

.index_button {
    width: 90%;
    margin: 10px auto;
}
.index_button a {
    display: block;
    padding: 13px 25px;
    color: #fff;
    text-decoration: none;
}
.index_button a:hover {
    opacity: 0.7;
    filter: top_menu(opacity=70);
    -ms-filter: "top_menu(opacity=70)";
}

/*-----トップページお知らせ-----*/

.index_info {  /* 枠 */
    padding: 20px 10px 60px 10px;
    width: 100%;
}

.index_info li {
    border-bottom: 1px dotted #b8b8b8;
    background-size: 5px 10px;
    background: none;
    background-position: right 20px bottom 20px;
    font-size: 100%;
    padding: 7px 0 7px 10px;
}

.index_date {
    font-size: 90%;
    margin-right: 0;
}
.index_info li a {
    padding: 12px 10px 12px 10px;
    letter-spacing: 0.05em;
}


	
.index_info .title, .index_maintenance .title {	/* 保守・故障情報と同じtitle */
    margin:  0 auto 20px auto;
}


.index_info dl dt{
	float: left;
	font-size: 92%;
	text-align: left;
	width: 9em;
	padding:0.8em 1em 0 1em;
}
	
.index_info dl dd{
	float: left;
	font-size: 92%;
	text-align: left;
	width: 100%;
    background: url(../images/arrow01.png) no-repeat right;
    background-size: 5px 10px;
	padding:0.5em 1em 1em 1em;
}

.index_maintenance {  /* 枠 */
    margin: 10px auto;
}
	
/*.index_info dt{
	float: left;
	width: 100%;
}
.index_info dd{
	float: left;
	width: 100%;
    background: url(../images/arrow01.png) no-repeat right;
    background-size: 5px 10px;
}*/

	
	
	
/*-----トップページバナー-----*/

.index_banner {
    width: 100%;
    margin-top: 30px;
}
.index_banner li {
	display: block;
	margin-right: 0;
	margin-bottom: 10px;
}

/*-----フッター-----*/

.footer_bg {
    width: 100%;
    min-width: inherit;
	padding: 30px 0 20px 0;
}
footer {
    width: 100%;
}
.footer_left {
    float: none;
    width: 100%;
	margin-top: 0;
    text-align: center;
}
.footer_left img {
    width: 80%;
}
.footer_center, .footer_right {
    display: none;
}
.address {
    font-size: 90%;
    letter-spacing: 0.17em;
    color: #fff;
    margin-top: 10px;
    font-weight: lighter !important;
}
.copy {
    font-size: 70%;
    margin-top: 20px;
    letter-spacing: 0.06em;
}



/*-----ページトップ-----*/

#page-top {
    position: fixed;
    bottom: 10px;
    right: 10px;
}
#page-top a {
    display: block;
    height: 40px;
    width: 40px;
    color: #fff;
    text-align: center;
    font-size: 1.0em;
    background: #ccc;
    text-decoration: none;
    padding-top: 10px;
    margin: 0 0;
}
#page-top i {
    font-size: 1.5em;
}
#page-top a:hover {
    opacity: 0.7;
    filter: top_menu(opacity=70);
    -ms-filter: "top_menu(opacity=70)";
    ;
}
.float_none_sm {
    float: none !important;
    width: 100% !important;
    margin: 0 !important;
}
.float_none_sm_01 {
    float: none !important;
    margin: 0 auto;
}

/*-----フレッツメンテナンスのお知らせ-----*/

.record_title {
    text-align: center;
    margin-top: 40px;
    margin-bottom: 60px;
    font-family: "ヒラギノUD角ゴ W5 JIS2004";
    text-decoration: underline;
    font-size: 90%;
}
.record_date {
    text-align: right;
}
.bold_text {
    font-size: 90%;
    font-family: "ヒラギノUD角ゴ W5 JIS2004";

    text-decoration: underline;
    margin: 20px auto;
}
/*f_左右_w50 */
	
.f_left_w50 {
}
.f_right_w50 {
    margin-top: 40px;
}

/*-----float-----*/
	
.f_right {
    float: none !important;
}
.f_right_img {
    float: none !important;
    margin-left: 0;
    margin-bottom: 20px;
}
.f_left {
    float: none !important;
}
.f_left_img {
    float: none !important;
    margin-right: 0;
    margin-bottom: 20px;
}
.w50qa {
    width: 100% !important;
}
.w70qa {
    width: 100% !important;
}
.w30qa {
    width: 100% !important;
}
	.mt_0sm{
		margin-top: -10px !important;
	}

/*-----サイト内検索-----*/

.search {
    position: relative;
    width: 95%!important;
    margin: 5px;
    font-size: 90%;
}
#searchtext {
    position: absolute;
    width: 90%;
    height: 30px;
    left: 0px;
    top: 2px;
    padding-left: 10px;
    border: solid 1px #ccc;
    border-radius: 20px;
    color: #999;
}
#submit_btn {
    position: absolute;
    width: 24px;
    height: 24px;
    border: none;
    top: 10px;
	right: 12px;
    cursor: pointer;
    background: #fff url("../images/icon_search.png") no-repeat 5px;
}

.scroll-table {
  overflow: auto;
  white-space: nowrap;
  }


/*----- 扉ページ -----*/

.con_wrap {
	float: none;
	margin-right: 0;
}

.con_wrap.box3, .con_wrap.box2 {
	width: 100% !important;
}

.con_wrap .text {
	padding: 1.2em 1em;
	text-align: left;
	font-size: 90% !important;
	line-height: 180%;
	border-left: solid 1px #eee;
	border-right: solid 1px #ccc;
	border-bottom: solid 1px #ccc;
	border-radius: 0 0 10px 10px;
}

.con_wrap .con_title {
	position: relative;
	margin: 0 auto;
	padding: 3px 3px 10px 3px;
    font-family: "TBUDゴシック B";
	text-align: left;
	color: #000;
	font-size: 105%;
	border-bottom: solid 2px #ccc;
    background:  no-repeat 5px 9px;
    background-size: 5px 10px;
}
.con_wrap a {
	display: block;
	text-decoration: none !important;
	color: #000;
}
.con_wrap .con_title::before {
	content: url(../images/arrow01_mini.png);
	margin-right: 8px;
}
.con_wrap .con_title::after {
  position: absolute;
  bottom: -2px;
  left: 0;
  content: '';
  width: 100%;
  height: 2px;
  background: #ef5350;
  transform: scale(0, 1);
  transform-origin: left top;
  transition: transform .3s;
}
.con_wrap .con_title:hover::after {
  transform: scale(1, 1);
}

.con_wrap a.details_p {
	display: inline-block;
	margin:  0 auto 10px auto;
	padding: 3px 20px;
	color: #fff;
	font-size: 90%;
}



#index .header_bg {	/* indexのみ適用 */
	height: 0px;
}

/* when under viewport size, .mean-container is added to body */
.mean-container .mean-bar {
	padding: 10px 0 !important;
}

.user_menu .border, .user_menu.border {
    border-top: none;
	margin-top: 5px;
}	

.box2.border_right, .box3.border_right {
    border-right: none;
}
	
 .user_menu .box3 {
    text-align: center;
    margin: 20px auto 40px auto;
	padding: 0 1em;
	width: 100%;
}
	
.user_menu .box2 { 
	width: 50%; 
    text-align: center;
    margin: 20px auto;
	padding: 0 1em;

	}
	
.f_left_sm{float: left !important;}

/*----------widthの指定----------*/
/*--スマートフォンでは100%--*/
.w70{
	width:100%;
}
	
/*--設定方法・マニュアル--*/
.service_menu {
    float: none !important;
    width: 100% !important;
	margin-right: 0;
}	

.user_menu .text {
    font-size: 13px;
}

	.box_05 {
	margin: 0 auto;
    width: 98% !important;
    border: #FDE6C9 solid 2px;
	padding: 1em;border-radius: 10px;
}
	
	.box_06 {
    width: 100% !important;
	padding: 2em !important;
	border-radius: 10px !important;
}
	
}
