@charset "utf-8";
body {
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
	font-size: 14px;
	line-height: 1.8em;
}
ul { margin:0; padding: 0; list-style: none; }
//a { color: #fff; }
a:hover, a:active { text-decoration: none; }
.wrapper { position: relative; }
h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6{
	color: #3a3a3a;
	font-weight: 900;
	margin-bottom: 20px;
	font-family: "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
}

/*共通
-------------------------------------------*/
.txtLeft { text-align: left; }
.txtRight { text-align: right; }
.txtCenter { text-align: center }

.clearF { clear: both; }

.bg-white { background: #fff; }
.bg-gray { background: #F0F0E1; }
.bg-dark { background: #575757; }

.br { display: none; }
.space { margin-left: 6.1em; }
@media screen and (max-width:760px) {
    .br{ display: block; }
	.space { display: none; }
}

/* ================================
margin, padding
================================= */
.mar-top0 {
	margin-top: 0;
}
.mar-top10 {
	margin-top: 10px;
}
.mar-top20 {
	margin-top: 20px;
}
.mar-top30 {
	margin-top: 30px;
}
.mar-top40 {
	margin-top: 40px;
}
.mar-top50 {
	margin-top: 50px;
}
.mar-top60 {
	margin-top: 60px;
}
.mar-top70 {
	margin-top: 70px;
}
.mar-top80 {
	margin-top: 80px;
}
.mar-top90 {
	margin-top: 90px;
}
.mar-top100 {
	margin-top: 100px;
}

.mar-btm50 {
	margin-bottom: 50px;
}

/* ================================
font-size
================================= */
.f12 { font-size: 12px; }
.f14 { font-size: 14px; }
.f16 { font-size: 16px; }
.f18 { font-size: 18px; }
.f20 { font-size: 20px; }
.f22 { font-size: 22px; }
.f24 { font-size: 24px; }
.f26 { font-size: 26px; }
.f28 { font-size: 28px; }
.f30 { font-size: 30px; }


/* トップ　ナビ メインイメージ
---------------------------------------------------------*/
#head_wrap {
  position: relative;
  width: 100%;
  margin: 0 auto 0;
  line-height: 1;
  z-index: 999;
  height: 0px;
  text-decoration: none;
}

#head_wrap a {
  text-decoration: none;
}

#head_wrap .inner {
  width: 100%;
  margin: 0 auto;
  position: relative;
	background-color: rgba(0,0,0,0.20)
}

#head_wrap .inner:after {
  content: "";
  clear: both;
  display: block;
}

#head_wrap .logo {}
#head_wrap .logo img {
	height: 70px;
}

#global-nav {
  position: absolute;
  right: 0;
  top: 0;
}

#global-nav ul {
  list-style: none;
  font-size: 14px;
  margin-right: 10px;
  display: inline-flex;
}

@media (max-width: 760px) {
  #global-nav ul {
    display: block;
    margin-right: 0px;
  }
}

#global-nav ul li {
  padding: 30px 10px;
}

#global-nav ul li:last-child {
  border-right: none;
}

@media (max-width: 760px) {
  #global-nav ul li {
    border-right: none;
	border-bottom: 1px dotted #ddd;
  }
}

#global-nav ul li a {
  padding: 0 5px;
  padding: 20px;
  transition: all .6s ease 0s;
  box-sizing: border-box;
  font-weight: bold;
  color: #fff;
}

/* Fixed */
#head_wrap.fixed {
  margin-top: 0;
  top: 0;
  position: fixed;
  height: 100px;
  transition: top 0.65s ease-in;
  -webkit-transition: top 0.65s ease-in;
  -moz-transition: top 0.65s ease-in;
  z-index: 9999;
}

#head_wrap.fixed .logo {}

#head_wrap.fixed #global-nav ul li a {}

/* Toggle Button */
#nav-toggle {
  display: none;
  position: absolute;
  right: 12px;
  top: 14px;
  width: 34px;
  height: 36px;
  cursor: pointer;
  z-index: 101;
}

#nav-toggle div {
  position: relative;
}

/* 
---------------------------------------------*/
.intro-text {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  text-align: center;
  position: absolute;
  bottom: 0;
  top: 0;
  left: 0;
  right: 0;
  z-index:50;

}
.intro-text .introWrap {
	background: rgba(60,103,71,0.40);
	padding: 20px 25px;
}
.intro-text h2 {
	color:#fff;
	text-align:center;
	font-weight: 700;
	font-size: 34px;
	line-height:1.1em;
	text-transform: uppercase;
}

