﻿@charset "utf-8";
@import url(http://fonts.googleapis.com/earlyaccess/notosansjapanese.css);

/* CSS Document */

/*------------------------------------------------------------------------------------------------------------------
　base style
-------------------------------------------------------------------------------------------------------------------*/

body{	
color:#343434;
font-size:14px;
margin:0;
width:640px;
height:100%;
position:relative;
font-family: "游ゴシック", YuGothic,'Noto Sans Japanese',"メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
font-weight:500;
line-height:1.6;
overflow-x:hidden;
}

body > #primary {
height: auto;
}


a:link {color:#cf3434; text-decoration:underline;}
a:visited {color:#cf3434; text-decoration:underline;}
a:hover {color:#e59c0e; text-decoration:underline;}

img{
border:0;
vertical-align: bottom;
}

#lineup-font-size-sampler {
	display:none;
}

/*------------------------------------------------------------------------------------------------------------------
　Expression
-------------------------------------------------------------------------------------------------------------------*/

.clear { clear:both; }
.under { margin-bottom:20px; }
.right { float:right;}
.left { float:left;}

.ro img:hover,.ro:hover {
opacity:0.8;
filter: alpha(opacity=80);
-ms-filter: "alpha( opacity=80 )";
}

div:after,
section:after,
article:after,
ul:after {
    content: "";
    display: block;
    clear: both;
}

.pc {
	display:inherit;
}

.sp {
	display:none;
}

/*------------------------------------------------------------------------------------------------------------------
　Primary
-------------------------------------------------------------------------------------------------------------------*/

#primary {
width:640px;
height:100%;
margin-left: auto;
margin-right: auto;
text-align: left;
overflow:hidden;
}

article {
width:640px;
margin-left:auto;
margin-right:auto;
position:relative;
}

/*------------------------------------------------------------------------------------------------------------------
　Mainvisual
-------------------------------------------------------------------------------------------------------------------*/

#mainvisual {
	width:100%;
	position:relative;
}

#mainvisual:before {
	width:100%;
	height:10px;
	background-image:url(../image/mainvisual/line.png);
	content:"";
	display:block;
	position:absolute;
	top:0;
}

#mainvisual:after {
	width:100%;
	height:10px;
	background-image:url(../image/mainvisual/line.png);
	content:"";
	display:block;
	position:absolute;
	bottom:0;
}

#mainvisual .item {
	background-image:url(../image/mainvisual/01.png);
	background-position:center top;
	background-size:contain;
	width:100%;
	max-width:1920px;
	height:0;
	padding-top:33.33%;
}

/*------------------------------------------------------------------------------------------------------------------
　Header
-------------------------------------------------------------------------------------------------------------------*/

header {
	width:580px;
	height:140px;
	margin-left:auto;
	margin-right:auto;
	position:relative;
	padding-left:30px;
	padding-right:30px;
}

header h1 {
	margin:0;
	padding:0;
	position:absolute;
	top:43px;
	left:40px;
}

header h1 a {
	background-image:url(../image/logo.png);
	width:331px;
	height:70px;
	display:block;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
}

#option {
	display:none;
}

/*------------------------------------------------------------------------------------------------------------------
　Navi
-------------------------------------------------------------------------------------------------------------------*/

#sp-navi {
	position: fixed;
	top: 0;
	right: 0px;
	width: 350px;
	height: 100%;
	text-align: left;
	z-index: 1;
	background-image:url(../image/navi-back.png);
}

#pc-navi {
	display:none;
}

.navi-open {
	background-image:url(../image/header/navi/navi-open.png);
	width:80px;
	height:80px;
	display:block;
	position:fixed;
	top:38px;
	right:30px;
	z-index:99;
	box-shadow: 0px 2px 8px rgba(0, 0, 0, 0.52);
    -moz-box-shadow: 0px 2px 8px rgba(0, 0, 0, 0.52);
    -webkit-box-shadow: 0px 2px 8px rgba(0, 0, 0, 0.52);
}

#sp-navi h1 {
	background-image:url(../image/header/navi/header.png);
	margin:0;
	padding:0;
	display:block;
	width:350px;
	height:145px;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
}

#sp-navi ul {
	list-style:none;
	margin:0;
	padding:0;
}

#sp-navi ul li {
	width:350px;
	height:81px;
	display:block;
	margin:0;
	padding:0;
}

