/*# ★★外部データ読み込み★★ */

/*# PCスマホメニュー */
@import url("menu.css");

/*# テキスト系 */
@import url("txt.css");



/*# ★★トップメインビジュアル★★ */

.m-logo {
	width: 210px;
	height: 42px;
	position:fixed;
	z-index: 3000;
	top: 30px;
}

#mainvisual {
	width: 100%;
	height: 800px;
	text-align: center;
	background-image: url(../images/topimg.jpg);
	background-position:center top;
	background-repeat:no-repeat;
	-moz-background-size:cover;
	background-size:cover;
	position:relative;
}

#mainvisual h1 {
	font-size: 1.5rem;
	color: #ffffff;
	font-weight: 400;
	line-height: 1.5;
}

#mainvisual h2 {
	font-size: 5rem;
	color: #ffffff;
	font-weight: 400;
	line-height: 1.5;
}

.main-waku{
	width: 1140px;
	height: 800px;
	text-align: left;
	margin-right: auto;
	margin-left: auto;
	position:relative;
}

.main-nai{
	position:absolute;
	bottom: 45px;
	left: 0px;
}

.main-nai ul{
	margin-top: 30px;
}

.main-nai ul li{
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	font-size: 1.3rem;
	color: #fff;
	padding-bottom: 10px;
	margin-bottom: 30px;
	border-bottom-width: 2px;
	border-bottom-style: solid;
	border-bottom-color: #ffffff;
}

.main-nai ul li span{
	font-size: 3.0rem;
}

@media screen and (max-width:1200px) {

#mainvisual {
	height: 600px;
}
	
.main-waku{
	width: 95%;
	height: 600px;
}
	
.main-nai{
	bottom: 20px;
}
	
.main-nai ul{
	margin-top: 10px;
}

.main-nai ul li{
	font-size: 1.3rem;
	padding-bottom: 5px;
	margin-bottom: 10px;
	border-bottom-width: 1px;
}

.main-nai ul li span{
	font-size: 2.0rem;
}

}

@media screen and (max-width:992px) {

.m-logo {
	width: 168px;
	height: 33px;
	top: 7px;
}

}

@media screen and (max-width:768px) {
	
.main-nai{
	bottom: 10px;
}
	
.main-nai ul{
	margin-top: 5px;
}

	
.main-nai ul li{
	font-size: 1.1rem;
	padding-bottom: 2px;
	margin-bottom: 5px;
	border-bottom-width: 1px;
}

.main-nai ul li span{
	font-size: 1.5rem;
}
	
}

@media screen and (max-width:568px) {

#mainvisual {
	height: 400px;
}
	
.main-waku{
	height: 400px;
}

}



/*# ★★セカンドのメイン★★ */

#secvisual-us {
	width: 100%;
	height: 500px;
	text-align: center;
	background-image: url(../images/secimg01.jpg);
	background-position:center top;
	background-repeat:no-repeat;
	-moz-background-size:cover;
	background-size:cover;
	position:relative;
	margin-top: 100px;
  position: relative;
}

#secvisual-in {
	width: 100%;
	height: 500px;
	text-align: center;
	background-image: url(../images/secimg02.jpg);
	background-position:center top;
	background-repeat:no-repeat;
	-moz-background-size:cover;
	background-size:cover;
	position:relative;
	margin-top: 100px;
  position: relative;
}

#secvisual-pr {
	width: 100%;
	height: 500px;
	text-align: center;
	background-image: url(../images/secimg03.jpg);
	background-position:center top;
	background-repeat:no-repeat;
	-moz-background-size:cover;
	background-size:cover;
	position:relative;
	margin-top: 100px;
  position: relative;
}

#secvisual-cn {
	width: 100%;
	height: 500px;
	text-align: center;
	background-image: url(../images/secimg04.jpg);
	background-position:center top;
	background-repeat:no-repeat;
	-moz-background-size:cover;
	background-size:cover;
	position:relative;
	margin-top: 100px;
  position: relative;
}

