@charset "utf-8";

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
    margin:0;
    padding:0;
    border:0;
    outline:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}
body {
    line-height:1;
}
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section { 
	display:block;
}
nav ul {
    list-style:none;
}
blockquote, q {
    quotes:none;
}
blockquote:before, blockquote:after,
blockquote:before, blockquote:after,
q:before, q:after {
    content:'';
    content:none;
}
a {
    margin:0;
    padding:0;
    font-size:100%;
    vertical-align:baseline;
    background:transparent;
}
a{
    background-color:transparent;
    -webkit-touch-callout:none;
	-webkit-tap-highlight-color:rgba(102,102,102,0.40); 
}
.touchstyle { background-color:rgba(102,102,102,0.40);}
.notouchstyle { background-color:transparent;}
.tel-link {
	color: #06F;
	font-size: 16px;
	font-weight: bold;
}

mark {
    background-color:#ff9;
    color:#000; 
    font-style:italic;
    font-weight:bold;
}
del {
    text-decoration: line-through;
}
abbr[title], dfn[title] {
    border-bottom:1px dotted;
    cursor:help;
}
h1,h2,h3,h4,h5{
	line-height:1;
}
p,ul,ol,dl,address{
	line-height: 1;
}
ul ul ,
ul ol ,
dl ul,
dl ol{
	line-height:1;
}
table {
  /*  border-collapse:collapse;
    border-spacing:0;*/
}
hr {
    display:block;
    height:1px;
    border:0;   
    border-top:1px solid #cccccc;
    margin:1em 0;
    padding:0;
}
input, select {
    vertical-align:middle;
}
ol, ul {
    list-style: none;
}
iframe{ 
	width: 100%; 
}


/* ===================
clearfix 
===================*/ 
.clearfix:after {  
	visibility:hidden;
	height:0;
	display: block;
	font-size: 0;  
	content: " ";  
	clear: both;  
}  


/* ===================
リンク
===================*/
a { 
	outline: none; 
}
a:link {
	text-decoration: none;
	color: #211916;
}
a:visited {
	text-decoration: none;
	color: #211916;
}
a:hover {
	text-decoration: none;
	color: #211916;
	opacity: 0.7;
	-webkit-transition: all .2s ease-in-out;
	-moz-transition: all .2s ease-in-out;
	-o-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
}
a:active {
	text-decoration: none;
	color: #211916;
}
a:hover img{
 opacity: 0.7;
  -webkit-transition: all .2s ease-in-out;
  -moz-transition: all .2s ease-in-out;
  -o-transition: all .2s ease-in-out;
  transition: all .2s ease-in-out;
}


/*==========================================
 body
===========================================*/
body {
	margin: 0;
	font-family: "メイリオ","Hiragino Kaku Gothic Pro",Meiryo,"ヒラギノ角ゴ Pro W3","MS PGothic","MS UI Gothic",Helvetica,Arial,sans-serif;
	color: #231815;
}


/*==========================================
[header]
===========================================*//*
.header {
	position:absolute;
	top:0;
}
*/

/* logoWrapp *//*
.logo {
	width:100px;
	margin-left:auto;
	margin-right:auto;
	margin-top:6px;
	margin-bottom:20px;
}
.logo a {
	display:block;
}*/


/*==========================================
[main]
===========================================*/
/*
.main {
	margin-bottom:100px;
}*/
.sctWrapp{
	margin-bottom: 100px;
}
.main p {
	line-height:2.0;	
}
/*
.main table{
	line-height:1.6;
}
.contentInner {
	margin-bottom:80px;
}
.anc {
	margin-top: -100px;
	padding-top: 100px;
}*/

/* txt */
.atTxt {
	color: #970C23;
	font-weight:bold;
}
.txtCenter {
	text-align:center;
}
.txtRight {
	text-align:right;
}
.sTxt12 {
	font-size:75%;
}
.leftTxt{
	text-align:left;
}
.bTxt,
p.bTxt {
	font-weight:bold;
}

