/*reset*/
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, 
fieldset, input, textarea, p, blockquote, th, td{
    margin: 0; 
    padding: 0;
}
html{
    overflow-y: scroll;
	margin: 0; 
	padding: 0;
}
h1, h2, h3, h4, h5, h6{
    font-size: 100%; 
    font-weight: normal;
}
ol, ul{
    list-style:none;
}
fieldset, img{
     border:0;
}
table{
    border-collapse: collapse; 
    border-spacing:0;
}
caption, th{
    text-align: left;
}
a{
	text-decoration: none;
	}
a:focus {
	outline:none;
}
a:hover{
	opacity: 0.7;
	}
address, caption, cite, code, dfn, em, th, var{
    font-style: normal; 
    font-weight: normal;
}

/*body*/
body {
    font-family: Lato, "Noto Sans JP", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color:#333;
	font-size:15px;
	line-height:1.6em;
}

a{
	color: #000;
}

h1{
	z-index: 1111;
	position: absolute;
}

h1 img{
	width: 30%;
	padding: 22px;
}

h2{
	text-align: center;
	font-size: 28px;
	margin: 30px 0;
	font-family: 'Oswald', sans-serif;
	}

h2 .small{
	font-size: 13px;
}

h3{
	font-size: 20px;
	font-weight: bold;
	border-bottom: 2px solid #000;
	padding: 0 0 5px 0;
	}
	
h3.bordertop{
	font-family: 'Oswald', sans-serif;
	border-bottom: 0;
	border-top: 1px solid #CCC;
	margin: 0 0 15px 0;
	padding: 10px 0 0 0;
	}
	
h3.bordertop .small{
	font-size: 12px;
	font-weight: normal;
	padding: 0 0 0 20px;
	}
	
section{
	margin: 150px 0 ;
	}

#warp{
	width: 100%;
	overflow: hidden;
}

#content{
	width: 1000px;
	margin: 0 auto;
	}

/*ナビ*/
.head_nav{
	display: flex;
	display: -webkit-flex;
	z-index: 1000;
	width: 100%;
}

.menu-main-container{
	background: rgba(51,51,51,0.7);
	position: absolute;
	width: 100%;
	z-index: 999;
}

.menu-main-container ul{
	width: 1000px;
	margin: 0 auto;
	padding: 30px 0;
	display: flex;
	-webkit-display: flex;
	justify-content: space-between;
	-webkit-justify-content: space-between;
}

.menu-main-container li{
	text-align: center;
	line-height: 1em;
}

.menu-main-container a{
	font-size: 18px;
	font-family: 'Oswald', sans-serif;
	color: #FFF;
	text-decoration: none;
	text-transform: uppercase;
}

.menu-main-container .small{
	font-size: 9px;
}


/*スライダー*/
.bx_slider{
	width: 100%;
	z-index: 2;
	}

.bx-wrapper{
	border: none;
	margin-bottom: 30px ;
	}

/*ヘッダーイメージ*/
.head_img{
	z-index: 0;
}

.header_img img{
	width: 100%;
}

/*パンくず*/
.breadcrumbs {
	font-size: 13px;
	position: relative;
	padding: 10px 0 0 0;
}

/*トップページ*/
.intro{
	width: 1000px;
	margin: 20px auto;
	display: flex;
	-webkit-display: flex;
	justify-content: space-between;
	-webkit-justify-content: space-between;
	align-items: flex-end;
	-webkit-align-items: flex-end;
	}
	
.intro_text p{
	font-size: 15px;
	padding: 25px 0 0 11px;
	}
	
.sns{
	width: 1000px;
	margin: 0 auto;
	display: flex;
	-webkit-display: flex;
	justify-content: space-between;
	-webkit-justify-content: space-between;
	flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	}
	
.sns h2{
	width: 100%;
	}
	
.facebook{
	width: 480px;
	}
	
.instagram-wrap {
    width: 480px;
}
.insta-img-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.insta-img-list .item img {
  width: 230px;
}
.information .post_list dl dt {
	 float: left;
	 padding: 5px 0;
	 width: 7em;
}

.information .post_list dl dd {
	 border-bottom: 1px dashed #ccc;
	 padding: 5px 0 5px 7em;
}

.new_arrival .blog_archive{
	display: flex;
	display: -webkit-flex;
}

