*{box-sizing:border-box;}

body,html{
	padding:0;
	margin:0;
	height:100%;
	line-height:1.8;
}


div,p,span,th,td,dt,dd,input,textarea,select,a,h1,h2,h3,h4{
	font-size:1.0rem;
	box-sizing:border-box;
}


table{
	border-collapse: collapse;
	margin:0 0 10px;
	width:100%;
}

table th,table td{
	font-weight:normal;
	text-align:left;
	padding:5px 10px;
	font-size:14px;
	border:1px solid #999;
	vertical-align: top;
}

table th{
	background:#f0f0f0;
}

table td{
	background:#FFF;
}


h1{
	font-size:40px;
	font-weight:bold;
	padding:0;
	margin:0;
	margin-bottom:40px;
}

h2{
	font-size:28px;
	padding:0;
	margin:0;
	margin-bottom:40px;
	line-height:1.4;
}

h3{
    font-size: 24px;
    font-weight:bold;
    text-align:center;
    margin-bottom:40px;
   	line-height:1.4;
}


a.button1{
    text-decoration: none;
    border: 1px solid #ccc;
    box-sizing: border-box;
    display: block;
    color: #FFF;
    background: #666;
    text-align: center;
    max-width: 350px;
    margin: 40px auto 20px;
    padding: 11px 0;
    font-size: 18px;
    font-weight: bold;
    border-radius: 25px;
}

a.button2{
    text-decoration: none;
    border: 1px solid #ccc;
    box-sizing: border-box;
    display: block;
    color: #FFF;
    background: #666;
    text-align: center;
    max-width: 230px;
    margin: 40px auto 20px;
    padding: 8px 0;
    font-size: 16px;
    font-weight: bold;
    border-radius: 25px;
}

.inner{
	width:100%;
	max-width:1140px;
	padding:0 20px;
	margin:0 auto;
	box-sizing:border-box;
}

/* header
---------------------------------------*/
#header{
	padding:10px 0;
	margin:0;
	border-top:10px solid #ccc;
	border-bottom:1px solid #ccc;
	box-sizing:border-box;
}

#header .inner *{
	box-sizing:border-box;
	line-height:1.0;
}

#header .inner #logo a{
	padding:0;
	margin:0;
}

/*############################  860以上  ##########################*/
@media(min-width: 860px){
#header .inner{
	box-sizing:border-box;
	text-decoration: none;
	font-size:14px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack:justify;
	-ms-flex-pack:justify;
	justify-content:space-between;
    -ms-flex-wrap: wrap;
     flex-wrap: wrap;
}

#header .inner #logo img{
	padding:0;
	margin:0;
	line-height:1.0;
}

}

/*############################  860以下  ##########################*/
@media(max-width: 859px){
#header .inner{
	display:block;
}

#header #logo{
	margin-bottom:10px;
}

#header #logo img{
	margin:0 auto;
	display:block;
}

}

/* navigation
---------------------------------------------------*/
#navigation{}

#navigation:nth-child(3) ul > li > a{
    padding: 10px 25px;
    margin-right: 10px;
	border:2px solid #666;
	border-radius:25px;
	font-weight:bold;
	display:block;
}

#navigation:nth-child(3) ul > li:nth-child(2) > a{
    color:#FFF;
    background:#666;
}

#navigation ul{
	list-style:none;
	padding:0;
	margin:0;
	display:flex;
	justify-content:center;
}

#navigation ul li{
	padding:0;
	margin:0;
}

#navigation ul li a{
	min-width:80px;
	display:block;
	padding:0;
	margin:0;
	text-decoration:none;
    color: #666;
    font-weight: bold;
}

/*############################  860以上  ##########################*/
@media(min-width: 860px){
#navigation:nth-child(2){
    margin-right: auto;
    margin-left: 25px;
}

}

/*############################  860以下  ##########################*/
@media(max-width: 859px){
#navigation:nth-child(2),
#navigation:nth-child(3){
	margin:0 auto 10px;
	text-align:center;
}

}


/* content
---------------------------------------------------*/
#content{
	padding:30px 0 40px;
	margin:0;
	box-sizing:border-box;
	min-height:calc(100vh - 340px);
	background:#FFF;
}

#eyecacth,
#system-description{
	padding:85px 0;
    box-sizing: border-box;
}

#eyecacth .inner{
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
}

#eyecacth .left{
	width:40%;
}

#eyecacth .left h2{
	font-size:40px;
}

#eyecacth .left h2 br{
/*	content:"";
	margin-left:-0.5em;*/
	display:none;
}