/* adjustment */
.ajt-left {
	padding-left:0;
}
.ajt-right {
	padding-right:0;
}

/* margin */
.ml10 {
	margin-left:10px;
}
.mt0 {
	margin-top:0px;
}
.mt10 {
	margin-top:10px;
}
.mt20 {
	margin-top:20px;
}
.mt30 {
	margin-top:30px;
}
.mt40 {
	margin-top:40px;
}
.mt50 {
	margin-top:50px;
}

.mb0 {
	margin-bottom:0px;
}
.mb10 {
	margin-bottom:10px;
}
.mb20 {
	margin-bottom:20px;
}
.mb30 {
	margin-bottom:30px;
}
.mb40 {
	margin-bottom:40px;
}
.mb50 {
	margin-bottom:50px;
}

p.captionTxt {
	font-size:75%;
	line-height:1.5;
}

/* img */
.fLeft-img {
	float:left;
}
.fullImg {
	width:100%;
	height:auto;
}

/* list */
.nonlistList {
	list-style:none;
}
.nonlistList li{
	margin-bottom:10px;
	line-height:1.6;
}
.nonlistList li:last-child {
	margin-bottom:0px;
}

.markList {
	list-style:disc;
	margin-left:1.5em;
}
.markList li{
	margin-bottom:10px;
	line-height:1.6;
}
.markList li:last-child {
	margin-bottom:0px;
}

.decimalList {
	list-style: decimal;
	margin-left:1.5em;
}
.decimalList li{
	margin-bottom:10px;
	line-height:1.6;
}

/* dl */
dl dd ol li {
	line-height:1.6;
}

.dfDL dt{
	margin-bottom: 4px;
	color: #aa8d35;
}
.dfDL dd{
	margin-bottom:20px;
	line-height:1.6;
}


/*------------------------------------------------------------------------
[TOP]
------------------------------------------------------------------------*/
/* slider *//*
.sliderWrapp {
	margin-top:50px;
	margin-bottom:50px;
}*/

/* contactBtn */
.contactBtn {
	clear:both;
	margin-top: 50px;
}

