@charset "utf-8";
/* CSS Document */
/*-------------------------------------------------------
					全体共通部分
-------------------------------------------------------*/
body{
background: -webkit-linear-gradient(left, #0e0f0f 0%, #1f2021 30%, #2b2d2e 57%, #2d2f30 64%, #2d2f30);
background: -o-linear-gradient(left, #0e0f0f 0%, #1f2021 30%, #2b2d2e 57%, #2d2f30 64%, #2d2f30);
background: linear-gradient(to right, #0e0f0f 0%, #1f2021 30%, #2b2d2e 57%, #2d2f30 64%, #2d2f30);
}
.content{
	background-color: rgba(37,37,37,95);
	padding: 100px 30px;
/*	top: -80px;*/
/*	margin-top: 30px;*/
}
/* 下層ページふわっと表示 */
.fadein{
    opacity : 0;
    -webkit-transform : translate(0, 25px);
    -ms-transform : translate(0, 25px);
    transform : translate(0, 25px);
	transition: all 1s
}
.fadein.scrollin{
    opacity : 1;
    -webkit-transform : translate(0, 0);
    -ms-transform : translate(0, 0);
    transform : translate(0, 0);
}


/*-------------------------------------------------------
					タイトル
-------------------------------------------------------*/
.page_title{
	background-image: url("../img/main_img1.jpg");
	background-repeat: no-repeat;
	background-size: cover;
	overflow: hidden;
}
.page_title:before {
content: '';
    position: absolute;
    bottom: -130px;
    left: 0;
    width: 120%;
    height: 150px;
    /* margin: -3% -10% 0; */
    background: -webkit-linear-gradient(left, #0e0f0f 0%, #1f2021 30%, #2b2d2e 57%, #2d2f30 64%, #2d2f30);
    background: -o-linear-gradient(left, #0e0f0f 0%, #1f2021 30%, #2b2d2e 57%, #2d2f30 64%, #2d2f30);
    background: linear-gradient(to right, #0e0f0f 0%, #1f2021 30%, #2b2d2e 57%, #2d2f30 64%, #2d2f30);
    -webkit-transform-origin: left center;
    -ms-transform-origin: left center;
    transform-origin: left center;
    -webkit-transform: rotate(-2deg);
    -ms-transform: rotate(-2deg);
    transform: rotate(-2deg);
}
.page_title .mask{
	padding-top: 130px;
	padding-bottom: 130px;
	background: -moz-linear-gradient(left, rgba(19,38,24,0.9), rgba(15,15,15,0.9));
	background: -webkit-linear-gradient(left, rgba(19,38,24,0.9), rgba(15,15,15,0.9));
	background: linear-gradient(to right, rgba(19,38,24,0.9), rgba(15,15,15,0.9));
	height: 100%;
}
.page_title p {
	color: #dbfce3;
	animation: neonBlur 16s infinite;
	font-weight: bold;
}
/*--　タイトル　ネオン風　--*/
h2 {
	font-size: 55px;
	color: #dbfce3;
	animation: neonBlur 16s infinite;
	font-weight: bold;
}
h2 > div:nth-child(1) {
	animation: neonBlink 5s infinite;
}
h2 > div:nth-child(2) {
	opacity: .7;
	font-weight: 800;
}
h2 > div:nth-child(3) {
	opacity: .4;
}
h2 > div:nth-child(4) {
	animation: neonBlink 2s infinite;
}
h2 > div:nth-child(7) {
	animation: neonBlink 3s infinite;
}

@keyframes neonBlink {
  0% { opacity: 1; }
  10% { opacity: .6; }
  12% { opacity: 1; }
  15% { opacity: .4; }
  17% { opacity: 1; }
  18% { opacity: .3; }
  19% { opacity: 1; }
  89% { opacity: 1; }
  91% { opacity: .7; }
  94% { opacity: 1; }
  100% { opacity: 1; }
}

@keyframes neonBlur {
  0% { text-shadow: 0px 0px 25px #41b25d; }
  50% { text-shadow: 0px 0px 75px #41b25d; filter: blur(0.5px) }
  100% { text-shadow: 0px 0px 25px #41b25d; }
}


/*--　タイトル ランダム順で表示　--*/
h2 span {
  opacity:0;
  transition: opacity 500ms cubic-bezier(.445,.05,.55,.95);
}
h2 span:nth-of-type(even){transition-delay: 0.4s;}
h2 span:nth-of-type(odd){ transition-delay: 0.8s;}
h2 span:nth-of-type(3n+1) {transition-delay: 0.6s;}
h2 span:nth-of-type(7n+1) {transition-delay: 0.2s;}
h2 span:nth-of-type(1){transition-delay: 1s;}
h2 span.is-active {
    opacity:1;
} 

/*-------------------------------------------------------
					フッター
-------------------------------------------------------*/
footer{
	background-image: url(../img/footer.png);
	background-repeat: no-repeat;
    background-size: cover;
    background-position: bottom;	
}
footer .title_box{
	display: inline-flex;
}


/*-------------------------------------------------------
					タブ切り替え 
-------------------------------------------------------*/
#cate_list li.active a{
	border: 1px solid #41b25d;
	color: #41b25d;
	position: relative;
}
#cate_list li.active a .triangle{
	position: absolute;
	width: 0;
  height: 0;
	bottom:-6px;
	left:0;
	right:0;
	margin: auto;
  border-left: 8px solid transparent;
  border-right: 8px solid transparent;
  border-top: 6px solid #41b25d;		
}
#cate_list li a{
	border: 1px solid #41b25d;
	color: #41b25d;
	position: relative;

}
#cate_list li:nth-child(n+5){
	margin-top: 30px;
}
#cate_list li a{
	background-color: transparent;
	transition: color 0.5s ,  background-color 0.5s ;
	-webkit-transition: color 0.5s ,  background-color 0.5s ;
	-moz-transition: color 0.5s ,  background-color 0.5s ;
	-ms-transition: color 0.5s ,  background-color 0.5s ;
	-o-transition: color 0.5s ,  background-color 0.5s ;
	padding-bottom: 4px;
	padding-top: 4px;
	width: 80%;
	display: block;
	margin: auto;
}
#cate_list li a span{
	width: 80%;
	display: block;
    margin: auto;
}
#cate_list li.active:hover a{
	opacity: 1;
}
#cate_list li:hover a{
	opacity: 0.5;
	transition: opacity 0.5s;
}
/*#cms_wrap{
	margin-top: 95px;
}*/
#cate_list{
	margin-bottom: 60px;	
}
.box_left .cate_txt1 {
	display: flex;
	align-items: center;
}
.box_left  .cate_txt1:after {
	content: "";
    width: 15%;
    height: 1px;
    background: #fff;
    display: block;
    margin-left: auto;
}




