@charset "utf-8";


/* ************************************************ 
*	基本設定
* ************************************************ */	
body {
font-family: 'Roboto','Sawarabi Gothic','Noto Sans JP',sans-serif;
font-size: 15px;
background:#fff;
color: #333;
line-height: 180%;
overflow-x: hidden;
}

/* リンク */
a{
	color:#333;
	text-decoration: none;
	transition: 0.5s;
	-webkit-transition: 0.5s;
	-moz-transition: 0.5s;
	-o-transition: 0.5s;
	-ms-transition: 0.5s;
}

a:hover{
color:#000;
}

a:active, a:focus {
outline: 0;
}


/* 画像 */
img{
border:0;
padding:0px;
margin:0px
vertical-align: bottom;
}

img a{
	transition: 0.5s;
	-webkit-transition: 0.5s;
	-moz-transition: 0.5s;
	-o-transition: 0.5s;
	-ms-transition: 0.5s;
}


/* フロート */
.right{ float: right; }
.left{ float: left; }
.clear{ clear:both; }


/* リスト */
ol{
margin: 0 0 0 5px;
padding: 0 0 0 0;
list-style: decimal;
}

ul{
margin: 0 0 0 0;
padding: 0 0 0 0;
list-style: none;
}

li{
margin: 0 0 10px 15px;
padding: 0 0 0 0;
}

li a{
color:#444;
transition: 0.5s;
-webkit-transition: 0.5s;
-moz-transition: 0.5s;
-o-transition: 0.5s;
-ms-transition: 0.5s;
}

li a:hover{
color:#03335d;
}

#topcontrol{
z-index:99999;
}

ruby {
color: #fff;
}

.width90{width: 90%!important;}
.width80{width: 80%!important;}
.width70{width: 70%!important;}
.width60{width: 60%!important;}
.width50{width: 50%!important;}
.width38{width: 38%!important;}
.width35{width: 35%!important;}
.width30{width: 30%!important;}
.width25{width: 25%!important;}
.width20{width: 20%!important;}
.width10{width: 10%!important;}
.width5{width: 5%!important;}


/* ************************************************ 
*	背景色・フォントサイズ切り替え
* ************************************************ */	
.font_small_active {
    font-size: 80% !important;
}
.font_medium_active {
    font-size: 100% !important;
}
.font_large_active {
    font-size: 120% !important;
line-height: 100% !important;
}
.font_large_active form,
.header-txtsize p,
.header-txtcolor p{
margin-bottom: 0;
line-height: 215% !important;
}



.bg_blue {
    background-color: #00f !important;
    color: #F7F700 !important;
}
.bg_blue .nav-menu li a,
.bg_blue table#topnewsbox td a,
.bg_blue #footer ul li a,
.bg_blue .newslink a,
.bg_blue ul.group-list li a,
.bg_blue ul.news li a,
.bg_blue .news-page-navi a,
.bg_blue .pagetop-title{
    color: #F7F700 !important;
}
.bg_blue .pagetop-title-box,
.bg_blue .header-rightbox,
.bg_blue .topnews-box,
.bg_blue .inner-box,
.bg_blue .newslink {
background-color: #00f !important;
}
.bg_blue .mean-container a.meanmenu-reveal span {
	background: #F7F700 !important;
}
.bg_blue .newslink {
border: 1px solid #F7F700; !important;
}



.bg_black {
    background-color: #000 !important;
    color: #fff !important;
}
.bg_black .nav-menu li a,
.bg_black table#topnewsbox td a,
.bg_black #footer ul li a,
.bg_black .newslink a,
.bg_black ul.group-list li a,
.bg_black ul.news li a,
.bg_black .news-page-navi a,
.bg_black .pagetop-title{
    color: #fff !important;
}
.bg_black .pagetop-title-box,
.bg_black .header-rightbox,
.bg_black .topnews-box,
.bg_black .inner-box,
.bg_black .newslink {
background-color: #000 !important;
}
.bg_black .mean-container a.meanmenu-reveal span {
	background: #fff !important;
}
.bg_black .newslink {
border: 1px solid #fff; !important;
}