/* mainImgWrapp
-------------------------------------------*/
.mainImgWrapp {
	clear:both;
	background-image:url(../images/vis_main.jpg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size:200% auto;
	margin-top: 0px;
	margin-bottom: 20%;
	height: 250px;
}

.mainImgInner {
	height: 250px;
	position: relative;
}
.mainImgInner  h2 {
	text-align: center;
	font-weight: bold;
	color: #fff;
	line-height: 1.6;
	font-size: 16px;
	position: absolute;
	top: 40%;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	padding-left: 15px;
	padding-right: 15px;
}

.mainImgList {
	position: absolute;
	bottom: -20%;
	left: 0;
	right: 0;
	margin: auto;
	padding-left: 15px;
	padding-right: 15px;
}
.mainImgList li {
	padding: 2px;
}

@media screen and (min-width: 481px) and (max-width: 767px)  {
.mainImgList {
	position: absolute;
	bottom: -30%;
/*	padding: 0 150px;*/
}
}

/* siteReadWrapp 
-------------------------------------------*/
.siteReadWrapp {
	clear:both;
}
.siteReadInner .discpImg{
	margin-bottom: 20px;
}
.siteReadInner .discpImg img{
	width: 60%;
}
.siteReadWrapp h2{
	font-size: 20px;
	font-weight:bold;
	margin-bottom: 20px;
}


/* subReadWrapp
-------------------------------------------*/
.subReadInner .bgBox{
	height: 250px;
}
.subReadInner .txtBox {
	color: #fff;
	padding: 30px 30px;
}
.subReadInner .txtBox h2{
	font-weight: bold;
	margin-bottom: 20px;
	line-height: 1.8;
}

.sub01.subReadInner .leftImg {
	background-image:url(../images/bg_sub01.png);
	background-repeat: no-repeat;
	background-position: left center;
	background-size:cover;
}
.sub01.subReadInner .txtBox {
	background-color: #8093A7;
}

.sub02.subReadInner .leftImg {
	background-image:url(../images/bg_sub02.png);
	background-repeat: no-repeat;
	background-position: right center;
	background-size:cover;
}
.sub02.subReadInner .txtBox {
	background-color: #A2B83A;
}

/* productWrapp
-------------------------------------------*/
.productWrapp h2 {
	text-align: center;
	background-image: url(../images/bg_product.png);
	background-repeat: repeat-x;
	background-position: center center;
	background-size: auto;
	margin-bottom: 20px;
	font-weight: bold;
  color: #A2B83A;
	line-height: 1.4;
}
.productWrapp h2 span{
	background-color: #FFFFFF;
	padding: 0 40px;
	font-size: 30px;
}

/* productItem */
.productItem {
	background-color: #A2B83A; 
	color: #fff;
	padding: 40px 20px;
	margin-bottom: 30px;
}
.productItem h3 {
	text-align: center;
	font-size: 20px;
	margin-bottom: 24px;
}
.productItem h3 span{
	font-size: 30px;
	display: block;
	margin-top: 10px;
}
.productItem .thumbnailImg {
	margin-bottom: 24px;
	width: 80%;
}
.productItem .discpTxt {
	line-height: 1.6;
	margin-bottom: 20px;
}
p.productIMore a{
	text-align: center;
	display: block;
	border-radius: 30px;
	background-color: #fff;
	font-weight: bold;
	text-decoration: none;
	padding: 16px 10px 12px;
	line-height: 1;
	font-size: 16px;
}

/* productDiscpList */
.productInner .readTxt {
	margin-bottom: 18px;
	text-align: center;
	font-size: 18px;
	line-height: 1.8;
}
.productDiscpList li {
	margin-bottom: 50px;
}
 .productDiscp{	
	padding-left: 0px;
}
.productDiscpTxt{	
	padding-left: 70px;
	padding-top: 20px;
 margin-bottom: 10px;
}

.productDiscpList li h4{
	margin-bottom: 16px;
	font-weight: bold;
}
.productDiscpList li p{
	line-height: 1.4;
}

.productDiscpList li .productDiscp .no01{
	background-image: url(../images/no01.png);
	background-repeat: no-repeat;
	background-position:left 15px top;
	background-size: auto 60px;
	padding-top: 20px;
	padding-left: 70px;
	 margin-bottom: 20px;
}
.productDiscpList li .productDiscp .no02{
	background-image: url(../images/no02.png);
	background-repeat: no-repeat;
	background-position:left 15px top;
	background-size: auto 60px;
	padding-top: 20px;
	padding-left: 70px;
	 margin-bottom: 20px;
}
.productDiscpList li.no03 .productDiscpTxt{
	background-image: url(../images/no03.png);
	background-repeat: no-repeat;
	background-position:left 15px top;
	background-size: auto 60px;
}
.productDiscpList li.no04 .productDiscpTxt{
	background-image: url(../images/no04.png);
	background-repeat: no-repeat;
	background-position:left 15px top;
	background-size: auto 60px;
}
.productDiscpList li.no05 .productDiscpTxt{
	background-image: url(../images/no05.png);
	background-repeat: no-repeat;
	background-position:left 15px top;
	background-size: auto 60px;
}


/* voiceWrapp
-------------------------------------------*/
.voiceHeader {
	padding-top: 30px;
	padding-bottom: 10px;
	background-image: url(../images/bg_voice.png);
	background-repeat: no-repeat;
	background-position: bottom right 10px;
	background-size: auto 100%;
}
.voiceHeader h2{
	color: #A2B83A;
	font-weight: bold;
}
.voiceHeader p{
	color: #A2B83A;
	font-weight: bold;
	font-size: 12px;
}
.voiceBox {
	border:  #A2B83A 4px solid;	
}
.voiceInner {
	background-color: #A2B83A;
	border: #fff solid 2px;
	padding: 30px 15px 16px;
	color: #fff;
}
.voiceInner h3{
	margin-bottom: 20px;
	font-weight: bold;
}
.voiceInner p{
	line-height:1.8;
}



/*/////////////////////////////////////////////////////////////////////////////////////////////////
SP Layout
/////////////////////////////////////////////////////////////////////////////////////////////////*/
@media screen and (max-width: 767px) {
/*==========================================
[common]
===========================================*/
h1{
    font-size: 24px;
}
h2,h3,h4,h5{
    font-size: 20px;
}
p,ul,ol,dl,address{
    font-size: 14px;
}
ul ul ,
ul ol ,
dl ul,
dl ol{
    font-size: 15px;
}
table {
    font-size: 15px;
}
table th,
table td{
	padding: 5px;
}
}



/*/////////////////////////////////////////////////////////////////////////////////////////////////
PC Layout
/////////////////////////////////////////////////////////////////////////////////////////////////*/
@media screen and (min-width: 768px) {
/*==========================================
[common]
===========================================*/
h1,h2,h3,h4,h5{
    font-size: 24px;
}
p,ul,ol,dl,address{
    font-size: 18px;
}
ul ul ,
ul ol ,
dl ul,
dl ol{
    font-size: 16px;
}
table {
    font-size: 16px;
}
table th,
table td{
	padding: 10px 10px 6px;
}

	
/*==========================================
[main]
===========================================*/	
/* mainImgWrapp
-------------------------------------------*/
.mainImgWrapp {
	background-size:auto 100%;
	margin-top: -100px;
	margin-bottom: 150px;
	height: 650px;
}

.mainImgInner {
	height: 650px;
	position: relative;
}
.mainImgInner  h2 {
	font-size: 30px;
	position: absolute;
	top: 45%;
	bottom: 0;
	left: 0;
	right: 0;
	}

.mainImgList {

}
.mainImgList {
	position: absolute;
	bottom: -90px;
	padding-left: 12%;
	padding-right: 12%;
}
.mainImgList li {
	padding: 2px;
}
	
	
@media screen and (min-width: 1601px) {	
	/* mainImgWrapp
	-------------------------------------------*/
	.mainImgWrapp {
		background-size:100% auto;
		height: 650px;
	}

	.mainImgInner {
		height: 650px;
		position: relative;
	}
	.mainImgInner  h2 {
		font-size: 40px;
	}
}

	
/* siteReadWrapp 
-------------------------------------------*/
.siteReadWrapp {
	background-position: center center;
	background-size: auto;
}
.siteReadInner {
	display: table;
}
.siteReadInner .discpImg,
.siteReadInner .discpTxt{
  display: table-cell;
  vertical-align: middle;
	float: none;
}
.siteReadInner .discpImg img{
	width: auto;
}
.siteReadWrapp h2{
	font-size: 30px;
}

	
/* subReadWrapp
-------------------------------------------*/
.subReadWrapp {
	clear:both;
	display: table;
	width: 100%;
}
.subReadInner .bgBox,
.subReadInner .txtBox{
	width: 50%;
  display: table-cell;
  vertical-align: middle;
}

	.subReadInner .txtBox {
		padding-top: 80px;
		padding-bottom: 80px;
}
.subReadInner .txtBox h2{
	font-size: 30px;
}
.subReadInner .txtBox p{
	font-size: 16px;
}
	
@media screen and (min-width: 1601px) {	
.sub01.subReadInner .txtBox {
	padding-right: 23%;
}
.sub02.subReadInner .txtBox {
	padding-left: 23%;
}	
}
	
/* productWrapp
-------------------------------------------*/
.productWrapp h2 span{
	font-size: 34px;
}

/* productItem */
.productItem {
	padding: 40px;
}
.productItem .thumbnailImg {
	width: auto;
}
p.productIMore a{
	border-radius: 30px;
	padding: 16px 10px 12px;
	font-size: 22px;
}
	
/* productDiscpList */
.productDiscpList li {
	display: table;
}
 .productDiscpTxt{	
	padding-left: 130px;
}
.productDiscpList .productDiscp,
.productDiscpList .productDiscpTxt,
.productDiscpList .productDiscpImg{
  display: table-cell;
  vertical-align: middle;
	float: none;
}
.productDiscpList .productDiscpImg img{
	width: auto;
}

.productDiscpList li h4{
	font-size: 30px;
}
.productDiscpList li p{
	line-height: 1.4;
}	

.productDiscpList li .productDiscp .no01{
	background-size: auto;
	padding-top: 20px;
	padding-left: 130px;
	padding-bottom: 80px;
}
.productDiscpList li .productDiscp .no02{
	background-size: auto;
	padding-top: 20px;
	padding-left: 130px;
}
.no00 .productDiscpImg{
	padding: 0;
	}
.productDiscpList li.no03 .productDiscpTxt{
	background-size: auto;
}
.productDiscpList li.no04 .productDiscpTxt{
	background-size: auto;
}
.productDiscpList li.no05 .productDiscpTxt{
	background-size: auto;
}
	
/* voiceWrapp
-------------------------------------------*/
.voiceHeader {
	padding-top: 75px;
	padding-bottom: 50px;
	background-size: auto auto;
	background-position: bottom right 30px;
}
.voiceHeader h2{
	float: left;
	margin-top: 0px;
	margin-right: 0.5em;
	font-size: 34px;
}
.voiceHeader p{
	float: left;
	margin-top: 0px;
	font-size: 16px;
}
.voiceInner {
	padding-top: 50px;
	padding-bottom: 30px;
	padding-left: 40px;
}
	
.voiceTxt{	
	float: left;
	width:	59%;
}
.voiceInner h3{
	font-size: 28px;
}	
.voiceInner p{
	font-size: 16px;
}
.voiceImg {
	padding: 0;
	margin-right: 0px;
	float: left;
  width: 41%;
}
	
}



/*----------------------------------------------------
  header
----------------------------------------------------*/
#header {
  position: relative;
  z-index: 10;
}

