@charset "UTF-8";
/* CSS Document */

.mobile_header_menu {
	display: none;
}

@media screen and (max-width: 768px) {

html, body{
	width:100%;
	height:100%;
	margin: 0;
	padding: 0;
}
body{
	-moz-box-align: center;
	-webkit-box-align: center;
	-moz-box-pack: center;
	-webkit-box-pack: center;
	font: 100%/1.231 arial,helvetica,clean,sans-serif;
	font-size: 100%;
	font-style: normal;
	font-variant: normal;
	font-weight: normal;
	font-stretch: normal;
	line-height: 1.231;
	font-family: Avenir, Avenir Next, AXIS, Segoe, 'Hiragino Kaku Gothic Pro', Meiryo, メイリオ, *font-size:small;
}
* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
.clear {
	height:0px;
	line-height:0;
	font-size:0;
	display:block;
	clear:both;
	visibility:hidden;
}


#wrapper{
     width: 100%;
     margin: 0 auto;
}
a, a:link, a:visited {
	color: #2d6c9f;
	text-decoration: blink;
}
dd {
	margin-left: 0;
	overflow: hidden;
}
img {
	margin: 0px;
	padding: 0px;
	border: 0;
}
a {
	display: block;
}
* html #selector {
    property:value;
}

*:first-child+html #selector {
    property:value;
}

#selector {
    property: value;
}

body #selector {
    property: value;
}
html:not(:target) #selector {
    property: value;
}


/*   header_menu  */
.mobile_header_menu {
	display: block;
	width: 100%;
	overflow: hidden;
}

.mobile_header_menu #common_header2 {
	float: left;
	width: 80%;
	height: auto;
}

.mobile_header_menu .w100per {
	width: 100% !important;
}

.mobile_header_menu #common_header2 #dti_logo {
	float: left;
	width: 30%;
}

.mobile_header_menu #common_header2 #dti_logo img {
	width: 100%;
	margin: 10px 0 0 5px;
}

.mobile_header_menu #common_header2 .common_header2_wrapper {
	width: 100%;
	overflow: hidden;
}

.mobile_header_menu #common_header2 .common_header2_btn {
	margin: 10px 0 0 0;
	overflow: hidden;
	width: 69%;
	float: left;
}

.mobile_header_menu #common_header2 .common_header2_btn li {
	float: right;
	width: 18%;
	margin-right: 5%;
}

.mobile_header_menu #common_header2 .common_header2_btn li img {
	width: 100%;
}

.mobile_header_menu #common_header2 form {
	width: 100%;
}

.mobile_header_menu #common_header2 form #common_search {
	width: 100%;
	background: none;
	border: none;
	overflow: hidden;
	float: none;
	height: auto;
	margin: 0;
	padding: 0;
}



.mobile_header_menu #common_header2 form #common_search .input_textarea {
	display: none;
	width: 100%;
	overflow: hidden;
}

.mobile_header_menu #common_header2 form #common_search .search_txt {
	float: left;
    width: 55%;
    height: 3em;
    border: #999999 1px solid;
    margin:  10px 0 0 5%;
    background: url(/common/image/header/head_login_bk_03.gif) left center no-repeat #FFF;
    padding-left: 18px;
}

.mobile_header_menu #common_header2 form #common_search .serach_btn {
    float: left;
    width: 17%;
	margin: 0 3% 0 0;
}


 #menu-title {
	width: 80%;
	float: left;
	height: 100%;
}

#menu-title p {
	font-size: 1.5em;
}

#menu-title p.wm {
	color: #c7314e;
}

#menu-title p.ftth {
	color: #d19d37;
}

#menu-title p.vps {
	color: #016068;
}


 #menu-box {
	width: 20%;
	float: right;
	border-left: 1px dotted #666;
	height: 100%;
	background: #f2f2f2;
	overflow: hidden;
}


#menu-box img {
	width: 100%;
}

