@charset "utf-8";
/* common */
html{color:#000;background:#FFF}body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{margin:0;padding:0}table{border-collapse:collapse;border-spacing:0}fieldset,img{border:0}address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;font-weight:normal}ol,ul{list-style:none}caption,th{text-align:left}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal}q:before,q:after{content:''}abbr,acronym{border:0;font-variant:normal}sup{vertical-align:text-top}sub{vertical-align:text-bottom}input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit;}legend{color:#000}#yui3-css-stamp.cssreset{display:none}
/* small screen */
body {
	font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
	width: 100%;
	color: #333;
	width: 100%;
}
header {
	width: 100%;
}
html {
	width: 100%;
}

#top-head a,
#top-head {
color: #fff;
text-decoration: none;
}
a:hover,
a:link,
a:active,
a:visited {
	cursor: pointer;
}

/* ページ構造
--------------------------------*/
div#wrapper {
	width: 100%;
	margin: 0 auto;
}

#top-head {
	z-index: 990;
}

#top-head {
	background-color: rgba(255, 255, 255, 1);
	height: 3em;
	position: relative;
	z-index: 102;
}
#top-head.fixed {
background-color: rgba(255, 255, 255, 0.88);
}
#top-head,
.inner {
width: 100%;
	padding: 0;
	position: relative;
}
#top-head {
top: 0;
position: fixed;
margin-top: 0;
}
#top-head #h_logo {
	font-size: 2em;
	color: #FFF;
}

#mobile-head {
/*
	background: rgba(46, 30, 30, 0.88);
*/
				width: 100%;
z-index: 999;
position: relative;
}
#g_nav {
position: absolute;
/* 開いてないときは画面外に配置 */
top: -510px;
background-color: rgba(255, 255, 255, 0.85);
width: 100%;
text-align: center;
padding: 10px 0;
}
#g_nav ul {
list-style: none;
position: static;
right: 0;
bottom: 0;
font-size: 16px;
}
#g_nav ul li {
float: none;
position: static;
}
#top-head #g_nav ul li a {
width: 100%;
display: block;
color: #3e1b0b;
padding: 18px 0;
}
/* #nav-toggle 切り替えアニメーション */
.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);
}
/* #g_nav スライドアニメーション */
.open #g_nav {
/* #g_nav top + #mobile-head height */
-moz-transform: translateY(556px);
-webkit-transform: translateY(556px);
transform: translateY(556px);
}

/* Toggle Button */
#nav-toggle {
position: absolute;
right: 12px;
top: 14px;
width: 34px;
height: 36px;
cursor: pointer;
z-index: 101;
}
#nav-toggle div {
position: relative;
}
#nav-toggle span {
display: block;
position: absolute;
height: 4px;
width: 100%;
background: #3e1b0b;
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;
}





/* ヘッダー
--------------------------------*/
#h_logo a img {
	vertical-align: middle;
	width: 100%;
 max-width: 200px;
}

#h_logo,#h_logo a {
	max-width: 35%;
}
#h_logo	{
	padding-left: 0.2em;
}
/* フッター
--------------------------------*/
footer {
	width: 100%;
	text-align: center;
	color: #fff;
	background: #3e1b0b;
	overflow: auto;
	padding-top: 1.5em;
	padding-bottom: 0.5em;
}
address {
	font-size: 0.8em;
	margin-top: -1em;
}
#f_logo {
	margin:0 auto;
	font-size: 2em;
}
#f_logo img {
	max-width: 35%;
}
/* グローバルナビゲーション
--------------------------------*/


/* コンテンツ
--------------------------------*/
#main {
	width: 100%;
padding-top: 3em;
}

#content {
	padding: 1em 0;
}
.second #content {
	padding-bottom: 5em;
}




/* 見出し */
h2
{ color:#3e1b0b; }




/* トップページ
--------------------------------*/
#top #main {
/*
	margin-top: 3.5em;
*/
	position: relative;
}
#top h1 {
	position: absolute;
 top: 3em;
	left: 0;
	right: 0;
	margin: auto;
	color: #eee;
	font-size: 3.6em;
	font-weight: bold;
	text-align: center;
	letter-spacing: 0.3em;
}
#top #main p {
	top: 10em;
	left: 0;
	right: 0;
	margin: 0 auto;
	font-size: 1.2em;
}
#top #content {
	height: 12em;
}
	/* スライダー
--------------------------------*/
.slick-slide img {
	width: 100%;
	overflow: hidden;
	height: 100%;
	-webkit-backface-visibility:hidden;
	backface-visibility:hidden;
	z-index:1000;
}
.slick-slide {
/*	transition: all ease-in-out 12s;
	opacity: 0.2;
*/
	overflow: hidden;
	-webkit-backface-visibility:hidden;
	backface-visibility:hidden;
	-webkit-transform-style: preserve-3d;
}
.slick-active {
/*	opacity: 0.5;*/
}
.slick-current {
	opacity: 1;
}
.slider img {
	width: 100%;
	height: 100%;
	overflow: hidden;
	-webkit-backface-visibility:hidden;
	backface-visibility:hidden;
}