#sp-navi ul li.navi01 { background-image:url(../image/header/navi/navi01_sp.png); }
#sp-navi ul li.navi02 { background-image:url(../image/header/navi/navi02_sp.png); }
#sp-navi ul li.navi03 { background-image:url(../image/header/navi/navi03_sp.png); }
#sp-navi ul li.navi04 { background-image:url(../image/header/navi/navi04_sp.png); }
#sp-navi ul li.navi05 { background-image:url(../image/header/navi/navi05_sp.png); height:83px; }

#sp-navi ul li a {
	width:100%;
	height:100%;
	display:block;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
}

.link {
	margin-top:20px;
}

.link ul {
	list-style:none;
	margin:0;
	padding:0;
}

.link ul li {
	width:310px !important;
	height:40px !important;
	margin-bottom:10px !important;
	margin-left:auto !important;
	margin-right:auto !important;
}

.link ul li.link-button01 { background-image:url(../image/header/option/option01_sp.png); }
.link ul li.link-button02 { background-image:url(../image/header/option/option02_sp.png); }
.link ul li.link-button03 { background-image:url(../image/header/option/option03_sp.png); }

.link ul li a {
	width:100%;
	height:100%;
	display:block;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
}

#sns {
	width:310px;
	margin-left:auto;
	margin-right:auto;
	margin-top:20px;
}

/*------------------------------------------------------------------------------------------------------------------
　Footer
-------------------------------------------------------------------------------------------------------------------*/

#footer {
	width:100%;
	padding-top:40px;
	background-image:url(../image/footer/back.gif);
	box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.36);
    -moz-box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.36);
    -webkit-box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.36);
	position:relative;
}

#footer .logo {
	background-image:url(../image/logo.png);
	width:331px;
	height:70px;
	display:block;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
	margin-left:auto;
	margin-right:auto;
}

#footer ul {
	list-style:none;
	margin:0;
	padding:0;
	width:580px;
	margin-left:auto;
	margin-right:auto;
	margin-top:20px;
	margin-bottom:50px;
}

#footer ul li {
	padding-left:15px;
	padding-right:15px;
	float:left;
	border-right:1px solid #676767;
	border-left:1px solid #c3c3c3;
	font-size:18px;
	color:#000000;
}

#footer ul li:first-child {
	border-left:none;
}

#footer ul li:last-child {
	border-right:none;
}


#footer ul li a {
	border-bottom:1px dotted #000000;
	text-decoration:none;
	color:#000000;
	padding-bottom:5px;
}

#footer ul li a:hover {
	color:#0169c7;
	border-bottom:1px dotted #0169c7;
}

.topback a {
	position:absolute;
	background-image:url(../image/footer/topback.png);
	width:66px;
	height:66px;
	display:block;
	right:30px;
	top:40px;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
}

#footer #cc {
	width:100%;
	height:66px;
	background-image:url(../image/footer/cc-back.gif);
	text-align:center;
	line-height:66px;
	color:#ffffff;
	font-size:18px;
}

/*------------------------------------------------------------------------------------------------------------------
　Additional
-------------------------------------------------------------------------------------------------------------------*/

/* サイドオープン時にメインコンテンツを覆う部分 */
.overlay {
  content: '';
  visibility: hidden;
  position: fixed;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  -webkit-transition: all .5s ease;
  transition: all .5s ease;
  z-index: 3;
}
.overlay::after {
  visibility: hidden;
  position: fixed;
  top: 40%;
  left: 0;
  display: block;
  width: 100%;
  height: 50px;
  -webkit-transition: all .5s ease;
  transition: all .5s ease;
}
.side-open .overlay {
  visibility: visible;
  cursor: pointer;
}
.side-open .overlay::after {
  visibility: visible;
}

.side-open .navi-open {
	right:380px;
}

/* メインコンテンツ */
.wrapper {
	position: relative;
	width: 100%;
	height: 100%;
	-webkit-transition: all .5s ease;
	transition: all .5s ease;
	z-index: 2;

}

/* サイドメニューオープン */
.side-open .wrapper,
.side-open .overlay {
  -webkit-transform: translate3d(-350px, 0, 0);
  transform: translate3d(-350px, 0, 0);
}

.wrapper-back {
	width:100%;
	height:100%;
	display:block;
	position:fixed;
	top:0;
	left:0;
	z-index:1;
	background-color:#ffffff;
}

.wrapper::before {
background-image:url(../image/back.jpg);
display: block;
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
content: "";
z-index: -1;
}   