#MenuBox {
	clear: both;
}
#search_btn, x:-moz-any-link, x:only-child {
	width: 76%;
}
#mobileSearchInput, x:-moz-any-link, x:only-child {
	width: 80px;
}
.topmenu ul {
	width: 100%;
	max-width: 481px;
	padding-left: 0;
	margin: 0 0;
}
.topmenu li {
	width: 100%;
	background-color:#f2f2f2;
	border-top: 1px solid #666; 
	box-sizing: border-box;
	padding: 5.5% 3%;
}
#MenuBox dt {
	background-color: #f2f2f2;
	border-bottom: solid 1px #666;
	padding: 5.5% 3%;
	color: #2d6c9f;
	cursor: pointer;
	position: relative;
}
dl.accordion_dl {
	margin-top: 0;
	margin-bottom: 0;
}
dt.active:before {
  margin-top: -2px;
}
dt.active:after {
  margin-top: 3px;
}
ul {
	margin: 0;
	-webkit-padding-start: 0;
	list-style: none;
	padding-left: 0;
}
.accordion_dl li {
	padding: 5.5% 3%;
}
.separator  li{
	border-bottom: #666 1px solid;
	padding: 5.5% 3%;
}
#MenuBox li {
	background: #F2F2F2;
}
.service_box:before {
	display: block;
	content: "";
	position: absolute;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	top: 50%;
	right: 15px;
	width: 10px;
	height: 10px;
	margin-top: -8px;
	background: #666;
}
.service_box:after {
	display: block;
	content: "";
	position: absolute;
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg);
	top: 50%;
	right: 12px;
	width: 18px;
	height: 10px;
	margin-top: -13px;
	background: #F2F2F2;
}
.topmenu:after {
	background: #F2F2F2 !important;
}
.hide {
	margin-bottom: -19px;
}
#MenuBox ul li a {
	position: relative;
	display: block;
	padding-left: 30px;
	}
#MenuBox ul li a::after {
	position: absolute;
	top: 41%;
	left: 5px;
	display: block;
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 5px 0 5px 8px;
	border-color: transparent transparent transparent #666;
	margin-top: -4px;
}
#MenuBox ul li  a#last::after {
	top: 18%;
}
ul#member_inner li:last-child {
	padding: 3.5% 3%;
}
div#top_banner {
	clear: both;
}


/*   top_banner  */
#top_banner img {
	width: 100%;
	height: auto;
}

#top_banner {
	margin: 0 auto;
	width: 100%;
	height: 45%;
}

#top_banner ul {
	width: 100%;
	height: 45%;
	position: relative;
}

#top_banner ul li {
	top: 0;
	left: 0;
	width: 100%;
	height: 45%;
	display: none;
	position: absolute;
}

/*   info  */
div#info {
  margin-top: 52px;
}
#important {
	margin:2%;
	background:#fff;
}
#important ul {
	margin:0;
	padding:0;
	list-style:none;
}
#important li{
	line-height:1.4em;
	margin-bottom:0.8em;
}
li#mante_latest {
	border-bottom: none;
	padding: 2% ;
	line-height: 21px;
 }
#top_news p.backnumber{
	text-align:right;
}
dt.inner_head {
	background:  #ba0731;
	border-bottom: #fff 1px solid;
	color: #fff;
	padding: 4% 12% 4%;
}
h2.inner_foot {
	color: #fff;
	padding: 4% 12% 4%;
	font-size: 100%;
	font-weight: normal;
	margin: 0;
}
dt.inner_head.icon {
	border-top: none;
	background:url(../../image/info_icon.png)  2% center no-repeat #ba0731;
	position: relative;
}
dt.inner_head.icon2 {
	background:url(../../image/info_icon2.png)  2% center no-repeat #ba0731;
	position: relative;
}
h2.inner_foot {
	background:url(../../image/info_icon3.png) 2% center no-repeat #02613E;
}
.tw_timeline {
	clear: both;
	border: 1px solid #ccc;
	padding: 2px 5px;
	border-radius: 3px;
	margin: 5% 2% 0;
}
.tw_timeline a {
	text-decoration: none;
	display: inline;
}
.tw_timeline .tweet {
	margin-top: 10px;
	padding: 0;
	color: #666;
	max-height: 100px;
	overflow-y: auto;
	overflow-x: hidden;
}
p.past,  p.backnumber {
	border: 1px #2D6C9F solid;
	display: block;
	width:　40%;
	padding: 2%;
	float: right;
	margin-right: 2%;
	border-radius: 3px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	line-height: 1.4em;
}
.info_inner2 {
	clear: both;
} 
.more:before {
	display: block;
	content: "";
	position: absolute;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	top: 50%;
	right: 15px;
	width: 10px;
	height: 10px;
	margin-top: -8px;
	background: #FFF;
}
.more:after {
	display: block;
	content: "";
	position: absolute;
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg);
	top: 50%;
	right: 12px;
	width: 18px;
	height: 10px;
	margin-top: -13px;
	background: #BA0731;
}


 /*   menu  */
