@charset "utf-8";

/* Base Start */

* {
	box-sizing:border-box;
  margin:0;
  padding:0;
}

article,aside,details,figcaption,figure,footer,header,main,menu,nav,section,textarea {
	display:block;
}

img {
  border:0;
  vertical-align:top;
}

em,address {
	font-style:normal;
}

body {
	color:#000;
	font-family:"Noto Serif JP","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif;
	font-size:100%;
	text-align:center;
	letter-spacing:1px;
}

.alphabet {
	font-family:"游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif;
}

a {
	color:#090;
	outline:none;
	text-decoration:none;
	transition:all .3s ease;
}

a:hover {
	text-decoration:underline;
}

#anc-wrapper {
	z-index:10;
	width:100%;
	overflow:hidden;
}

/* Base End */

/* Clearfix Start */

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

/* Clearfix End */

/* Header Start */

.upper {
	z-index:-1;
	position:fixed;
	left:0;
	top:0;
	width:100%;
	height:100vh;
}

.upper>img,
.upper>video {
	z-index:1;
	object-fit:cover;
	width:100%;
	height:100%;
}

.upper span {
	z-index:2;
	position:absolute;
	left:0;
	top:0;
	display:flex;
	justify-content:center;
	align-items:center;
	width:100%;
	height:100%;
	background-color:#000;
	color:#fff;
}

.second-h1 {
	-webkit-writing-mode:vertical-rl;
	-ms-writing-mode:tb-rl;
	writing-mode:vertical-rl;
	padding-top:20px;
	line-height:100%;
	font-size:35px;
	letter-spacing:20px;
	white-space:nowrap;
	font-weight:400;
}

.top-upper {
	display:flex;
	flex-direction:column;
	width:100%;
	height:100%;
}

.top-upper>h1,
.top-upper>strong,
.top-upper>em {
	display:flex;
	justify-content:center;
	align-items:center;
	width:100%;
	font-weight:400;
}

.top-upper>h1 {
	margin-top:auto;
	-webkit-writing-mode:vertical-rl;
	-ms-writing-mode:tb-rl;
	writing-mode:vertical-rl;
	line-height:32px;
	font-size:32px;
	letter-spacing:20px;
}

.top-upper>strong {
	height:15%;
	line-height:174%;
	font-size:18px;
}

.top-upper>em {
	height:15%;
}

.top-upper>em>img {
	width:auto;
	height:auto;
}

#header {
	z-index:100;
	width:100%;
	height:100vh;
	transition:.5s ease;
	overflow:hidden;
}

#header strong {
	position:absolute;
	left:35px;
	top:29px;
	height:148px;
	width:auto;
	transition:.5s ease;
}

#header strong img {
	width:auto;
	height:100%;
}

#nav-toggle {
	z-index:10001;
	position:absolute;
	right:30px;
	top:34px;
	display:flex;
	justify-content:center;
	align-items:center;
	width:39px;
	height:26px;
	cursor:pointer;
}

#nav-toggle section {
	position:relative;
	width:35px;
	height:24px;
}

#nav-toggle section span {
	position:absolute;
	left:0;
	display:block;
	background-color:#fff;
	width:100%;
	height:2px;
	transition:.35s ease-in-out;
}

#nav-toggle section span:nth-child(1) {
	top:0;
}

#nav-toggle section span:nth-child(2) {
	top:11px;
}

#nav-toggle section span:nth-child(3) {
	top:22px;
}

#nav-toggle::after {
	position:absolute;
	top:calc(100% + 6px);
	left:50%;
	color:#fff;
	transform:translateX(-50%);
	line-height:100%;
	font-size:12px;
	content:"menu";
}

.sp-navi {
	z-index:10000;
	position:absolute;
	left:0;
	bottom:100%;
	display:flex;
	justify-content:center;
	align-items:center;
	background-color:#ededed;
	width:100%;
	height:100vh;
	transition:.5s ease-in-out;
	line-height:100%;
	overflow-y:auto;
}

.sp-navi>div {
	margin:0 auto;
	padding:0 20px;
	width:100%;
	max-width:618px;
}

.sp-navi>div>em {
	display:block;
	margin:0 auto;
	padding-bottom:152px;
	width:260px;
}

.sp-navi>div>em img {
	width:100%;
	height:auto;
}

.sp-navi>div ul {
	display:flex;
	flex-direction:row-reverse;
	list-style-type:none;
	width:100%;
}

.sp-navi>div ul li {
	display:flex;
	align-items:center;
	width:calc(100% / 6);
	-webkit-writing-mode:vertical-rl;
	-ms-writing-mode:tb-rl;
	writing-mode:vertical-rl;
	text-align:left;
	line-height:100%;
	font-size:23px;
	letter-spacing:3px;
}

.sp-navi>div ul li a {
	color:#393939;
	text-decoration:none;
}

.sp-navi>div ul li a:hover,
.sp-navi>div ul li.current a,
.sp-navi>div ul li.current a:hover {
	color:#999;
}

.open #nav-toggle section span {
	background-color:#000;
}

.open #nav-toggle section span:nth-child(1) {
	top:10px;
	transform:rotate(315deg);
}

.open #nav-toggle section span:nth-child(2) {
	width:0;
	left:50%;
}

.open #nav-toggle section span:nth-child(3) {
	top:10px;
	transform:rotate(-315deg);
}

.open #nav-toggle::after {
	color:#393939;
	content:"close";
}

.open .sp-navi {
	transform:translateY(calc(100% - 0px));
	overscroll-behavior: none;
}

@media only screen and (max-width : 1139px) {
	#header strong {
		height:120px;
	}
}

@media only screen and (max-width : 767px) {
	.sp-navi>div>em {
		padding-bottom:80px;
	}
	
	.sp-navi>div ul li {
		font-size:18px;
	}
}

/* Header End */

/* Main Start */

#contents {
	background-color:#f1f1ef;
	color:#393939;
}

.progress-bar {
  z-index:200;
  position:fixed;
  top:0;
  right:30px;
  bottom:0;
  margin:auto 0;
  mix-blend-mode:difference;
  background-color:rgba(200,200,200,.75);
  width:1px;
  height:200px;
}

.progress-bar span {
  z-index:199;
  position:absolute;
  top:0;
  left:calc(50% - 6px);
  background:#fff;
  border-radius:9999px;
  width:11px;
  height:11px;
  content:"";
}

.container {
	margin:0 auto;
	width:1130px;
}

#contents p,
#contents figure {
	line-height:250%;
	font-size:15px;
}

.more {
	display:block;
}