#secvisual-us h1,
#secvisual-in h1,
#secvisual-pr h1,
#secvisual-cn h1 {
	font-size: 3.5rem;
	color: #000;
	font-weight: 400;
	line-height: 150%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit- transform: translateY(-50%) translateX(-50%);
}

@media screen and (max-width:992px) {
	
#secvisual-us,
#secvisual-in,
#secvisual-pr,
#secvisual-cn {
	height: 300px;
	margin-top: 50px;
}
	
#secvisual-us h1,
#secvisual-in h1,
#secvisual-pr h1,
#secvisual-cn h1 {
	font-size: 2.5rem;
}
	
}

@media screen and (max-width:568px) {

#secvisual-us,
#secvisual-in,
#secvisual-pr,
#secvisual-cn {
	height: 200px;
	margin-top: 50px;
}
	
#secvisual-us h1,
#secvisual-in h1,
#secvisual-pr h1,
#secvisual-cn h1 {
	font-size: 2.0rem;
}
	
}

/*# 共通項目 */

.ts-back-w1{
	width: 100%;
	height: auto;
	background-color: #FFFFFF;
	padding-top: 100px !important;
	padding-bottom: 100px !important;
	position: relative;
}

.ts-back-g1{
	width: 100%;
	height: auto;
	background-color: #fafafa;
	padding-top: 100px !important;
	padding-bottom: 100px !important;
	position: relative;
}

.ts-back-01{
	width: 100%;
	height: auto;
	background-color: #FFFFFF;
	padding-top: 100px !important;
	padding-bottom: 100px !important;
	z-index: 1;
  position: relative;
}

.ts-back-01::after{
  content: '';
  position: absolute;
  top: 0;
  left: 0;
width: 0;
height: 0;
border-style: solid;
border-width: 200px 1200px 0 0px;
border-color: #f1f2f4 transparent transparent transparent;
	z-index: 2;
}

.ts-back-01 .inner1140{
  position: relative;
	z-index: 100;
}

.ts-back-02{
	width: 100%;
	height: auto;
	padding-top: 100px !important;
	padding-bottom: 100px !important;
	background-image: url(../images/back01.jpg);
	background-position:center center;
	background-repeat:no-repeat;
	-moz-background-size:cover;
	background-size:cover;
}

.ts-back-03{
  background-image:
    url("../images/intback01_02.png"), /* 前面の背景画像 */
    url("../images/intback01_01.png");   /* 背面の背景画像 */

  background-repeat:
    no-repeat, /* 最前面 */
	no-repeat;

  background-position:
    bottom left, /* 最前面 */
    top right;
	
  background-size:
    auto, /* 最前面 */
	1000px auto;
	
	position: relative;
	z-index: 1;
	width: 100%;
	height: 1100px;
	padding: 0;
	margin: 0;
	padding-top: 100px !important;
	padding-bottom: 100px !important;
}

.ts-back-04{
	width: 100%;
	height: auto;
	padding-top: 100px !important;
	padding-bottom: 100px !important;
	background-image: url(../images/back02.jpg);
	background-position:center center;
	background-repeat:no-repeat;
	-moz-background-size:cover;
	background-size:cover;
}

.ts-back-05{
	width: 100%;
	height: auto;
	padding-top: 100px !important;
	padding-bottom: 100px !important;
	background-image: url(../images/back03.jpg);
	background-position: right bottom;
	background-repeat: no-repeat;
	-moz-background-size: cover;
	background-size: cover;
}

.foo-back{
	width: 100%;
	height: auto;
	padding-top: 100px !important;
	padding-bottom: 100px !important;
	background-image: url(../images/fooback01.jpg);
	background-position:center center;
	background-repeat:no-repeat;
	-moz-background-size:cover;
	background-size:cover;
}

#bas,
#log,
#phi,
#com,
#his,
#fac,
#tori,
#order,
#case{
   margin-top:-50px;
  padding-top:50px;
}

