@charset "UTF-8";
/* CSS Document */
html {
  font-size: 62.5%;
}
body {
  width: 100%;
  height: 100%;
  font-family: 'Noto Serif JP', serif;
  font-size: 14px;
  line-height: 1.8;
  letter-spacing: 0.3em;
  color: #353535;
}
a{
  text-decoration: none;
  color: #353535;
}
a:link {
  color: #fff;
  border: none;
}
a:hover{
  color: #fff;
}
@media (max-width: 375px){
  body {
  font-size:12px;
  letter-spacing: 0.2em;
}

}
@media (max-width: 320px){
}
/* ------------------------------------- /
/   スマホ表示・非表示
/* ------------------------------------- */
.pc {
    display: block !important;
}
.sp {
    display: none !important;
}
@media only screen and (max-width: 798px) {
.pc { display: none !important; }
.sp { display: block !important; }
}
/* ------------------------------------- /
/   フェードイン
/* ------------------------------------- */
.list-mv07{
    opacity: 0;
    transform: translate(0,60px);
    -webkit-transform: translate(0,60px);
    transition: 2s;
}
.mv07{
    opacity: 1.0;
    transform: translate(0,0);
    -webkit-transform: translate(0,0);
    transition: 2s;
}
/* ---------------------------------------------------------------------------- /
/   Header
/* ---------------------------------------------------------------------------- */
.head{
  position: relative;
}
.head .menubg{
  background-color: rgba(0, 0, 0, 0.7);
  position: fixed;
  width: 100%;
  transition: all 0.5s ease;
  z-index: 999;
}
.head .hidden {
  background: none;
  transition: all 0.5s ease;
}
.bg{
  background-image: url(../img/top/top_head_img.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center top;
  height: 600px;
}
.bg_company{
  background-image: url(../img/company/company_head_img.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center top;
  height: 460px;
}
.bg_product{
  background-image: url(../img/product/about_head_img.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center top;
  height: 460px;
}
.bg_contact{
  background-image: url(../img/contact/form_head_img.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center top;
  height: 460px;
}
.head .logo{
  width: 180px;
  padding: 15px 15px 0 15px;
}
.head .logo img{
  width: 100%;
}
.head .head_area{
  position:relative;
}
.head .head_area .head_text{
    max-width: 1080px;
    margin: 0 auto;
    position: absolute;
    color: #fff;
    top: 200px;
    left: 150px;
}
.head .head_area .head_text h2{
  font-size: 40px;
  font-weight: 400;
  text-shadow: 1px 1px 7px #000;
  padding: 0;
  margin: 0;
}
.head .head_area .head_text p{
  text-shadow: 1px 1px 7px #000;
  font-family: 'Noto Sans JP', sans-serif;
    font-size: 17px;
    padding: 10px 0;
}
.head .head_area .scloll{
    position: absolute;
    right: 0;
    left: 0;
    top: 500px;
    width: 40px;
    margin: 0 auto;
}
.head .head_area .scloll a{
}
.head .head_area .scloll a img{
  width: 100%;
    position:relative;
    -webkit-animation: 3s arrow infinite ease;
    animation: 3s arrow infinite ease;
}
@-webkit-keyframes arrow {
    0%,100% {
        top:10px;
    }
    50% {
        top:20px;
    }
}
@keyframes arrow {
    0%,100% {
        top:10px;
    }
    50% {
        top:20px;
    }
}
@media (max-width: 1440px){
    .head .head_area .head_text {
    top: 240px;
}
}
@media (max-width: 1024px){
    .head .head_area .head_text {
    top: 240px;
}
}
@media (max-width: 768px){
  .head .head_area .head_text {
    max-width: 100%;
    margin: auto;
    top: 230px;
    left: 120px;
}
.head .logo{
  width: 180px;
}
.head .head_area .scloll {
    top: 500px;
}
}
@media (max-width: 425px){
  .bg {
    background-size: 130vh;
}
  .head .head_area .head_text {
    top: 200px;
    left: 0;
    right: 0;
    padding: 0 20px;
}
  .head .head_area .head_text h2 {
    font-size: 25px;
}
  .head .head_area .head_text p {
    font-size: 15px;
}
  .head .head_area .scloll {
    position: absolute;
    top: 420px;
}
}
@media (max-width: 375px){
  .bg {
    background-size: 125vh;
    height: 450px;
}
  .head .head_area .head_text {
    top: 130px;
}
  .head .head_area .head_text h2 {
    font-size: 25px;
    letter-spacing: 0;
}
  .head .head_area .head_text p {
    letter-spacing: 0.1em;
}
.head .head_area .scloll {
    position: absolute;
    top: 300px;
}
}
@media (max-width: 320px){
  .head .head_area .head_text {
    top: 120px;
}
  .bg {
    background-size: 147vh;
    height: 450px;
}
  .head .head_area .head_text h2 {
    font-size: 21px;
    letter-spacing: 0;
}
.head .head_area .scloll {
    position: absolute;
    top: 320px;
}
  #concept .concept_inner .concept_group2 .group2_text .group2_detail {
    margin: 220px 0 0 0;
    padding-top: 60px;
}
  #concept .concept_inner .concept_group2 img {
    margin: -580px 20px 0 0;
}
}
/* ---------------------------------------------------------------------------- /
/   長谷川コンテンツ concept
/* ---------------------------------------------------------------------------- */
/*--- group1 ---*/
#concept{
	width: 100%;
}
#concept .concept_inner{
	max-width: 1080px;
	margin: 90px auto;
}
#concept .concept_inner .concept_group1{
	display: flex;
}
#concept .concept_inner .concept_group1 img{
	width: 50%;
	align-self: flex-start;
    box-shadow: -20px 20px 0 #faf5eb;
}
#concept .concept_inner .concept_group1 .group1_text{
	width: 50%;
	position:relative;
}
#concept .concept_inner .concept_group1 .group1_text .group1_ttl{
	position:absolute;
	top:0;
	right: 0;
}
#concept .concept_inner .concept_group1 .group1_text .group1_ttl h3{
	border-bottom: solid 1px #848484;
	padding-bottom: 5px;
	font-size: 28px;
}
#concept .concept_inner .concept_group1 .group1_text .group1_detail {
	width: 100%;
}
#concept .concept_inner .concept_group1 .group1_text .group1_detail p{
	-webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    text-align: left;
    width: 100%;
    height: 490px;
    margin: 130px 0 0 0;
    line-height: 2;
    font-size: 16px;
}
/*--- group2 ---*/
#concept .concept_inner .concept_group2{
	display: flex;
	padding: 140px 0;
}
#concept .concept_inner .concept_group2 img{
	width: 50%;
	align-self: flex-start;
    box-shadow: 20px 20px 0 #fafafa;
}
#concept .concept_inner .concept_group2 .group2_text{
	width: 50%;
	position:relative;
}
#concept .concept_inner .concept_group2 .group2_text .group2_ttl{
	position:absolute;
	top: -250px;
    right: 115px;
}
#concept .concept_inner .concept_group2 .group2_text .group2_ttl h3{
	border-bottom: solid 1px #848484;
	padding-bottom: 5px;
	font-size: 28px;
}
#concept .concept_inner .concept_group2 .group2_text .group2_detail {
	width: 100%;
}
#concept .concept_inner .concept_group2 .group2_text .group2_detail p{
	-webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    text-align: left;
    width: 80%;
    height: 380px;
    margin: -80px 0 0 0;
    line-height: 2;
    font-size: 16px;
}
/*--- group3 ---*/
#concept .concept_inner .concept_group3{
	display: flex;
	padding: 140px 0;
}
#concept .concept_inner .concept_group3 img{
	width: 50%;
	align-self: flex-start;
    box-shadow: -20px 20px 0 #fafafa;
}
#concept .concept_inner .concept_group3 .group3_text{
	width: 50%;
	position:relative;
}
#concept .concept_inner .concept_group3 .group3_text .group3_ttl{
	position:absolute;
    right: 0;
    bottom: -100px;
}
#concept .concept_inner .concept_group3 .group3_text .group3_ttl h3{
	border-bottom: solid 1px #848484;
	padding-bottom: 5px;
	font-size: 28px;
}
#concept .concept_inner .concept_group3 .group3_text .group3_detail {
	width: 100%;
}
#concept .concept_inner .concept_group3 .group3_text .group3_detail p{
	-webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    text-align: left;
    width: 100%;
    height: 380px;
    margin: -80px 0 0 0;
    line-height: 2;
    font-size: 16px;
}
@media (max-width: 1024px){
	#concept .concept_inner{
	max-width: 100%;
	padding: 0 20px;
}
#concept .concept_inner .concept_group1 .group1_text .group1_detail p {
    width: 95%;
    height: 400px;
}
#concept .concept_inner .concept_group1 .group1_text .group1_ttl {
    right: 30px;
}
#concept .concept_inner .concept_group1 img {
    margin: 0 0 0 20px;
    width: 45%;
}
#concept .concept_inner .concept_group2 img {
    width: 45%;
}
#concept .concept_inner .concept_group3 {
    padding: 100px 0;
}
#concept .concept_inner .concept_group3 .group3_text .group3_detail{
	width: 90%;
}
#concept .concept_inner .concept_group3 .group3_text .group3_ttl{
	right: 50px;
}
}
@media (max-width: 768px){
	#concept .concept_inner .concept_group1 {
    display: flex;
    flex-wrap: wrap;
}
#concept .concept_inner .concept_group1 img {
    width: 100%;
}
#concept .concept_inner .concept_group1 .group1_text {
    width: 100%;
}
#concept .concept_inner .concept_group1 .group1_text .group1_ttl {
    right: 0;
    left: 0;
    margin: auto;
    text-align: center;
    width: 20%;
    top: 40px;
}
#concept .concept_inner .concept_group1 .group1_text .group1_detail p {
    width: 100%;
    height: unset;
    -webkit-writing-mode: unset;
    -ms-writing-mode: unset;
    writing-mode: unset;
}
#concept .concept_inner .concept_group2 {
    display: flex;
    padding: 50px 0;
    flex-wrap: wrap;
}
#concept .concept_inner .concept_group2 .group2_text {
    width: 100%;
    position: relative;
}
#concept .concept_inner .concept_group2 .group2_text .group2_detail {
    width: 100%;
    margin: 500px 0 0 0;
    padding-top: 100px;
}
#concept .concept_inner .concept_group2 .group2_text .group2_detail p {
    -webkit-writing-mode: unset;
    -ms-writing-mode: unset;
    writing-mode: unset;
    width: 100%;
    height: unset;
    margin: 0;
}
#concept .concept_inner .concept_group2 .group2_text .group2_ttl {
    position: absolute;
    top: 0px;
    right: 0;
    left: 0;
    margin: 0 auto;
    text-align: center;
    width: 30%;
}
#concept .concept_inner .concept_group2 img {
    width: 100%;
    margin: -700px 20px 0 0;
}
#concept .concept_inner .concept_group3 {
    flex-wrap: wrap;
    padding: 100px 0 0 0;
}
#concept .concept_inner .concept_group3 img {
    width: 100%;
    margin-left: 20px;
}
#concept .concept_inner .concept_group3 .group3_text .group3_detail {
    width: 100%;
}
#concept .concept_inner .concept_group3 .group3_text {
    width: 100%;
}
#concept .concept_inner .concept_group3 .group3_text .group3_detail p {
    -webkit-writing-mode: unset;
    -ms-writing-mode: unset;
    writing-mode: unset;
    text-align: left;
    width: 100%;
    height: unset;
    margin: 140px 0 0 0;
}
#concept .concept_inner .concept_group3 .group3_text .group3_ttl {
    right: 00px;
    left: 0;
    margin: auto;
    text-align: center;
    width: 40%;
    bottom: unset;
    top: 40px;
}
}
@media (max-width: 425px){
	#concept .concept_inner {
    margin: 0;
}
#concept .concept_inner .concept_group1 img {
    width: 95%;
}
#concept .concept_inner .concept_group1 .group1_text .group1_ttl {
    width: 40%;
}
#concept .concept_inner .concept_group1 .group1_text .group1_ttl h3 {
    font-size: 25px;
}
#concept .concept_inner .concept_group1 .group1_text .group1_detail p {
    margin: 120px 0 0 0;
    line-height: 1.7;
}
#concept .concept_inner .concept_group2 .group2_text .group2_ttl {
    width: 50%;
}
#concept .concept_inner .concept_group2 .group2_text .group2_ttl h3 {
    font-size: 25px;
}
#concept .concept_inner .concept_group2 .group2_text .group2_detail {
    margin: 280px 0 0 0;
}
#concept .concept_inner .concept_group2 img {
    width: 95%;
    margin: -580px 20px 0 0;
}
#concept .concept_inner .concept_group2 .group2_text .group2_detail p {
    line-height: 1.7;
}
#concept .concept_inner .concept_group3 {
    padding: 50px 0 0 0;
}
#concept .concept_inner .concept_group3 img {
    width: 95%;
}
#concept .concept_inner .concept_group3 .group3_text .group3_ttl {
    width: 70%;
}
#concept .concept_inner .concept_group3 .group3_text .group3_ttl h3 {
    font-size: 25px;
}
#concept .concept_inner .concept_group3 .group3_text .group3_detail p {
    margin: 120px 0 0 0;
    line-height: 1.7;
}
}
@media (max-width: 375px){
	#concept .concept_inner .concept_group2 {
    padding: 20px 0;
}
#concept .concept_inner .concept_group2 .group2_text .group2_detail {
    margin: 250px 0 0 0;
    padding-top: 60px;
}
#concept .concept_inner .concept_group2 img {
    margin: -540px 20px 0 0;
}
#concept .concept_inner .concept_group3{
	padding: 30px 0 0 0;
}
}
@media (max-width: 320px){
	#concept .concept_inner .concept_group2 .group2_text .group2_detail {
    margin: 220px 0 0 0;
    padding-top: 60px;
}
#concept .concept_inner .concept_group2 img {
    margin: -590px 20px 0 0;
}
}
/* ---------------------------------------------------------------------------- /
/   お取扱商品
/* ---------------------------------------------------------------------------- */
#work {
	background-image: url(../img/top/top_haitatu.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center top;
	position: relative;
	padding: 85px 0;
}
#work .work_inner{
	max-width: 1080px;
	margin: auto;
}
#work .work_inner .work_text{
	background-color: #fff;
	opacity: 0.8;
	padding: 70px;
	text-align: center;
	width: 450px;
}
#work .work_inner .work_text h4{
	font-size: 25px;
	border-bottom: solid 1px #848484;
	padding-bottom: 5px;
	display: block;
}
#work .work_inner .work_text p.haisou{
	font-size: 14px;
	display: block;
	padding: 0;
}
#work .work_inner .work_text p{
	font-size: 16px;
	display: block;
	line-height: 2.5;
    padding: 0 0 20px 0;
}
#work .work_inner .work_text p span{
	font-size: 25px;
}
#work .work_inner .work_text a{
	padding: 20px 0;
  color: #353535;
}
#work .work_inner .work_text a span{
	display: block;
	padding: 10px 50px;
	border:solid 1px #353535;
}
#work .work_inner .work_text a:hover span{
	background-color: #353535;
	color: #fff;
}
#work .work_inner .work_text p br{
    display: none;
}
@media (max-width: 1024px){
	#work .work_inner {
    max-width: 100%;
    margin: 0 auto;
}
	#work .work_inner .work_text {
    margin: 0 auto;
}
}
@media (max-width: 768px){
}
@media (max-width: 425px){
	#work {
    padding: 60px 20px;
    margin: 50px 0;
}
	#work .work_inner .work_text {
    width: 100%;
    padding: 0 0 20px 0;
}
	#work .work_inner .work_text h4 {
    font-size: 22px;
    width: 60%;
    text-align: center;
    margin: 0 auto;
    padding: 20px 0 5px 0;
}
	#work .work_inner .work_text p {
    font-size: 16px;
    line-height: 1.8;
    padding: 0 20px 20px 20px;
}
#work .work_inner .work_text p span {
    font-size: 20px;
}
#work .work_inner .work_text p br{
    display:block;
}
#work .work_inner .work_text a span {
    display: block;
    padding: 5px 20px;
    width: 60%;
    margin: 0 auto;
}
}
@media (max-width: 375px){
	#work .work_inner .work_text p br{
    display:none;
}
}
@media (max-width: 320px){
	#work .work_inner .work_text h4 {
    font-size: 20px;
}
#work .work_inner .work_text p br{
    display:block;
}
}
/* ---------------------------------------------------------------------------- /
/   トップページ　アクセス
/* ---------------------------------------------------------------------------- */
#top_access{
	width: 100%;
	margin: 90px 0;
}
#top_access .top_accessttl{
	margin: 0 auto;
	width: 10%;
	text-align: center;
}
#top_access .top_accessttl h5{
	border-bottom: solid 1px #353535;
	font-size: 24px;
	padding-bottom: 10px;
}
#top_access .topaccess_innner{
	max-width: 1080px;
	display: flex;
	margin: 50px auto;
}
#top_access .topaccess_innner .map{
	width: 60%;
	position:relative;
}
#top_access .topaccess_innner .map img{
	width: 100%
}
#top_access .topaccess_innner .map a.googlemap{
	position:absolute;
	top:0;
	right: 0;
}
#top_access .topaccess_innner .map a.googlemap img{
	width: 145px;
}
#top_access .topaccess_innner .map a:hover.googlemap img{
	opacity: 0.8;
}
#top_access .topaccess_innner .topaccess_text{
    padding: 0 0 0 40px;
    width: 35%;
}
#top_access .topaccess_innner .topaccess_text h6{
	font-size: 30px;
	padding:0;
	display: block;
}
#top_access .topaccess_innner .topaccess_text span{
	font-size: 12px;
	padding:0;
	font-family: 'Noto Sans JP', sans-serif;
}
#top_access .topaccess_innner .topaccess_text p{
	line-height: 2;
	font-size: 11px;
	font-family: 'Noto Sans JP', sans-serif;
	padding: 30px 0 40px 0;
}
#top_access .topaccess_innner .topaccess_text p{
	line-height: 2.5;
	font-size: 13px;
	font-family: 'Noto Sans JP', sans-serif;
	padding: 30px 0 50px 0;
}
#top_access .topaccess_innner .topaccess_text a{
	padding: 20px 0;
  color: #353535;
}
#top_access .topaccess_innner .topaccess_text a span{
	display: block;
	padding: 10px 50px;
	border:solid 1px #353535;
	text-align: center;
    width: 265px;
    margin: 0 auto;
}
#top_access .topaccess_innner .topaccess_text a:hover span{
	background-color: #353535;
	color: #fff;
}
@media (max-width: 1024px){
#top_access .topaccess_innner {
    max-width: 100%;
    flex-wrap: wrap;
    padding: 0 20px;
}
#top_access .topaccess_innner .map {
    width: 100%;
    position: relative;
}
#top_access .topaccess_innner .topaccess_text {
    padding: 20px;
    width: 100%;
}
}
@media (max-width: 768px){
	#top_access .top_accessttl {
    width: 30%;
}
}
@media (max-width: 425px){
	#top_access {
    margin: 50px 0;
}
#top_access .topaccess_innner {
    margin: 20px 0;
}
#top_access .topaccess_innner .topaccess_text {
    padding: 15px 0;
}
#top_access .topaccess_innner .topaccess_text p {
    line-height: 1.7;
    padding: 15px 0 30px 0;
}
}
@media (max-width: 375px){
	#top_access .topaccess_innner .topaccess_text a span{
    width: 200px;
}
}
@media (max-width: 320px){
	#top_access .topaccess_innner .topaccess_text a span {
    width: 150px;
}
}
/* ---------------------------------------------------------------------------- /
/   フッター
/* ---------------------------------------------------------------------------- */
#footer{
	background-image: url(../img/top/foot_bg.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center top;
}
#footer .foot_inner{
	max-width: 1080px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	color: #fff;
	padding: 65px 0;
}
#footer .foot_inner .foot_left{
	width: 50%;
}
#footer .foot_inner .foot_left h6{
	font-size: 30px;
	padding: 0;
}
#footer .foot_inner .foot_left span{
	font-size: 12px;
	padding: 0;
	font-family: 'Noto Sans JP', sans-serif;
}
#footer .foot_inner .foot_left span.type{
	font-size: 14px;
	padding: 0;
	font-family: 'Noto Sans JP', sans-serif;
	border-bottom: solid 1px #eaeaea;
	position: relative;
	display: block;
    margin: 10px 0;
    padding-bottom: 5px;
    text-align: right;
}
#footer .foot_inner .foot_left span.type:after{
	content: "";
	display: block;
	line-height: 0;
	overflow: hidden;
	position: absolute;
	left: 0;
	bottom: -1px;
	width: 30%;
	border-bottom: 1px solid #fff;
	opacity: 0.9;
}
#footer .foot_inner .foot_left p{
	font-size: 12px;
	font-family: 'Noto Sans JP', sans-serif;
	line-height: 2;
	padding: 15px 0;
}
#footer .foot_inner .foot_left p span.toptel{
  font-size: 16px;
  font-weight: bold;
}
#footer .foot_inner .foot_right {
	width: 50%;
	text-align: right;
	position:relative;
}
#footer .foot_inner .foot_right img{
	width: 120px;
	padding: 30px 0 0 0;
}
#footer .foot_inner .foot_right p.copy{
	font-size: 12px;
	padding: 80px 0 0 0;
	font-family: 'Noto Sans JP', sans-serif;
	position: absolute;
	bottom: 0;
	right: 0;
}
#footer .foot_inner .foot_left p br{
    display: none;
}
@media (max-width: 1024px){
	#footer .foot_inner {
    max-width: 100%;
    padding: 65px 20px;
}
#footer .foot_inner .foot_left p br{
    display: block;
}
}
@media (max-width: 768px){
	#footer .foot_inner {
    max-width: 100%;
    padding: 65px 20px 20px 20px;
    flex-wrap: wrap;
}
	#footer .foot_inner .foot_left {
    width: 100%;
}
	#footer .foot_inner .foot_right {
    width: 100%;
    text-align: center;
    position: relative;
    padding: 20px 0 0 0;
}
	#footer .foot_inner .foot_right img {
    padding: 30px 0;
}
	#footer .foot_inner .foot_right p.copy {
    bottom: 0;
    right: 0;
    left: 0;
}
}
@media (max-width: 425px){
	#footer .foot_inner {
    padding: 40px 20px 20px 20px;
    text-align: center;
}
#footer .foot_inner .foot_left span.type {
    text-align: center;
}
#footer .foot_inner .foot_left p {
    text-align: left;
}
}
@media (max-width: 375px){
}
@media (max-width: 320px){
	#footer .foot_inner .foot_right {
    width: 100%;
    text-align: center;
    position: relative;
    padding: 0;
}
#footer .foot_inner .foot_left p {
    font-size: 12px;
    font-family: 'Noto Sans JP', sans-serif;
    line-height: 2;
    padding: 0;
}
}