.bg_white {
    color: #333 !important;
}
.btn_fontsize,
.btn_bgcolor {
	display: inline-block;
}


/* ************************************************ 
*	全体Wrapper
* ************************************************ */	
.wrapper {
margin: 0px auto 0px auto; 
max-width: 1160px;
_width: 1160px;
padding: 0px 0px 0px 0px;
}
.wrapper2 {
margin: 0px auto 0px auto; 
width: 100%;
padding: 0px 0px 0px 0px;
}
.contents-wrapper {
margin: 0;
padding: 80px 0 30px 0;
width: 100%;
position:relative;
z-index:1;
-moz-box-shadow: 0px 3px 2px rgba(0,0,0,0.1);
-webkit-box-shadow: 0px 3px 2px rgba(0,0,0,0.1);
-o-box-shadow: 0px 3px 2px rgba(0,0,0,0.1);
-ms-box-shadow: 0px 3px 2px rgba(0,0,0,0.1);
box-shadow: 0px 3px 2px rgba(0,0,0,0.1);
}
.contents-box {
margin: 0;
padding: 0 0 70px 0;
width: 100%;
}


/* ************************************************ 
*	ヘッダー
* ************************************************ */
#header {
	background: #fff;
	width: 100%;
	margin: 0;
	height: 140px;
position:fixed;
top:0;
left:0;
z-index:99999;
-moz-box-shadow: 0px 3px 3px rgba(0,0,0,0.1);
-webkit-box-shadow: 0px 3px 3px rgba(0,0,0,0.1);
-o-box-shadow: 0px 3px 3px rgba(0,0,0,0.1);
-ms-box-shadow: 0px 3px 3px rgba(0,0,0,0.1);
box-shadow: 0px 3px 3px rgba(0,0,0,0.1);
}

.header-inner {
margin: 0 auto;
padding: 0 0 15px 0;
max-width: 1160px;
_width: 1160px;
position: relative;
}

#header h1 {
margin: 40px 0 0 0;	
}

.logo {
	float: left;
	margin: 0;
	padding: 0;
}
.logo img{
	width:300px;
}

.header-rightbox {
padding: 10px 0 5px 0;
position: relative;
overflow: hidden;
float: right;
width:100%;
height: 35px;
background-color: #d9efeb;
}

.header-searchbox {
	margin: 0 3% 0 0;
	padding: 0;
	float: left;
	width:28%;
}

input[type="search"]{
	float: left;
    margin: 0 0 0 0;
    padding: 5px 2%;
}

.header-searchbox input[type="image"]{
	margin: 0 0 0 0;
	padding: 0;
	height: 27px;
	float: left;
}
.header-searchbox input[type="image"]:hover{
	opacity: 0.8;
}

.header-contactbox {
	margin: 0 0 0 0;
	padding: 0 ;
	float: left;
	text-align: center;
	width:15%;
}
.header-contactbox img{
	margin: 0;
	padding: 0;
width: 72px;
	min-width: 72px;
	vertical-align: bottom;
}

.header-txtsize {
	margin: 0 2% 0 0;
	padding: 0 ;
	float: left;
	width:29%;
}
.header-txtsize p,
.header-txtcolor p{
	font-size: 13px;
display: inline-block;
	float: left;
	margin: 2px 0 0 0;
}

.header-txtsize input[type="image"]{
	margin: 0 0 0 5px;
	padding: 0;
	width: 29%;
	float: left;
}
.header-txtcolor input[type="image"]{
	margin: 0 0 0 5px;
	padding: 0;
	width: 17%;
	float: left;
}

.header-txtcolor {
	margin: 0 0 0 0;
	padding: 0 ;
	float: left;
	width:23%;
}


/* ************************************************ 
*	トップナビゲーション
* ************************************************ */	
#navDmy{
display:none !important;
}
#nav_bg {
	width: 100%;
	padding: 0;
	margin: 15px 0 0 0;
}

/* 上部固定用 */
#nav_bg.active{
position:fixed;
top:0;
left:0;
z-index:99999;
background:#fff;
}
/* 上部固定用ここまで */