/*-------------------------------------------------------
					コーティングについて
-------------------------------------------------------*/
.coating .cate .box:first-child {
	margin-top: 0px;
}
.coating .cate .box .box_txt1 {
	border-bottom: solid 1px #848484;
	position: relative;
	padding-bottom: 5px;
}
 
.coating .cate .box .box_txt1:after {
  content: "";
  display: block;
  line-height: 0;
  overflow: hidden;
  position: absolute;
  left: 0;
  bottom: -1px;
  width: 15%;
  border-bottom: 1px solid #41b25d;
}


/*-------------------------------------------------------
					研磨について
-------------------------------------------------------*/
.polishing .cate .box:first-child {
	margin-top: 0px;
}
.polishing .cate .box .box_txt1 {
	border-bottom: solid 1px #848484;
	position: relative;
	padding-bottom: 5px;
}
 
.polishing .cate .box .box_txt1:after {
  content: "";
  display: block;
  line-height: 0;
  overflow: hidden;
  position: absolute;
  left: 0;
  bottom: -1px;
  width: 15%;
  border-bottom: 1px solid #41b25d;
}

/*-------------------------------------------------------
					各種コーティング
-------------------------------------------------------*/
.carte .sub_cate_img1{
	width: 40%;
}
.carte .box_wrap{
	width: 55%;
}
.carte .box{
	padding-bottom: 3px;
}
.carte .cate_txt2{
	line-height: 1.8;
}


/*-------------------------------------------------------
					業者様へ
-------------------------------------------------------*/
.trader .cate .box:first-child {
	margin-top: 0px;
}
.trader .cate .box .box_txt1 {
	border-bottom: solid 1px #848484;
	position: relative;
	padding-bottom: 5px;
}
 
.trader .cate .box .box_txt1:after {
  content: "";
  display: block;
  line-height: 0;
  overflow: hidden;
  position: absolute;
  left: 0;
  bottom: -1px;
  width: 15%;
  border-bottom: 1px solid #41b25d;
}



/*-------------------------------------------------------
					ブログ
-------------------------------------------------------*/
.blog .box{
	margin-bottom: 50px;
	padding-bottom: 50px;
}
.blog .box:last-of-type{
	border-bottom: none!important;
}
.peger li{
	margin-right: 20px;
	margin-left: 20px;
	font-weight: bold;
}
/*.peger li:last-child{
	margin-right: 0px;
}*/
.peger li a{
	color: #d7d7d7;
}
.peger li a:hover{
	opacity: 0.6;
	transition: all 0.5s;	
}
.peger li:last-child a,.peger li:first-child a{
	padding: 8px 15px;
	color: #fff;
	font-weight: normal;
}