/* ---------------------------------------------------------------------------- /
/   会社概要
/* ---------------------------------------------------------------------------- */
#company{
	max-width: 950px;
	margin: 80px auto;
}
#company h2,
#product h2,
#contact h2{
	font-size: 24px;
	border-bottom: solid 1px #353535;
	padding-bottom: 5px;
	text-align: center;
	width: 30%;
    margin: 60px auto 100px;
}
#company .company_detail_list{
	width: 100%;
	display: flex;
	padding:15px 0;
	justify-content: space-between;
	font-size: 16px;
}
#company .company_detail_list h3{
	display: block;
	width: 25%;
	text-align: center;
	border-bottom: solid 1px #353535;
	padding-bottom: 10px;
}
#company .company_detail_list h3.space1{
    padding: 10px 0 0 0;
}
#company .company_detail_list h3.space2{
    padding: 25px 0 0 0;
}
#company .company_detail_list p{
	display: block;
	width: 75%;
	text-align: left;
	border-bottom: solid 1px #353535;
    margin: 0 0 0 60px;
    padding: 0 0 10px 30px;
}
#company .company_detail_list p.tel{
  color: #535353;
}
#company .company_detail_list p.tel a{
  color: #535353;
}
#company .company_detail_list p br{
	display: none;
}
#company .company_detail_list p span{
	display: block;
}
#company .googlemap{
	margin: 30px 0;
}
@media (max-width: 1024px){
}
@media (max-width: 768px){
	#company {
    max-width: 100%;
    padding: 0 20px;
}
#company h2 {
    margin: 60px auto 70px;
}
#company .company_detail_list p {
    margin: 0 0 0 40px;
}
}
@media (max-width: 425px){
	#company h2 {
    font-size: 22px;
    width: 40%;
    margin: 30px auto;
}
#company .company_detail_list {
    font-size: 14px;
    flex-wrap: wrap;
	padding: 10px 0 0 0;
}
#company .company_detail_list h3 {
    width: 80%;
    padding-bottom: 5px;
    margin: 15px auto;
}
#company .company_detail_list p {
    width: 100%;
    border-bottom: unset;
    margin: 0;
    padding: 0 0 10px 0;
    text-align: center;
}
#company .company_detail_list p br{
	display: block;
}
}
@media (max-width: 375px){
	#company {
    margin: 40px auto;
}
}
@media (max-width: 320px){
}





