@charset "UTF-8";
/* formatting style
-----------------------------*/
html {
	color: #000;
	background: #FFF;
}

body,div,pre,p,blockquote,
form,fieldset,input,textarea,select,option,
dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,
table,th,td,embed,object {
	margin: 0;
    padding: 0;
    vertical-align: baseline;
}

h1,h2,h3,h4,h5,h6 {
	font-family: fot-matisse-pron, sans-serif;
	font-style: normal;
	font-weight: 500;
	font-size: 1.6em;
}
h1 {
	padding-bottom: 0.5em;
	border-bottom: 1px solid #333;
}
h2 {
	padding-bottom: 0.5em;
	border-bottom: 1px solid #333;
	position: relative;
}
h2 img {
	width: 30px !important;
	vertical-align: top;
	margin-right: 0.5em;
}
h2 span {
	position: absolute;
	right: 1em;
	bottom: 0.5em;
	font-size: 0.8em;
}
h3 {
	text-align: center;
	margin: 0 auto 2em;
}
h4 {
	text-align: center;
	margin: 2em auto 2em;
}
h5 {
	text-align: center;
	font-size: 1.3em;
	padding: 0.5em;
}

ul {
	list-style: none;
}

table,th,td,img {
	border: 0;
}

body {
	width: 100%;
	font-size: 14px;
	font-family: fot-klee-pro, sans-serif;
	font-style: normal;
	font-weight: 600;
	color: #37241c;
	line-height: 1.6;
}

a         {cursor:hand;}
a:link    {color:#37241c;text-decoration:none;}
a:visited {color:#37241c;text-decoration:none;}
a:hover   {color:#F79415;text-decoration:none;}
a:active  {color:#37241c;text-decoration:none;position:relative;left:+1px;top:+1px;}
a img     {border-style:none}
.trans a:hover img{opacity:0.6;
	filter: alpha(opacity=60);
    -moz-opacity: 0.6;
}

#wrap{
	max-width: 1920px;
	margin-right: auto;
	margin-left: auto;
}

#header {
	height: 85px;
	position: relative;
	font-family: fot-matisse-pron, sans-serif;
	font-style: normal;
	font-weight: 500;
	display: inline-block;
	z-index: 99999;
}
#header .logo {
	position: absolute;
	top: 0;
	left: 0;
}
#header .logo img {
	width: 150px;
}
#header #nav_menu {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 85px;
	background-color: #fff;
	text-align: right;
}
#header ul {
	position: absolute;
	bottom: 0;
	right: 0;
}
#header li {
	display: inline-block;
	padding-right: 2em;
}

#head_img img {
	width: 100%;
}




/*-----------------------------
　スマホメニュー
-----------------------------*/


/*チェックボックス等は非表示に*/
.nav-unshown {
	display: none;
}
@media screen and (max-width: 767px) {
	/*アイコンのスペース*/
	#nav-open {
		position: fixed;
		top: 5px;
		right: 5px;
		width: 25px;
		height: 22px;
/*		vertical-align: middle;*/
/*		margin: 5px 8px 0;*/
		display: flex;
		justify-content: center;
		align-items: center;
		z-index: 92;
	}
	/*ハンバーガーアイコンをCSSだけで表現*/
	#nav-open span, #nav-open span:before, #nav-open span:after {
		position: absolute;
		height: 3px;/*線の太さ*/
		width: 25px;/*長さ*/
		border-radius: 3px;
		background: #37241c;
		display: block;
		content: '';
		cursor: pointer;
	}
	#nav-open span:before {
		bottom: 8px;
	}
	#nav-open span:after {
		top: 8px;
		content: 'menu';
		font-size: 10px;
	}

	/*閉じる用の薄黒カバー*/
	#nav-close {
		display: none;/*はじめは隠しておく*/
		position: fixed;
		z-index: 90;
		top: 0;/*全体に広がるように*/
		left: 0;
		width: 100%;
		height: 100%;
		background: black;
		opacity: 0;
		transition: .3s ease-in-out;
	}

	/*中身*/
	#nav-content {
		overflow: auto;
		position: fixed;
		top: 0;
		right: 0;
		z-index: 91;