.more a {
	position:relative;
	display:inline-block;
	margin:0 auto;
	padding-right:16px;
	color:#3a3a3a;
	text-decoration:none;
	line-height:100%;
	font-size:15px;
}

.more a::after {
	position:absolute;
	right:0;
	top:calc(50% - 3px);
	display:block;
	border-top:1px solid #3a3a3a;
	border-right:1px solid #3a3a3a;
	width:8px;
	height:8px;
	content:"";
	transform:rotate(45deg);
}

.main-h2 {
	line-height:0;
	font-size:0;
}

.main-h2 big {
	display:block;
	color:rgba(204,204,204,.33);
	line-height:100%;
	font-family:"游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif;
	font-size:77px;
	font-weight:400;
	letter-spacing:4px;
}

.main-h2 big span {
	display:block;
	margin-top:-14px;
	color:#393939;
	line-height:20px;
	font-family:"Noto Serif JP","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif;
	font-size:20px;
	font-weight:400;
}

.main-h2 big::after {
	display:block;
	margin-top:36px;
	background-color:#000;
	width:60px;
	height:1px;
	content:"";
}

.main-h2 small {
	display:block;
	padding-top:28px;
	line-height:160%;
	font-size:30px;
	font-weight:400;
	letter-spacing:2px;
}

.main-h2 small span {
	display:inline-block;
}

.main-h2 b {
	display:block;
	padding-top:56px;
	line-height:160%;
	font-size:35px;
	font-weight:400;
	letter-spacing:3px;
}

.center-mh2 {
	padding:108px 0 104px 0;
}

.center-mh2 big {
	padding-left:4px;
}

.center-mh2 big::after {
	margin-left:auto;
	margin-right:auto;
}

.center-mh2 b {
	padding-left:3px;
}

.light-gray {
	background-color:rgba(78,78,80,.12);
}

.blue {
	background-color:#008bd5;
}

.pc-visi {
	display:block;
}

.sp-visi {
	display:none !important;
}


@media only screen and (max-width : 1139px) {
	.main-h2 big span {
		margin-top:-12px;
		font-size:18px;
	}
	
	.pc-visi {
		display:none !important;
	}
	
	.sp-visi {
		display:block !important;
	}
}

@media screen and (min-width : 768px) and (max-width : 1139px) {
	.container {
		width:750px;
	}
	
	.main-h2 big {
		font-size:53px;
	}
	
	.main-h2 small {
		font-size:28px;
	}
	
	.main-h2 b {
		padding-top:42px;
		font-size:31px;
	}
	
	.center-mh2 {
		padding:81px 0 78px 0;
	}
}

@media only screen and (max-width : 767px) {
	.container {
		width:90%;
	}
	
	.main-h2 big {
		font-size:45px;
	}
	
	.main-h2 small {
		font-size:26px;
	}
	
	.main-h2 b {
		padding-top:28px;
		font-size:27px;
	}
	
	.center-mh2 {
		padding:54px 0 52px 0;
	}
}

/* Main End */

/* Footer Start */

#footer {
	padding:84px 20px 92px 60px;
	background-color:rgba(57,57,57,.09);
	color:#393939;
	text-align:left;
}

#footer h2 {
	padding-bottom:64px;
}

#footer ul {
	display:flex;
	padding-bottom:64px;
	list-style-type:none;
}

#footer ul li {
	padding:0 24px;
	-webkit-writing-mode:vertical-rl;
	-ms-writing-mode:tb-rl;
	writing-mode:vertical-rl;
	line-height:100%;
	font-size:16px;
}

#footer ul li a {
	color:#393939;
	text-decoration:none;
}

#footer ul li a:hover,
#footer ul li.current a,
#footer ul li.current a:hover {
	color:#999;
}

#footer address {
	display:block;
	padding:0 0 28px 24px;
	line-height:100%;
	font-size:12px;
}

#footer small {
	display:block;
	padding-left:24px;
	line-height:100%;
	font-size:12px;
}

#pagetop {
	display:none;
	position:relative;
	margin:0 auto;
	width:100%;
	height:0;
	z-index:9999;
}

#pagetop a {
	position:fixed;
	right:50px;
	bottom:20px;
	display:inline-block;
	padding-top:28px;
	color:#393939;
	line-height:100%;
	font-size:12px;
	text-decoration:none;
	transition:.5s ease;
}

#pagetop a::before {
	position:absolute;
	left:calc(50% - 11px);
	top:0;
	background:url(../common_images/bg_pagetop.png) no-repeat;
	background-size:22px 16px;
	width:22px;
	height:16px;
	content:"";
}

@media only screen and (max-width : 1139px) {
	
}

@media screen and (min-width : 768px) and (max-width : 1139px) {
	#footer {
		padding:50px 20px 69px 45px;
	}
	
	#footer h2,
	#footer ul {
		padding-bottom:48px;
	}
	
	#footer ul li {
		padding:0 18px;
	}
	
	#footer address {
		padding:0 0 21px 18px;
	}
	
	#footer small {
		padding-left:18px;
	}
	
	
}

@media only screen and (max-width : 767px) {
	#footer {
		padding:50px 20px 46px 30px;
	}
	
	#footer h2,
	#footer ul {
		padding-bottom:32px;
	}
	
	#footer ul li {
		padding:0 18px 0 0;
	}
	
	#footer address {
		padding:0 0 14px 0;
	}
	
	#footer small {
		padding-left:0;
	}
	
	
}

/* Footer End */

/* Top Page (index.html) Start */

.top-aboutx2 {
	padding-bottom:88px;
}

.top-aboutx2 ul {
	list-style-type:none;
}

.top-aboutx2 ul li {
	padding:160px 0 100px 0;
}

.top-aboutx2 ul li dl {
	display:flex;
	align-items:center;
}

.top-aboutx2 ul li dl dt {
	position:relative;
	width:100%;
	max-width:712px;
}

.top-aboutx2 ul li dl dt img {
	z-index:1;
	width:100%;
	height:auto;
}

.top-aboutx2 ul li dl dt span {
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
}

.top-aboutx2 ul li dl dd {
	display:flex;
	flex-direction:column;
	justify-content:center;
	padding:0 72px;
}

.top-aboutx2 ul li:nth-child(odd) dl dd {
	order:-1;
}

.top-aboutx2 ul li dl dd h2 {
	position:relative;
	display:flex;
	align-items:center;
	-webkit-writing-mode:vertical-rl;
	-ms-writing-mode:tb-rl;
	writing-mode:vertical-rl;
	padding-bottom:30px;
	line-height:100%;
	font-size:38px;
	font-weight:400;
	letter-spacing:24px;
}