/* ---------------------------------------------------------------------------- /
/   取扱商品
/* ---------------------------------------------------------------------------- */
#product{
	width: 100%;
}
#product .product_inner{
	width: 1080px;
	margin: 0 auto;
}
#product .product_inner p{
	line-height: 2.5;
	margin: -50px 0 0 0;
	font-size: 16px;
}
#product .type{
	width: 100%;
	padding: 180px 0;
}
#product .type .detail_high{
	width: 100%;
	display: flex;
	margin: 0;
	padding:0;
	height: 400px;
}
#product .type .detail_high img{
	width: 66.6%;
	align-self: flex-start;
}
#product .type .detail_high .detail_text{
	width: 30%;
	padding:30px;
}
#product .type .detail_high .detail_text h4{
	font-size: 30px;
    padding: 0 0 30px 0;
    text-align: center;
}
#product .type .detail_high .detail_text p{
	line-height: 2.5;
	font-size: 16px;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: bold;
}
#product .type .detail_low{
	width: 100%;
	display: flex;
}
#product .type .detail_low img{
	width: 33.3%;
	padding:0;
	margin: 0;
  align-self: flex-start;
}
#product .type .detail_low img.type_img{
  align-self: flex-start;
}
/* ---------------------------------------------------------------------------- /
/   取扱商品 テキスト
/* ---------------------------------------------------------------------------- */
#product .product_detail{
	max-width: 820px;
	margin: -30px auto 150px;
}
#product .product_detail .product_text{
	width: 100%;
	display: flex;
	padding: 10px 0;
}
#product .product_detail .product_text p.product_text1{
	width: 11%;
	font-size: 16px;
	text-align: left;
}
#product .product_detail .product_text p.product_text2{
	width: 91%;
	margin: 0 0 0 15px;
	font-size: 16px;
	text-align: left;
}
#product .product_detail .product_text p.product_text2 span{
}
#product .product_detail h5{
	text-align: center;
    font-size: 25px;
    padding: 40px 0 0 0;
}
#product .product_detail p{
	text-align: center;
	font-size: 28px;
	padding:0;
}
#product .product_detail p a{
	font-size: 33px;
	color: #353535;
}
#product .product_detail p a:hover{
	opacity: 0.8;
}
@media (max-width: 1440px){
	#product .type .detail_high img {
    width: 68.5%;
    align-self: flex-start;
}
#product .type .detail_high .detail_text p {
    line-height: 2.1;
}
}
@media (max-width: 1024px){
	#product .type {
    padding: 80px 0;
}
	#product .product_inner {
    width: 100%;
}
#product .product_inner p {
    padding: 0 20px;
}
#product .type .detail_high {
    height: 320px;
}
#product .type .detail_high img {
    width: 66.7%;
    align-self: flex-start;
}
#product .type .detail_high .detail_text {
    padding: 0 20px 20px 20px;
}
#product .type .detail_high .detail_text h4 {
    font-size: 25px;
    padding: 0 0 20px 0;
}
#product .type .detail_high .detail_text p {
    line-height: 2.2;
    letter-spacing: 0;
}
}
@media (max-width: 768px){
	#product .type .detail_high {
	height: unset;
    flex-wrap: wrap;
}