@media screen and (max-width:1200px) {
	
.ts-back-03{
  background-size:
    500px auto, /* 最前面 */
	700px auto;

	height: 900px;
	padding-top: 100px !important;
	padding-bottom: 100px !important;
}
	
}

@media screen and (max-width:992px) {

.ts-back-w1,
.ts-back-g1,
.ts-back-01,
.ts-back-02,
.ts-back-04,
.ts-back-05,
.foo-back{
	padding-top: 50px !important;
	padding-bottom: 50px !important;
}
	
.ts-back-03{
	padding-top: 50px !important;
	padding-bottom: 50px !important;
}
	
}

@media screen and (max-width:768px) {
	
.ts-back-03{
  background-image:
    none, /* 前面の背景画像 */
    none;   /* 背面の背景画像 */
	height: auto;
}
	
.ts-back-04{
	background-image: none;
	background-color: #fafafa;
}

.ts-back-05{
	background-image: none;
}
	
}

@media screen and (max-width:568px) {
	
.ts-back-w1,
.ts-back-g1,
.ts-back-01,
.ts-back-02,
.ts-back-04,
.ts-back-05,
.foo-back{
	padding-top: 30px !important;
	padding-bottom: 30px !important;
}
	
.ts-back-03{
	padding-top: 30px !important;
	padding-bottom: 30px !important;
}
	
}

/*# 内枠 */

.w45-l{
	width: 45%;
	float: left;
}

.w50-r{
	width: 50%;
	float: right;
}

@media screen and (max-width:768px) {
	
.w45-l,
.w50-r{
	width: 100%;
 	float: none;
	clear: both;
}

}

/*# 細かいパーツ */

.separator_100{
    width:100%;
    height:1px;
    margin:30px auto;
    background: #fff;
}

.separator_100pc{
    width:100%;
    height:1px;
    margin:30px auto;
    background: #fff;
}

.separator_auto{
    width:45px;
    height:2px;
    margin:30px auto;
    background: #2ba4dc;
}

.pro-list{
    width:100%;
    border-collapse: separate;  /* 表の線と線の間を空ける */
    border-spacing: 20px;
	padding-top: 20px;
}

.pro-list td{
    width:20%;
    background: #fff;
	font-size: 1.5rem;
	line-height: 1.4;
	height: 80px;
	vertical-align:middle;
}

.logo-l {
	width: 236px;
	height: 112px;
	margin-right: auto;
	margin-left: auto;
	margin-top: 30px;
}

.z100 {
  position: relative;
	z-index: 100;
}

.ill01 {
	width: 40%;
	position: absolute;
	top: 150px;
	right: 0;
	z-index: 1;
}

.ill02 {
	width: 80%;
	margin-right: auto;
	margin-left: auto;
  position: relative;
	z-index: 100;
	margin-top: 100px;
}

.ill03 {
	width: 20%;
	position: absolute;
	top: -70px;
	left: 200px;
	z-index: 1;
}

.ill04 {
	width: 15%;
	position: absolute;
	top: 180px;
	right: 280px;
	z-index: 1;
}

.equal {
	font-family: 'Noto Sans JP', sans-serif;
	position: relative;
  	font-size: 4rem;
    transform:rotate(90deg);
	color: #bbbbbb;
	font-weight: 300;
	margin-top: 30px;
}

@media screen and (max-width:768px) {
	
.pro-list{
    border-spacing: 10px;
	padding-top: 10px;
}

.pro-list td{
    width:20%;
    background: #fff;
	font-size: 1.2rem;
	line-height: 1.4;
	height: 50px;
	vertical-align:middle;
}
	
.ill02 {
	width: 100%;
	margin-top: 30px;
}
	
.ill03 {
	display: none;
}
	
.ill04 {
	display: none;
}
	
.equal {
  	font-size: 3rem;
	margin-top: 20px;
}
	
}