#header .inr {
	/*width: 1008px;
	margin: 0 auto;
	overflow: hidden;
	position: absolute;
	top: 0;
	left: 50%;
	margin-left: -504px;*/ 
}

#header::before {
	position:static; 
  content: "";
  width: 100%;
  height: 30px;
  background: #8499ad;
  display: block;
	z-index: 20;
}
#header::after {
  content: "";
  width: 100%;
  height: 10px;
  background: #abc236;
  display: block;
  position: absolute;
  top: 30px;
	z-index: 20;
}

@media screen and (max-width: 767px) {
  #header::before {
    height: 10px;
  }
}


@media screen and (max-width: 767px) {
  #header {
    position: static;
  }
  #header .inr {
    width: 100%;
    margin: 0 auto;
    overflow: hidden;
    position: static;
    margin-left: 0;
    background: #abc236;
  }
  #header .inr .logo {
    padding: 10px;
    width: 225px;
    height: auto;
    background: #fff;
    float: none;
    -webkit-border-radius: 5px;
    -ms-border-radius: 5px;
    -moz-border-radius: 5px;
    -o-border-radius: 5px;
    border-radius: 5px;
    margin: 15px auto;
  }
}

@media screen and (max-width: 767px) {
  #header .inr .logo a {
    margin: 0 auto;
  }
  #header::after {
    content: "";
    height: 0;
  }
}

