@charset "UTF-8";

body	
{
		margin: 0;
		font-family: "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
		background: linear-gradient(#ffffff, #ffffff);
}

/* ##### スマホ用ナビメニュー ##### */

body#page01 ul li#li01 a,body#page02 ul li#li02 a,body#page03 ul li#li03 a,body#page04 ul li#li04 a,body#page05 ul li#li05 a,body#page06 ul li#li06 a,body#page07 ul li#li07 a	
{
		color: #ffffff;
	    background:#555555;
}

/* ##### 上に戻るボタン ##### */

.pagetop 
{
		display: none;
		position: fixed;
		bottom: 30px;
		right: 55px;
		z-index:100;
}

.pagetop a 
{
		display: block;
		width: 50px;
		height: 50px;
		background-color: #555555;
		opacity: 0.6;
		border-radius: 50px;
		text-align: center;
		color: #ffffff;
		font-size: 24px;
		text-decoration: none;
		line-height: 50px;
}

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

.header-site	
{
		padding-top: 10px;
		padding-bottom: 10px;
		background-color: #ffffff;
}

.header-site h1 a	
{
		color: #000000;
		text-decoration: none;
		font-family: 'Open Sans', sans-serif;
}

.header-site-innner h1	
{
		margin: 0;
		font-size: 25px;
}

/* ##### エレクトリ ##### */

.about_electori 
{
		float: right;
		width: 200px;
		color: #333333;
		font-size: 12px;
		text-decoration: none;
		line-height: 3.0;
}

/* ##### ナビメニュー ##### */

.navi	
{
		border-top: solid 1px #cccccc;
		border-bottom: solid 0px #cccccc;
		margin-top: 0px;
		margin-bottom: 20px;
}

.navi:after	
{
		clear: both;
}

.red
{
	font-size: 14px;
	color: red;
	padding: 20px;
}	

/* ##### トップバナー表示 ##### */

.variable_top_banner 
{
		max-width: 100%;
		margin-bottom: 4vmin;
}

/* アクティブな画像の枠線を変更 */
.sub-img li.current img {
  border: none solid red;
}
/* レイアウトのためのスタイル */
.container {
  margin: 0px auto 0;
  max-width: 600px;
}
.main-img {
  height: auto;
  width: 100%;
}
.main-img img {
  height: auto;
  width: 100%;
}
.sub-img {
  display: flex;
  margin-top: 10px;
}

.sub-img li {
	list-style: none;	
	margin-right: 2%;
	width: calc(96% / 3);
}

.sub-img li:nth-child(3n) {
  margin-right: 0;
}

.sub-img li img {
  border: 2px solid transparent;
  transition: border .5s;
}

.sub-img img {
  cursor: pointer;
  width: 100%;
}

.flex_Box{
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content:center;
    justify-content: center;
    -ms-flex-align: center;
   -webkit-box-align: center;
   -webkit-align-items: center;
   align-items: center;
   margin: auto;
   margin-bottom: 10px;

}

.flex_img img{
    max-width: 370px;
    text-align: center;
}


/* ##### 製品情報 ##### */

.product_info
{
	display: block;
	font-size: 11px;
	text-align: right;
	}


/* ##### オプション品 ##### */

.option img
{
	max-width: 200px;
}

/* ##### Youtube用 ##### */

.iframe-wrap 
{
		position: relative;
		width: 100%;
		padding-top: 56.25%;
		overflow:auto; 
		-webkit-overflow-scrolling:touch;
		margin-bottom: 10px;
}

.iframe-wrap iframe 
{
	    position:absolute;
	    top:0;
	    left:0;
	    width:100%;
	    height:100%;
	    border:none;
	    display:block;
}

/* ##### 文字を中央配置 ##### */


.center a
{
		color: #444444;
}

/* ##### フレックスボックス（レイアウトモジュール） ##### */

.flex-box 
{
	    display: flex;
	    justify-content: space-between; 
	    flex-direction: row;
	    flex-wrap: wrap;
}

.flex-box:before 
{
		content: "";
		display: block;
		width: 20vmin;
		order: 1;	
}

.flex-box:after 
{
		content: "";
		display: block;
		width: 20vmin;
}

.flex-item 
{
	    color:  #44444;
	    width: 20vmin;
	    position:relative;
}

.flex-item a
{
		color: #444444;	
} 

.flex-item span {
		font-size: 9px;
		left: 50%;
		transform: translate(-50%);
		bottom: 5%;
}

.flex-box img 
{
		width: 100%;
}

.top {
		position: relative;
		max-width: 500px;
}


.catch {
		margin: 0;
		font-size: 12px;
		position: absolute;
		bottom: 50%;
		left: 35%;
		padding: 0px;
		background-color: rgba(255,255,255,0.7);
}

.label_top{
	  position:absolute;
	  top: 0px;
	  background-color: rgba(255,255,255,0.7);
	  border-bottom: solid 1px #cccccc;
	  white-space: nowrap;
	  font-weight: bolder;
	  font-size: 10px;
	  padding-right: 0px;
	  padding-bottom: 0px;
}

.label_bottom {
		position:absolute;
		font-weight: bolder;
		white-space: nowrap;
		line-height: 1.2;
		padding-bottom: 5px;
		
}

/* ##### コンテンツ ##### */

.contents	
{
		color: #444444;
		line-height: 2;
}

.contents h1	
{
		margin-top: 20px;
		margin-bottom: 10px;
		font-size: 26px;
		font-family: 'Open Sans', sans-serif;
}

.contents h2	
{
		margin-top: 40px;
		margin-bottom: 20px;
		padding-left: 20px;
		border-left: solid 5px #0099ff;
		font-size: 20px;
		font-weight: normal
}

.contents h3	
{
		margin-top: 40px;
		margin-bottom: 20px;
		padding-left: 20px;
		border-left: dotted 5px #0099ff;
		font-size: 16px;
		font-weight: normal
}

.contents p	
{
		margin-top: 0;
		margin-bottom: 20px;
		padding-left: 25px;
}

.contents div	
{
		margin-top: 0px;
		margin-bottom: 0px;
		padding-left: 0px;
}

.contents a
{
		text-decoration: none;
}


.dot a
{
		color: #333333;
		border-bottom: dotted;
		border-width: 1px;
}

ul li {
		line-height: 2.5;
}

/* ##### サムネイル画像に小さい文字 ##### */

.tn_img_inline {
		display: inline-block;
		font-size: 12px;
}

/* ##### 著作権 ##### */

.copyright p	
{
		margin: 0;
		color: #666666;
		font-size: 12px;
		border-top: solid 1px #dddddd;
		text-align: center;
}

.copyright a	
{
		color: #666666;
		text-decoration: none;
}

.copyright a:hover	
{
		text-decoration: underline;
}

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

.footer	
{
		margin-top: 30px;
		padding-top: 20px;
		padding-bottom: 20px;
		background-color: #dddddd;
}

/* ##### スライド ##### */

.viewer {
    margin: 0 auto;
    width: 900px;
    height: 341px;
    text-align: left;
    overflow: hidden;
}
 
.viewer ul {
    width: 900px;
    height: 341px;
    text-align: left;
    overflow: hidden;
    position: relative;
}
 
.viewer ul li {
    top: 0;
    left: 0;
    width: 900px;
    height: 341px;
    display: none;
    position: absolute;
}

/* ##### 各要素のパディング ##### */

.header-site, .navi, .contents, .copyright	
{
		padding-left: 15px;
		padding-right: 15px;
}


@media (max-width: 767px)
{			

/* ##### 上に戻るボタン（max-width: 767px） ##### */

.pagetop 
{
    	bottom: 10px;
		right: 10px;
}

.pagetop a 
{
		display: block;
		width: 50px;
		height: 50px;
		background-color: #555555;
		border-radius: 50px;
		text-align: center;
		color: #ffffff;
		font-size: 24px;
		text-decoration: none;
		line-height: 50px;
}

/* ##### ヘッダー（max-width: 767px） ##### */

.header-site	
{
		padding-top: 5px;
}

.header-site h1	
{
		font-size: 20px;
}

/* ##### エレクトリ（max-width: 767px） ##### */

.about_electori 
{
		display: none;
}

/* ##### ナビメニュー（max-width: 767px） ##### */

.navi	
{
		background-color: #ffffff;
		margin-bottom: 0px;
}

#menubtn	
{
		padding: 8px 15px;
		border: solid 1px #aaaaaa;
		border-radius: 5px;
		background-color: #ffffff;
		position: absolute;
		top: 15px;
		right: 10px;
		cursor: pointer;
}

#menubtn:hover	
{
		background-color: #dddddd;
}

#menubtn:focus	
{
		outline: none;
}

#menu	
{
		display: none;
}

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

.menu li a	
{
		display: block;
		padding: 5px;
		color: #000000;
		font-size: 14px;
		text-decoration: none;
}

.menu li a:hover	
{
		background-color: #eeeeee;
}

/* ##### フレックスボックス（max-width: 767px） ##### */

.flex-item 
{
    width: 45vmin;
}
.catch {
		margin: 0;
		font-size: 10px;
		position: absolute;
		bottom: 0%;
		left: 5%;
		padding: 0px;
		background-color: rgba(255,255,255,0.7);
}

}


@media (min-width: 768px)

/* ##### ナビメニュー（min-width: 768px） ##### */

{			

#menubtn	
{
		display: none;
}

#menu	
{
		display: block !important;
}

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

.menu li a	
{
		display: block;
		padding: 10px 15px;
		color: #000000;
		font-size: 14px;
		text-decoration: none;
}

.menu li a:hover	
{
		background-color: #eeeeee;
		opacity: 0.8;
}

.menu ul:after	
{
		content: "";
		display: block;
		clear: both;
}

.menu li	
{
		float: left;
		width: auto;
}

}


/* ##### 1140px以上 ##### */

@media (min-width: 1140px)

{
.navi-inner, .contents, .header-site-inner	{
		width: 1140px;
		margin-left: auto;
		margin-right: auto;

}

}