@media screen and (max-width:650px) {
	
.separator_100pc{
	display: none;
}
	
}

@media screen and (max-width:568px) {
.pro-list{
    width:80%;
    border-collapse: separate;  /* 表の線と線の間を空ける */
    border-spacing: 0px;
	padding-top: 0px;
	margin-right: auto;
	margin-left: auto;
}

.pro-list td{
	display: block;
    width:100%;
    background: #fff;
	font-size: 1.3rem;
	line-height: 1.4;
	height: 20px;
	vertical-align:middle;
	margin-top: 10px;
}
	
.ill01 {
	display: none;
}

}

/*# ボタン類 */

a.btn1 {
	display: block;
	margin-top: 50px;
	margin-right: auto;
	margin-left: auto;
	padding: 10px 10px;
	border: 1px solid #000;
	color: #000;
	text-decoration: none;
  font-size: 1.5rem;
	transition: .7s;
	position: relative;
	font-family: 'Noto Sans JP', sans-serif;
  max-width: 200px;
  text-align: center;
}

a.btn1:before {
  display: block;
  content: "＞";
  color: #000;
  font-size: 1.5rem;
  position: absolute;
  top: 10px;
  right: 20px;
  transition: .7s;
	font-family: 'Noto Sans JP', sans-serif;
}

a.btn1:hover {
  color: #fff!important;
  background: #2ba4dc;
  border: 1px solid #2ba4dc;
  opacity: 1;
}

a.btn1:hover:before {
  color: #fff;
  right: 10px;
}

a.btn2 {
	display: block;
	margin-top: 50px;
	margin-right: auto;
	margin-left: auto;
	padding: 10px 10px;
	border: 1px solid #000;
	color: #000;
	text-decoration: none;
  font-size: 1.5rem;
	transition: .7s;
	position: relative;
	font-family: 'Noto Sans JP', sans-serif;
  max-width: 200px;
  text-align: center;
}

a.btn2:after {
  display: block;
  content: "＜";
  color: #000;
  font-size: 1.5rem;
  position: absolute;
  top: 10px;
  left: 20px;
  transition: .7s;
	font-family: 'Noto Sans JP', sans-serif;
}

a.btn2:hover {
  color: #fff!important;
  background: #2ba4dc;
  border: 1px solid #2ba4dc;
  opacity: 1;
}

a.btn2:hover:after {
  color: #fff;
  left: 10px;
}

@media screen and (max-width:768px) {
	
a.btn1 {
	margin-top: 30px;
	margin-right: auto;
	margin-left: auto;
	padding: 5px 10px;
	font-size: 1.4rem;
	max-width: 200px;
	text-align: center;
}
	
a.btn1:before {
  font-size: 1.4rem;
  top: 5px;
  right: 20px;
}
	
a.btn2 {
	margin-top: 30px;
	margin-right: auto;
	margin-left: auto;
	padding: 5px 10px;
	font-size: 1.4rem;
	max-width: 200px;
	text-align: center;
}
	
a.btn2:after {
  font-size: 1.4rem;
  top: 5px;
  left: 20px;
}
	
}

/*# テーブル */

.sec-table01 {
	display: block;
}

.sec-table01 table {
	margin-top: 20px;
	display: block;
	width:100%;
	margin-right: auto;
	margin-left: auto;
}

.sec-table01 table tr {

}

.sec-table01 table th{
	width:200px;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.4rem;
	line-height: 1.8;
	font-weight: 300;
	padding-top: 10px;
	padding-bottom: 10px;
	text-align: left;
	vertical-align:top;
}

.sec-table01 table th.w100{
	width:100px;
}

.sec-table01 table th.w200{
	width:200px;
}

.sec-table01 table td.w30{
	width:30px;
}

.sec-table01 table td.w50{
	width:50px;
}

.sec-table01 table td{
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.4rem;
	line-height: 1.8;
	font-weight: 300;
	padding-top: 10px;
	padding-bottom: 10px;
	text-align: left;
	vertical-align:top;
}