.line-spacer {
	width: 100%;
	margin:0 auto;
	margin-top: 20px;
	margin-bottom: 25px;
	border-bottom:1px solid #fff;
}

.intro-text p span {
	color:#fff;
	font-size: 24px;
	text-align:center;
	font-weight: 300;
}


@media (max-width: 760px) {
  #head_wrap {
    top: 0;
    position: fixed;
    margin-top: 0;
    width: 100%;
    padding: 0;
    /* Fixed reset */
  }
  #head_wrap .inner {
    width: 100%;
    padding: 0;
  }
  #head_wrap .fixed {
    padding-top: 0;
    background: transparent;
  }
  #mobile-head {
    background: rgba(255, 255, 255, 0.0);
    width: 100%;
    height: 56px;
    z-index: 999;
    position: relative;
  }
  #head_wrap.fixed .logo,
  #head_wrap .logo {
    position: absolute;
    left: 10px;
    top: 3px;
  }
	#head_wrap .logo img {
		height: 50px;
	}
  #global-nav {
    position: absolute;
    /* 開いてないときは画面外に配置 */
    /*top: -500px;*/
	top: -900px;
	height: 900px;
    background: rgba(0, 0, 0, 0.35);
    width: 100%;
    text-align: center;
    -webkit-transition: .5s ease-in-out;
    -moz-transition: .5s ease-in-out;
    transition: .5s ease-in-out;
  }
  #global-nav ul {
    list-style: none;
    position: static;
    right: 0;
    bottom: 0;
    font-size: 14px;
    /*margin-top: 20px;*/
  }
  #global-nav ul li {
    float: none;
    position: static;
  }
  #head_wrap #global-nav ul li a,
  #head_wrap.fixed #global-nav ul li a {
    width: 100%;
    display: block;
    padding: 0px 0;
  }
  #nav-toggle {
    display: block;
  }
  /* #nav-toggle 切り替えアニメーション */
  #nav-toggle span {
    display: block;
    position: absolute;
    height: 4px;
    width: 100%;
    background: #fff;
    left: 0;
    -webkit-transition: .35s ease-in-out;
    -moz-transition: .35s ease-in-out;
    transition: .35s ease-in-out;
  }
  #nav-toggle span:nth-child(1) {
    top: 0;
  }
  #nav-toggle span:nth-child(2) {
    top: 11px;
  }
  #nav-toggle span:nth-child(3) {
    top: 22px;
  }
  .open #nav-toggle span:nth-child(1) {
    top: 11px;
    -webkit-transform: rotate(315deg);
    -moz-transform: rotate(315deg);
    transform: rotate(315deg);
  }
  .open #nav-toggle span:nth-child(2) {
    width: 0;
    left: 50%;
  }
  .open #nav-toggle span:nth-child(3) {
    top: 11px;
    -webkit-transform: rotate(-315deg);
    -moz-transform: rotate(-315deg);
    transform: rotate(-315deg);
  }
  /* #global-nav スライドアニメーション */
  .open #global-nav {
    /* #global-nav top + #mobile-head height */
    /*-moz-transform: translateY(556px);
    -webkit-transform: translateY(556px);
    transform: translateY(556px);*/
	-moz-transform: translateY(956px);
    -webkit-transform: translateY(956px);
    transform: translateY(956px);
  }

	.intro-text .introWrap {
		width: 90%;
		margin: auto;
		padding: 20px;
	}
	.intro-text h2 {
		font-size: 22px;
		line-height:1.1em;
	}

	.line-spacer {
		margin-top: 10px;
		margin-bottom: 5px;
	}

	.intro-text p span {
		font-size: 18px;
	}
}

/* コンテンツ
--------------------------------------------------------*/
.home-section {
	width: 100%;
	padding: 65px 0px 65px 0px;
}
.container {
	width: 90%;
	max-width: 1180px;
	margin: 0 auto;
}
.container2 {
	width: 100%;
	max-width: 1180px;
	margin: 0 auto;
}
.sdgsWrap {
	margin: auto;
}
.sdgsText{
	line-height: 2.0em;
}

.boxLeft1 { float: left; width: 65%; }
.boxRight1 { float: right; width: 30%; }
.boxRight1 img { width: 100%; }

.titleBox {
	background: rgba(67,103,71,0.40);
	width: 350px;
	margin: 0 auto;
	padding: 25px 0;
	text-align: center;
}
.jpTitle {
	font-size: 28px;
	font-weight: 600;
	font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
	color: #fff;
	margin: 0;
}
.engTitle {
	font-size: 18px;
	color: #fff;
	margin: 0;
}
.line-spacer2 {
	width: 80%;
	margin:0 auto;
	margin-top: 10px;
	margin-bottom: 10px;
	border-bottom:1px solid #fff;
}