.top-aboutx2 ul li dl dd h2::after {
	position:absolute;
	left:calc(50% - 30px);
	bottom:0;
	display:block;
	background-color:#000;
	width:60px;
	height:1px;
	content:"";
}

.top-aboutx2 ul li dl dd strong {
	display:block;
	padding:64px 0;
	line-height:100%;
	font-size:20px;
	font-weight:400;
}

.top-aboutx2 ul li dl dd em {
	padding-top:44px;
}

.top-craftsman {
	position:relative;
}

.crfts-bg {
	z-index:1;
	width:100%;
	height:auto;
}

.top-craftsman span {
	position:absolute;
	left:0;
	top:0;
	display:flex;
	align-items:center;
	width:100%;
	height:100%;
}

.top-craftsman span section {
	padding-left:100px;
	width:50%;
	color:#fff;
	text-align:left;
}

.top-craftsman span section h2 {
	position:relative;
	display:flex;
	align-items:center;
	-webkit-writing-mode:vertical-rl;
	-ms-writing-mode:tb-rl;
	writing-mode:vertical-rl;
	margin-right:auto;
	padding-bottom:30px;
	width:60px;
	line-height:100%;
	font-size:38px;
	font-weight:400;
	letter-spacing:24px;
}

.top-craftsman span section h2::after {
	position:absolute;
	left:0;
	bottom:0;
	display:block;
	background-color:#fff;
	width:60px;
	height:1px;
	content:"";
}

.top-craftsman span section strong {
	display:block;
	padding:52px 0 28px 0;
	line-height:100%;
	font-size:20px;
	font-weight:400;
}

.top-craftsman span section em {
	display:block;
	padding-top:32px;
}

.top-craftsman span section em a {
	display:flex;
	justify-content:center;
	align-items:center;
	margin-right:auto;
	background-color:rgba(255,255,255,.8);
	color:#333;
	width:164px;
	height:38px;
	text-decoration:none;
}

.top-craftsman span section em a small {
	position:relative;
	display:inline-block;
	padding-right:16px;
	line-height:100%;
	font-size:15px;
}

.top-craftsman span section em a small::after {
	position:absolute;
	right:0;
	top:calc(50% - 3px);
	display:block;
	border-top:1px solid #333;
	border-right:1px solid #333;
	width:8px;
	height:8px;
	content:"";
	transform:rotate(45deg);
}

.top-craftsman span div {
	width:50%;
}

.top-craftsman span div ul {
	margin-right:auto;
	padding-top:60px;
	width:85.1%;
	list-style-type:none;
}

.top-craftsman span div ul li {
	width:100%;
}

.top-craftsman span div ul li+li {
	padding-top:40px;
}

.top-craftsman span div ul li:nth-child(1) {
	text-align:left;
}

.top-craftsman span div ul li:nth-child(2) {
	text-align:center;
}

.top-craftsman span div ul li:nth-child(3) {
	text-align:right;
}

.top-work {
	padding:268px 0 160px 0;
}

.top-work-inner {
	display:flex;
}

.top-work h2 {
	position:relative;
	display:flex;
	align-items:center;
	-webkit-writing-mode:vertical-rl;
	-ms-writing-mode:tb-rl;
	writing-mode:vertical-rl;
	margin-right:auto;
	width:60px;
	line-height:100%;
	font-size:38px;
	font-weight:400;
	letter-spacing:24px;
}

.top-work h2 span {
	position:relative;
	display:inline-block;
	padding-bottom:30px;
}

.top-work h2 span::after {
	position:absolute;
	left:calc(50% - 30px);
	bottom:0;
	display:block;
	background-color:#000;
	width:60px;
	height:1px;
	content:"";
}

.top-work ul {
	display:flex;
	flex-flow:row wrap;
	list-style-type:none;
	padding-top:176px;
}

.top-work ul li {
	padding:0 0 72px 72px;
}

.top-work ul li dl {
	width:250px;
}

.top-work ul li dl dt p {
	padding-bottom:6px;
}

.top-work ul li dl dd {
	padding-top:12px;
}

.top-work ul li dl p {
	color:#393939;
	text-align:left;
}

.top-work ul li a:hover {
	opacity:.8;
	text-decoration:none;
}

.top-work em {
	text-align:right;
}

.top-work em a {
	margin-left:auto;
}

@media only screen and (max-width : 1139px) {
	.top-aboutx2 ul li dl {
		flex-direction:column;
		justify-content:center;
		margin:0 auto;
		width:90%;
		max-width:712px;
	}
	
	.top-aboutx2 ul li dl dd {
		padding:0;
	}
	
	.top-aboutx2 ul li:nth-child(even) dl dd {
		order:-1;
	}
	
	.top-craftsman {
		height:780px;
	}
	
	.crfts-bg {
		object-fit:cover;
		object-position:left;
		height:780px;
	}
	
	.top-work-inner {
		flex-direction:column;
	}
	
	.top-work h2 {
		margin:0 auto;
	}
	
	.top-work ul li dl {
		margin:0 auto;
	}
	
	.top-work em {
		text-align:center;
	}
	
	.top-work em a {
		margin:0 auto;
	}
}

@media screen and (min-width : 768px) and (max-width : 1139px) {
	.top-aboutx2 {
		padding-bottom:66px;
	}
	
	.top-aboutx2 ul li {
		padding:120px 0 75px 0;
	}
	
	.top-aboutx2 ul li dl dd {
		padding-bottom:102px;
	}
	
	.top-aboutx2 ul li dl dd strong {
		padding:48px 0;
	}
	
	.top-aboutx2 ul li dl dd em {
		padding-top:33px;
	}
	
	.top-craftsman span section {
		padding-left:40px;
	}
	
	.top-work {
		padding:268px 0 160px 0;
	}
	
	.top-work ul {
		padding-top:88px;
	}
	
	.top-work ul li {
		padding:0 0 60px 0;
		width:50%;
	}
}

@media only screen and (max-width : 767px) {
	.top-aboutx2 {
		padding-bottom:44px;
	}
	
	.top-aboutx2 ul li {
		padding:80px 0 50px 0;
	}
	
	.top-aboutx2 ul li dl dd {
		padding-bottom:68px;
	}
	
	.top-aboutx2 ul li dl dd strong {
		padding:32px 0;
	}
	
	.top-aboutx2 ul li dl dd em {
		padding-top:22px;
	}
	
	.top-craftsman span section {
		margin:0 auto;
		padding-left:0;
		width:90%;
	}
	
	.top-craftsman span div {
		position:absolute;
		left:5%;
		top:0;
		margin:0 auto;
		width:90%;
		height:1px;
	}
	
	.top-craftsman span div ul {
		position:absolute;
		right:0;
		top:20px;
		width:140px;
	}
	
	.top-craftsman span div ul li+li {
		padding-top:20px;
	}
	
	.top-craftsman span div ul li img {
		width:110px;
		height:auto;
	}
	
	.top-work {
		padding:134px 0 80px 0;
	}
	
	.top-work ul {
		padding-top:44px;
	}
	
	.top-work ul li {
		padding:0 0 40px 0;
		width:100%;
	}
}