.nav {
width:100%;
margin: 0 auto;
}

.nav ul {
list-style: none;
margin: auto;
letter-spacing: -0.5em; /* 隙間を埋める追加 */
}

.main-navigation {
clear: both;
margin: 0 auto;
position: relative;
}

ul.nav-menu,
div.nav-menu > ul {
margin: 0;
padding: 0;
}

.nav-menu li {
font-family: 'Noto Sans JP';
font-weight: 700;
color: #333;
display: inline-block;
line-height: 16px;
position: relative;
margin: 0;
padding: 0;
float: left; 
text-align:center;
letter-spacing: normal; /* 隙間を埋める追加 */
cursor: pointer;
cursor: hand;
width: 10%;
}
.nav-menu li:nth-child(2) {
width: 13%;
}
.nav-menu li:nth-child(3) {
width: 20%;
}
.nav-menu li:nth-child(4) {
width: 23%;
}
.nav-menu li:nth-child(5) {
width: 14%;
}
.nav-menu li:last-child {
width: 20%;
}
.nav-menu li img{
vertical-align: bottom;
}

.nav-menu li a {
color: #333;
display: block;
font-size: 16px;
text-decoration: none;
margin: 0;
padding: 20px 0;
line-height: 130%;
}
.nav-menu li:nth-child(4) a,
.nav-menu li:nth-child(5) a {
padding: 10px 0;
height:50px;
}

.nav-menu li:hover > a,
.nav-menu li a:hover {
color: #999;
}

.nav-menu .sub-menu {
background-color: rgba(255,255,255,0);
display:none;
position: absolute;
z-index: 99999;
padding: 0 0 0 0;
}

.nav-menu .children {
background-color: rgba(255,255,255,0);
display:none;
position: absolute;
z-index: 99999;
padding: 0 0 0 0;
left: 218px;
top: 0;
}

.nav-menu .sub-menu li {
background-color: rgba(0,147,124,0.9);
width: 218px;
padding: 0;
margin: 0;
border-left: none;
}
.nav-menu .children li {
background-color: rgba(255,206,56,0.9);
width: 218px;
padding: 0;
margin: 0;
border-left: none;
}

.nav-menu .sub-menu li a {
color: #fff;
display: block;
font-size: 15px;
text-decoration: none;
padding: 20px 0 20px 15px;
text-align: left;
width: 203px;
border-bottom: none;
height:20px;
}

.nav-menu .sub-menu ul {
}

ul.nav-menu ul a,
.nav-menu ul ul a {
color: #fff;
margin: 0;
}

ul.nav-menu ul a:hover,
.nav-menu ul ul a:hover {
background-color: rgba(255,255,255,0.8);
color: #000;
}

ul.nav-menu li:hover > ul,
.nav-menu ul li:hover > ul {
display: block;
}

.nav-menu .current_page_item > a,
.nav-menu .current_page_ancestor > a,
.nav-menu .current-menu-item > a,
.nav-menu .current-menu-ancestor > a {
}


/* ************************************************ 
*	メインイメージ
* ************************************************ */	
.main-img {
margin: 140px 0 0 0;
padding: 0;
width: 100%;
}
.main-img img{
width: 100%;
vertical-align: bottom;
}


/* ************************************************ 
*	各ブロックタイトル
* ************************************************ */	
.pagetitle-box {
margin: 0 auto;
padding: 0 0 50px 0;
text-align:center;
}
.pagetitle {
margin: 0 auto 0 auto;
padding: 0 0 0 0;
font-size: 55px;
text-align:center;
font-weight:700;
letter-spacing: 0.05em;
}
.pagetitle-en {
margin: 0 auto 0 auto;
padding: 0 0 10px 0;
font-size: 24px;
text-align:center;
font-weight:700;
letter-spacing: 0.05em;
}