@media (max-width: 760px) {
	.boxLeft1 { float: none; width: 100% !important; margin-bottom: 20px; }
	.boxRight1 { float: none; width: 100% !important; }
}


ul.itemList1  {
	list-style: none;
	margin-block-start: 0em;
    margin-block-end: 0em;
    padding-inline-start: 0px;
}
ul.itemList1 li {
	float: left;
	position: relative;
	border: 1px solid #ccc;
	width: 24.6%;
	margin: 0.4% 0.2%;
	padding: 0;
	text-align: left;
	height: 4.0em;
}
.flRight {
	position: absolute;
	top: calc(50% - 25%);
	right: 0.5rem;
	font-size: 20px;
}
ul.itemList1 li a {
	vertical-align: middle;
	padding: 6px 40px 6px 10px;
}
ul.itemList1 li a:hover {
	background: rgba(179,194,181,0.40);
	text-decoration: none;
	color: rgba(65,122,54,1.00);
}
.arrow1{
	width: 100%;
	height: 100%;
	position: relative;
	display: inline-block;
	color: #000;
	vertical-align: middle;
	text-decoration: none;
}

.arrow1::after{
  position: absolute;
  top: 0;
  bottom: 0;
  right: 15px;
  margin: auto;
  content: "";
  vertical-align: middle;
  width: 0.8em;   /* arrow size */
  height: 0.8em;  /* arrow size */
  border-top: 1px solid #808080;  /* thickness, color */
  border-right: 1px solid #808080;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.link1 {
	margin-top:-125px;
	padding-top:125px;
}
@media (max-width:760px) {
	ul.itemList1 li {
		width: 100%;
		margin: 1% 1%;
		padding: 6px 6px 6px 10px;
		font-size: 13px;
		height: auto;
	}
	.link1 {
		margin-top:-160px;
		padding-top:160px;
	}
}

/* --- heading --- */
.section-heading {
	margin-bottom: 50px;
}

.section-heading h2 {
	/*font-size: 38px;*/
	font-size: 26px;
	text-transform: uppercase;
	font-weight: normal;
}
.section-heading h2 img {
	padding-bottom: 8px;
	margin-right: 10px;
}

.section-heading .heading-line {
	margin:0 auto;
	display: block;
	height: 1px;
	/*width: 80px;*/
	width: 90px;
	background: #333;
	/*margin-top: 10px;*/
	margin-top: -10px;
	margin-bottom: 20px;
}
/* 新着
------------------------------------*/
ul.wNew {
	list-style: none;
	margin: 0;
	padding: 0;
}
ul.wNew li {
	padding: 14px 20px;
	border-bottom: 1px dotted #ccc;
}
ul.wNew li:nth-child(odd) {
	background: #F8F8F1;
}
ul.wNew li dt {
	display: block;
	width: 13%;
	clear: left;
	float: left;
	text-align: left;
}
ul.wNew li dd {
	display: block;
	width: 87%;
	float: left;
	text-align: left;
}

@media (max-width:760px) {
	ul.wNew li dt {
		width: 100%;
		margin-bottom: 10px;
	}
	ul.wNew li dd {
		width: 100%;
	}
}

/* ================================
Footer
================================= */
footer {
	/*background: #00c1c1;
	color: #fff;
	padding: 50px 0 30px;
	border-top: 4px solid rgba(3,88,28,1.00);*/
	margin-top: 100px;
	padding: 50px 10px 40px;
	background: #718A73;
	color: #fff;
}
.footLeft1 { float: left; width: 30%; }
.footRight1 { float: right; width: 65%; }
.copy {
	font-size: 11px;
	background: #3A473C;
	color: #fff;
	padding: 15px 0px;
	text-align: center;
}

