@charset "utf-8";
/* =Reset default browser CSS.
Based on work by Eric Meyer:http://meyerweb.com/eric/tools/css/reset/index.html
============================================================================
============================================================================ */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
	border: 0;
	font-family: inherit;
	font-size: 100%;
	font-style: inherit;
	font-weight: inherit;
	margin: 0;
	outline: 0;
	padding: 0;
	vertical-align: baseline;
}
:focus {
	outline: 0;
}
ol, ul {
	list-style: none;
}
table {
	border-collapse: separate;
	border-spacing: 0;
}
caption, th, td {
	font-weight: normal;
	text-align: left;
}

a img {
	border: 0;
}
figure {
	margin: 0
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display: block;
}
/* ============================================================================
============================================================================ */
body {
	color: #555;
	font: 14px verdana, "ヒラギノ丸ゴ ProN W4", "Hiragino Maru Gothic ProN", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
	font-family:"Font Awesome 5 Free","Font Awesome 5 Brands";
	line-height: 1.6;
	background: #fff;
	-webkit-text-size-adjust: 100%;
}

/* ------------------------------------------------------------
　リンク設定
------------------------------------------------------------*/
a {
	color: #555;
	text-decoration: none;
}
a:hover {
	color: #429bef;
}
a:active, a:focus {
	outline: 0;
}

/* ------------------------------------------------------------
　全体
------------------------------------------------------------*/
#wrapper {
	margin: 0 auto;
	padding: 0 1%;
	width: 98%;
	position: relative;
}
.inner {
	margin: 0 auto;
	width: 100%;
}


/****************************************************
/* ヘッダー
****************************************************/

#header {
	z-index: 100;
	margin: 30px 0 0;
}

#header:after {
	content: "";
	display: block;
	clear: both;
}

/*****************************************************
/* G3ロゴ
******************************************************/

#header .logo {
	float: left;
	padding: 10px 0 0 50px;
}


/****************************************************
/* グリッド
*****************************************************/

/* グリッド全体 */
.gridWrapper {	
	clear: both;
	display: block;
	width: 1200px;
	padding-bottom: 20px;
	overflow: hidden;
	margin:0;
}

#wrapper, .inner {
	width: 1200px;
	padding: 0;
}

/* 各ページ共通H1タイトル */
.gridWrapper h1{
	color: #231815;
	font-size:30px;
	letter-spacing:5px;
	margin:0 0 20px 0;
	padding:10px;
	border-top:solid 2px #888;
	border-bottom:solid 2px #888;
}
.gridWrapper h1 span{
	display: inline-block;
	padding-right: 20px;
	line-height: 1;
	border-right: 2px solid #231815;
}
.gridWrapper h1 span:first-letter{
	color: #E64D1E;
}

.gridWrapper h1 em{
	color: #E64D1E;
}

/* 各ページ共通H2タイトル */
.gridWrapper h2{
	clear:both;
	font-size:22px;
	font-weight:bold;
	margin:0;
	padding: 10px 0 10px 10px;
	border-left:#E64D1E 3px solid;
}

.gridWrapper h2 em{
	color: #E64D1E;
}
.gridWrapper .newsList li h2::after{
	 content: '\f061';
	font-weight: 900;
	display: block;
    float: right;
}

/* 各ページ共通H3タイトル */

.gridWrapper h3{
	clear:both;
	 font-size:20px;
	 margin:30px 0 20px 20px;
	 padding-left:10px;
	 font-weight:700;
	 border-left:#888 solid 3px;
	 border-bottom:#888 dotted 1px;
}

/* トップページ2カラム */


/* 左カラム */

.gridLeft {
	width: 300px;
	display:block;
	float: right;
	margin:0;
	padding:0;
}

/* 右カラム */

.gridRight {
	width: 900px;
	display: block;
	float: right;
	padding:30px 0 0 0;
}


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

/* メインイメージ　------------------ */