/*		width: 85%;右側に隙間を作る（閉じるカバーを表示）*/
/*		max-width: 330px;最大幅（調整してください）*/
/*		height: 100%;*/
		background: #fff;/*背景色*/
		transition: .3s ease-in-out;/*滑らかに表示*/
		-webkit-transform: translateY(-100%);
		transform: translateY(-100%);/*上に隠しておく*/
		color: #fff;
		opacity: 0.8;
	}
	#nav-content #Navi {
		margin: 0 auto;
	}

	/*チェックが入ったらもろもろ表示*/
	#nav-input:checked ~ #nav-close {
	  display: block;/*カバーを表示*/
	  opacity: .5;
	}

	#nav-input:checked ~ #nav-content {
	  -webkit-transform: translateX(0%);
	  transform: translateX(0%);/*中身を表示（右へスライド）*/
	  box-shadow: 6px 0 25px rgba(0,0,0,.15);
	}
	
	#nav-input:checked ~ #nav-open span {
		background-color: rgba(255, 255, 255, 0);/*メニューオープン時は真ん中の線を透明にする*/
	}	
	#nav-input:checked ~ #nav-open span::before {
		bottom: 0;
		transform: rotate(45deg);
	}
	#nav-input:checked ~ #nav-open span::after {
		top: 0;
		transform: rotate(-45deg);
		content: '';
	}
	
	#header ul {
		position: inherit;
		text-align: left;
		margin: 2em 1em;
		font-size: 1.3em;
	}
	#header li {
		display: block;
		padding: 0;
		padding-right: 2em;
		margin: 1em 0;
	}
	#header ul li a span {
		font-size: 0.6em;
	}
	#header .home {
		border-bottom: 1px solid #37241c;
	}
}

/*-----------------------------
　スマホメニュー
-----------------------------*/



/*-----------------------------
　フラッシュバナー
-----------------------------*/
/*画像の表示エリア*/
.slide {
	position: relative;
	overflow: hidden;
	/* 画像のサイズに合わせて変更ください */
	width: 100%;
	height: 31vw;
	max-width: 1920px;
	max-height: 606px;
	margin: auto;
	background: #fff;
}
/*画像の設定*/
.slide img {
	display: block;
	position: absolute;
	/* 画像のサイズを表示エリアに合せる */
	width: inherit;
	/*height: inherit;*/
	opacity: 0;
	/*4枚*/
	/*animation: slideAnime 32s ease infinite;*/
	/*3枚*/
	animation: slideAnime 24s ease infinite;
}
/*スライドのアニメーションを段差で開始する*/
.slide img:nth-of-type(1) { animation-delay: 0s }
.slide img:nth-of-type(2) { animation-delay: 8s }
.slide img:nth-of-type(3) { animation-delay: 16s }
/*.slide img:nth-of-type(4) { animation-delay: 24s }*/
/*スライドのアニメーション*/
/*4枚*/
/*
@keyframes slideAnime{
	0% { opacity: 0 }
	12% { opacity: 1 }
	25% { opacity: 1 }
	37% { opacity: 0 }
	100% { opacity: 0 }
}
*/
/*3枚*/
@keyframes slideAnime{
	0% { opacity: 0 }
	16% { opacity: 1 }
	33% { opacity: 1 }
	49% { opacity: 0 }
	100% { opacity: 0 }
}
/*-----------------------------
　フラッシュバナー
-----------------------------*/

#content ul {
	width: 96%;
	padding: 1em 2%;
}
#content ul ul {
	padding: 1em 0;
}

#content ul:nth-of-type(even) {
	background-color: #f7f9fb;
}