.slider {
  display:none;
}
.slider.slick-initialized {
  display: block;
}

	/* 下層共通
--------------------------------*/

body.second h1 img {
	width: 100%;
}
body.second #content {
	width: 90%;
	margin: 0 auto;
}

	/* GALLERY
--------------------------------*/
#gallery h2 {
	font-size: 2em;
}
.pictures {
 list-style: none;
 margin: 0 auto;
 max-width: 100%;
 padding: 0;
 margin-bottom: 3em;
}
.pictures > li {
 border: 1px solid transparent;
 float: left;
	margin: 0 0.1em 1em 0;
 overflow: hidden;
	width: 32%;
}
.pictures > li > img {
 cursor: zoom-in;
 width: 100%;
 }


	/* ABOUT
--------------------------------*/
#about h2 {
	font-size: 2em;
	font-weight: bold;
}
.bar1 {
 display: block;
 width: 100%;
 height: 1px;
 background-color: #3e1b0b;
 border: 0;
	margin-bottom: 1.5em;
	margin-top: 1.5em;
}
.chrono {
}
.chrono dd{
	margin-bottom: 0.5em;
}

/* COMPANY
--------------------------------*/
#company.second #content {
	padding-top: 2.5em;
}
.company_profile {
	margin-bottom: 4em;
}
.company_profile dt {
	padding-bottom: 0.5em;
	font-size: 0.95em;
}
.company_profile dd {
	padding-bottom: 1em;
	margin-bottom: 1em;
	border-bottom: solid 1px #333;
}
.img_list li img {
	width: 100%;
}

/* ORDER
--------------------------------*/
#order.second h2 {
	font-size: 2.4em;
	margin-bottom: 0.5em;
	text-align: center;
	margin-top: 1em;
	font-weight: bold;
}
#order.second p {
	text-align: center;
}
#order.second table {
	width: 100%;
	border: none;
	border-spacing: 0.2em;
	border-collapse: separate;
}
#order.second table caption{
	margin: 0 0.2em;
	text-align: center;
	background: #9c9a9b;
	padding: 0.5em;
}
#order.second table th {
	background: #bdbcbc;
	text-align :center;
	padding: 0.5em;
}
#order.second table td {
	background: #dedede;
	padding: 0.5em;
	vertical-align: top;
}
#order.second table th.spec1 {
	width: 60%;
}
#order.second table th.spec2 {
	width: 30%;
}
/* CONTACT
--------------------------------*/
#contact.second h1 {
	font-size: 2.2em;
	margin-bottom: 0.5em;
	text-align: center;
	font-weight: bold;
}
#contact #content {
	padding-top: 4.5em;
}
#contact_form {
	margin-top: 2em;
	width: 100%;
}
#contact_form p {
	width: 100%;
}

#contact_form input,
#contact_form textarea {
	box-sizing: border-box;
}

#contact_form input {
	font-size: 1.4em;
	border: 1px solid #666;
	padding: 0.5em;
	width: 100%;
	display: block;
}
#contact_form dt {
	margin-bottom: 0.5em;
}
#contact_form dd {
	margin-bottom: 2em;
}
#contact_form dl dt strong {
	color: red;
	font-size: 0.5em;
	padding-left: 1em;
}
#contact_form textarea {
	vertical-align: top;
	border: 1px solid #666;
	width: 100%;
	height: 10em;
	padding: 0.5em;
	font-size: 1.4em;
}
input:focus, textarea:focus {
  border-color: #000;
}

#contact_form button {
	display: block;
	width: 90%;
	margin: 2em auto;
	padding: 1.8em;
	border-radius: 3.6em;
	background: #3e1b0b;
	color: #FFF;
}
#contact_form button:hover {
	cursor: pointer;
}

	/* モジュール指定
--------------------------------*/
.pl_0_25e {padding-left: 0.25em;}
.pl_0_5e {padding-left: 0.5em;}
.pl_1e {padding-left: 1em;}
.pl_15e {padding-left: 1.5em;}
.pl_2e {padding-left: 2em;}
.pl_3e {padding-left: 3em;}

.mt_05e { margin-top: 0.5em;}
.mt_1e { margin-top: 1em;}
.mt_1_5e { margin-top: 1.5em;}
.mt_2e { margin-top: 2em;}
.mt_3e { margin-top: 3em;}
.mt_4e { margin-top: 4em;}
.mt_5e { margin-top: 5em;}
.mt_6e { margin-top: 6em;}
.mt_7e { margin-top: 7em;}

.mb0_5e {margin-bottom: 0.5em;}
.mb1e {margin-bottom: 1em;}
.mb1_5e {margin-bottom: 1.5em;}
.mb2e {margin-bottom: 2em;}
.mb3e {margin-bottom: 3em;}
.mb4e {margin-bottom: 4em;}
.mb5e {margin-bottom: 5em;}
.mb6e {margin-bottom: 6em;}
.pc_none {
	display: block;
}
.pc_none_middle {
	display: none;
}