#mainBanner {
	margin: 0 auto;
	padding: 0;
	width: 100%;
	line-height: 0;
}
#mainBanner .inner {
	position: relative;
}
#mainBanner img {
	max-width: 100%;
	height: auto;
}

/* トップ Line Up バナーエリア all　------------------ */

#lineUpBanner{
	padding-top: 30px;
}

.bannerList{
	overflow: hidden;
}
.bannerList li{
	float: left;
	width: 25%;
}

.bannerList li a{
	display: block;
}

.bannerList li img{
	vertical-align:bottom;
}

/* ニュース　------------------ */

ul.newsList {
	width: 100%;
}

ul.newsList li {
	position: relative;
	padding: 10px;
	margin: 10px 0;
	overflow:hidden;
}

ul.newsList li a.newsLink {
	position: absolute;
    width: 100%;
    height: 100%;
    top:0;
    left: 0;
	display:block;
	text-indent:9999px;/*テキスト非表示*/
	white-space:nowrap;/*テキスト非表示*/
	overflow: hidden;/*テキスト非表示*/
}

ul.newsList li:hover {
	color: #429bef;
	background: #eee;
	cursor: pointer;
}

ul.newsList li h2 {
	font-size: 16px;
	font-weight: bold;
	padding:5px 10px;
	margin-bottom: 10px;
	border-left:#E64D1E 3px solid;
	border-top:solid 1px #ccc;
	border-bottom:solid 1px #ccc;
}

ul.newsList li img {
  float: left;
  margin: 0 15px 10px 0 ;
}
 
ul.newsList li p{
	font-size: 13px;
	line-height: 1.4;
}


ul.newsList li em{
	color: #E64D1E;
	font-size:15px;
}


ul.newsList li p.newsDate{
	text-align:right;
}


ul.newsList li.newsNoRes {
	pointer-events: none;/* マウスをかざしても反応しない */
}



/****************************************************
/*サイトマップ、企業情報
****************************************************/


/* サイトマップ、企業情報ページのレイアウト用BOX（左を180px空ける）　------------------ */

.post{
	margin-left:180px;
}

/*　サイトマップ　------------------　*/

.post dl {
	margin: 0 0 10px 10px;
}
.post dt {
	display: list-item;
	list-style-type:square;
	margin: 0 0 5px 15px;
}

.post dd {
	margin: 0 0 10px 30px;
}


/*　企業情報　------------------　*/

.post table {
	width:60%;
	border-collapse: collapse;
	margin: 10px 0 20px;
}
.post table th, .post table td {
	padding: 12px;
	border: 1px solid #ccc;
}
.post table th {
	text-align: center;
	font-weight: bold;
	letter-spacing: 1px;
	white-space: nowrap;
	background: #eee;
}


/****************************************************
/*ニュース詳細ページ（商品紹介）
****************************************************/


/* ディティール画像（左カラム）　------------------ */

.detailImg{
	display:block;
	float:left;
	width:400px;
	margin:0 20px 20px 0;
	}

/* メイン画像　------------------ */

.mainImg,.mainImg li {
  margin: 0;
  padding: 0;
  list-style: none;
}

.mainImg {
	width:100%;
	margin-bottom: 5px;
}

.mainImg li {
  width: auto;
}

.mainImg li img{
    width:auto;
    height:auto;
    max-width:100%;
    max-height:100%;
}

.mainImg li.mainImg2,.mainImg li.mainImg3,.mainImg li.mainImg4,.mainImg li.mainImg5,.mainImg li.mainImg6,.mainImg li.mainImg7,.mainImg li.mainImg8,.mainImg li.mainImg9,.mainImg li.mainImg10,.mainImg li.mainImg11,.mainImg li.mainImg12  {
  display: none;
}

.mainImg li:hover img {
  opacity: 0.8;
  filter: alpha(opacity=80);
  -ms-filter: "alpha(opacity=80)";
}