/* ************************************************ 
*	パンくずリスト
* ************************************************ */	
.breadcrumbs {
margin: auto; 
padding: 20px 0;
text-align:left;
font-size: 90%;
overflow: hidden;
color: #333;
}
.breadcrumbs a{
color: #333;
transition: 0.5s;
-webkit-transition: 0.5s;
-moz-transition: 0.5s;
-o-transition: 0.5s;
-ms-transition: 0.5s;
}
.breadcrumbs a:hover{
color: #000;
text-decoration: underline;
}


/* ************************************************ 
*	メイン（本文）コンテンツ
* ************************************************ */	
#main {
margin:0 0 0 0;
padding: 0 0 0 0;
word-break:break-all;
}

.clear	{ clear: both; } 
.mT10	{ margin-top:10px; }
.mT20	{ margin-top:20px; }
.mT30	{ margin-top:30px; }
.mT40	{ margin-top:40px; }
.mB10	{ margin-bottom:10px; }
.mB20	{ margin-bottom:20px; }

.imgcenter{
text-align:center;
margin: 0 auto;
padding: 0;
}
.imgcenter img {
  vertical-align: bottom;
}
.htext{
text-align:center;
}

/* 記事部分 */	
p {
padding: 0;
line-height: 200%;
}

p a {
color:#ec817f;
text-decoration:underline;
transition: 0.5s;
-webkit-transition: 0.5s;
-moz-transition: 0.5s;
-o-transition: 0.5s;
-ms-transition: 0.5s;
}

p a:hover {
color:#000;
text-decoration:none;
}

p a:active, a:focus {
outline: 0;
}


/* フォント */	
.mincho {
font-family:'century','Times New Roman','Baskerville','Optima','Palatino','Georgia','ヒラギノ明朝 Pro W3','Hiragino Mincho Pro','HGS明朝E','ＭＳ Ｐ明朝','MS PMincho',serif;
}

.bold {
font-weight: bolder;
}

.italic {
font-style: italic; 
}
.dllink {
margin: 10px auto 5px auto;
padding: 0;
background-color:#1462be;
text-align:center;
width: 40%;
}
.dllink a{
color: #fff;
display: block;
padding: 10px 0px;
font-size:18px;
line-height: 210%;
}
.dllink a:hover{
color: #fff;
background-color:#03335d;
}


/* ************************************************ 
*	お知らせ
* ************************************************ */
.topnews-box {
margin: 0;
padding: 100px 0;
background-color:#fff5e5;
}
.inner-box { 
width:calc(100% - 160px);
margin: 0;
padding: 40px 80px 80px 80px;
background-color: #fff;
border-radius: 10px; /* CSS3 */
 -webkit-border-radius: 10px; /* Firefox */
 -moz-border-radius: 10px; /* Safari,Chrome */
}
table#topnewsbox {
width: 100%;
margin: 0px 0 45px 0;
padding: 0 0 0 0;
border-collapse: collapse;
border-spacing: 0;
}
table#topnewsbox th {
font-family: 'Roboto';
font-weight: normal;
text-align: left;
padding: 20px 10px;
white-space: nowrap; 
border-bottom: 1px #999 solid;
width:10%;
}
table#topnewsbox td {
text-align: left;
padding: 20px 10px;
white-space: normal;
vertical-align: middle;
border-bottom: 1px #999 solid;
}
table#topnewsbox td a{ color: #333; }
table#topnewsbox td a:hover{
color: #000;
text-decoration: underline;
}

.newslink {
margin: 10px auto 5px auto;
padding: 0;
background-color:#fff;
border: 1px solid #333;
text-align:center;
width: 30%;
border-radius: 50vh; /* CSS3 */
 -webkit-border-radius: 50vh; /* Firefox */
 -moz-border-radius: 50vh; /* Safari,Chrome */
}
.newslink a{
color: #333;
display: block;
padding: 12px 0px 10px 0px;
}
.newslink a:hover{
color: #fff;
background-color:#333;
border-radius: 50vh; /* CSS3 */
 -webkit-border-radius: 50vh; /* Firefox */
 -moz-border-radius: 50vh; /* Safari,Chrome */
}