.copy a { color: #fff; }
.copy a:hover { color: #fff; }
.ftText1 {
	font-size: 20px;
	font-weight: 600;
	line-height: 1.1em;
}
.ftText1 span {
	font-size: 12px;
	font-weight: normal;
}
.ftText2 {
	font-size: 14px;
}
.ftText2 a {
	color: #fff !important;
	text-decoration: none;
}

@media (max-width:760px) {
	.footLeft1 { float: left; width: 100%; margin-bottom: 20px }
	.footRight1 { float: right; width: 100%; }
}


/* Back to top button */
.back-to-top {
  position: fixed;
  display: none;
  padding: 6px 12px 9px 12px;
  font-size: 16px;
  border-radius: 2px;
  right: 15px;
  bottom: 15px;
  transition: background 0.5s;
  z-index:1000;
}

@media (max-width: 760px) {
  .back-to-top {
    bottom: 15px;
  }
}

.back-to-top:focus {
  outline: none;
}
.back-to-top {
  background: #3A473C;
  color: #fff;
}
.back-to-top:focus {
  background: #427935;
  color: #fff;
}
.back-to-top:hover {
  background: #427935;
  color: #fff;
}












/*----------------------------------------------------------------*/
/* コンテンツナビ
---------------------------------------------------------*/
#head_wrap2 {
  position: relative;
  width: 100%;
  margin: 0 auto 0;
  line-height: 1;
  z-index: 999;
  height: 0px;
  text-decoration: none;
}

#head_wrap2 a {
  text-decoration: none;
	color: #333;
}
@media (max-width: 760px) {
	#head_wrap2 a {
		color: #fff;
	}
}

#head_wrap2 .inner {
  width: 100%;
  margin: 0 auto;
  position: relative;
  background-color: rgba(255,255,255,0.90);
  border-bottom: 3px solid rgba(58,71,60,1.00);
}

#head_wrap2 .inner:after {
  content: "";
  clear: both;
  display: block;
}

#head_wrap2 .logo {}
#head_wrap2 .logo img {
	height: 70px;
}

#global-nav2 {
  position: absolute;
  right: 0;
  top: 0;
}

#global-nav2 ul {
  list-style: none;
  font-size: 14px;
  margin-right: 10px;
  display: inline-flex;
}

@media (max-width: 760px) {
  #global-nav2 ul {
    display: block;
    margin-right: 0px;
  }
}

#global-nav2 ul li {
  padding: 30px 10px;
}

#global-nav2 ul li:last-child {
  border-right: none;
}

@media (max-width: 760px) {
  #global-nav2 ul li {
    border-right: none;
	border-bottom: 1px dotted #ddd;
  }
}

#global-nav2 ul li a {
  padding: 0 5px;
  padding: 20px;
  transition: all .6s ease 0s;
  box-sizing: border-box;
  font-weight: bold;
}

/* Fixed */
#head_wrap2.fixed {
  margin-top: 0;
  top: 0;
  position: fixed;
  height: 100px;
  transition: top 0.65s ease-in;
  -webkit-transition: top 0.65s ease-in;
  -moz-transition: top 0.65s ease-in;
  z-index: 9999;
}

#head_wrap2.fixed .logo {}
#head_wrap2.fixed #global-nav ul li a {}

/* Toggle Button */
#nav-toggle2 {
  display: none;
  position: absolute;
  right: 12px;
  top: 14px;
  width: 34px;
  height: 36px;
  cursor: pointer;
  z-index: 101;
}

#nav-toggle2 div {
  position: relative;
}

@media (max-width: 760px) {
  #head_wrap2 {
    top: 0;
    position: fixed;
    margin-top: 0;
    width: 100%;
    padding: 0;
    /* Fixed reset */
  }
  #head_wrap2 .inner {
    width: 100%;
    padding: 0;
  }
  #head_wrap2 .fixed {
    padding-top: 0;
    background: transparent;
  }
  #mobile-head2 {
    background: rgba(255, 255, 255, 0.0);
    width: 100%;
    height: 56px;
    z-index: 999;
    position: relative;
  }
  #head_wrap2.fixed .logo,
  #head_wrap2 .logo {
    position: absolute;
    left: 10px;
    top: 3px;
  }
	#head_wrap2 .logo img {
		height: 50px;
	}
  #global-nav2 {
    position: absolute;
    /* 開いてないときは画面外に配置 */
    /*top: -500px;*/
	top: -900px;
	height: 900px;
    background: rgba(0, 0, 0, 0.65);
    width: 100%;
    text-align: center;
    -webkit-transition: .5s ease-in-out;
    -moz-transition: .5s ease-in-out;
    transition: .5s ease-in-out;
  }
  #global-nav2 ul {
    list-style: none;
    position: static;
    right: 0;
    bottom: 0;
    font-size: 14px;
    /*margin-top: 20px;*/
  }
  #global-nav2 ul li {
    float: none;
    position: static;
  }
  #head_wrap2 #global-nav2 ul li a,
  #head_wrap2.fixed #global-nav2 ul li a {
    width: 100%;
    display: block;
    padding: 0px 0;
  }
  #nav-toggle2 {
    display: block;
  }
  /* #nav-toggle 切り替えアニメーション */
  #nav-toggle2 span {
    display: block;
    position: absolute;
    height: 4px;
    width: 100%;
    background: #666;
    left: 0;
    -webkit-transition: .35s ease-in-out;
    -moz-transition: .35s ease-in-out;
    transition: .35s ease-in-out;
  }
  #nav-toggle2 span:nth-child(1) {
    top: 0;
  }
  #nav-toggle2 span:nth-child(2) {
    top: 11px;
  }
  #nav-toggle2 span:nth-child(3) {
    top: 22px;
  }
  .open #nav-toggle2 span:nth-child(1) {
    top: 11px;
    -webkit-transform: rotate(315deg);
    -moz-transform: rotate(315deg);
    transform: rotate(315deg);
  }
  .open #nav-toggle2 span:nth-child(2) {
    width: 0;
    left: 50%;
  }
  .open #nav-toggle2 span:nth-child(3) {
    top: 11px;
    -webkit-transform: rotate(-315deg);
    -moz-transform: rotate(-315deg);
    transform: rotate(-315deg);
  }
  /* #global-nav スライドアニメーション */
  .open #global-nav2 {
    /* #global-nav top + #mobile-head height */
    /*-moz-transform: translateY(556px);
    -webkit-transform: translateY(556px);
    transform: translateY(556px);*/
	-moz-transform: translateY(956px);
    -webkit-transform: translateY(956px);
    transform: translateY(956px);
  }
}