.sec-table02 {
	display: block;
	width:100%;
}

.sec-table02 table {
	margin-top: 20px;
	display: block;
	width:100%;
	margin-right: auto;
	margin-left: auto;
}

.sec-table02 table tr {
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #000;
}

.sec-table02 table th{
	width:200px;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.4rem;
	line-height: 1.8;
	font-weight: 300;
	padding-top: 20px;
	padding-bottom: 20px;
	text-align: left;
	vertical-align:top;
}

.sec-table02 table td{
	width:600px;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.4rem;
	line-height: 1.8;
	font-weight: 300;
	padding-top: 20px;
	padding-bottom: 20px;
	text-align: left;
	vertical-align:top;
}

@media screen and (max-width:992px) {
	
.sec-table01 table {
	width:100%;
}
	
.sec-table01 table th{
	width:150px;
	font-size: 1.3rem;
}

.sec-table01 table td{
	font-size: 1.3rem;
}
	
.sec-table02 table th{
	width:150px;
	font-size: 1.3rem;
}
	
.sec-table02 table td{
	width:auto;
	font-size: 1.3rem;
}
	
}

@media screen and (max-width:568px) {

.sec-table01 table {
	width:100%;
}
	
.sec-table01 table th{
	display: block;
	width:100%;
	margin-top: 10px;
	padding-top: 0px;
	padding-bottom: 2px;
	font-weight: 500;
	line-height: 1.5;
}

.sec-table01 table td{
	display: block;
	width:100%;
	padding-top: 0px;
	padding-bottom: 10px;
	line-height: 1.5;
}
	
.sec-table01 table th.w100{
	width:100%;
}

.sec-table01 table th.w200{
	width:100%;
}

.sec-table01 table td.w30{
	width:100%;
}

.sec-table01 table td.w50{
	padding-bottom: 0px;
	width:100%;
}
	
.sec-table02 {
	width:100%;
}

.sec-table02 table {
	margin-top: 20px;
}

.sec-table02 table th{
	display: block;
	width:100%;
	padding-top: 10px;
	padding-bottom: 0px;
	font-weight: 500;
}

.sec-table02 table td{
	display: block;
	width:100%;
	padding-top: 0px;
	padding-bottom: 10px;
	line-height: 1.5;
}

}


/*# 会社概要 */

.com-ul {
	display: block;
	width: 100%;
	font-size: 0;
	margin-top: 20px;
	text-align: left;
	display:flex;
	display:-moz-flex;
	display:-o-flex;
	display:-webkit-flex;
	display:-ms-flex;
	justify-content:space-between;
	-moz-justify-content:space-between;
	-o-justify-content:space-between;
	-webkit-justify-content:space-between;
	-ms-justify-content:space-between;
}

.com-ul li {
	width: 30%;
	display: inline-block;
    position: relative;
	color: #000;
	font-size: 1.4rem;
    z-index: 1; /* 必要であればリンク要素の重なりのベース順序指定 */
}

.com-ul li span {
	color: #2ba4dc;
}

.com-ul li img {
	width: 100%;
	display: block;
}

.com-ul li a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    text-indent:-999px;
    z-index: 2; /* 必要であればリンク要素の重なりのベース順序指定 */
}

.com-ul li:hover {
    filter:alpha(opacity=70);/* IE 6,7*/
    -ms-filter: "alpha(opacity=70)";/* IE 8,9 */
    -moz-opacity:0.7;/* FF , Netscape */
    -khtml-opacity: 0.7;/* Safari 1.x */
    opacity:0.7;
    zoom:1;/*IE*/
}

@media screen and (max-width:1200px) {

.com-ul li {
	width: 33%;
	font-size: 1.3rem;
}
	
}

@media screen and (max-width:768px) {
	
.com-ul li {
	font-size: 1.2rem;
}
	
}