/* ************************************************ 
*	トップバナーブロック
* ************************************************ */
.topbn-box {
margin: 0;
padding: 100px 0;
position: relative;
z-index:99;
-moz-box-shadow: 0px 3px 2px rgba(0,0,0,0.1);
-webkit-box-shadow: 0px 3px 2px rgba(0,0,0,0.1);
-o-box-shadow: 0px 3px 2px rgba(0,0,0,0.1);
-ms-box-shadow: 0px 3px 2px rgba(0,0,0,0.1);
box-shadow: 0px 3px 2px rgba(0,0,0,0.1);
}
.topbn-box-about,
.topbn-box-dwat,
.topbn-box-manual,
.topbn-box-info{
margin: 0;
padding: 0;
position: relative;
z-index:0;
height: 500px;
overflow: hidden;
}
.topbn-box-about a:before,
.topbn-box-manual a:before {
content: "";
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background:rgba(0,147,124,0.4);
transition: 0.5s;
-webkit-transition: 0.5s;
-moz-transition: 0.5s;
-o-transition: 0.5s;
-ms-transition: 0.5s;
}
.topbn-box-dwat a:before,
.topbn-box-info a:before {
content: "";
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background:rgba(0,0,0,0.4);
transition: 0.5s;
-webkit-transition: 0.5s;
-moz-transition: 0.5s;
-o-transition: 0.5s;
-ms-transition: 0.5s;
}
.topbn-box-about a:hover:before,
.topbn-box-dwat a:hover:before,
.topbn-box-manual a:hover:before,
.topbn-box-info a:hover:before {
background-color: rgba(255,255,255,0);
}

.topcategory-title {
font-weight:500;
letter-spacing: 0.05em;
padding: 0;
margin: 0;
color: #fff;
text-align:center;
border-bottom:none;
width:100%;
position: absolute;
left: 50%;
-webkit-transform: translate(-50%,-50%);
-moz-transform: translate(-50%,-50%);
-ms-transform: translate(-50%,-50%);
-o-transform: translate(-50%,-50%);
transform: translate(-50%,-50%);
z-index:999;
}
.topcategory-title {
font-size: 140%;
top: 50%;
}

.topbn-box-btn{
margin: 0;
padding: 0;
text-align: center;
}
.topbn-box-btn a {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  margin: 0 0 0 0;
  padding: 0;
  height: 200px;
  text-decoration: none;
  color: #333;
  font-size: 155%;
  font-family: 'Noto Sans JP';
  font-weight: 500;
background-color: #d9efeb;
border-radius: 10px;
}
.topbn-box-btn a:hover{
color: #fff;
background-color:#66beb0;
}


/* ************************************************ 
*	フッターエリア
* ************************************************ */	
#footer {
clear:both;
width:100%;
font-size: 100%;
margin: 0px auto 0px auto;
padding: 0px 0px 0px 0px;
background-color:#efefef;
}

.footer-inner {
margin: 0px auto 0px auto;
padding: 50px 0px 50px 0px;
max-width: 1160px;
_width: 1160px;
}

.footer-navbox {
margin: 0;
padding: 0;
width:63%;
float: left;
}
.footer-navbox2 {
margin: 0 0 0 5%;
padding: 0;
width:32%;
float: left;
}
#footer ul li {
    margin: 0 0 10px 0;
    padding: 0 0 0 0;
}
#footer ul li a{
color:#333;
}
#footer ul li a:hover{
color:#000;
text-decoration: underline;
}

.footer-logo {
margin: 0 0 0 0;
padding: 0 0 0 0;
text-align: left;
font-size: 120%;
line-height: 170%;
}
.footer-logo img{ width: 123px; }

.name-box {
margin: 30px 0 0 0;
padding: 0 0 0 0;
}
.name {
font-size: 110%;
margin: 0 0 5px 0;
padding: 0 0 0 0;
font-weight: bold;
}
.add {
margin: 0 0 0 0;
padding: 0 0 0 0;
line-height: 180%;
}
.footer-end-top {
margin: 0 auto;
padding: 0;
border: 1px solid #333;
width: 60px;
}
.copyright {
margin: 0px auto 0px auto;
padding: 30px 0;
text-align:center;
font-size: 80%;
width: 960px;
}