#content ul li {
	width: 48%;
	display: inline-block;
	vertical-align: middle;
}
#content ul li.row_1 {
	height: 100%;
}
#content ul li.row_1.img {
	display: flex;
	justify-content: center;
	align-items: center;
}
#content ul li.col_1 {
	width: 100%;
}
#content ul li.tittle {
	width: 100%;
	margin-top: 1em;
	margin-bottom: 3em;
}
#content ul li.img {
	text-align: center;
	vertical-align: middle;
}
#content ul li img {
	width: 100%;
}
#content ul li p {
	margin: 1em;
}

#content ul#works_1 {
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	height: 596px;
}
#content ul#works_1 li img {
	width: 80%;
	max-width: 600px;
	box-shadow: 25px 25px 0px #F5E9DD;
	margin-top: -25px;
	margin-left: -25px;
}

#content ul.works_2_1 {
	background-image: url("../img/index_works_02.png");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: top 50% left 50%;
	width: 100%;
	position: relative;
	margin-bottom: 1.5em;
	height: 340px;
}
#content ul.works_2_1 li {
	width: 35%;
	padding: 0;
	vertical-align: top;
}
#content ul.works_2_1 li:nth-of-type(2) {
/*	padding: 6em 0 4em 25%;*/
	position: absolute;
	right: 0;
	top: 4em;
}
#content ul#works_3 li:nth-of-type(3),
#content ul#works_3 li:nth-of-type(5) {
	padding-left: 2em;
}

#content ul#works_4 img {
	max-width: 500px;
}
#content ul#works_4 p img {
	max-width: 600px;
}
#content ul.works_4_1 {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	height: 500px;
	padding: 0;
}

#content ul#works_5 li:nth-of-type(2) {
	width: 25%;
	display: table-cell;
}
#content ul#works_5 li:nth-of-type(3) {
	display: table-cell;
}
#content ul#shop_1 {
	text-align: center;
}
#content ul#shop_1 img {
	max-width: 800px;
}
#content ul.shop_1_1 {
	display: table;
	width: 80%;
    margin: 0 auto;
}
#content ul.shop_1_1 li {
	display: table-cell;
	width: auto;
	padding: 1em;
}
#content ul.shop_1_1 li img {
	max-width: 330px !important;
}



#footer {
	background-color: #ebe7e4;
	padding: 2%;
}

#footer_menu,
#footer_sns {
	display: inline-block;
	width: 46%;
	padding: 1%;
}

#footer_menu li {
	display: inline-block;
	margin-right: 3em;
	margin-bottom: 1em;
}
.info_link {
	text-align: center;
}
.info_link li{
	display: inline-block;
	width: 30%;
	font-size: 12px;
	font-weight: bold;
	color: #37241c;
	margin-bottom: 2em;
}
.info_link svg {
	width: 44px;
	height: 60px;
}
.info_link .st0 {
	fill:#37241c;
}
.info_link span {
	display: block;
}

.copyright {
	text-align: center;
}


.for_sp_768 {
	display: none !important;
}
@media screen and (max-width: 767px) {
	.for_pc_768 {
		display: none !important;
	}
	.for_sp_768 {
		display: block !important;
	}
	h1,h2,h3 {
		font-size: 1.3em;
	}
	h1 {
		margin: 1em 0.5em;
	}
	h2 {
		margin: 0 0.5em;
	}
	h2 span{
		font-size: 0.7em;
		bottom: 0.8em;
	}
	h2 img {
		width: 22px !important;
		vertical-align: text-bottom;
		margin-right: 0.2em;
	}
	h4 {
		margin: 0 auto 1em;
	}
	#header,
	#header #nav_menu {
		height: 50px;
	}
	#header .logo img {
		width: 90px;
	}