@media screen and (max-width:568px) {
	
.com-ul {
	width: 100%;
	margin-top: 20px;
	margin-right: auto;
	margin-left: auto;
	display:initial;
	display:-moz-initial;
	display:-o-initial;
	display:-webkit-initial;
	display:-ms-initial;
	justify-content:space-between;
	-moz-justify-content:space-between;
	-o-justify-content:space-between;
	-webkit-justify-content:space-between;
	-ms-justify-content:space-between;
}
	
.com-ul li {
	width: 80%;
	margin-right: auto;
	margin-left: auto;
	display: block;
    position: relative;
	color: #000;
	font-size: 1.2rem;
    z-index: 1; /* 必要であればリンク要素の重なりのベース順序指定 */
	margin-top: 5px;
}
	
.com-ul + .com-ul {
	margin-top: 0;
}
	
}

/*# インタビュー */

.intwaku-01 {
	width: 60%;
	text-align: left;
}

.intwaku-02,
.intwaku-03 {
	width: 100%;
	height: 450px;
	text-align: left;
    position: relative;
}

.intimg_sp {
	display: none;
}

.intimg01 {
	width: 600px;
	position: absolute;
	z-index: 100;
	bottom: -50px;
	right: 50px;
}

.intcome02 {
	margin-top: 50px;
	width: 50%;
	position: absolute;
	z-index: 100;
	right: 0;
    background-color: rgba(255,255,255,0.7);
	padding: 30px;
	height: 350px;
}

.intcome03 {
	margin-top: 50px;
	width: 50%;
	position: absolute;
	z-index: 100;
	left: 0;
    background-color: rgba(255,255,255,0.7);
	padding: 30px;
	height: 350px;
}

.intimg02 {
	width: 900px;
	position: absolute;
	z-index: 1;
	left: 0;
}

.intimg03 {
	width: 900px;
	position: absolute;
	z-index: 1;
	right: 0;
}

@media screen and (max-width:1200px) {
	
.intwaku-01 {
	width: 70%;
	text-align: left;
}
	
.intimg01 {
	width: 400px;
	position: absolute;
	z-index: 100;
	bottom: -10px;
	right: 30px;
}
	
.intwaku-02,
.intwaku-03 {
	height: 350px;
}
	
.intcome02 {
	margin-top: 20px;
	padding: 20px;
	height: 310px;
}

.intcome03 {
	margin-top: 20px;
	padding: 20px;
	height: 310px;
}
	
.intimg02 {
	width: 700px;
}

.intimg03 {
	width: 700px;
}

}

@media screen and (max-width:768px) {

.intwaku-01 {
	width: 100%;
	text-align: left;
}
	
.intwaku-02,
.intwaku-03 {
	width: 100%;
	height: auto;

}
	
.intwaku-02 + .intwaku-03,
.intwaku-03 + .intwaku-02{
	margin-top: 80px;
}
	
.intimg_sp {
	display: block;
  position: relative;
	width: 100%;
	margin-top: 10px;
}

.intimg01 {
	display: block;
  position: relative;
	width: 100%;
	bottom: 0;
	right: 0;
	margin-top: 10px;
}
	
.intcome02 {
	margin-top: 10px;
	width: 100%;
  position: relative;
	z-index: 100;
	background-color: #fff;
	padding: 0px;
	height: auto;
}

.intcome03 {
	margin-top: 10px;
	width: 100%;
  position: relative;
	z-index: 100;
	background-color: #fff;
	padding: 0px;
	height: auto;
}

.intimg02,
.intimg03 {
	width: 95%;
	position: relative;
	margin-right: auto;
	margin-left: auto;
	margin-top: 10px;
}
	
}

/*# 製品情報 */

.line-waku {
	width: 300px;
	position: relative;
	margin-right: 15px;
	margin-left: 15px;
	margin-top: 30px;
	border : solid 3px #000 ;
	font-family: 'Noto Sans JP', sans-serif;
  	font-size: 1.5rem;
  	font-weight: 400;
	padding-top: 30px;
	padding-bottom: 30px;
	padding-right: 10px;
	padding-left: 10px;
	display: inline-block;
}