/* ************************************************ 
*	ライン
* ************************************************ */
.line-dotted {
margin: 0 0 0 0;
padding: 0 0 0 0;
border-bottom:1px dotted #CCC;
}

.line-solid {
margin: 0 0 0 0;
padding: 0 0 0 0;
border-bottom:1px solid #CCC;
}


/* ************************************************ 
*	画像装飾
* ************************************************ */
.pict_right {
margin:0 0 10px 20px; 
padding: 2px 2px 2px 2px; 
float: right;
border: 1px solid #DCDCDC;
}

.pict_left {
margin:0 10px 10px 0; 
padding: 2px 2px 2px 2px; 
float: left;
border: 1px solid #DCDCDC;
}

.pict1px{
margin: 0 0 5px 0; 
padding: 2px 2px 2px 2px; 
border: 1px solid #CCC;
}

.pict_shadow{
background: #fff;
margin: 0px auto;
border: 1px solid #ccc;
padding: 5px 5px 5px 5px;
border-radius: 1px; /* CSS3 */
 -webkit-border-radius: 1px; /* Firefox */
 -moz-border-radius: 1px; /* Safari,Chrome */
box-shadow: 2px 2px 3px #C0C0C0;
}



/* ************************************************ 
*	角丸
* ************************************************ */
.border-radius{
border-radius: 5px; /* CSS3 */
 -webkit-border-radius: 5px; /* Firefox */
 -moz-border-radius: 5px; /* Safari,Chrome */
}



/* ************************************************ 
*	ボックスシャドウ・テキストシャドウ
* ************************************************ */
.box-shadow{
box-shadow: 2px 2px 3px #ccc; /* CSS3 */
 -webkit-box-shadow: 2px 2px 3px #ccc; /* Safari,Chrome */
 -moz-box-shadow: 2px 2px 3px #ccc; /* Firefox */
}
.text-shadow{
text-shadow: 1px 1px 3px #DEDEDE; /* CSS3 */
 -webkit-text-shadow: 1px 1px 3px #DEDEDE; /* Safari,Chrome */
 -moz-text-shadow: 1px 1px 3px #DEDEDE; /* Firefox */
}