#product .type .detail_high .detail_text {
    width: 100%;
    padding: 30px 20px 20px 20px;
}
#product .type .detail_high .detail_text h4 {
    padding: 0 0 10px 0;
}
#product .product_detail {
    max-width: 100%;
    margin: 0px auto 100px;
    padding: 0 20px;
}
#product .type .detail_high img {
    width: 100%;
    align-self: flex-start;
}
#product .product_detail .product_text {
    flex-wrap: wrap;
}
#product .product_detail .product_text p.product_text1 {
    width: 50%;
    border-bottom: solid 1px #353535;
    text-align: center;
    margin: 10px auto;
}
#product .product_detail .product_text p.product_text2 span{
	display: none;
}
#product .product_detail .product_text p.product_text2 {
    width: 100%;
    margin: 0 0 0 15px;
    font-size: 16px;
    text-align: center;
}
#product .product_detail .product_text {
    padding: 20px 0;
}
}
@media (max-width: 425px){
  #product .product_inner {
    width: 100%;
    margin: 80px auto 0;
}
	#product .product_inner p {
    line-height: 1.7;
}
	#product .type .detail_high img {
    display: none;
}
	#product .type {
    padding: 0 0 10px;
}
	#product .type .detail_high .detail_text p {
    line-height: 1.8;
    font-weight: normal;
    font-size: 14px;
}
	#product .type .detail_low img.type_img{
	display: none;
}
	#product .type .detail_low img {
    width: 50%;
}
	#product .product_detail .product_text {
    padding: 20px 0 0;
}
	#product .product_detail h5 {
    font-size: 20px;
}
	#product .product_detail p {
    font-size: 24px;
}
	#product .product_detail p a {
    font-size: 25px;
}
	#product .product_detail {
    margin: 0px auto 50px;
}
	#company h2, #product h2, #contact h2 {
    font-size: 24px;
    border-bottom: solid 1px #353535;
    padding-bottom: 5px;
    text-align: center;
    width: 40%;
    margin: 60px auto 20px;
}
}
@media (max-width: 375px){
  #product .product_inner {
    width: 100%;
    margin: 50px auto 0;
}
	#company h2, #product h2, #contact h2 {
    width: 40%;
}
	#product .product_inner p {
    margin: 20px 0 0 0;
}
}
@media (max-width: 320px){
  #product .product_inner {
    width: 100%;
    margin: 30px auto 0;
}
	#product .product_detail h5 {
    font-size: 17px;
}
	#product .product_detail .product_text p.product_text2 {
    margin: 0;
    font-size: 14px;
    text-align: left;
}
#company h2, #product h2, #contact h2 {
    width: 50%;
}
}