.line-waku span {
	margin-top: 10px;
	font-family: 'Noto Sans JP', sans-serif;
  	font-size: 2rem;
  	font-weight: 500;
	display: block;
}

.line-waku2 {
	width: 100%;
	display: block;
}

.line-waku2 + .line-waku2 {
	margin-top: 50px;
}

.line-waku3 {
	width: 100%;
	padding: 50px;
}

.line-waku3 .p-2 {
	margin-top: 20px;
}

.line-ul {
	width: 100%;
	font-size: 0;
	margin-top: 20px;
	text-align: center;
	padding: 0;
}

.line-ul + .line-ul {
	margin-top: 100px;
}

.line-ul li {
	width: 23%;
	display: inline-block;
    position: relative;
    z-index: 1; /* 必要であればリンク要素の重なりのベース順序指定 */
	padding: 0;
}

.line-ul li img {
	width: 100%;
	display: block;
}

.line-ul li div {
	width: 100%;
	display: block;
	height: 100px;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #000;
  position: relative;
	padding: 0;
}

.line-ul li span {
	width: 100%;
	color: #000;
	font-size: 1.5rem;
	line-height: 1.8;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit- transform: translateY(-50%) translateX(-50%);
}

.line-ul li a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    text-indent:-999px;
    z-index: 2; /* 必要であればリンク要素の重なりのベース順序指定 */
}
.line-ul li:hover {
    filter:alpha(opacity=70);/* IE 6,7*/
    -ms-filter: "alpha(opacity=70)";/* IE 8,9 */
    -moz-opacity:0.7;/* FF , Netscape */
    -khtml-opacity: 0.7;/* Safari 1.x */
    opacity:0.7;
    zoom:1;/*IE*/
}

@media screen and (max-width:1200px) {
	
.line-ul li div {
	height: 80px;
}
	
.line-ul li span {
	font-size: 1.3rem;
	line-height: 1.5;
}
		
}

@media screen and (max-width:768px) {
	
.line-waku {
	width: 43%;
	position: relative;
	margin-right: 5px;
	margin-left: 5px;
	margin-top: 10px;
	border : solid 3px #000 ;
	font-family: 'Noto Sans JP', sans-serif;
  	font-size: 1.3rem;
  	font-weight: 400;
	padding-top: 15px;
	padding-bottom: 15px;
	padding-right: 5px;
	padding-left: 5px;
	display: inline-block;
}
	
.line-waku span {
	margin-top: 5px;
  	font-size: 1.6rem;
}
	
.line-waku2 + .line-waku2 {
	margin-top: 20px;
}
	
.line-waku3 {
	padding: 20px;
}

.line-waku3 .p-2 {
	margin-top: 20px;
}
	
.line-ul + .line-ul {
	margin-top: 20px;
}
	
.line-ul li {
	width: 47%;
	margin-right: 5px;
	margin-left: 5px;
}
	
.line-ul li div {
	height: 50px;
}
	
.line-ul li span {
	font-size: 1.3rem;
	line-height: 1.5;
}
		
}

@media screen and (max-width:568px) {

.line-waku {
	width: 100%;
	position: relative;
	margin-right: auto;
	margin-left: auto;
	margin-top: 10px;
	border : solid 3px #000 ;
	font-family: 'Noto Sans JP', sans-serif;
  	font-size: 1.3rem;
  	font-weight: 400;
	padding-top: 15px;
	padding-bottom: 15px;
	padding-right: 5px;
	padding-left: 5px;
	display: block;
}
	
.line-waku span {
	margin-top: 5px;
	font-family: 'Noto Sans JP', sans-serif;
  	font-size: 1.6rem;
  	font-weight: 500;
	display: block;
}
	
}

/*# エコアクション */

.eco1 {
	width: 200px;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 30px;
}