/* ************************************************ 
*	CSS3ボタン
* ************************************************ */
.bt-more a {
font-size: 9px;
font-weight: normal;
color: #333;
text-align: center;
text-decoration: none;
text-shadow: 0px -1px 0px #fff;
width: 50px;
float: left;
display: block;
padding: 0 0 0 0;
margin: 10px 0 0 0;
border: 1px solid #ccc;
border-radius: 5px;
 -webkit-border-radius: 5px;
 -moz-border-radius: 5px;
background-color: #eee;
background: -webkit-gradient(linear,left top,left bottom,color-stop(0, #ddd),color-stop(.75, #eee),color-stop(1, #ddd));
background: -moz-linear-gradient(#ddd, #eee 75%, #ddd);
}

.bt-more a:hover {
background-color: #fff;
background: -webkit-gradient(linear,left top,left bottom,color-stop(0, #eee),color-stop(.75, #fff),color-stop(1, #eee));
background: -moz-linear-gradient(#eee, #fff 75%, #eee);
}

.bt-more a:active {
background-color: #999;
background: -webkit-gradient(linear,left top,left bottom,color-stop(0, #999),color-stop(.75, #ccc),color-stop(1, #999));
background: -moz-linear-gradient(#999, #ccc 75%, #999);
}

.bt-order a{
font-size: 14px;
color:#fff;
display: block;
text-align:center;
background-color: #999;
margin: 20px 0 20px 0 ;
padding: 10px 15px;
border-radius: 3px;
 -webkit-border-radius: 3px;
 -moz-border-radius: 3px;
}

.bt-order a:hover{
color:#867888;
background: #ddd;
text-decoration:none;
transition: 0.5s;
-webkit-transition: 0.5s;
-moz-transition: 0.5s;
-o-transition: 0.5s;
-ms-transition: 0.5s;
}




/* ************************************************ 
*   レスポンシブ
* ************************************************ */
/* PC 画面の横幅が960px以上 */
@media only screen and (min-width: 960px){
#news{
margin: -120px 0 0 0;
padding-top:120px;
}
 iframe {
    width: 100%;
    height:100%;
}
.show_tb { display: none; }
.show_sp { display: none; }
}

/* Tablet (Portrait) 画面の横幅が768px〜959pxまで */
@media only screen and (min-width: 768px) and (max-width: 959px) {
#news{
margin: -110px 0 0 0;
padding-top:110px;
}
.wrapper { width: 728px;}
#header { height: 115px; }
#header h1 { margin: 30px 0 0 0; }
.logo { padding: 0 0 0 20px; }
.logo img { width: 250px; }
.header-contactbox { width: 17%; }
.header-searchbox {
    margin: 0 2% 0 0;
    width: 25%;
}
.header-txtsize {
    margin: 5px 2% 0 0;
    width: 29%;
}
.header-txtsize p,
.header-txtcolor p { font-size: 11px; margin: 0 0 0 0;}
.header-txtsize input[type="image"] { width: 27%; }

.header-txtcolor {
    margin: 5px 0 0 0;
    width: 25%;
}
.header-txtcolor input[type="image"] { width: 15%; }

#nav_bg { margin: 5px 0 0 0; }
.nav-menu li a {
font-size: 12px;
}
.nav-menu li:hover > a,
.nav-menu li a:hover {
}


.nav-menu .sub-menu li a {
font-size: 13px;
padding: 15px 0 15px 15px;
}
.nav-menu .children {
display:block;
position: relative;
left: 0px;
top: 0;
}
.nav-menu .children li a {
padding: 20px 0 20px 25px;
}

.main-img { margin: 115px 0 0 0; }

.pagetitle-box { padding: 0 0 30px 0; }
.pagetitle { font-size: 36px; }
.pagetitle-en { font-size: 21px; }

.topnews-box { padding: 50px 0; }
.inner-box { 
width:calc(100% - 80px);
padding: 20px 40px 50px 40px;
}

.newslink { width: 40%;}
.newslink a{ font-size:16px; }

.topbn-box { padding: 50px 0; }
.topbn-box-about,
.topbn-box-dwat,
.topbn-box-manual,
.topbn-box-info {
    height: 310px;
}
.topcategory-title { font-size: 95%; }
.topbn-box-btn a { font-size: 95%; height: 120px; line-height: 150%;}

.footer-inner { width: 728px;}
.footer-logo { font-size: 105%; }
.add { font-size: 95%; }
#footer ul li a { font-size: 90%; }
iframe { width: 100%; height:100%; max-width: 728px; }
.copyright { width: 728px;}
.show_sp { display: none; }
}


/* Mobile (Portrait) 画面の横幅が767pxまで */
@media only screen and (max-width: 767px) {
#news{
margin: 0 0 0 0;
padding-top:0;
}
.wrapper { width: 90%; margin: 15px auto 0px auto; padding: 0px 0px 0px 0px;}
.contents-wrapper { padding: 30px 0 0 0; }
.contents-box { padding: 0 0 50px 0; }
#header {
padding: 10px 0 0 0;
position: relative;
height: auto;
-moz-box-shadow: none;
-webkit-box-shadow: none;
-o-box-shadow: none;
-ms-box-shadow: none;
box-shadow: none;
}
.header-inner {
position: static;
padding: 0 0 0 0;
}
.header-rightbox {
width: calc(100% - 30px);
margin: 55px auto 0 auto;
padding: 15px;
height:95px;
overflow: hidden;
float: left;
}
#header h1 {
    margin: 5px 0 0 0;
}

.logo {
    width: 75%;
	font-size: 6.5vw;
	float: none;
	text-align:left;
	margin: 0px auto 0px auto;
	padding: 0px 0px 0px 0px;
	position: absolute;
	top: 7px;
	left: 15px;
	z-index:999999;
}

.logo img {
    width: 85%;
}

.header-contactbox {
    margin: 0 0 0 0;
    width: 25%;
position: absolute;
bottom:20%;
left:5px;
}
.header-searchbox {
    margin: 10px 0 0 0;
    width: 100%;
}

.header-txtsize {
	margin: 0 0 0 25%;
	width:40%;
text-align: center;
}
.header-txtcolor {
	margin: 0 0 0 2%;
	width:33%;
text-align: center;
}
.header-txtsize input[type="image"] {
width: 45%;
height: auto;
}
.header-txtcolor input[type="image"] {
width: 28%;
height: auto;
}
.header-txtsize p,
.header-txtcolor p{
float: none;
}
.btn_fontsize,
.btn_bgcolor {
margin: 5px 0 0 0;
}


#nav_bg {
	padding: 0px 0px 0px 0px;
	margin:0 0 0 0;
position: absolute;
top:0;
left:0;
border-bottom: none;
}
/* 上部固定用 */
#nav_bg.active{
position: absolute;
top:0;
left:0;
}
/* 上部固定用ここまで */

.nav { float: none; text-align:center; width: 100%; padding: 0; }
.nav-menu li {
display: inline-block;
position: relative;
font-weight: 500;
margin: 0 0;
padding: 0;
  width: 100%;
  z-index:99999;
  text-align: left;
}
.nav-menu li a,
.nav-menu li:last-child a {
color: #fff;
display: block;
font-size: 16px;
text-decoration: none;
border-bottom: none;
}
.nav-menu li:hover > a,
.nav-menu li a:hover {
color: #333;
background-color: #fff!important;
border-bottom: none;
}

.mean-container .mean-nav ul li.twoline a {
    padding: 0.75em 5%;
}
.mean-container .mean-nav ul li.twoline ul li a {
    padding: 1.25em 10%;
}

.nav-menu .sub-menu {
display: block;
padding: 0;
position: relative;
z-index: 99999;
}
.nav-menu .sub-menu li {
width: 100%;
background-color: #fff;
}
.nav-menu .sub-menu li a,
.nav-menu .children li a {
color: #333;
background-color: #fff;
font-size: 16px;
border-bottom: none;
}
.nav-menu .sub-menu li a:hover {
color: #fff;
}

.nav-menu .children {
display: block;
padding: 0;
position: relative;
z-index: 99999;
left: 0;
top: 0;
}

.main-img { margin: 0 0 0 0; }

.pagetitle-box { padding: 0 0 30px 0; }
.pagetitle { font-size: 8vw; }
.pagetitle-en { font-size: 5vw; padding: 0 0 5px 0;}

.topnews-box { padding: 30px 0 50px 0;}
.inner-box { 
width:calc(100% - 40px);
padding: 10px 20px 30px 20px;
}
table#topnewsbox {
width: 100%;
margin: 0 0 45px 0;
}
table#topnewsbox th {
display:block;
width: 100%;
padding: 15px 0 5px 0;
border-bottom: none;
}
table#topnewsbox td {
display:block;
width: 100%;
padding: 0px 0 15px 0;
}

.newslink { width: calc(100% - 2px);}


.topbn-box { padding: 50px 0; }
.topbn-box-about,
.topbn-box-dwat,
.topbn-box-manual,
.topbn-box-info {
    height: auto;
}
.topcategory-title { font-size: 6vw; }
.topbn-box-btn a { font-size: 5.5vw;  height: 150px; margin: 0 0 20px 0; }

.footer-inner {
    margin: auto;
    padding: 50px 0;
    width: 90%;
}
.footer-logo { font-size: 5vw; }
.name-box { margin: 30px 0 0 0 ; }
.add { font-size: 4.5vw; }

.footer-navbox {
margin: 50px 0 0 0;
width:100%;
}
.footer-navbox2 {
margin: 0;
width:100%;
}
#footer ul li a { font-size: 4.5vw; }

.breadcrumbs { display: none; }
iframe { width: 100%; height:100%; }
.copyright {
width:100%;
}
.width20{width: 40%!important;}
.show_pc { display: none; }
}