/*
	#header ul {
		left: 90px;
		right: 10px
	}
	#header li {
		padding: 0 0.3em;
	}
*/
	#head_img .for_sp_768 {
		text-align: center;
	}
	#head_img .for_sp_768 .text {
		width: 80%;
	}
	#content ul {
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		flex-wrap: wrap;
		width: 100%;
		padding: 4em 0;
	}
	#content ul ul {
		padding: 1em 0;
		
	}
	#content ul li {
		width: 100% !important;
		padding: 0 !important;
	}
	#content ul#works_1,
	#content ul.works_4_1 {
		height: auto;
		width: 100%;
	}
	#content ul#works_1 li img,
	#content ul.works_4_1 li img {
		width: 100%;
		box-shadow: none;
		margin-top: 0;
		margin-left: 0;
	}
	#content ul.works_2_1 {
		background-image: none;
		height: auto;
	}
	#content ul.works_2_1 li:nth-of-type(2) {
		position: initial;
	}
	#content ul#works_3 li:nth-of-type(n+2) {
		width: 95% !important;
		margin: 0.5em 0;
	}
	#content ul#works_3 li:nth-of-type(2) { order: 1; }
	#content ul#works_3 li:nth-of-type(3) { order: 2; }
	#content ul#works_3 li:nth-of-type(4) { order: 4; }
	#content ul#works_3 li:nth-of-type(5) { order: 3; }
		
	#content ul#works_5 li:nth-of-type(2) { order: 2; }
	#content ul#works_5 li:nth-of-type(3) { order: 1; }
	
	#content ul.shop_1_1{
		width: 100%;
		padding: 0;
	}
	#content ul.shop_1_1 li {
		display: inline-block;
		width: 34% !important;
		padding: 8% !important;
	}
	#footer {
		text-align: center;
		padding: 2em 0;
	}
	#footer_menu {
		width: 100%;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		text-align: left;
		padding: 3em 0;
	}
	#footer_sns {
		width: 100%;
		padding: 0;
	}
	.info_link svg {
		width: 30px;
		height: 30px;
	}
	.info_link li {
		margin-bottom: 3em;
	}
	#footer_menu li {
		margin: 0.3em;
	}
}


/*-----------------------------
　会社概要
-----------------------------*/

#company #main {
	width: 90%;
	margin: 0 auto;
}
#company #main #content {
	text-align: center;
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	font-family: kozuka-gothic-pr6n, sans-serif;
	font-style: normal;
	font-weight: 500;
}
#company #main .pan {
	text-align: left;
}
#company #main .pan a {
	text-decoration: underline;
}
#company #main #content img {
	width: 100%;
}
#company #main #content .table_1,
#company #main #content .table_2,
#company #main #content .table_3 {
	margin: 2em auto 4em;
}
#company #main #content .tittle {
	display: inline-block;
	padding: 0 1em;
	margin: 0.5em 0;
}

#company #main #content ul {
	display: table;
	width: 100%;
	margin: 0 auto;
	padding: 0;
}
#company #main #content ul li {
	display: table-row;
	padding: 0;
}
#company #main #content ul li span {
	display: table-cell;
	padding: 1em;
	border: 1px solid #333;
	border-bottom: 0 !important;
	text-align: left;
	vertical-align: middle;
}
#company #main #content ul li:nth-last-of-type(1) span {
	border-bottom: 1px solid #333 !important;
}

#company #main #content ul li span.list_left {
	background-color: #f3f3f3;
	min-width: 6em;
	max-width: 6em;
}
#company #main #content ul li span.list_right {
	border-left: 0 !important;
}
#company #main #content .table_2 ul li span {
	border-top: 0 !important;
}
#company #main #content .table_2 ul li:nth-of-type(1) span {
	border-top: 1px solid #333 !important;
}

#company #main #content .table_3 iframe {
	width: 100%;
	height: 40vw;
	margin-bottom: 1em;
}
#company #main #content .table_3 span {
	margin: 0 1em;
}