/* Lightboxの枠の調整　------------------ */

#lightbox .lb-container { padding: 0px; }　/* ←メイン画像をクリックして拡大画像を表示した時、写真の周りに表示される白い枠を非表示にしてます */


/* サムネイル画像　------------------ */

.thumb{
	width:100%;
	font-size:0;/*　画像をリストで横並びにした時にできる隙間を消す為　*/
}

.thumb,.thumb li {
  margin: 0;
  padding: 0;
  list-style: none;
}

.thumb li {
	display:inline-block;
	cursor: pointer;
}

.thumb li img {
	margin:3px;
}

.thumb li:hover img {
  opacity: 0.8;
  filter: alpha(opacity=80);
  -ms-filter: "alpha(opacity=80)";
}




/* 説明１（右カラム）　------------------ */

.description1{
	display:block;
	float:left;
	width:740px;
	margin: 0;
	padding: 0 20px;
	word-wrap: break-word;
}

.description1 ul.detail{
	margin:10px 0 10px 0;
}

.description1 ul.detail li{
	margin:10px 0 10px 0;
}

.description1 p{
	 padding:15px 0;
}

.description1 em{
	font-size:16px;
	 font-weight:700;
	 color:#009;
	 padding:3px;
}

.btn{
	display:block;
	width:300px;
	text-align:center;
  -webkit-border-radius: 10;
  -moz-border-radius: 10;
  border-radius: 10px;
  font-family: Arial;
  color: #ffffff;
  font-size: 16px;
  background:#F00;
  padding: 10px 50px 10px 50px;
  text-decoration: none;
  margin:20px 0 20px 50px;
  font-weight:700;
}

.btn2{
	display:block;
	width:300px;
	text-align:center;
  -webkit-border-radius: 10;
  -moz-border-radius: 10;
  border-radius: 10px;
  font-family: Arial;
  color: #FFFFFF;
  font-size: 16px;
  background:#AAA;
  padding: 10px 50px 10px 50px;
  text-decoration: none;
  margin:20px 0 20px 50px;
  font-weight:700;
}



/* 説明２（下カラム）　------------------ */

.description2{
	clear:both;
	margin-bottom:30px;
	padding:10px;
	word-wrap: break-word;
}

.description2 p{
	width:80%;
	margin: 0 auto;
	padding:10px 0;
}

.description2 p em{
	font-size:16px;
	 font-weight:700;
	 color:#f00;
	 padding:3px;
}

.description2 figure{
	margin-left:30px;
	margin-bottom:20px;
	float:right;
}

.description2 figcaption{
	text-align:right;
}

.description2 figure img{
	max-width:100%;
	margin:5px;
}

.description2 figure:after {
  content: '';
  display:block;
  clear: both;
}

.description2 aside{
	width:80%;
	margin:20px auto 0;
	padding:10px 20px 10px 20px;
	background-color:#FAFAFA;
}

.description2 aside p{
	margin: 0;
	padding:10px 0;
}

.description2 aside figure{
	float:right;
	margin:20px 10px;
}

.description2 aside figure img{
	max-width:100%;
}

.description2 aside:after {
  content: '';
  display:block;
  clear: both;
}

.description2 h4{
	font-size:16px;
	font-weight:700;
}

/* 記事目次 　------------------　*/

#mokuji ul {

}

#mokuji li {
	padding-left: 2em;
    text-indent: -2em;
	padding-top:5px;
	padding-bottom:5px;
	margin:5px 20px;
	background-color:#eee;
}

/****************************************************
/*LINE UP（商品一覧）
****************************************************/

ul.lineUp{
	margin:20px 0 50px 100px;
}

ul.lineUp li{
	width:600px;
	position: relative;
	padding:10px;
}

ul.lineUp li h2{
	font-size:18px;
}

ul.lineUp li img{
	max-width:100%;
	margin:auto;
}