.wrapper-back.none {
	display:none;
}

.mCSB_inside > .mCSB_container {
	margin-right:0 !important;
}

.mCSB_scrollTools {
	opacity:0 !important;
}

#contents {
	width:580px;
	margin-left:auto;
	margin-right:auto;
	position:relative;
	padding-left:30px;
	padding-right:30px;
	padding-top:30px;
	padding-bottom:50px;
}

.subpage #content-primary {
	background-image:url(../image/contents/topline.png);
	background-position:center top;
	background-repeat:repeat-x;
	width:100%;
}

/*----------------------------------------------------------------------------
   Home
------------------------------------------------------------------------------*/

#information {
	width:580px;
	position:relative;
}

#information h2 {
	background-image:url(../image/contents/top/title01.png);
	width:200px;
	height:50px;
	display:block;
	margin:0;
	padding:0;
	margin-bottom:30px;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
}

#information .archive {
	background-image:url(../image/contents/top/archive_off.png);
	width:135px;
	height:49px;
	display:block;
	position:absolute;
	top:0;
	right:0px;
}

#information .archive a {
	width:135px;
	height:49px;
	display:block;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
}

#information .content-primary {
}

#information .content-primary .content {
}

#information .content-primary .content h3 {
	font-size:16px;
	color:#ac0303;
	margin-bottom:20px;
}

#information .content-primary .content h3 span {
	font-size:15px;
	color:#1a6bb2;
	display:block;
}

#information .content-primary .content p {
	margin:0;
	padding:0;
}

#information .content-primary .content img {
	margin-bottom:25px;
}

#information .content-primary .content {
	padding-bottom:30px;
	background-image:url(../image/contents/top/info-list-line.gif);
	background-position:bottom;
	background-repeat:repeat-x;
	margin-bottom:30px;
}

#latest-updata {
	width:580px;
	margin-bottom:30px;
}

#latest-updata h2 {
	margin:0;
	padding:0;
	background-image:url(../image/contents/top/title02.png);
	width:243px;
	height:50px;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
	margin-bottom:30px;
}

#latest-updata .content-primary {
	width:580px;
	height:252px;
	overflow:hidden;
}

#latest-updata .content-primary ul {
	list-style:none;
	margin:0;
	padding:0;
}

#latest-updata .content-primary ul li {
	font-size:16px;
	color:#2f2f2f;
	border-bottom:1px dotted #739ac8;
	padding-bottom:11px;
	padding-top:11px;
	padding-left:20px;
}

#latest-updata .content-primary ul li:nth-child(odd) {
	background-color:#ffffff;
}

#latest-updata .content-primary ul li:nth-child(even) {
	background-color:#f0f7ff;
}

#latest-updata .content-primary ul li span {
	font-size:16px;
	color:#848484;
	display:block;
	width:95px;
	float:left;
}

#latest-updata .content-primary ul li p {
	float:left;
	width:400px;
	margin:0;
	padding:0;
}

#latest-updata .content-primary ul li:after {
    content: "";
    display: block;
    clear: both;
}

#baner-primary {
	width:625px;
	margin-left:-15px;
}

#baner-primary .banar {
	background-color:#ffffff;
	width:274px;
	height:98px;
	display:block;
	margin-bottom:30px;
	margin-left:15px;
	margin-right:15px;
	background-position:center;
	background-repeat:no-repeat;
	background-size:cover;
	float:left;
}

#baner-primary .banar a {
	width:100%;
	height:100%;
	display:block;
}


#twitter {
	display:none;
}

/*----------------------------------------------------------------------------
   PRODUCTS
------------------------------------------------------------------------------*/

#products {
	width:580px;
	position:relative;
	margin-left:auto;
	margin-right:auto;
}

#products h2 {
	background-image:url(../image/contents/products/title.png);
	width:200px;
	height:50px;
	display:block;
	margin:0;
	padding:0;
	margin-bottom:30px;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
}

#products .content-primary {
	width:610px;
}

#products .content-primary .content {
	width:580px;
	margin-bottom:30px;
}

#products .content-primary .content h3 {
	font-size:16px;
	color:#ac0303;
	margin-bottom:20px;
}

#products .content-primary .content h3 span {
	font-size:15px;
	color:#1a6bb2;
	display:block;
}

#products .content-primary .content p {
	margin:0;
	padding:0;
}

#products .content-primary .content img {
	margin-bottom:25px;
	width:580px;
	height:auto;
}