.new_arrival .blog_archive li{
	width: 295px;
	text-align: center;
	margin: 0 55px 0 0;
}

.new_arrival .blog_archive li:last-child{
	width: 295px;
	text-align: center;
	margin: 0;
}

.new_arrival .blog_archive .blog_title{
	font-size: 20px;
	font-weight:  bold;
}

.newarrival_comment{
	margin: 10px 0;
	padding: 13px 0;
	border-top: 1px solid #000;
	font-size: 13px;
    line-height: 1.4em;
}

.youtube {
	text-align: center;
	margin: 0 auto;
}

/*アーカイブ*/
#blog_page{
	display: flex;
	display: -webkit-flex;
	padding: 20px 0;
}

.blog_left{
	width: 80%;
	margin: 0 20px 0 0;
}

.blog_post{
	display: flex;
	display: -webkit-flex;
}

#blog_page .post_list{
	border-bottom: 1px solid #CCC;
	madgin: 0 0 10px 0;
	padding: 17px 0 15px 0;
}

#blog_page .post_list:first-child{
	border-bottom: 1px solid #CCC;
	madgin: 0 0 10px 0;
	padding: 0 0 15px 0;
}

.blogpost_right{
	margin: 0 0 0 10px;
	width: 100%;}

.blogpost_right .title{
	font-size: 18px;
	font-weight: bold;
	border-bottom: 2px solid #000;
	margin: 0 0 5px 0;
	padding: 0 0 5px 0;
}

.date{
	font-size: 13px;
	color: #999;
}

.date .cate{
	background: #999;
	color: #fff;
	padding: 3px 5px;
}

.single .date{
	margin: 15px 0;
	}

.blog_excerpt{
	font-size: 15px;
	margin: 10px 0 0 0;
	line-height: 1.3em;
	color: #999;
}

/*ストックリスト・ギャラリー*/
#blog_page .gallery{
	width: 100%;
	}
	
#blog_page .gallery .post_box{
	display: flex;
	display: -webkit-flex;
	flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	justify-content: space-between;
	-webkit-justify-content: space-between;
	}

#blog_page .gallery .post_list{
	width: 295px;
	padding: 0 0 20px 0;
	border: none;
	}
	
.post_box:after{
  content:"";
  display: block;
  width:25%;
}
	
#blog_page .gallery .post_list .blog_post{
	display: flex;
	display: -webkit-flex;
	flex-direction: column;
	-webkit-flex-direction: column;
	text-align: center;
	}
	
#blog_page .gallery .post_list .blog_post .title{
	border: none;
	}

#blog_page .gallery .post_list .blogpost_right{
	margin: 0;
	}
	
#slider,#thumbnail_slider{
  width: 650px;
  margin: 0 auto 10px;
}

.slide-item img{
    width: 100%;
  }
  
#slider img{
	background-color: #FFF;
	width: 100%; 
	max-height: 500px;
	object-fit: contain;
	}
  
#thumbnail_slider{
     margin: 0 auto 50px;
  } 
  
#thumbnail_slider img{
	background-color: #FFF;
    width: 130px;
	max-height: 90px;
	object-fit: contain;
  }
  
 .slick-prev{
	 left: -35px;
	 }
	 
.slick-next{
	right: -15px;
	}
 
 .slick-prev::before {
	position: relative;
	content: "\025c0";
	padding: 10px;
	color: #999;
	font-weight: bold;
	}
 
.slick-next::before {
	position: relative;
	content: "\025b6";
	padding: 10px;
	color: #999;
	font-weight: bold;
	}
		
	
/*プロジェクト*/
#blog_page .project{
	width: 100%;
	}
	
.gray_btn{
	position: relative;
	text-align: center;
	background: #CCC;
	color: #000;
	padding: 5px 15px;
	width: 200px;
	float: right;
	margin: 30px 0 0 0;
	}
	
.gray_btn a{
	display: block;
}

.gray_btn .svg-inline--fa{
	position: absolute;
	top: 9px;
	right: 10px;
	}

/*page navigation*/
.navigation{
	width: 100%;
	text-align: center;
	padding: 30px 0 ;
}

.navigation h2{
	display: none;
}

.navigation span,.navigation a,.current{
	margin: 2px;
	padding: 5px;
	border: 1px solid #333;
}

.navigation .current{
	background: #333;
	color: #fff;
}