/* Top Page (index.html) End */

/* About (about/index.html) Start */

.about-lead {
	display:flex;
	justify-content:flex-end;
	padding-top:92px;
}

.about-lead strong {
	display:block;
	margin-left:auto;
	-webkit-writing-mode:vertical-rl;
	-ms-writing-mode:tb-rl;
	writing-mode:vertical-rl;
	line-height:160%;
	text-align:left;
	font-size:35px;
	font-weight:400;
	letter-spacing:20px;
}

.about02 {}

.about02 ul {
	list-style-type:none;
}

.about02 ul li {
	padding-bottom:124px;
}

.about02 ul li h2,
.about-history h2 {
	padding:96px 48px 96px 52px;
}

.about02 ul li dl {
	display:flex;
}

.about02 ul li dl dt {
	position:relative;
	width:90%;
	max-width:550px;
	height:auto;
}

.about02 ul li dl dt img {
	z-index:1;
	width:100%;
	height:auto;
}

.about02 ul li dl dt span {
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
}

.about02 ul li dl dd {
	flex-grow:1;
	margin-top:-11px;
	padding:0 52px;
	width:calc(100% - 550px);
	text-align:left;
}

.about02 ul li:nth-child(odd) dl dd {
	order:-1;
}

.about02 ul li:nth-child(odd) h2 {
	text-align:left;
}

.about02 ul li:nth-child(odd) h2 big::after,
.about-history h2 big::after {
	margin-right:auto;
}

.about02 ul li:nth-child(even) h2 {
	text-align:right;
}

.about02 ul li:nth-child(even) h2 big::after {
	margin-left:auto;
}

.about02 ul li:nth-child(even) dl dd {
	text-align:right;
}

.about-history {
	padding-bottom:200px;
}

.about-history h2 {
	text-align:left;
}

.about-history dl {
	display:flex;
	align-items:center;
}

.about-history dl dt {
	position:relative;
	width:100%;
	max-width:424px;
}

.about-history dl dt img {
	z-index:1;
	width:100%;
	height:auto;
}

.about-history dl dt span {
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
}

.about-history dl dd {
	order:-1;
	padding:0 180px 0 52px;
	width:calc(100% - 424px);
}

.about-history dl dd ul {
	padding-left:40px;
	list-style-type:none;
}

.about-history dl dd ul li {
	position:relative;
	padding-left:44px;
	text-align:left;
}

.about-history dl dd ul li:nth-child(1)::before,
.about-history dl dd ul li:nth-child(2)::before {
	z-index:2;
	position:absolute;
	left:5px;
	top:3px;
	background-color:#ccc;
	display:block;
	width:1px;
	height:100%;
	content:"";
}

.about-history dl dd ul li h3 {
	position:relative;
	line-height:100%;
	font-size:16px;
	font-weight:normal;
}

.about-history dl dd ul li h3::before {
	z-index:3;
	position:absolute;
	left:-44px;
	top:3px;
	display:block;
	background-color:#999;
	border-radius:50%;
	width:11px;
	height:11px;
	content:"";
}

.about-history dl dd ul li:last-child h3::before {
	background-color:#930;
}

.about-history dl dd ul li p {
	padding:32px 0 40px 0;
	line-height:200%;
	font-size:16px;
}




@media only screen and (max-width : 1139px) {
	.about02 ul li dl {
		flex-direction:column;
	}
	
	.about02 ul li dl dt {
		margin:0 auto;
	}
	
	.about02 ul li dl dd {
		margin-top:0;
	}
	
	.about02 ul li:nth-child(even) dl dd {
		order:-1;
		text-align:left;
	}
	
	.about02 ul li dl dd {
		width:100%;
	}
	
	.about-history dl dd ul {
		padding-left:0;
	}
	
	
}

@media screen and (min-width : 768px) and (max-width : 1139px) {
	.about-lead {
		padding-top:69px;
	}
	
	.about02 ul li {
		padding-bottom:93px;
	}
	
	.about02 ul li h2,
	.about-history h2 {
		padding:72px 35px 72px 39px;
	}
	
	.about02 ul li dl dd {
		padding:0 39px 32px;
	}
	
	.about-history {
		padding-bottom:150px;
	}
	
	.about-history dl dd {
		margin-bottom:-30px;
		padding:0 39px;
	}
	
	.about-history dl dd ul li p {
		padding:24px 0 30px 0;
	}
	
	
}

@media only screen and (max-width : 767px) {
	.about-lead {
		padding-top:46px;
	}
	
	.about02 ul li {
		padding-bottom:62px;
	}
	
	.about02 ul li h2,
	.about-history h2 {
		padding:48px 22px 48px 26px;
	}
	
	.about02 ul li dl dd {
		padding:0 26px 32px;
	}
	
	.about-history {
		padding-bottom:100px;
	}
	
	.about-history dl {
		flex-direction:column;
	}
	
	.about-history dl dt {
		margin:0 auto;
		width:90%;
	}
	
	.about-history dl dd {
		padding:0 26px 32px;
		width:100%;
	}
	
	.about-history dl dd ul li p {
		padding:16px 0 20px 0;
	}
	
	
}

/* About (about/index.html) End */

/* Contact (about/contact/index.html) Start */

.contact-top {
	padding-bottom:88px;
}

.contact-top strong {
	display:block;
	padding-left:1em;
	text-indent:-1em;
	line-height:2.2em;
	font-size:16px;
	font-weight:400;
	text-align:left;
}

.form {
	padding-bottom:300px;
}

.form ul {
	list-style-type:none;
	text-align:left;
}

.form ul li {
	padding-bottom:44px;
}

.form ul li dl {
	display:flex;
}

.form ul li dl dt {
	flex-shrink:0;
	display:flex;
	padding-top:10px;
	width:230px;
	color:#000;
	line-height:28px;
	font-size:16px;
}

.form ul li dl dt.nece::after {
	display:flex;
	justify-content:center;
	align-items:center;
	margin-left:auto;
	background-color:#666;
	color:#fff;
	width:70px;
	height:28px;
	line-height:100%;
	font-size:12px;
	text-align:center;
	content:"必須";
}