/* ---------------------------------------------------------------------------- /
/   お問合わせ
/* ---------------------------------------------------------------------------- */
#contact{
	max-width: 930px;
	margin: 0 auto;
}
#contact p{
	text-align: center;
	font-size: 16px;
	padding:30px 0;
}
/* ------------------------------------- /
/   form
/* ------------------------------------- */
#contact .form{
	width: 100%;
	margin: -50px 0 100px 0;
}
#contact .form .form_inner{
	max-width: 100%;
	margin: 0 auto;
}
#contact .form .form_inner .formbox{
	width: 100%;
}
#contact .form .form_inner .formbox p{
	text-align: center;
	padding:20px 0;
}
#contact .form .form_inner .formbox p span{
    color: #e37e77;
}
#contact .form .form_inner .formbox dl{
    overflow: hidden;
}
#contact .form .form_inner .formbox dt{
    width: 20%;
    padding: 20px 0 20px 10px;
    font-size: 16px;
    font-weight: normal;
    float: left;
    clear: left;
}
#contact .form .form_inner .formbox dt span{
    color: #e37e77;
}
#contact .form .form_inner .formbox dd{
    width: 65%;
    padding: 15px 0 15px 20px;
    font-size: 16px;
    float: left;
}
#contact .form .form_inner .formbox select{
    width: 100%;
    height: 30px;
    border-radius: 0;
    outline: none;
    border: 1px solid #aaa;
    -webkit-transition: all .3s;
    transition: all .3s;
}
#contact .form .form_inner .formbox option{
    font-size: 14px;
}
#contact .form .form_inner .formbox input{
    width: 100%;
    height: 40px;
}
#contact .form .form_inner .formbox textarea {
    width: 100%;
}
#contact .form .form_inner .formbox .right {
    margin-top: 5px;
    font-size: 13px;
    color: #e37e77;
}
#contact .form .form_inner .formbox input[type="text"],
#contact .form .form_inner .formbox textarea {
    padding: 0 10px;
    font-size: 14px;
    outline: none;
    border: 1px solid #aaa;
    -webkit-transition: all .3s;
    transition: all .3s;
}
#contact .form .form_inner .formbox textarea {
    padding: 10px;
}
#contact .form .form_inner .formbox .btn_box {
    max-width: 310px;
    margin: 50px auto 0;
}
#contact .form .form_inner .formbox .btn_box .submit_button {
    display: block;
    width: 100%;
    text-align: center;
    color: #fff;
    background-color: #333;
    border: 1px solid #333;
    letter-spacing: 0.2em;
    font-size: 16px;
}
#contact .form .form_inner .formbox .btn_box .submit_button:hover{
    background-color: #fff;
    border: 1px solid #333;
    color: #333;
}
button, html input[type="button"], input[type="reset"], input[type="submit"] {
    -webkit-appearance: button;
    cursor: pointer;
}
@media (max-width: 1024px){
	#contact .form .form_inner {
    max-width: 100%;
    margin: 0 auto;
    padding: 0 20px;
}
	#contact .form .form_inner .formbox dt {
    width: 100%;
    padding: 20px 0 0px 10px;
}
	#contact .form .form_inner .formbox dd {
    width: 95%;
    padding: 15px 0 15px 10px;
    font-size: 16px;
    float: left;
}
}
@media (max-width: 768px){
	#contact .form .form_inner{
	max-width: 100%;
}
}
@media (max-width: 425px){
#contact .form {
    margin: -10px auto 80px;
}
	#contact .form .form_inner .contact_rogo {
    padding-bottom: 0px;
}
	#contact .form .form_inner .formbox dd {
    width: 80%;
}
	#contact .form .form_inner .formbox p {
    text-align: left;
    padding: 20px 0;
}

}
@media (max-width: 375px){
	#contact .form .form_inner .formbox p {
    font-size: 14px;
}
	#contact .form .form_inner .formbox dt {
    padding: 20px 0 0px 0px;
}
	#contact .form .form_inner .formbox dd {
    width: 90%;
    padding: 10px 0 0 0px;
    font-size: 16px;
    float: left;
}
}
@media (max-width: 320px){
}
/* ---------------------------------------------------------------------------- /
/   お問合わせ　完了画面
/* ---------------------------------------------------------------------------- */
#complete_contact{
    max-width: 1080px;
    margin: 150px auto;
    text-align: center;
}
#complete_contact h3 {
    font-size: 25px;
    border-bottom: solid 1px #353535;
    padding-bottom: 10px;
    margin: 0 auto;
    width: 60%;
    text-align: center;
}
#complete_contact p{
    text-align: center;
    font-size: 16px;
    padding: 100px 0 70px 0;
}
#complete_contact a{
    padding: 20px 0;
}
#complete_contact a span{
    display: block;
    padding: 5px 50px;
    border:solid 1px #353535;
    text-align: center;
    width: 265px;
    margin: 0 auto;
    color:#353535;
}
#complete_contact a:hover span{
    background-color: #353535;
    color: #fff;
}
@media (max-width: 1024px){
}
@media (max-width: 768px){
    #complete_contact h3 {
    font-size: 20px;
}
}
@media (max-width: 425px){
    #complete_contact {
    max-width: 100%;
    margin: 80px auto;
}
    #complete_contact p {
    text-align: left;
    font-size: 16px;
    padding: 50px 20px;
}
#complete_contact a span {
    width: 150px;
}
}
@media (max-width: 375px){
}
@media (max-width: 320px){
    #complete_contact h3 {
    font-size: 18px;
    width: 90%;
    letter-spacing: 0;
}
}