ul.lineUp li a{
	position: absolute;
	display:block;
    width: 100%;
    height: 100%;
    top:0;
    left: 0;
	text-indent:9999px;/*テキスト非表示*/
	white-space:nowrap;/*テキスト非表示*/
	overflow: hidden;/*テキスト非表示*/
}

ul.lineUp li:hover {
	color: #429bef;
	background: #eee;
	cursor: pointer;
}

ul.lineUp li p{
	font-size:16px;
	text-align:center;
}



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

/*　記事目次に戻るボタン　------------------　*/

.scroll_up {
    display: none;
    position: fixed;
    bottom: 10px;
    right: 10px;
}
.scroll_up a {
    display: block;
	filter:alpha(opacity=50);
    -moz-opacity: 0.5;
    opacity: 0.5;
}
.scroll_up a:hover {
    display: block;
	filter:alpha(opacity=50);
    -moz-opacity: 0.5;
    opacity: 0.5;
}


#footer {
	clear: both;
	width:1200px;
	margin:auto;
	padding: 20px 0;
	overflow: hidden;
	text-align:center;
	border-top:solid 2px #888;
}

#footer .copyright {
	font-size: 11px;
}






/*　****************************************************************************
********************************************************************************
　PC用　1200px over↑
********************************************************************************
*********************************************************************************/
@media only screen and (min-width:1200px) {

/* トップナビゲーション　------------------ */
nav div.panel {
	display: block !important;
}
a#menu {
	display: none;
}
#topnav {
	float: right;
	margin-top: 100px;
}
#topnav li {
	float: left;
	margin: 0px;
	position: relative;
	width: 180px;
	border-left: solid 1px #999;
}
#topnav a {
	color: #333;
	font-size: 12px;
	font-weight: bold;
	display: block;
	padding: 0 10px 30px;
}
#topnav span {
	font-size: 10px;
	font-weight: normal;
	color: #a5a5a5;
}
#topnav li.current-menu-item a, #topnav a:hover {
	background: #f5f5f5;
}

#topnav ul {
	width: 180px;
	display: none;
}

#topnav li:hover ul {
	display: block;
	position: absolute;
	top: 68px;
	left: -1px;
	z-index: 500;
}
#topnav li li {
	margin: 0;
	float: none;
	width: 180px;
	text-align: left;
	background: #f4f4f4;
	border-bottom: 1px dashed #e8e8e8;
}
#topnav li li a {
	padding: 10px;
	border: 0;
}

#topnav li.current-menu-item li a, #topnav li li a {
	border-bottom-width: 1px;
}

#topnav li li.current-menu-item a, #topnav li li a:hover {
	border-bottom-width: 3px;
	background: #eee;
}

/* トップ Line Up バナーエリア　PC ------------------ */

.bannerList li{
	position: relative;
	box-sizing: border-box;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
}

.bannerList li:nth-child(4n){
	border-right: none;
}

.bannerList li:nth-child(4n+1){
	clear: both;
}

.bannerList li p{
	display: none;
}

.bannerList li:hover p{
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform : translate(-50%,-50%);
	background-color: rgba(230,77,30, 0.8);
	/*background: linear-gradient(to bottom, rgba(232, 130, 130, 0.9), rgba(239, 216, 138, 0.9));　上から下のグラデーション*/
}

.bannerList li:hover p span{
	font-size: 18px;
	font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
	color: #fff;
	text-align: center;
	display: block;
	width: 90%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform : translate(-50%,-50%);
}

}
/*　****************************************************************************
********************************************************************************
　タブレット用　1199px under ↓
********************************************************************************
*********************************************************************************/
 @media only screen and (max-width:1199px)  {

* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

/* トップ Line Up バナーエリア　 タブレット------------------ */

.bannerList {
	padding: 0 5px;
}

.bannerList li img{
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
}
	 
.bannerList li:nth-child(4n) img{
	border-right: none;
}

.bannerList li:nth-child(4n+1){
	clear: both;
}

.bannerList li  p{
	text-align: center;
	width: 90%;
	margin: 0 auto;
	font-size: 13px;
	color: #555;
}

.bannerList li  p span{
}

/* グリッド全体　width可変、上マージン狭　------------------ */


#wrapper {
	margin: 0 auto;
}