#products .content-primary .content table {
	width:580px;
	margin-bottom:15px;
	background-color:rgba(192,192,192,1.00);
}

#products .content-primary .content table th {
	width:150px;
	font-weight:500;
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#ffffff+0,dee2e8+100 */
	background: rgb(255,255,255); /* Old browsers */
	background: -moz-linear-gradient(top,  rgba(255,255,255,1) 0%, rgba(222,226,232,1) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  rgba(255,255,255,1) 0%,rgba(222,226,232,1) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  rgba(255,255,255,1) 0%,rgba(222,226,232,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#dee2e8',GradientType=0 ); /* IE6-9 */
}

#products .content-primary .content table td {
	font-weight:normal;
	background-color:#ffffff;
}


/*----------------------------------------------------------------------------
   LINK
------------------------------------------------------------------------------*/

#link {
	width:580px;
	position:relative;
	margin-left:auto;
	margin-right:auto;
}

#link h2 {
	background-image:url(../image/contents/link/title.png);
	width:200px;
	height:50px;
	display:block;
	margin:0;
	padding:0;
	margin-bottom:30px;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
}

#link .mini-comment {
	margin-bottom:30px;
	background-color:rgba(50,50,50,1.00);
	padding:30px;
	padding-top:10px;
}

#link .mini-comment p {
	color:#ffffff;
}

#link .mini-comment img {
}

#link .mini-comment textarea {
	padding:10px;
	width:496px;
	margin-top:15px;
}

#link .content-primary {
	width:580px;
}

#link .content-primary .content {
	width:580px;
	margin-bottom:30px;
}

#link .content-primary .content h3 {
	font-size:16px;
	color:#ac0303;
	margin-bottom:20px;
}

#link .content-primary .content ul {
	list-style:none;
	margin:0;
	padding:0;
}

#link .content-primary .content ul li {
	display:block;
	margin-bottom:15px;
}

#link .content-primary .content ul li:after {
	content: "";
    display: block;
    clear: both;
}

#link .content-primary .content ul li img {
	float:left;
	margin-right:15px;
}

#link .content-primary .content ul li img:hover {
	opacity:0.8;
	filter: alpha(opacity=80);
	-ms-filter: "alpha( opacity=80 )";
}

#link .content-primary .content ul li p {
	float:left;
	overflow:hidden;
	margin:0;
	padding:0;
	font-weight:600;
	padding-top:10px;
}


/*----------------------------------------------------------------------------
   CONTACT
------------------------------------------------------------------------------*/

#contact {
	width:580px;
	position:relative;
	margin-left:auto;
	margin-right:auto;
}

#contact h2 {
	background-image:url(../image/contents/contact/title.png);
	width:200px;
	height:50px;
	display:block;
	margin:0;
	padding:0;
	margin-bottom:30px;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
}

#contact .mini-comment {
	margin-bottom:30px;
	background-color:rgba(50,50,50,1.00);
	padding:30px;
	padding-top:25px;
}

#contact .mini-comment h3 {
	color:#ffffff;
	font-weight:800;
	margin:0;
	padding:0;
}

#contact .mini-comment p {
	color:#ffffff;
	padding-bottom:0;
	margin-bottom:0;
}

#contact .content-primary {
	width:580px;
}

#contact .content-primary .content {
	width:580px;
	margin-bottom:30px;
}


/*----------------------------------------------------------------------------
   ARCHIVE
------------------------------------------------------------------------------*/

#archive {
	width:580px;
	position:relative;
	margin-left:auto;
	margin-right:auto;
}

#archive h2 {
	background-image:url(../image/contents/archive/title.png);
	width:200px;
	height:50px;
	display:block;
	margin:0;
	padding:0;
	margin-bottom:30px;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
}

#archive .content-primary {
}

#archive .content-primary .content {
}

#archive .content-primary .content h3 {
	font-size:16px;
	color:#ac0303;
	margin-bottom:20px;
}

#archive .content-primary .content h3 span {
	font-size:15px;
	color:#1a6bb2;
	display:block;
}

#archive .content-primary .content p {
	margin:0;
	padding:0;
}

#archive .content-primary .content img {
	margin-bottom:25px;
}

#archive .content-primary .content {
	padding-bottom:30px;
	background-image:url(../image/contents/top/info-list-line.gif);
	background-position:bottom;
	background-repeat:repeat-x;
	margin-bottom:30px;
}