.form ul li dl dd {
	flex-grow:1;
	margin-left:64px;
}

.form ul li dl dd ol {
	list-style-type:none;
}

.form ul li dl dd ol>li {
	padding:14px 0;
	line-height:100%;
	font-size:16px;
}

.form ul li dl dd input[type="text"],
.form ul li dl dd input[type="email"],
.form ul li dl dd input[type="tel"],
.form ul li dl dd textarea,
.form ul li dl dd select {
	padding:12px 14px;
	background-color:#fff;
	border:none;
	font-family:"Noto Serif JP","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif;
	line-height:20px;
	font-size:16px;
}

.size-l {
	width:100%;
}

.size-m {
	width:75%;
}

.size-s {
	width:50%;
}

label,
.wpcf7-list-item-label {
	vertical-align:middle;
	padding:0 0 0 12px;
	cursor:pointer;
}

.wpcf7-list-item label {
	display: flex;
	align-items: center;
}

.wpcf7-radio {
	display: flex;
	flex-direction: column;
}

.wpcf7-radio .wpcf7-list-item {
	margin: 14px 0;
}

.wpcf7-radio .wpcf7-list-item > label {
	padding: 0;
}

.wpcf7-not-valid-tip {
	margin-top: 0.5em;
}

.form strong {
	display:block;
	padding:88px 0 36px 0;
	line-height:100%;
	font-size:16px;
	font-weight:400;
}

.form strong span {
	display:inline-block;
}

.form em {
	display:block;
}

.form em input {
	display:flex;
	justify-content:center;
	align-items:center;
	margin:0 auto;
	padding-left:1px;
	border:0;
	background-color:#333;
	color:#fff;
	width:228px;
	height:76px;
	line-height:100%;
	font-family:"Noto Serif JP","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif;
	font-size:16px;
	cursor:pointer;
}

.form em input:hover {
	opacity:.8;
}

.form h3 {
	padding:168px 0 100px 2px;
	line-height:100%;
	font-size:26px;
	font-weight:400;
	letter-spacing:2px;
}

.privacy {
	padding:28px 44px;
	border:1px solid #999;
	overflow:auto;
	overflow-y:scroll;
	height:446px;
	text-align:left;
}

.privacy small {
	line-height:180%;
	font-size:16px;
}

.privacy h4 {
	padding-top:32px;
	line-height:180%;
	font-size:16px;
}

.privacy>ul,
.privacy>ol>li>ul {
	list-style-type:disc;
}

.privacy>ul>li,
.privacy>ol>li,
.privacy>ol>li>ul>li {
	margin-left:1em;
	padding-bottom:0 !important;
	line-height:180%;
	font-size:16px;
}

.privacy>ol {
	list-style-type:decimal;
}

.privacy>ol>li+li {
	padding-top:32px;
}

@media only screen and (max-width : 1139px) {
	
}

@media screen and (min-width : 768px) and (max-width : 1139px) {
	.contact-top {
		padding-bottom:66px;
	}
	
	.form {
		padding-bottom:225px;
	}
	
	.form ul li {
		padding-bottom:33px;
	}
	
	.form ul li dl dd {
		margin-left:32px;
	}
	
	.form ul li dl dd ol>li {
		padding:12px 0;
	}
	
	.form strong {
		padding:66px 0 27px 0;
	}
	
	.form h3 {
		padding:126px 0 75px 2px;
	}
	
	.privacy {
		padding:21px 33px;
	}
	
	.privacy h4,
	.privacy>ol>li+li {
		padding-top:24px;
	}
	
	
}

@media only screen and (max-width : 767px) {
	.contact-top {
		padding-bottom:44px;
	}
	
	.form {
		padding-bottom:150px;
	}
	
	.form ul li {
		padding-bottom:22px;
	}
	
	.form ul li dl {
		flex-direction:column;
	}
	
	.form ul li dl dd {
		margin-left:0;
		padding-top:16px;
	}
	
	.form ul li dl dd ol>li {
		padding:10px 0;
	}

	.wpcf7-radio .wpcf7-list-item {
		margin: 10px 0;
	}

	.wpcf7-radio .wpcf7-list-item > label {
		padding: 0;
	}

	.size-m,
	.size-s {
		width:100%;
	}
	
	.form strong {
		padding:44px 0 18px 0;
		font-size:14px;
	}
	
	.form h3 {
		padding:84px 0 50px 2px;
	}
	
	.privacy {
		padding:14px 22px;
	}
	
	.privacy h4,
	.privacy>ol>li+li {
		padding-top:16px;
	}
	
	
}

/* Contact (contact/index.html) End */

/* Craftsman (craftsman/index.html) Start */

.craftsman-lead {
	display:flex;
	justify-content:center;
	padding:92px 0 132px;
}

.craftsman-lead strong {
	display:block;
	-webkit-writing-mode:vertical-rl;
	-ms-writing-mode:tb-rl;
	writing-mode:vertical-rl;
	line-height:160%;
	text-align:left;
	font-size:35px;
	font-weight:400;
	letter-spacing:20px;
}

.cm-intro {}

.cm-intro strong {
	display:block;
	padding-bottom:116px;
	line-height:300%;
	font-size:16px;
	font-weight:400;
	text-align:left;
}

.cm-intro div {
	position:relative;
}

.cm-intro div video {
	z-index:1;
	display:block;
	width:100%;
	height:auto;
}

.cm-intro div span {
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
}

.aor {
	padding-top:260px;
}

.aor h2 {
	text-align:left;
}

.aor h2 big::after {
	margin-right:auto;
}

.aor ul {
	list-style-type:none;
}

.aor ul li {
	padding-top:200px;
}

.aor ul li dl {
	display:flex;
	height:467px;
}

.aor ul li:nth-child(3) dl {
	height:490px;
}

.aor ul li dl dt {
	position:relative;
	flex-shrink:0;
	width:700px;
}

.aor ul li dl dt img {
	z-index:1;
	width:100%;
	height:auto;
}

.aor ul li dl dt span {
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
}

.aor ul li:nth-child(3) dl dt {
	width:717px;
}

.aor ul li dl dd {
	flex-grow:1;
	display:flex;
	align-items:center;
	-webkit-writing-mode:vertical-rl;
	-ms-writing-mode:tb-rl;
	writing-mode:vertical-rl;
	height:100%;
}

.aor ul li:nth-child(odd) dd {
	order:-1;
}

.aor ul li dl dd div {
	text-align:left;
	height:100%;
}

.aor ul li dl dd div h3 {
	line-height:0;
	font-size:0;
}