#wrapper, .inner {
	width: 100%;
}

/* ヘッダー */

#header {
	margin: 10px 0 0;
}


.gridWrapper {
	width: 100%;
}

/* 各ページ共通H3タイトル　------------------ */

.gridWrapper h3{
	 margin:20px 0 10px;/* 左マージン無し */
	 font-size:18px;
}

	 
/* トップページ左カラム　width可変、フロート解除　------------------ */

.gridLeft {
	width: auto;
	float: none;
	background-color:#eee;
	text-align:center;
	padding-top:20px;
}

/* トップページ右カラム　width可変、フロート解除　------------------ */

.gridRight {
	width: auto;
	float: none;
}

/* ニュース詳細ページ左カラム　width変更　------------------ */

.detailImg {
	display:block;
	float:left;
	width:350px;
	margin:0 20px 20px 0;
}

/* ニュース詳細ページ右カラム　width変更　------------------ */

.description1 {
	display:block;
	float:left;
	width:100%;
	max-width:400px;
	margin: 0;
	padding: 0;
}


/* G3ロゴ　------------------ */

#header .logo {
	clear:both;
	padding: 0 10px;
}

#header .logo img{
	width:60%;
}


/* トップナビゲーション　------------------ */
nav#mainNav {
	clear: both;
	width: 100%;
	margin: 0 auto;
	padding: 0;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(1, #f4f4f4), color-stop(0.00, #f4f4f4));
	background: -webkit-linear-gradient(top, #f4f4f4 0%, #f4f4f4 100%);
	background: -moz-linear-gradient(top, #f4f4f4 0%, #f4f4f4 100%);
	background: -o-linear-gradient(top, #f4f4f4 0%, #f4f4f4 100%);
	background: -ms-linear-gradient(top, #f4f4f4 0%, #f4f4f4 100%);
	background: linear-gradient(top, #f4f4f4 0%, #f4f4f4 100%);
}

nav#mainNav a.menu {
	width: 100%;
	display: block;
	height: 40px;
	line-height: 40px;
	font-weight: bold;
	text-align: left;
	color: #555;
}
nav#mainNav a#menu span {
	padding-left: 10px;
}
nav#mainNav a span:before {
	content: "≡ ";
}
nav#mainNav a.menuOpen span:before {
	content: "× ";
}
nav#mainNav a#menu:hover {
	cursor: pointer;
}
nav .panel {
	display: none;
	width: 100%;
	position: relative;
	right: 0;
	top: 0;
	z-index: 1;
}
nav#mainNav ul {
	margin: 0;
	padding: 0;
}
nav#mainNav ul li {
	float: none;
	clear: both;
	width: 100%;
	height: auto;
	line-height: 1.2;
}
nav#mainNav ul li a, nav#mainNav ul li.current-menu-item li a {
	display: block;
	padding: 15px 10px;
	text-align: left;
	border-bottom: 1px dashed #e8e8e8;
	color: #555;
}
nav#mainNav ul li a.onlineshop, nav#mainNav ul li.current-menu-item li a.onlineshop {
	color: #D93600;
}
nav#mainNav ul li a span {
	padding-left: 10px;
}
nav#mainNav ul li:first-child a {
	border-top: 1px dashed #e8e8e8;
}
nav#mainNav ul li:last-child a {
	border: 0;
}
nav#mainNav ul li li:last-child a {
	border: 0;
}
nav#mainNav ul li li:last-child a {
	border-bottom: 1px dashed #e8e8e8;
}
nav#mainNav ul li.current-menu-item a, nav#mainNav ul li a:hover, nav#mainNav ul li.current-menu-item a, nav#mainNav ul li a:active, nav#mainNav ul li li.current-menu-item a, nav#mainNav ul li.current-menu-item li a:hover, nav#mainNav ul li.current-menu-item li a:active {
	background: #eee;
}
nav div.panel {
	float: none;
}
nav#mainNav ul li li {
	float: left;
	border: 0;
}
nav#mainNav ul li li a, nav#mainNav ul li.current-menu-item li a, nav#mainNav ul li li.current-menu-item a {
	padding-left: 40px;
	background: url(../images/sub1.png) no-repeat 20px -62px;
}
nav#mainNav ul li li.current-menu-item a, nav#mainNav ul li li a:hover, nav#mainNav ul li.current-menu-item li a:hover {
	background: #eee url(../images/sub1.png) no-repeat 20px -62px;
}
nav#mainNav ul li li:last-child a {
	background: #f4f4f4 url(../images/subLast.png) no-repeat 20px -65px;
}
nav#mainNav ul li li:last-child.current-menu-item a, nav#mainNav ul li li:last-child a:hover, nav#mainNav ul li.current-menu-item li:last-child a:hover {
	background: #eee url(../images/subLast.png) no-repeat 20px -65px;
}