.center {
	text-align: center!important;
}
.clear {
	clear: both;
}
.clear-fix:after {
	content: "";
	display: block;
	height: 0;
 clear: both;
}
/* ------------------------------------------------------------ */
/* large screen PC */
/* ------------------------------------------------------------ */
@media screen and (min-width: 768px) {

	/* メインコンテンツ PC
--------------------------------*/
#main {
	position: relative;
	margin-top: 0;
	}

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

/* header PC */
#top-head .inner {
position: relative;
}
#top-head #h_logo {
 float: left;
 font-size: 2em;
 letter-spacing: 0.4em;
	padding-left: 0.5em;
}

#g_nav ul {
	list-style: none;
	margin-bottom: 0!important;

}
#top-head #g_nav ul li {
 float: left;
	width: 16%;
	height: 3em;
}
#top-head #g_nav ul li a {
	line-height: 3em;
	padding: 0;
	width: 80%;
}
#top-head #g_nav ul li a:hover,
#top-head #g_nav ul li a:focus {
	color: #FFA500;
}
#top-head #g_nav ul li.current a {
	color: #FFA500;
}

#top-head #g_nav {
	top: 0;
	background: none;
	width: 62%;
	margin-right: 0;
	margin-left: auto;
	position: relative;
	padding: 0;
}

#mobile-head {
}

	#nav-toggle {
display: none;
}
.pc_none {
	display:none;
}


/* フッター PC
--------------------------------*/
footer {
	width: 100%;
	text-align: center;
	color: #fff;
	background: #3e1b0b;
	overflow: auto;
	padding-top: 3em;
	padding-bottom: 3em;
}
#f_logo {
	margin:0 auto;
	font-size: 3em;
	font-weight: bold;
}

/* コンテンツ PC
--------------------------------*/
#content {
	padding: 2em 0;
}

body.second #content {
	width: 65%;
	margin: 0 auto;
	padding-bottom: 8em;
}


#top #content {
	height: 12em;
}


.bar1 {
	margin-bottom: 2em;
	margin-top: 2em;
}

/* ABOUT PC
--------------------------------*/

#about h2 {
	font-size: 2.8em;
}
.e_name {
	font-size: 1.6em;
}

dl.chrono:after {
	content:"";
	display: block;
	height: 0;
	clear: both;
}
dl.chrono {
	font-size: 1.2em;
}
dl.chrono dt {
	float: left;
	width: 8%;

}
dl.chrono dd {
	width: 92%;
	float: left;
}

.chrono dd{
	margin-bottom: 0;
}



/* GALLERY PC
--------------------------------*/

.pictures {
 list-style: none;
 margin: 0 auto;
 max-width: 100%;
 padding: 0;
margin-bottom: 3em;
}

.pictures > li {
 border: 1px solid transparent;
 float: left;
 height: calc(100% / 3);
 margin: 0 -1px -1px 0;
	margin: 0 2em 2em 0;
 overflow: hidden;
 width: calc(100% / 4);
 width: 20em;
}

 .pictures > li > img {
 cursor: zoom-in;
 width: 100%;
}
.galley:after {
	content:"";
	display: block;
	clear: both;
}
#gallery #content {
	width: 1064px;*
}

/* COMPANY PC
--------------------------------*/
#company.second #content {
	font-size: 1.2em;
}
#company.second #content {
	padding-top: 6em;
}
.company_profile {
	margin-bottom: 8em;
}
.company_profile:after {
	content:"";
	display: block;
	height: 0;
	clear: both;
}
.company_profile dt {
	float: left;
	width: 25%;
	border-bottom: 1px solid #333;
	font-size: 1em;
	padding-bottom: 1em;
	margin-bottom: 1em;
}
.company_profile dd {
	float: left;
	width: 75%;
	border-bottom: solid 1px #333;
}
.company_profile dd {
	border-bottom: solid 1px #333;
}
.company_profile dt.end {
	border: none;
}
.company_profile dd.end {
	border: none;
}
.img_list {
	text-align: center;
}
.img_list li {
	display: inline-block;
	width: 28%;
	margin-right: 1em;
}
.img_list li.last {
	margin-right: 0;
}
.img_list li img {
	width: 100%;
}

/* ORDER PC
--------------------------------*/
#order.second #content {
	font-size: 1.2em;
}
#order.second p {
	line-height: 2em;
	margin-bottom: 2em;
}
#order.second h2:nth-of-type(2){
	margin-top: 3em;
}
#order.second table td {
	padding: 1em;
	line-height: 1.8em;
}

/* CONTACT PC
--------------------------------*/
#contact_form input {
	padding: 01.5em;
}
#contact_form textarea {
	height: 20em;
}
#contact_form dl dt strong {
	font-size: 0.8em;
}
#contact_form button {
	font-size: 1em;
	margin-top: 4em;
	width: 40%;
}

.pc_none_middle {
	display: block;
}

}

/* ------------------------------------------------------------ */
/* middle screen */
/* ------------------------------------------------------------ */
@media screen and (min-width: 845px) {
.pc_none_middle {
	display: none;
}
}
/* ------------------------------------------------------------ */
/* max screen */
/* ------------------------------------------------------------ */
@media screen and (min-width: 1000px) {
	#top-head #g_nav {
		width: 48%;
	}
}