/*記事ページ*/
.fotorama__wrap{
	margin: 20px auto 40px auto;
	}
	
.comment{
	margin: 0 0 60px 0;
	}
	
.stock{
	width: 100%;
	}
	
.stock th,.stock td{
	padding: 10px;
	text-align: left;
	vertical-align: top;
	border: 1px solid #333;
	}
	
.stock th{
	width: 190px;
	background: #F0F0F0;
	}
	
.center{
	text-align: center;
	}

/*プレビューリンク*/
.prev_links{
	display: flex;
	display: -webkit-flex;
	justify-content: space-between;
	-webkit-justify-content: space-between;
	border-top: 1px solid #000;
	margin: 30px 0;
	padding: 8px 0 0 0;
	}
	

/*固定ページ*/
h2.page{
	position: absolute;
	top: 185px;
	left: 0;
	right: 0;
	font-size: 45px;
	color: #fff;
}

h2.page .small{
	border-top: 1px solid #fff;
	padding: 5px;
	line-height: 5em;
}

h2.bordertop{
	border-top: 1px solid #CCC;
	padding: 15px;
}

.page-sc{
	margin: 30px 0 0 0;
}

/*サイドバー*/
#sidebar {
	width: 20%;
	padding: 5px 0 0 0;
	}

#sidebar h2{
	text-align: left;
	font-size: 16px;
	margin: 0 0 8px 0;
	padding: 0;
	font-weight: bold;
}

#sidebar h2.title{
	font-size: 20px;
	font-weight: bold;
	border-bottom: 2px solid #000;
	}

#sidebar ul li ul{
	margin: 0 0 20px 0;
}

#sidebar ul li ul li{
	list-style: disc;
	margin: 0 0 0 20px;
	color: #CCC;
}

/*ABOUT*/
.message{
	width: 99vw;
	position: relative;
    left: 50%;
    transform: translateX(-50%);
	background-image: url(images/message_bg.jpg);
	background-size: 100vw;
	background-repeat: no-repeat;
	color: #fff;
	padding: 40px 0;
}

.message p{
	width: 1000px;
	margin: 0 auto;
}

h2.message_subtite{
	font-size: 40px;
	padding: 20px 0;
}

.name{
	text-align: right;
	font-size: 18px;
	margin: 30px 0 0 0;
}

.name .small{
	font-size: 14px;
}

/*COMPANY*/
.company {
	width: 100%;
}

.company th,.company td{
	padding: 12px 0 12px 5px;
	border-bottom: 1px solid #000;
}

.company th{
	width: 20%;
	border-bottom: 3px solid #000;
	font-weight: bold;
	color: #5C5C5C;
}

/*Contact*/
.gray_back{
	background: #F2F2F2;
	padding: 15px;
	margin: 25px 0;
}

.contact p{
	margin: 0 0 15px 0;
}

.wpcf7-textarea{
	width: 600px;
}

.wpcf7c-btn-confirm{
	font-size: 14px;
	text-align: center;
	width: 100px;
	margin: 30px auto;
	padding: 15px;
	background: #1c2e5f;
	color: #FFF;
	border: none;
}

.wpcf7c-elm-step2{
	font-size: 14px;
	text-align: center;
	width: 100px;
	margin: 30px auto;
	padding: 15px;
	background: #000;
	color: #FFF;
	border: none;
}


.red{
	color: #B31E21;
}

/*フッター*/
.foot_access{
	text-align: center;
	margin: 150px 0 60px 0;
}

.foot_access h2 img{
	width: 100%;
	margin: 80px 0 40px 0;
}

.foot_access .tel{
	font-family: 'Oswald', sans-serif;
	font-size: 50px;
	margin: 40px 0 30px 0;
}

.foot_access .small{
	font-size: 13px;
}

.map{
	margin: 40px 0;
}

.pagetop{
	text-align: right;
	padding: 0 150px 0 0;
}

.foot{
	font-size: 12px;
	background: #1C2E5F;
	text-align: center;
	margin: 10px 0 0 0;
	padding: 40px 0 30px 0;
	color: #FFF;
}

.foot a{
	color: #FFF;
	}

.sns_icon i{
	color: #fff;
	font-size: 35px;
	padding: 20px 2px;
}

.copyright{
	margin: 40px 0 0 0;
}