@media screen and (min-width: 425px) and (max-width: 767px) {
  #header .inr .logo {
    margin: 15px 0 15px 10px;
  }
}

@media screen and (min-width: 768px) {
#header .inr .logo {
  width: 225px;
  height: 100px;
  background: #fff;
  float: left;
  -webkit-border-bottom-left-radius: 5px;
  -ms-border-bottom-left-radius: 5px;
  -moz-border-bottom-left-radius: 5px;
  -o-border-bottom-left-radius: 5px;
  border-bottom-left-radius: 5px;
	margin-top: -30px;
	z-index: 9999;
	position:relative;
}

#header .inr .logo a {
  width: 200px;
  margin: 20px auto 0;
  display: block;	
}
}



/*----------------------------------------------------
[footer]
----------------------------------------------------*/
#footer {
  font-family:'メイリオ', Meiryo, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'ＭＳ Ｐゴシック', Osaka, 'MS PGothic', Arial, Helvetica, Verdana, sans-serif;
	letter-spacing: 0.1em;
  margin-top: 60px;
  border-top: 1px solid #bdc6c6;
}

#footer .inr {
  /*width: 1008px;*/
 /* margin: 0 auto;*/
  padding-top:30px;
	padding-bottom: 30px;
}

#footer .inr .logo {
  width: 225px;
  float: left;
  margin-right: 36px;
}