@media screen and (max-width:568px) {
	
.eco1 {
	width: 130px;
	margin-bottom: 20px;
}
	
}


/*# お問い合わせ */

.com-waku1{
    width:100%;
	margin-bottom: 50px;
}

@media screen and (max-width:768px) {
	
.com-waku1{
    width:100%;
	margin-bottom: 30px;
}
	
}


/*# フッター */

.foo-list{
    width:100%;
}

.foo-list td{
    width:15%;
	vertical-align:top;
	color: #fff;
	font-size: 1.2rem;
	line-height: 1.4;
	text-align: left;
}

.foo-list td.sl{
    width:25%;
	vertical-align:top;
	line-height: 1.7;
}

.foo-f{
	font-size: 1.0rem;
	line-height: 1.4;
	color: #fff;
}

.foo-logo{
	width: 179px;
	height: 36px;
	margin-bottom: 10px;
}

.foo-ul {
	width: 100%;
	font-size: 0;
	margin-top: 20px;
	text-align: center;
}

.foo-ul li {
	width: 23%;
	display: inline-block;
    position: relative;
    z-index: 1; /* 必要であればリンク要素の重なりのベース順序指定 */
}

.foo-ul li img {
	width: 100%;
	display: block;
}

.foo-ul li span {
	width: 100%;
	display: block;
	color: #fff;
	font-size: 1.5rem;
	margin-top: 25px;
}

.foo-ul li span::before{
  content: "＞ ";
}

.foo-ul li a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    text-indent:-999px;
    z-index: 2; /* 必要であればリンク要素の重なりのベース順序指定 */
}
.foo-ul li:hover {
    filter:alpha(opacity=70);/* IE 6,7*/
    -ms-filter: "alpha(opacity=70)";/* IE 8,9 */
    -moz-opacity:0.7;/* FF , Netscape */
    -khtml-opacity: 0.7;/* Safari 1.x */
    opacity:0.7;
    zoom:1;/*IE*/
}

.foo-ul2 {
	font-size: 0;
	text-align: left;
    position: relative;
}

.foo-ul2 li {
	display: block;
	font-size: 1.2rem;
	line-height: 2;
	color: #fff;
    position: relative;
}

.foo-ul2 li::before{
  content: "＞ ";
}

.foo-ul2 li a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    text-indent:-999px;
    z-index: 2; /* 必要であればリンク要素の重なりのベース順序指定 */
}

.foo-ul2 li:hover {
    filter:alpha(opacity=70);/* IE 6,7*/
    -ms-filter: "alpha(opacity=70)";/* IE 8,9 */
    -moz-opacity:0.7;/* FF , Netscape */
    -khtml-opacity: 0.7;/* Safari 1.x */
    opacity:0.7;
    zoom:1;/*IE*/
}

@media screen and (max-width:1200px) {
	
.foo-list td{
    width:auto;
}

.foo-list td.sl{
    width:auto;
}
	
.foo-ul {
	width: 100%;
	margin-top: 10px;
}

.foo-ul li {
	width: 24%;
}
	
.foo-ul li span {
	width: 100%;
	display: block;
	color: #fff;
	font-size: 1.3rem;
	margin-top: 10px;
}
	
.foo-ul2 li {
	font-size: 1.0rem;
	line-height: 1.8;
}
	
}

@media screen and (max-width:768px) {
	
.foo-list{
    width:100%;
}
	
.foo-ul {
	width: 100%;
	margin-top: 5px;
}

.foo-ul li {
	width: 24.5%;
}
	
.foo-ul li span {
	font-size: 1.0rem;
	margin-top: 5px;
}
	
	
}


@media screen and (max-width:650px) {
	
.foo-list{
	display: none;
}
	
.foo-ul {
	margin-top: 5px;
	margin-bottom: 20px;
}
	
.foo-ul2 {
	display: none;
}

.foo-ul2 li {
	display: none;
}
	
}