/*ボタン*/
.black_btn{
	text-align: center;
	width: 300px;
	margin: 30px auto;
	background: #000;
}

.black_btn a{
	color: #fff;
	text-decoration: none;
	display: block;
	padding: 5px 15px;
}

.contact_btn{
	font-family: 'Oswald', sans-serif;
	font-size: 18px;
	text-align: center;
	width: 200px;
	margin: 30px auto;
	padding: 15px;
	background: #000;
}

.contact_btn a{
	color: #fff;
	text-decoration: none;
	display: block;
}

.contact_btn .svg-inline--fa{
	padding: 0 5px 0 0;
}

.stock_btn{
	width: 300px;
	padding: 15px 30px;
	}

/*アニメーション*/
.fuwatAnime {
 -webkit-animation-fill-mode:both;
 -ms-animation-fill-mode:both;
 animation-fill-mode:both;
 -webkit-animation-duration:1.5s;
 -ms-animation-duration:1.5s;
 animation-duration:1.5s;
 -webkit-animation-name: fuwatAnime;
 -ms-animation-name: fuwatAnime;
 animation-name: fuwatAnime;
 visibility: visible !important;
}
@-webkit-keyframes fuwatAnime {
 0% { opacity: 0; -webkit-transform: translateY(-20px); }
 100% { opacity: 1; -webkit-transform: translateY(0); }
}
@keyframes fuwatAnime {
 0% { opacity: 0; -webkit-transform: translateY(-20px); -ms-transform: translateY(-20px); transform: translateY(-20px); }
 100% { opacity: 1; -webkit-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0); }
}

/*sp_mode*/
.sp_mode{
	display: none;
	}
	

@media screen and (max-width:1024px) {
#content{
	width: 100%;
}
h1{
	display: none;
}
h2.page{
	top: 90px;
}
.menu-main-container ul{
	width: 100%;
}
.menu-main-container li{
	width: 10%;
}
.intro{
	width: 100%;
	flex-direction: column;
	-webkit-flex-direction: column;
	align-items: center;
	-webkit-align-items: center;
	margin: 0;
}
.intro img{
	width: 80%;
	}
.intro_text,.intro_img{
	width: 80%;
	}
.intro_text p{
	padding: 5px 3px 5px 5px;
	}
.intro_img{
	text-align: center;
	margin: 15px 0 0 0;
	}
.sns{
	width: 90%;
	flex-direction: column;
	-webkit-flex-direction: column;
	align-items: center;
	-webkit-align-items: center;
	}
.facebook{
	margin: 0 0 5px 0;
	}
.information{
	padding: 0 15px;
	}
.pagetop {
    padding: 0 25px 0 0;
	}
/*ABOUT*/
.message{
	width: 100vw;
	height: 100%;
	margin: 17px 0;
	padding: 20px 0;
	background-size: cover;
	background-position: center center;
	}
.message p{
	width: 90%;
	padding: 10px;
	}
.breadcrumbs{
	padding: 5px 0 0 20px;
	}
#blog_page .gallery .post_box{
	width: 90%;
	margin: 0 auto;
}
.blog_left{
	padding: 0 15px;
}
.blog_left img{
	max-width: 100%;
	height: auto;
}
.page-sc{
	padding: 10px 15px;
}
	#blog_page .gallery{
		padding: 0;
	}
}

@media screen and (max-width:600px) {
.sp_mode{
	display: block;
	}
.pc_mode{
	display: none;
	}
h1.sp_mode{
	position: fixed;
	width: 100%;
	height: 65px;
	background: #000;
	overflow-x: hidden;
	}
h1 img{
	position: fixed;
	padding: 20px;
	width: 45%;
	}
h2{
	height: auto;
	}
h2.page{
	top: 50px;
	font-size: 2em;
	}
h2.page .small{
	line-height: 4em;
	}
.head_nav{
	z-index: 100;
	}
.header_img{
	padding: 60px 0 0 0;
	}
.bx-wrapper{
	box-shadow: none;
	margin: -30px 0 0 0;
	}
#content{
	width: 94%;
	padding: 5px 10px;
	}
section{
	margin: 50px 0;
	}
.intro,.sns,.map iframe{
	width: 100%;
	flex-direction: column;
	-webkit-flex-direction: column;
	}
.intro img{
	width: 95%;
	}