/*
-------------------------------------------------*/
.cntWrap {
	margin-top: 76px;
}
@media (max-width: 760px) {
	.cntWrap {
	margin-top: 56px;
	}
}

.cntImg-mt {
	margin-top: 79px;
}
@media (max-width:760px) {
	.cntImg-mt {
		margin-top: 59px;
	}
}

/*会社概要
---------------------------------*/
table {
    border-spacing: 0;
    border-collapse: collapse
}
table {
    background-color: transparent
}
table.compTbl {
	width: 80%;
	margin: auto;
}
table.compTbl td {
	border: 1px solid #ddd;
	padding: 15px 20px;
	text-align: left;
}
table.compTbl td.bg1 {
	background: #F0F0E1;
	text-align: center;
	width: 25%;
}
@media (max-width:760px) {
	table.compTbl {
		width: 100%;
	}
	table.compTbl td.bg1 {
		width: 30%;
	}
}

/*取扱メーカー
--------------------------------------*/
ul.listBox {
	list-style: none;
	text-align: left;
	margin: 0;
	padding: 0;
	display:-webkit-box;
    display:-moz-box;
    display:-ms-box;
    display:-webkit-flexbox;
    display:-moz-flexbox;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:-ms-flex;
    display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
}
ul.listBox li {
	float: left;
	width: 24%;
	margin-left: 0.5%;
	margin-right: 0.5%;
	margin-bottom: 20px;
}
.listTbl {
	width: 100%;
	height: 100%
}
.listTbl tr {
	border: 1px solid #777;
}
.listTbl th, .listTbl td {
	padding: 10px;
}
.listTbl th {
	font-size: 15px;
	font-weight: normal;
	height: 4.6em;
}
.listTbl td {
	font-size: 11.5px;
	background: #F5F5ED;
	vertical-align: top;
}
.listInfo1 {
	margin-top: 60px;
	border: 1px solid #BDBDAE;
	padding: 16px;
	border-radius: 6px;
}

@media (max-width:760px) {
	ul.listBox li {
		float: none;
		width: 100%;
	}
}

/*お問い合わせ
-----------------------------------*/
.recText {
	border-bottom: 1px solid #222;
	color: #222;
	text-align: left;
	padding-bottom: 5px;
	margin-bottom: 25px;
	
}
.tel1 {
	font-size: 40px;
	margin-left: 0.4em;
	font-weight: 900;
}
.tel2 {
	font-size: 20px;
	margin-left: 0.4em;
	font-weight: 900;
}
.cGreen, .cGreen a, .tel1 a {
	color: #458C31 !important;
	text-decoration: none;
}
@media (max-width:760px) {
	.tel1 {
		font-size: 28px;
		margin-left: 0.4em;
		font-weight: 600;
	}
	.tel2 {
		font-size: 16px;
		margin-left: 0.4em;
		font-weight: 600;
	}
}

/*プライバシーポリシー
--------------------------------*/
.privacy {
	overflow-y:scroll;
	height:300px;
	border: 1px solid #ccc;
	padding: 20px !important;
	margin-top: 40px !important;
}
.privacy1 {
	text-decoration: underline;
	color: #222;
	text-align: left;
	margin-top: 60px !important;
	margin-bottom: 15px !important;
}
@media (max-width:760px) {
	.privacy {
		height:200px;
	}
}