/* 記事　width80%、中央寄せに変更　------------------ */

.post{
	width: 80%;
	margin:auto;
}

/*企業情報　テーブルwidth100%に変更　------------------*/

.post table {
	width: 100%;
}

/*フッタ　width100%に変更　------------------*/
#footer {
	width: 100%;
}

}


/*　****************************************************************************
********************************************************************************
　タブレット用2　768px under ↓
********************************************************************************
*********************************************************************************/
 @media only screen and (max-width:768px) {

#header {
	padding-bottom: 0;
}


/* ニュース詳細ページ左カラム　width可変、フロート解除　------------------ */

.detailImg {
	width:100%;
	float:none;
	text-align:center;
	margin:0;
}

/* ニュース詳細ページ右カラム　width可変、フロート解除　------------------ */

.description1 {
	width:100%;
	max-width: initial;
	float:none;
	padding:10px;
}

}


/*　****************************************************************************
********************************************************************************
　スマホ用　480px under ↓
********************************************************************************
*********************************************************************************/
 @media only screen and (max-width:480px) {

/* トップ Line Up バナーエリア　 SP------------------ */

.bannerList li{
	width: 50%;
}

.bannerList li:nth-child(4n) img{
	border-right:1px solid #fff;
}

.bannerList li:nth-child(4n+1){
	clear: none;
}
.bannerList li:nth-child(2n) img{
	border-right: none;
}

.bannerList li:nth-child(2n+1){
	clear: both;
}

/* 記事 width100%に変更　------------------ */

.post{
	width: 100%;
}

/*企業情報　テーブルセルを縦組みに変更　------------------　*/

.post table td, .post table th,.post table caption{
	width: 100%;
	display:block;
	margin:0;
	padding:5px 3px;
}

/*ニュース詳細ページ（商品紹介）　------------------　*/

/* 説明２（下カラム）　------------------ */

.description2 p{
	width:100%;/* width80％→100％ */
	margin: 0;/* 中央寄せ解除 */
}

.description2 figure{
	margin:10px;/* margin変更 */
	float:none;/* float解除 */
}

.description2 aside{
	width:100%;/* width80％→100％ */
	margin:0;/* 中央寄せ解除 */
	padding:10px;/* padding変更 */
}

.description2 aside figure{
	float:none;/* float解除 */
	margin:10px;/* margin変更 */
}


/*LINE UP（商品一覧）　------------------　*/

ul.lineUp li{
	float:none;
	width:100%;
}


ul.lineUp li img{
	margin:5px;
}

}