h2.service_ttl {
	color: #fff;
	font-size: 100%;
	font-weight: normal;
	padding: 3% 12% 3%;
	background:url(../../image/service_icon.png) 2% 73% no-repeat  #666;
	clear: both;
}
dt.navLink.mobile {
	border-top: 6px #ab0731 solid;
	padding: 5% 0 5% 34%;
	color: #666;
	font-weight: bold;
	background:url(../../image/service_icon2.png) 20% center no-repeat;
}
dt.navLink.cloud {
	border-top: 6px #02613E solid;
	padding: 5% 0 5% 34%;
	color: #666;
	font-weight: bold;
	background:url(../../image/service_icon3.png) 20% center no-repeat;
}
dt.navLink.connection {
	border-top: 6px #D19D37 solid;
	padding: 5% 0 5% 34%;
	color: #666;
	font-weight: bold;
	background:url(../../image/service_icon4.png) 20% center no-repeat;
}
dt.navLink.mail {
	border-top: 6px #2D6C9F solid;
	padding: 5% 0 5% 34%;
	color: #666;
	font-weight: bold;
	background:url(../../image/service_icon5.png) 20% center no-repeat;
}
dt.navLink.member {
	border-top: 6px #999 solid;
	padding: 5% 0 5% 34%;
	color: #666;
	font-weight: bold;
	background:url(../../image/service_icon6.png) 20% center no-repeat #F2F2F2;
}
ul#member li:first-child {
	border-top: 1px #999 solid;
	padding: 4% 3%;
}
ul#ubiquitous li:first-child {
	padding: 4% 3%;
}
ul#member li:last-child {
	border-bottom: none;
}
#menu ul li:nth-child(2), #menu ul li:nth-child(3), #menu ul li:nth-child(4), #menu ul li:nth-child(5), #menu ul li:nth-child(6), #menu ul li:nth-child(7), #menu ul li:nth-child(8){
	padding: 4% 3%;
}
dt.navLink.ubiquitous {
	border-top: 6px #999 solid;
	border-bottom: 1px #999 solid;
	padding: 5% 0 5% 34%;
	color: #666;
	font-weight: bold;
	background:url(../image/service_icon7.png) 20% center no-repeat #F2F2F2;
}
.line_r {
	border-top: 1px #BA0731 solid;
	border-bottom: none;
}
.outline {
	background: #d6a6b1;
}
.line_g {
	border-top: 1px #02613E solid;
	border-bottom: none;
}
.outline2 {
	background: #64b195;
}
.line_y {
	border-top: 1px #D19D37 solid;
	border-bottom: none;
}
.outline3_y {
	background: #D19D37;
}
.outline3 {
	background: #FAE6BF;
}
.line_b {
	border-top: 1px #2D6C9F solid;
	border-bottom: none;
}
.outline4 {
	background: #6da2cd;
}
.accordion_dl a.white {
	color: #FFF;
	margin-left: 1.5em;
}
a.blue {
	margin-left: 1.5em;
}
.service_box {
	position: relative;
}
.service_box:before {
	display: block;
	content: "";
	position: absolute;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	top: 50%;
	right: 15px;
	width: 10px;
	height: 10px;
	margin-top: -8px;
	background: #666;
}
.service_box:after {
	display: block;
	content: "";
	position: absolute;
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg);
	top: 50%;
	right: 12px;
	width: 18px;
	height: 10px;
	margin-top: -13px;
	background: #FFF;
}
.gray:before {
	display: block;
	content: "";
	position: absolute;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	top: 50%;
	right: 15px;
	width: 10px;
	height: 10px;
	margin-top: -8px;
	background: #666;
}
.gray:after {
	display: block;
	content: "";
	position: absolute;
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg);
	top: 50%;
	right: 12px;
	width: 18px;
	height: 10px;
	margin-top: -13px;
	background: #F2F2F2;
}
dt.active:before {
  margin-top: -2px;
}
dt.active:after {
  margin-top: 3px;
}
.nav, .nav3, .nav5_w, .nav5, .nav7 {
	position: relative;
	display: block;
}
.nav:after {
	position: absolute;
	top: 14%;
	right: 103%;
	display: block;
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 6px 0 6px 10px;
	border-color: transparent transparent transparent #BA0731;
}
.nav3:after {
	position: absolute;
	top: 20%;
	right: 103%;
	display: block;
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 6px 0 6px 10px;
	border-color: transparent transparent transparent #02613E;
}
.nav5_w:after {
	position: absolute;
	top: 14%;
	right: 103%;
	display: block;
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 6px 0 6px 10px;
	border-color: transparent transparent transparent #FFF;
}
.nav5:after {
	position: absolute;
	top: 14%;
	right: 103%;
	display: block;
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 6px 0 6px 10px;
	border-color: transparent transparent transparent #D19D37;
}
.nav7:after {
	position: absolute;
	top: 14%;
	right: 103%;
	display: block;
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 6px 0 6px 10px;
	border-color: transparent transparent transparent #2D6C9F;
}
.nav2 {
	color: #D6A6B1;
	margin-right: 1em;
	font-size: 8px;
}
.nav4 {
	color: #64B195;
	margin-right: 1em;
	font-size: 8px;
}
.nav6 {
	color: #D19D37;
	margin-right: 1em;
	font-size: 8px;
}
.nav8 {
	color: #6DA2CD;
	margin-right: 1em;
	font-size: 8px;
}