.aor ul li dl dd div h3 big {
	display:block;
	line-height:100%;
	font-size:32px;
	font-weight:600;
	letter-spacing:20px;
}

.aor ul li dl dd div h3 small {
	display:block;
	padding-right:14px;
	line-height:100%;
	font-size:18px;
	font-weight:400;
	letter-spacing:12px;
}

.aor ul li dl dd div em {
	display:block;
	padding:124px 68px 0 0;
	line-height:200%;
	font-size:16px;
}

.poc {}

.poc h2 {
	padding:200px 0 32px 0;
	text-align:right;
}

.poc h2 big::after {
	margin-left:auto;
}

.poc dl {
	display:flex;
}

.poc dl dt {
	position:relative;
	flex-shrink:0;
	width:618px;
	height:722px;
}

.poc dl dt em {
	position:absolute;
}

.poc dl dt em img {
	z-index:1;
	width:100%;
	height:auto;
}

.poc dl dt em span {
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
}

.poc dl dt em:nth-child(1) {
	left:46px;
	top:0;
	width:218px;
}

.poc dl dt em:nth-child(2) {
	right:0;
	top:176px;
	width:317px;
}

.poc dl dt em:nth-child(3) {
	left:0;
	bottom:245px;
	width:236px;
}

.poc dl dt em:nth-child(4) {
	right:77px;
	bottom:0;
	width:260px;
}

.poc dl dd {
	margin-left:120px;
	padding-top:72px;
	line-height:200%;
	font-size:16px;
	text-align:left;
}

.poc dl dd span {
	display:block;
	padding-top:36px;
}

.joj {
	padding-bottom:200px;
}

.joj dl {
	display:flex;
	align-items:center;
}

.joj dl dt {
	position:relative;
	flex-shrink:0;
	width:100%;
	max-width:512px;
}

.joj dl dt img {
	z-index:1;
	width:100%;
	height:auto;
}

.joj dl dt span {
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
}

.joj dl dd {
	margin-left:96px;
}

.joj dl dd strong {
	display:block;
	line-height:200%;
	font-size:16px;
	font-weight:400;
	text-align:left;
}

.joj dl dd em {
	padding-top:64px;
	display:block;
}

.joj dl dd em a {
	display:flex;
	justify-content:center;
	align-items:center;
	margin-left:auto;
	border:1px solid #666;
	color:#393939;
	text-decoration:none;
	width:250px;
	height:57px;
	line-height:100%;
	font-size:16px;
}

.joj dl dd em a:hover {
	opacity:.8;
}





@media only screen and (max-width : 1139px) {
	.aor ul li {
		margin:0 auto;
		width:90%;
		max-width:750px;
	}
	
	.aor ul li dl,
	.aor ul li:nth-child(3) dl {
		flex-direction:column;
		margin:0 auto;
		height:auto;
	}
	
	.aor ul li dl dt,
	.aor ul li:nth-child(3) dl dt {
		margin:0 auto;
		width:100%;
		max-width:700px;
		height:auto;
	}
	
	.aor ul li dl dd,
	.aor ul li:nth-child(odd) dl dd,
	.aor ul li:nth-child(even) dl dd,
	.aor ul li:nth-child(3) dl dd {
		order:-1;
		display:block;
		height:452px;
	}
	
	.aor ul li dl dd div {
		margin-right:20px;
		margin-left:auto;
		height:452px;
	}
	
	.aor ul li dl dd div em {
		padding:44px 34px 0 0;
	}
	
	.poc dl,
	.joj dl {
		flex-direction:column;
	}
	
	.poc dl dt,
	.joj dl dt {
		margin:0 auto;
	}
	
	.poc dl dd,
	.joj dl dd {
		margin-left:0;
	}
	
	.joj dl dd em a {
		margin:0 auto;
	}
}

@media screen and (min-width : 768px) and (max-width : 1139px) {
	.craftsman-lead {
		padding:69px 0 99px;
	}
	
	.cm-intro strong {
		padding-bottom:87px;
	}
	
	.aor {
		padding-top:195px;
	}
	
	.aor ul li {
		padding-top:150px;
	}
	
	.aor ul li dl dd,
	.aor ul li:nth-child(odd) dl dd,
	.aor ul li:nth-child(even) dl dd,
	.aor ul li:nth-child(3) dl dd {
		margin-bottom:39px;
	}
	
	.poc h2 {
		padding:150px 0 24px 0;
	}
	
	.poc dl dd,
	.joj dl dd {
		padding-top:54px;
	}
	
	.poc dl dd span {
		padding-top:27px;
	}
	
	.joj {
		padding-bottom:150px;
	}
	
	.joj dl dd em {
		padding-top:48px;
	}
}

@media only screen and (max-width : 767px) {
	.craftsman-lead {
		padding:46px 0 66px;
	}
	
	.cm-intro strong {
		padding-bottom:58px;
	}
	
	.aor {
		padding-top:130px;
	}
	
	.aor ul li {
		padding-top:100px;
	}
	
	.aor ul li dl dd,
	.aor ul li:nth-child(odd) dl dd,
	.aor ul li:nth-child(even) dl dd,
	.aor ul li:nth-child(3) dl dd {
		margin-bottom:26px;
	}
	
	.poc h2 {
		padding:100px 0 16px 0;
	}
	
	.poc dl dt {
		width:309px;
		height:361px;
	}
	
	.poc dl dt em:nth-child(1) {
		left:23px;
		width:109px;
	}
	
	.poc dl dt em:nth-child(2) {
		top:88px;
		width:158px;
	}
	
	.poc dl dt em:nth-child(3) {
		bottom:122px;
		width:118px;
	}
	
	.poc dl dt em:nth-child(4) {
		right:38px;
		width:130px;
	}
	
	.poc dl dd,
	.joj dl dd {
		padding-top:36px;
	}
	
	.poc dl dd span {
		padding-top:18px;
	}
	
	.joj {
		padding-bottom:100px;
	}
	
	.joj dl dd em {
		padding-top:32px;
	}
}

/* Craftsman (craftsman/index.html) End */

/* Roji (roji/index.html) Start */

.roji-lead {
	display:flex;
	padding-top:128px;
}

.roji-lead strong {
	display:block;
	-webkit-writing-mode:vertical-rl;
	-ms-writing-mode:tb-rl;
	writing-mode:vertical-rl;
	padding:280px 100px 0;
	line-height:160%;
	text-align:left;
	font-size:35px;
	font-weight:400;
	letter-spacing:20px;
}

.roji-lead em {
	display:block;
	margin-left:auto;
	width:100%;
	max-width:404px;
}