/* ------------------------------------- /
/   topへ戻る
/* ------------------------------------- */
#pageTop {
  position: fixed;
  bottom: 50px;
  right: 20px;
  color: #ffffff;
}
#pageTop i {
  padding-top: 6px
}
#pageTop a {
    background-repeat: no-repeat;
    text-decoration: none;
    width: 55px;
    height: 55px;
    text-align: center;
    line-height: 55px;
    background: rgba(51, 51, 51, 0.7);
    padding: 0;
    display: block;
    color: #fff;
}
#pageTop a:hover {
  text-decoration: none;
  opacity: 0.7;

}
#pageTop span {
  text-decoration: none;
  opacity: 0.7;

}
#pageTop .fa {
  position:relative;
    display: inline-block;
    font: normal normal normal 14px/1 FontAwesome;
    font-size: inherit;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
#pageTop .fa-chevron-up:after {
    content: ' ';
    width:0;
    height: 0;
    position:absolute;
    border:10px solid transparent;
    border-bottom-color:#ffffff;
    bottom:60%;
  left: -9px;
}
@media (max-width: 1024px){
}
@media (max-width: 768px){
  #pageTop {
    position: fixed;
    bottom: 20px;
    right: 20px;
    color: #ffffff;
}
  #pageTop a {
    width: 50px;
    height: 50px;
}
}
@media (max-width: 425px){
}
@media (max-width: 375px){
}
@media (max-width: 320px){
}









































































































































