.intro_text,.intro_img{
	width: 100%;
	}
.intro_text p{
	padding: 5px 3px 5px 5px;
	}
.intro_img{
	text-align: center;
	margin: 15px 0 0 0;
	}
.information .post_list dl dt{
	float: none;
	padding: 0;
	}
.information .post_list dl dd{
	width: 100%;
	padding: 0 0 3px 0;
	}	
.new_arrival{
	width: 100%;
	margin: 0 auto;
	}
.new_arrival .blog_archive{
	flex-direction: column;
	-webkit-flex-direction: column;
	justify-content: center;
	-webkit-justify-content: center;
	}
.new_arrival .blog_archive li,.new_arrival .blog_archive li:last-child{
	margin: 8px auto;
	}
.facebook,.instagram{
	float: none;
	width: 90%;
	margin: 0 auto;
	}
/*
.instagram{
	text-align: center;
	margin: 40px auto 0 auto;
	}
*/
.instagram-wrap {
    width: 95%;
	margin: 40px auto 0;
}
.insta-img-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.insta-img-list .item {
		width: 47%;
	}
.insta-img-list .item img {
  width: 100%;
}
	
/*ABOUT*/
.message{
	width: 100vw;
	height: 100%;
	margin: 17px 0;
	padding: 20px 0;
	background-size: cover;
	background-position: center center;
	}
.message p{
	width: 90%;
	padding: 10px;
	}

/*在庫・ギャラリー*/
.blog_left{
	margin: 0;
	}
#blog_page .gallery .post_box{
	flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	justify-content: space-between;
	-webkit-justify-content: space-between;
	}
#blog_page .gallery .post_list{
	width: 48%;
	}	
#blog_page .gallery .post_list .blog_img img{
	width: 100%;
	height: auto;
	}
.newarrival_comment{
	margin: 0;
	padding: 5px 0 0 0 ;
	}
.blogpost_right .title{
	margin: 0;
	}
.stock{
	margin: 0 auto;
	}
.stock th,.stock td{
	display: block;
	width: 92%;
	}
.stock th{
	border-bottom: none;
	}
	
/*プロジェクト・ニュース・ブログ*/
.project .blog_post,.blog_post{
	flex-direction: column;
	-webkit-flex-direction: column;
	}
.project .blog_img img{
	width: 100%;
	height: auto;
	}	
.blogpost_right{
	margin: 0;
	} 
.gray_btn{
	margin: 20px auto;
	float: none;
	}
.blog_img{
	text-align: center;
	}
.blog_img img{
	width: 100%;
	height: auto;
	}
.date{
	padding: 8px 0;
	}
	
/*ニュース、ブログ*/
#blog_page{
	flex-direction: column;
	-webkit-flex-direction: column;
	}
.blog_left,#sidebar{
	width: 100%;
	}
	
/*contact*/
.contact input{
	width: 80%;
	}
.wpcf7-textarea{
	width: 95%;
	}
	
/*投稿*/
.page_content img{
	max-width: 100%;
	height: auto;
	}
#slider{
	width: 95%;
	}
 #thumbnail_slider{
	width: 82%;
	}
#slider img{
	max-height: 215px;
	}
#thumbnail_slider img{
	max-height: 40px;
	}
	
.foot_access{
	margin: 40px 0 0 0;
	}
.foot_access .small{
	font-size: 1em;
	}
.foot_access h2 img{
	margin: 30px 0 20px 0;
	}
.foot_access .tel{
	font-size: 12vw;
	}
.foot img{
	width: 60%;
	}
.pagetop{
	padding: 0 10px 0 0;
	}
.black_btn{
	width: 85%;
	padding: 20px;
	font-size: 1em;
	margin:  30px auto;
	}
}

@media screen and (max-width:450px) {
	.sp_mode{
	display: block;
	}
	.pc_mode{
	display: none;
	}
	.breadcrumbs {
    padding: 5px 0 0 3px;
	}
	.blog_left{
		padding: 0;
	}
	.youtube{
		margin: 0 auto 50px auto;
	}
	.youtube iframe{
	width: 90%;
	height: 200px;
	margin: 0 auto;
   }
}

@media screen and (max-width:320px) {
	.foot_access .small{
		font-size: 0.7em;
		}
	h2.message_subtite{
		font-size: 2.2em;
		padding: 5px 0;
		}
	}