@media screen and (max-width: 767px) {
	#company #main #content .table_3 span {
		display: block;
		margin: 0;
	}
	#company #main {
		width: 100%;
	}
	#company #main #content .table_1,
	#company #main #content .table_2,
	#company #main #content .table_3 {
		width: 90%;
	}
	#company #main #content .table_3 iframe {
		height: 90vw;
	}
	
}

/*-----------------------------
　会社概要
-----------------------------*/




/*-----------------------------
　採用情報
-----------------------------*/
#recruit #main {
/*	width: 90%;*/
	margin: 0 auto;
	font-family: kozuka-gothic-pr6n, sans-serif;
	font-style: normal;
	font-weight: 500;
}
#recruit #main .pan {
	text-align: left;
	margin: 0 5%;
}
#recruit #main #content div {
	width: 90%;
	padding: 4em 5%;
	text-align: center;
}
#recruit #main #content div:nth-of-type(even) {
	background-color: #f7f9fb;
}
#recruit #main #content .tittle {
	display: inline-block;
	padding: 0 1em;
	margin: 0 auto 2em;
}
#recruit #main #content h3 {
	display: block;
	text-align: left;
	margin: 1em 0 0;
	text-decoration: underline solid 1px;
}
#recruit #main #content div p {
	text-align: left;
}
#recruit #main #content ul {
	display: table;
	width: 100%;
	margin: 0 auto;
	padding: 0;
	text-align: left;
}
#recruit #main #content ul li {
	display: table-row;
	padding: 0;
}
#recruit #main #content ul li span {
	display: table-cell;
	padding: 1em;
	border: 1px solid #333;
	border-bottom: 0 !important;
	text-align: left;
	vertical-align: middle;
}
#recruit #main #content ul li:nth-last-of-type(1) span {
	border-bottom: 1px solid #333 !important;
}

#recruit #main #content ul li span.list_left {
	background-color: #f3f3f3;
	min-width: 8em;
	max-width: 8em;
	line-height: 2.5em;
}
#recruit #main #content ul li span.list_right {
	border-left: 0 !important;
}
#recruit #main #content .table_3 {
	text-align: center;
	max-width: 1200px;
	margin: 0 auto;
}
#recruit #main #content .table_1 ul,
#recruit #main #content .table_2 ul {
	list-style: initial;
	display: inline-block;
	padding-left: 2em;
	margin: 1em 0;
	box-sizing: border-box;
}
#recruit #main #content .table_1 ul li,
#recruit #main #content .table_2 ul li {
	display: list-item;
	width: auto;
}
#recruit #main #content .table_2 h4 {
	margin: 2em auto 1em;
}
#recruit #main #content .table_2 h4 img {
	width: 2em;
	vertical-align: middle;
	margin-right: 10px;
}
#recruit #main #content .table_2 div {
	display: inline-block;
	vertical-align: top;
	width: 39%;
	margin: 0;
	padding: 0 5% 4em;
}
#recruit #main #content .table_2 hr {
	border: 1px solid #ccc;
	margin: 4em 0;
}
#recruit #main #content .table_2 a {
	display: inline-block;
	color:#c00;
	text-decoration: underline;
	font-size: 1.3em;
	position: relative;
}
#recruit #main #content .table_2 a::after {
	content: '';
    position: absolute;
    top: 1.5em;
    left: 50%;
	transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    width: 0;
    height: 0;
    border-top: 15px solid #37241c;
    border-left: 20px solid transparent;
    border-right: 20px solid transparent;
}

#recruit #main #content .table_2 a:hover {
	color:#F79415;
}
#recruit #main #content .table_3 span {
	white-space: pre-line;
}
#recruit #main #content .table_3 span:first-line {
	line-height: 0;
}
#recruit #main #content .table_4  p.text {
	font-family: fot-matisse-pron, sans-serif;
	font-style: normal;
	font-weight: 500;
	font-size: 1.6em;
	text-align: center;
}
#recruit #main #content .table_4 a {
	color:#c00;
}
#recruit #main #content .table_4 a:hover {
	color:#F79415;
}