/*-------------------------------------------------------
					お問い合わせ
-------------------------------------------------------*/
.contact input,.contact textarea{
	background-color: #4f4f4f;
	border: 1px solid #4f4f4f;
	color: #d7d7d7;
}

/*-------------------------------------------------------
					店舗情報
-------------------------------------------------------*/
.info .d_table{
	border-color: #4f4f4f;
}

/*-------------------------------------------------------
					サイトマップ
-------------------------------------------------------*/
.sitemap ul{
	max-width: 250px;
}
.sitemap ul li a {
	padding-left: 20px;
	padding-right: 20px;
	padding-top: 5px;
    padding-bottom: 8px;
}
.sitemap ul li a:hover:after, .sitemap ul li a:focus:after, .sitemap ul li a:active:after {
	width: 100%;
}
.sitemap ul li a:after {
	content: '';
	position: absolute;
	bottom: 1.5em;
	left: 50%;
	width: 0%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
	height: 1px;
	background: #FFF;
	-webkit-transition: .35s;
	transition: .35s;
}
/*--　日英切り替え　--*/
.sitemap ul li {
	height: 1.5em;
	letter-spacing: 3px;
}	
.sitemap ul li span{
 	transition: 0.3s;

}
.sitemap ul li span:nth-child(1) {
	display: block;
}
.sitemap ul li span:nth-child(2) {
	opacity:0;
	position: relative;
	top: -1.5em;
}
.sitemap ul li:hover span:nth-child(1) {
	opacity: 0;
}
.sitemap ul li:hover span:nth-child(2) {
	opacity: 1;

}

/*ここからIE用環境の設定
---------------------------------------------------------------------------*/
/*表示を切り替えるウィンドウサイズの指定*/
@media all and (-ms-high-contrast: none){
#cate_list li a {
    padding-top: 10px;
}
.peger li:last-child a, .peger li:first-child a {
	padding: 10px 15px 5px;
}
.contact #form_area button{
	padding-top: 17px;
	padding-bottom: 13px;
}
.info .d_table{
	padding-top: 20px;
	padding-bottom: 14px;
}
.privacy p a{
	padding-bottom: 2px;
}
}


/*ここからタブレット用（768px以下）環境の設定
---------------------------------------------------------------------------*/
/*表示を切り替えるウィンドウサイズの指定*/
@media screen and (max-width: 768px){
/*-------------------------------------------------------
					全体共通部分
-------------------------------------------------------*/
.content{
	padding: 80px 30px;
}

/*-------------------------------------------------------
					タイトル
-------------------------------------------------------*/
.page_title:before {
    width: 105%;
}
h2 {
	font-size: 45px;
}
/*------------------------------------------------------
					店舗情報
-------------------------------------------------------*/
iframe{
	width: 70%!important;
    height: 300px!important;	
}
/*-------------------------------------------------------
					サイトマップ
-------------------------------------------------------*/
.sitemap ul{
	max-width: 300px;
}
}




/*ここからスマホ用（667px以下）環境の設定
---------------------------------------------------------------------------*/
/*表示を切り替えるウィンドウサイズの指定*/
@media screen and (max-width: 667px){
/*-------------------------------------------------------
					全体共通部分
-------------------------------------------------------*/
.content{
	padding: 70px 30px;
	top: -70px;
}
/*-------------------------------------------------------
					タイトル
-------------------------------------------------------*/
.page_title:before {
    -webkit-transform: rotate(-3deg);
    -ms-transform: rotate(-3deg);
    transform: rotate(-3deg);
}
.page_title .mask{
	padding-top: 110px;
	padding-bottom: 110px;
}
h2 {
	font-size: 37px;
}
	

/*-------------------------------------------------------
					タブ切り替え 
-------------------------------------------------------*/
#cate_list {
    margin-bottom: 25px;
}
#cate_list li a{
	width: 100%;
}
.box_left .cate_txt1 {
	display: flex;
	align-items: center;
}
.box_left  .cate_txt1:after {
	display: none;
}
.box_left h3{
	position: relative;
	display: inline-block;
	height: 55px;

}
.box_left h3::after {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	width: 1px;
	height: 25px;
	margin: auto;
	background-color: #fff;
}
.box_left .cate_txt1 {
    display: block;
    align-items: center;
}

	
/*-------------------------------------------------------
					各種コーティング
-------------------------------------------------------*/
.carte .sub_cate_img1{
	width: 100%;
}
.carte .box_wrap{
	width: 100%;
}
	
	
/*------------------------------------------------------
					店舗情報
-------------------------------------------------------*/
iframe {
    width: 100%!important;
    height: 180px!important;
}
/*-------------------------------------------------------
					サイトマップ
-------------------------------------------------------*/
/*--　日英切り替え　--*/
.sitemap ul li {
	letter-spacing: 2px;
}	
}