.roji-lead em img {
	width:100%;
	height:auto;
}

.roji-intro {}

.roji-intro h2 {
	padding:200px 0 92px 0;
	text-align:right;
}

.roji-intro h2 big::after {
	margin-left:auto;
}

.roji-intro dl {
	display:flex;
	height:727px;
}

.roji-intro dl dt {
	position:relative;
	flex-shrink:0;
	width:627px;
}

.roji-intro dl dt img {
	z-index:1;
	width:100%;
	height:auto;
}

.roji-intro dl dt span {
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
}

.roji-intro dl dd {
	flex-grow:1;
	display:flex;
	align-items:center;
	-webkit-writing-mode:vertical-rl;
	-ms-writing-mode:tb-rl;
	writing-mode:vertical-rl;
	height:100%;
}

.roji-intro dl dd div {
	text-align:left;
	height:100%;
}

.roji-intro dl dd div h3 {
	line-height:200%;
	font-size:26px;
	font-weight:400;
}

.roji-intro dl dd div em {
	display:block;
	padding:188px 68px 0 0;
	line-height:300%;
	font-size:16px;
}

.experience {}

.experience h2 {
	padding:260px 0 128px 0;
	text-align:left;
}

.experience div {
	padding-bottom:232px;
}

.experience div h3 {
	line-height:150%;
	font-size:25px;
}

.experience div h3::after {
	display:block;
	margin:24px auto 64px;
	background-color:#000;
	width:60px;
	height:1px;
	content:"";
}

.experience div ul {
	display:flex;
	justify-content:center;
	list-style-type:none;
}

.experience div ul li {
	padding:0 20px;
}

.experience div ul li b {
	position:relative;
	display:block;
	width:100%;
	max-width:505px;
}

.experience div ul li dl {
	width:100%;
	max-width:505px;
}

.experience div ul li dl dt {
	position:relative;
}

.experience div ul li b img,
.experience div ul li dl dt img {
	z-index:1;
	width:100%;
	height:auto;
}

.experience div ul li b span,
.experience div ul li dl dt span {
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
}

.experience div small {
	display:block;
	padding-top:32px;
	line-height:200%;
	font-size:16px;
}

.experience div ul li dl dd strong {
	display:block;
	padding:44px 0 36px 1px;
	line-height:100%;
	font-size:20px;
}

.experience div ul li dl dd em {
	display:block;
	line-height:200%;
	font-size:16px;
}

.season {
	padding-bottom:200px;
}

.season dl {
	display:flex;
}

.season dl dt {
	flex-shrink:0;
	width:617px;
}

.season dl dt b {
	position:relative;
	display:block;
	width:100%;
}

.season dl dt b img {
	z-index:1;
	width:100%;
	height:auto;
}

.season dl dt b span {
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
}

.season dl dd {
	flex-grow:1;
	padding-right:52px;
	text-align:right;
}

.season dl dd h2 {
	padding:84px 0 54px 0;
}

.season dl dd h2 big::after {
	margin-left:auto;
}

.season dl dd div {
	display:inline-block;
	-webkit-writing-mode:vertical-rl;
	-ms-writing-mode:tb-rl;
	writing-mode:vertical-rl;
	text-align:left;
	margin-left:auto;
}

.season dl dd div h3 {
	line-height:100%;
	font-size:30px;
	font-weight:400;
}

.season dl dd div em {
	display:block;
	margin:72px 52px 0 0;
	line-height:300%;
	font-size:16px;
	height:640px;
}


@media only screen and (max-width : 1139px) {
	.roji-intro dl {
		flex-direction:column;
		margin:0 auto;
		width:90%;
		max-width:750px;
		height:auto;
	}
	
	.roji-intro dl dt {
		margin:0 auto;
		width:100%;
		max-width:700px;
		height:auto;
	}
	
	.roji-intro dl dd {
		order:-1;
		display:block;
		height:504px;
	}
	
	.roji-intro dl dd div {
		margin-right:20px;
		margin-left:auto;
		margin-bottom:auto;
		height:452px;
	}
	
	.roji-intro dl dd div em {
		padding:44px 34px 0 0;
	}
	
	.experience div ul {
		flex-direction:column;
	}
	
	.experience div ul li {
		width:100%;
		padding:0;
	}
	
	.experience div ul li+li {
		padding-top:36px;
	}
	
	.experience div ul li b,
	.experience div ul li dl {
		margin:0 auto;
	}
	
	.season dl {
		flex-direction:column;
		margin:0 auto;
		width:90%;
		max-width:750px;
		height:auto;
	}
	
	.season dl dt {
		margin:0 auto;
		width:100%;
		max-width:617px;
		height:auto;
	}
	
	.season dl dd {
		order:-1;
		display:block;
		height:920px;
	}
	
	.season dl dd div {
		margin-right:20px;
		margin-left:auto;
		margin-bottom:auto;
		height:676px;
	}
	
	.season dl dd div em {
		margin:36px 26px 0 0;
		height:500px;
	}
}

@media screen and (min-width : 768px) and (max-width : 1139px) {
	.experience h2 {
		padding:195px 0 96px 0;
	}
	
	.experience div {
		padding-bottom:174px;
	}
	
	.experience div h3::after {
		margin:18px auto 48px;
	}
	
	.experience div small {
		padding-top:24px;
	}
	
	.experience div ul li dl dd strong {
		padding:33px 0 27px 1px;
	}
	
	.season {
		padding-bottom:150px;
	}
	
	.season dl dd {
		padding-right:39px;
	}
	
	
}

@media only screen and (max-width : 767px) {
	.roji-lead {
		flex-direction:column;
	}
	
	.roji-lead strong {
		margin:0 auto;
		padding:100px 0 0 0;
	}
	
	.roji-lead em {
		order:-1;
		margin:0 auto;
	}
	
	.roji-intro dl dd {
		height:626px;}
	
	.roji-intro dl dd div {
		height:600px;
	}
	
	.roji-intro dl dd div h3 {
		line-height:150%;
	}
	
	.roji-intro dl dd div em {
		line-height:200%;
	}
	
	.experience h2 {
		padding:130px 0 64px 0;
	}
	
	.experience div {
		padding-bottom:116px;
	}
	
	.experience div h3::after {
		margin:12px auto 32px;
	}
	
	.experience div small {
		padding-top:16px;
	}
	
	.experience div ul li dl dd strong {
		padding:22px 0 18px 1px;
	}
	
	.season {
		padding-bottom:100px;
	}
	
	.season dl dd {
		padding-right:26px;
	}
	
	.season dl dd div em {
		line-height:200%;
	}
}