#eyecacth .right{
	width:60%;
}

#eyecacth .right img{
    max-width:677px;
	width:100%;
	height:auto;
}

/*############################  960以下  ##########################*/
@media(max-width: 959px){
#eyecacth .inner{
	display:block;
}

#eyecacth .left h2{
	font-size:30px;
}

#eyecacth .left,
#eyecacth .right{
	width:100%;
	margin:0 auto;
	display:block;
}

#eyecacth .right img{
	margin:0 auto;
	display:block;
}

}

#system-description{
	background:#F9F9F9;
    box-sizing: border-box;
}

#system-description .top,
#system-description .bottom{
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
}

#system-description .top{
    padding-bottom:85px;
    flex-direction: row-reverse;
}

#system-description .left,
#system-description .right{
	-webkit-box-flex:1;
	    -ms-flex:1;
	        flex:1;
}

#system-description h2{
	font-size:28px;
}

#system-description .right img{
	max-width:567px;
	width:100%;
	height:auto;
}


/*############################  960以下  ##########################*/
@media(max-width: 959px){
#system-description .top,
#system-description .bottom{
	display:block;
}

#system-description .left,
#system-description .right{
	width:100%;
	margin:0 auto;
	display:block;
}

#system-description .right img{
	margin:0 auto;
	display:block;
}

}

#product{
	padding-top:85px;
    box-sizing: border-box;
}

#product .inner{
	padding-bottom:85px;
	border-bottom:1px solid #B3B3B3;
}

#product ul{
	width: calc(100% + 10px);
	list-style:none;
	margin:0;
	padding:0 0 50px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content:center;
}

#product ul li{
    width: calc(100% / 4);
    height:auto;
	margin:0;
    padding:0;
    padding-right: 10px;
}

#product ul li animation: {
    padding:0;
    margin:0;
    text-decoration:none;
    display:block;
}

#product ul li img{
    width: 100%;
    height: auto;
}

/*############################  680以下  ##########################*/
@media(max-width: 679px){
#product ul li{
	width:calc(100% / 2);
}

}

#payment{
	padding:85px 0;
}

#payment img{
	max-width:228px;
    width:100%;
    height:auto;
	margin:0 auto;
	display:block;
}

#payment p{
	padding:30px 0;
	text-align:center;
}

#scene{
	padding:85px 0;
	background:#F9F9F9;
    box-sizing: border-box;	
}

#scene ul{
	width:calc(100% + 10px);
   	list-style:none;
	margin:0;
	padding:0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content:center;
}

#scene ul li{
    width: calc(100% / 3);
    height:auto;
	margin:0;
    padding:0;
    padding-right:10px;
}

#scene ul li img{
    width: 100%;
    height: auto;
}

#scene ul li a{
    padding:0;
    margin:0;
    text-decoration:none;
    display:block;
}


/*############################  680以下  ##########################*/
@media(max-width:679px){
#scene ul{
	margin-right:0;
}

#scene ul li{
	max-width:361px;
	width:100%;
	display:block;
}

}

#infomation{
	padding:85px 0;

}

#infomation .inner{
	border-bottom:1px solid #B3B3B3;
}

#infomation h3{
    text-align:left;
}

#support{
	padding:0 0 85px;
}

#support h3{
	margin:0;
}

#support p{
    padding:40px 0;
    margin:0;
    text-align:center;
}

#support .button1{
	margin:0 auto;
}

/* footer
---------------------------------------------------*/
#footer{
	padding:50px 0 0;
	margin:0;
	box-sizing:border-box;
	background:#333;
}

#footer .inner{
	position:relative;
}

#footer .inner:before{
    content: "";
    position: absolute;
    bottom: 70px;
    left: 0;
    width: 100%;
    height: 1px;
    padding: 0;
    margin: 0 auto 20px;
	border-bottom:1px solid #B3B3B3;
    display: block;
}


#footer *{
	color:#fff;
	font-size:14px;
}

#footer a{
	text-decoration: none;
	display: inline-block;
}

#footer h3{
	padding:0;
	margin:0;
	text-align:left;
	font-size:18px;
}


#footer #footernavi{
    max-width: 300px;
    padding: 10px 0 50px;
    display: flex;
    flex-wrap: wrap;
    justify-content:space-between;
}

#footer #legal{
    max-width: 450px;
    padding: 20px 10px 0;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
}


/*############################  425以下  ##########################*/
@media(max-width:425px){
#footer .inner:before{
    bottom:120px;
}

#footer #legal{
	display:block;
}


}