/*   top_topics  */
#top_topics {
	border-top: 1px #999 solid;
	border-bottom: 1px #999 solid;
	margin: 10% 0;
	padding: 5px 0;
}
#top_topics ul li a {
	position: relative;
	display: block;
	padding: 8px 10px 8px 30px;
}
#top_topics ul li a::after {
	position: absolute;
	top: 41%;
	left: 10px;
	display: block;
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 6px 0 6px 10px;
	border-color: transparent transparent transparent #999999;
	margin-top: -4px;
}
#top_topics ul li a#first::after {
	top: 27%;
}
img.pick_up_news {
	display: block;
	margin: 40px auto;
}

/*   footer  */
ul#common_footer_navi {
	margin: 5px 0 20px 12px;
	padding: 0;
	list-style: none;
	float: left;
}
#common_footer li a {
	display: block;
	position: relative;
	padding: 10px 0 10px 7px;
	background: #FFF;
	font-size: 96%;
	font-weight: normal;
}
ul#common_footer_navi li {
	border-right: none;
	float: none;
}
#common_footer_navi a:after {
	display: block;
	position: absolute;
	top: 50%;
	right: 100%;
	width: 6px;
	height: 6px;
	margin-top: -4px;
	border-top: solid 2px #7f7f7f;
	border-right: solid 2px #7f7f7f;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	content: "";
}
ul#common_footer_navi li a, ul#common_footer_navi li a:link, ul#common_footer_navi li a:visited {
	color: #333;
}
img.footer_safety{
	float: right;
	clear: both;
	margin-right: 3%;
}
img.footer_dhub {
	float: right;
	margin-right: 3%;
}
p#footer_copyright {
	clear: both;
	color: #666;
	font-size: 12px;
	text-align: center;
	padding: 20px 10px;
}
#twitter {
	float: left;
	height: 20px;
	border-right: #999 1px solid;
	margin: 5px 10px 0 0px;
	padding: 2px 10px 0 0;
}
#sns_menu2 div#twitter img {
	float: left;
}
.sns_div_01 {
	margin-bottom: 2%;
}
.sns_div_02 {
	clear: both;
	margin: 3% 5% 0 3%;
	float: left;
}
.sns_div_03,.sns_div_04,.sns_div_05 {
	float: left;
	margin: 3% 3%;
}
.sns_div_01 iframe {
	margin-top: 1.6%;
	margin-right: 2%;
	width: 116px !important;
}
.sns_div_04 {
	margin-left: 0;
}
.sns_div_03 {
	margin-right: 0;
}

}


@media screen and (min-width: 691px) {
img#search_btn {
	width:60px;
}
img#log_btn {
	width: 60px;
}
}
creen and (min-width: 411px) and (max-width: 480px){
#mobileSearchInput {
	width: 108px;
}
}
@media screen and (min-width: 381px) and (max-width: 410px){
#mobileSearchInput {
	width: 83px;
}
}
@media screen and (min-width: 345px) and (max-width: 380px){
#mobileSearchInput {
	width: 56px;
}
}
@media screen and (max-width: 344px){
#mobileSearchInput {
	width: 38px;
}
}

@media screen and (min-width: 475px){
#MenuBox ul li  a#last::after {
	top: 36%;
}
}

@media screen and (min-width: 375px){
#dti_logo {
	left: 50px;
}
}
@media screen and (min-width: 335px){
#top_topics ul li a#first::after {
	top: 29%;
}
}