/* Roji (roji/index.html) End */

/* Works Top (works/index.html) Start */

.works-list {
	padding-bottom:200px;
}

.works-list ul {
	display:flex;
	flex-flow:row wrap;
	padding-bottom:80px;
	list-style-type:none;
}

.works-list ul li {
	padding-bottom:68px;
	width:calc(100% / 3);
}

.works-list ul li a {
	display:block;
}

.works-list ul li a dl {
	margin:0 auto;
	width:250px;
}

.works-list ul li a dl p {
	color:#393939;
	text-decoration:none;
	text-align:left;
}

.works-list ul li a dl dt p {
	padding-bottom:6px;
}

.works-list ul li a dl dd {
	padding-top:12px;
}

.works-list ul li a:hover {
	opacity:.8;
	text-decoration:none;
}

.pager {
	margin:0 auto;
	padding:32px 0 0 0;
	border-top:1px solid #ccc;
}

.pager-inner {
	display:-webkit-flex;
	display:flex;
	-webkit-flex-flow:row wrap;
	flex-flow:row wrap;
	-webkit-justify-content:center;
	justify-content:center;
}

.back,
.next {
	position:relative;
	box-sizing:border-box;
	margin:10px 0;
	border:1px solid transparent;
	width:22px;
	height:22px;
	text-indent:-9999px;
}

.back a,
.next a {
	display:block;
	width:100%;
	height:100%;
	text-indent:-9999px;
}

.back::after,
.next::after {
	position:absolute;
	top:calc(50% - 4px);
	display:block;
	box-sizing:border-box;
	border-top:1px solid #ccc;
	width:8px;
	height:8px;
	content:"";
}

.back::after {
	border-left:1px solid #ccc;
	left:calc(50% - 2px);
	transform:rotate(315deg);
}

.pager ol {
	display:inline-flex;
	flex-flow:row wrap;
	justify-content:center;
	margin:0 10px;
	list-style-type:none;
}

.pager ol li {
	margin:12px 0;
	padding:0 20px;
	line-height:18px;
	font-size:18px;
}

.pager ol li a {
	color:#000;
	text-decoration:none;
}

.pager ol li a:hover {
	color:#6c9752;
}

.pager ol li+li {
	border-left:1px solid #ccc;
}

.next::after {
	border-right:1px solid #ccc;
	left:calc(50% - 6px);
	transform:rotate(45deg);
}

.back:hover::after,
.next:hover::after {
	border-color:#6c9752;
}

@media only screen and (max-width : 1139px) {
	
}

@media screen and (min-width : 768px) and (max-width : 1139px) {
	.works-list {
		padding-bottom:150px;
	}
	
	.works-list ul {
		padding-bottom:60px;
	}
	
	.works-list ul li {
		padding-bottom:51px;
		width:50%;
	}
	
	
}

@media only screen and (max-width : 767px) {
	.works-list {
		padding-bottom:100px;
	}
	
	.works-list ul {
		padding-bottom:40px;
	}
	
	.works-list ul li {
		padding-bottom:34px;
		width:100%;
	}
	
	
}

/* Works Top (works/index.html) End */

/* Works Detail (works/detail.html) Start */

.works-detail {
	padding-bottom:200px;
}

.works-detail em {
	display:block;
}

.works-detail em a {
	display:flex;
	justify-content:center;
	align-items:center;
	margin:0 auto;
	border:1px solid #666;
	color:#333;
	text-decoration:none;
	width:280px;
	height:65px;
}

.works-detail em a span {
	position:relative;
	display:inline-block;
	padding:0 28px;
}

.works-detail em a span::before {
	position:absolute;
	left:0;
	top:calc(50% - 4px);
	display:block;
	border-top:1px solid #333;
	border-right:1px solid #333;
	width:8px;
	height:8px;
	content:"";
	transform:rotate(45deg);
}

.works-detail em a:hover {
	opacity:.8;
}

.works-detail h3 {
	padding:144px 0 20px 0;
	line-height:250%;
	font-size:35px;
}

.works-detail dl dt {
	display:block;
	margin:0 auto;
	background-color:#666;
	color:#fff;
	width:80px;
	line-height:16px;
	font-size:11px;
}

.works-detail dl dd {
	padding:5px 0 60px 0;
}

.works-detail strong {
	display:block;
	padding-bottom:60px;
	line-height:250%;
	font-size:24px;
}

.works-detail div {
	margin:0 auto;
	padding-bottom:100px;
	width:100%;
	max-width:1000px;
}

.works-detail div>p,
.works-detail div>figure {
	padding-bottom:52px;
	font-size:16px;
	text-align:left;
}

.works-detail div>p>img {
	max-width:100%;
	height:auto;
}

@media only screen and (max-width : 1139px) {
	
}

@media screen and (min-width : 768px) and (max-width : 1139px) {
	.works-detail {
		padding-bottom:150px;
	}
	
	.works-detail h3 {
		padding:108px 0 15px 0;
	}
	
	.works-detail dl dd {
		padding:5px 0 45px 0;
	}
	
	.works-detail strong {
		padding-bottom:45px;
	}
	
	.works-detail div {
		padding-bottom:75px;
	}
	
	.works-detail div>p,
	.works-detail div>figure {
		padding-bottom:39px;
	}
}

@media only screen and (max-width : 767px) {
	.works-detail {
		padding-bottom:100px;
	}
	
	.works-detail h3 {
		padding:72px 0 10px 0;
	}
	
	.works-detail dl dd {
		padding:5px 0 30px 0;
	}
	
	.works-detail strong {
		padding-bottom:30px;
	}
	
	.works-detail div {
		padding-bottom:50px;
	}
	
	.works-detail div>p {
		padding-bottom:26px;
	}
}

/* Works Detail (works/detail.html) End */

/*  (/index.html) Start */






@media only screen and (max-width : 1139px) {
	
}

@media screen and (min-width : 768px) and (max-width : 1139px) {
	
}

@media only screen and (max-width : 767px) {
	
}

/*  (/index.html) End */

/* Scroll Animation Start */

.sa {
  opacity:0;
  transition:all .9s ease-in-out;
}

.sa.show {
  opacity:1;
  transform:none;
}

.ltr {
  transform:translate(-100px,0);
}

.ltr2x {
  transform:translate(-200px,0);
}

.rtl {
  transform:translate(100px,0);
}

.bt {
  transform:translate(0,100px);
}

.tb {
  transform:translate(0,-100px);
}

.slicknav_nav .sa {
	opacity:1;
	transform:none;
}

/* Scroll Animation End */