#recruit #main .red {
	color: red;
	margin: 0 !important;
	padding: 0 !important;
	width: auto !important;
}

/*メールフォーム*/
#recruit #main #content #postmail {
	background-color: #fff !important;
	max-width: 500px;
	margin: 3em auto 5em;
}
#recruit #main #content #postmail div {
	background-color: #fff;
    width: 100%;
	padding: 0;
	margin: 3em 0;
}
#recruit #main #content #postmail span {
    margin: 0 0.5em;
}
#recruit #main #content #postmail textarea {
    width: 100%;
}
#recruit #main #content #postmail input {
    width: 100%;
}
#recruit #main #content #postmail input[type="radio"] {
    width: auto;
}
#recruit #main #content #postmail input[type="reset"],
#recruit #main #content #postmail input[type="submit"] {
	display: inline-block;
	width: 9em;
	margin: 0 2em 3em;
	padding: 0.5em 1em;
	border: 0;
	border-radius: 0;
	-webkit-box-sizing: content-box;
	-webkit-appearance: button;
	appearance: button;
	cursor: pointer;
}
#recruit #main #content #postmail input[type="reset"] {
	background: #dbdbdb;
	border: 1px solid #999;
}
#recruit #main #content #postmail input[type="submit"] {
	background: #282828;
	border: 1px solid #999;
	color: #fff;
}


@media screen and (max-width: 767px) {
	#recruit #main #content .table_1 ul {
		padding-left: 1em;
	}
	#recruit #main #content .table_2 div {
		width: 100%;
		padding: 0 0 1em;
	}
	#recruit #main #content .table_4 p.text {
		font-size: 1.3em;
	}
	#recruit #main #content ul li span.list_left {
		min-width: 4em;
	}
	#recruit #main #content h2 {
		font-size: 1.6em;
	}
	/*メールフォーム*/
}

/*-----------------------------
　採用情報
-----------------------------*/




/*-----------------------------
　お問い合わせフォーム
-----------------------------*/

#contact #main {
	width: 90%;
	margin: 0 auto;
	font-family: kozuka-gothic-pr6n, sans-serif;
	font-style: normal;
	font-weight: 500;
}
#contact #main .pan {
	text-align: left;
}
#contact #main .pan a {
	text-decoration: underline;
}

#contact #main .text {
	text-align: center;
	margin: 3em 0;
}

#contact #main .red {
	color: red;
	margin: 0 !important;
	padding: 0 !important;
	width: auto !important;
}

#contact #main #content {
	text-align: center;
	width: 100%;
	max-width: 500px;
	margin: 3em auto 5em;
}

#contact #main #content p.label {
	text-align: left;
}
#contact #main #content p.rbtn {
	text-align: left;
}

#contact #main #content input {
	width: 100%;
}
#contact #main #content span {
	margin: 0 0.5em;
}
#contact #main #content input[type="radio"] {
	width: auto;
}
#contact #main #content input[type="reset"],
#contact #main #content input[type="submit"] {
	display: inline-block;
	width: 9em;
	margin: 0 2em 3em;
	padding: 0.5em 1em;
	border: 0;
	border-radius: 0;
	-webkit-box-sizing: content-box;
	-webkit-appearance: button;
	appearance: button;
	cursor: pointer;
}
#contact #main #content input[type="reset"] {
	background: #dbdbdb;
	border: 1px solid #999;
}
#contact #main #content input[type="submit"] {
	background: #282828;
	border: 1px solid #999;
	color: #fff;
}

#contact #main #content .form div {
	margin: 3em 0;
}
#contact #main #content textarea {
	width: 100%;
}
.ttl {
	display: inline-block;
}

@media screen and (max-width: 767px) {
	#contact #main #content span {
		display: inline-block;
		width: 30%;
		margin: 0;
	}
}


/*-----------------------------
　お問い合わせフォーム
-----------------------------*/