#footer address {
   font-size: 14px;
   line-height: 1.6;
	width: auto;
}

#footer .copyright {
  text-align: center;
  color: #fff;
  padding: 15px 0;
  background-image: -moz-linear-gradient(left, #6f8e5d, #8499ad);
  background-image: -ms-linear-gradient(left, #6f8e5d, #8499ad);
  background-image: -o-linear-gradient(left, #6f8e5d, #8499ad);
  background-image: -webkit-gradient(linear, left top, right top, from(#6f8e5d), to(#8499ad));
  background-image: -webkit-linear-gradient(left, #6f8e5d, #8499ad);
  background-image: linear-gradient(left, #6f8e5d, #8499ad);
	height: 52px;
}
.copyright small {
	font-size:14px;
}

@media screen and (max-width: 768px) {
.copyright small {
	font-size:10px;
}
}

@media screen and (max-width: 768px) {
  #footer {
    margin-top: 30px;
  }
  #footer .inr {
    width: 100%;
    margin: 0 auto;
    padding: 20px 0;
  }
  #footer .inr .logo {
    width: 225px;
    float: none;
    margin: 0 auto 15px;
  }
  #footer address {
    padding: 0 10px;
    font-size: 12px;
  }
  #footer .copyright {
    font-size: 10px;
  }
}


#pagetop {
 position: fixed;
/*  display: none;*/
  right: 20px;
  bottom: 10px!important;
}

#pagetop a {
  width: 80px;
  height: 80px;
  background: #8499ad;
  -webkit-border-radius: 50%;
  -ms-border-radius: 50%;
  -moz-border-radius: 50%;
  -o-border-radius: 50%;
  border-radius: 50%;
  display: block;
  font-size: 11px;
  line-height: 80px;
  text-align: center;
  color: #fff;
}
#pagetop a:hover{
 opacity: 1.0;
  -webkit-transition: all .2s ease-in-out;
  -moz-transition: all .2s ease-in-out;
  -o-transition: all .2s ease-in-out;
  transition: all .2s ease-in-out;
}


#pagetop a:hover {
  background: #abc236;
}

@media screen and (max-width: 768px) {
  #pagetop {
    position: static;
    display: block;
    right: 0;
    bottom: 0;
    width: 100%;
  }
  #pagetop a {
    width: 100%;
    height: auto;
    background: #ccc;
    -webkit-border-radius: 0;
    -ms-border-radius: 0;
    -moz-border-radius: 0;
    -o-border-radius: 0;
    border-radius: 0;
    display: block;
    font-size: 11px;
    line-height: 1.6;
    text-align: center;
    color: #000;
    padding: 10px 0;
  }
  #pagetop a:hover {
    background: #abc236;
  }
}

@media screen and (min-width: 769px) and  (max-width: 992px) {
	#footer address {
    width: 62%;
    float: left;
    margin-right: 0px;
	}
}