/*! normalize.css v7.0.0 | MIT License | github.com/necolas/normalize.css */

/* Document
   ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in
 *    IE on Windows Phone and in iOS.
 */

html {
  line-height: 1.15; /* 1 */
  -ms-text-size-adjust: 100%; /* 2 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
   ========================================================================== */

/**
 * Remove the margin in all browsers (opinionated).
 */

body {
  margin: 0;
}

/**
 * Add the correct display in IE 9-.
 */

article,
aside,
footer,
header,
nav,
section {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */

/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in IE.
 */

figcaption,
figure,
main { /* 1 */
  display: block;
}

/**
 * Add the correct margin in IE 8.
 */

figure {
  margin: 1em 40px;
}

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/* Text-level semantics
   ========================================================================== */

/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */

a {
  background-color: transparent; /* 1 */
  -webkit-text-decoration-skip: objects; /* 2 */
}

/**
 * 1. Remove the bottom border in Chrome 57- and Firefox 39-.
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */

abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */
}

/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */

b,
strong {
  font-weight: inherit;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct font style in Android 4.3-.
 */

dfn {
  font-style: italic;
}

/**
 * Add the correct background and color in IE 9-.
 */

mark {
  background-color: #ff0;
  color: #000;
}

/**
 * Add the correct font size in all browsers.
 */

small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */

/**
 * Add the correct display in IE 9-.
 */

audio,
video {
  display: inline-block;
}

/**
 * Add the correct display in iOS 4-7.
 */

audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Remove the border on images inside links in IE 10-.
 */

img {
  border-style: none;
}

/**
 * Hide the overflow in IE.
 */

svg:not(:root) {
  overflow: hidden;
}

/* Forms
   ========================================================================== */

/**
 * 1. Change the font styles in all browsers (opinionated).
 * 2. Remove the margin in Firefox and Safari.
 */

button,
input,
optgroup,
select,
textarea {
  font-family: sans-serif; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */

button,
input { /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */

button,
select { /* 1 */
  text-transform: none;
}

/**
 * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */

button,
html [type="button"], /* 1 */
[type="reset"],
[type="submit"] {
  -webkit-appearance: button; /* 2 */
}

/**
 * Remove the inner border and padding in Firefox.
 */

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */

legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * 1. Add the correct display in IE 9-.
 * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
  display: inline-block; /* 1 */
  vertical-align: baseline; /* 2 */
}

/**
 * Remove the default vertical scrollbar in IE.
 */

textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10-.
 * 2. Remove the padding in IE 10-.
 */

[type="checkbox"],
[type="radio"] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */

[type="search"] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
 */

[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/* Interactive
   ========================================================================== */

/*
 * Add the correct display in IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 */

details, /* 1 */
menu {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */

summary {
  display: list-item;
}

/* Scripting
   ========================================================================== */

/**
 * Add the correct display in IE 9-.
 */

canvas {
  display: inline-block;
}

/**
 * Add the correct display in IE.
 */

template {
  display: none;
}

/* Hidden
   ========================================================================== */

/**
 * Add the correct display in IE 10-.
 */

[hidden] {
  display: none;
}
ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

img {
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}
html {
	font-size: 10px;
}
body {
	font-size: 1.4rem;
}
html, body {
	width: 100%;
	height: 100%;
	margin: 0px;
	padding: 0px;
	overflow: hidden;
	display: flex;
	font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Verdana, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.row::after {
	content: "";
	display: block;
	clear: both;
}

div[class*=wrapper] {
	height: 100%;
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}
div[class*=loader] {
	position: fixed;
	width: 180px;
	height: 180px;
	z-index: 1000;
}
#main-content {
	width: 100%;
}
.inview-fadeInUp {
	opacity: 0;
	-webkit-animation-duration: 500ms;
	animation-delay: 500ms;
}
.ani-delay {
	-webkit-animation-duration: 2s;
	animation-delay:2s;
}
.pc-none {
	display: none;
}

main {
	text-align: center;
	height: 100vh;
	width: 100%;
	transition: all .3s ease-in;
	position: absolute;
	box-sizing: border-box;
	top: 0;
	left: 0;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch
}
main .inner {
	display: table;
	height: 100vh;
	width: 100%;
}
main.activeNav {
	padding-left: 420px;
}

body.home main h1 {
	display: table-cell;
	vertical-align: middle;
}

.nav-trigger {
	display: none;
	position: fixed;
	z-index: 998;
	left: 0;
	top:0;
	height: 100vh;
	width: 50px;
	text-align: center;
}
/* nav */
nav {
	height: 100vh;
	background: #E6E6E6;
	transition: all .3s ease-in;
	margin-left: -420px;
	width: 420px;
	position: relative;
	z-index: 800;
	box-sizing: border-box;
	padding-left: 50px;
	text-align: center;
}
nav.on {
	margin-left: 0;
}
.hamburger-icon {
	position: relative;
	display: block;
}
.hamburger-icon,
.hamburger-icon::after,
.hamburger-icon::before {
	width: 9px;
	height: 1px;
	-webkit-transition: all .6s cubic-bezier(.19,1,.22,1);
	transition: all .6s cubic-bezier(.19,1,.22,1);
	background-color: #808080;
	margin: 0 auto;
}
.hamburger-icon {
	margin-bottom: 10px;
}
.hamburger-icon::after,
.hamburger-icon::before {
	position: absolute;
	top: -3px;
	left: 0;
	content: ' ';
}
.hamburger-icon::after {
	top: 3px;
	margin-bottom: 10px;
}
nav.on .hamburger-icon {
	background: transparent;
}
nav.on .hamburger-icon::before {
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}
nav.on .hamburger-icon::after {
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

nav.on .hamburger-icon::after,
nav.on .hamburger-icon::before {
	top: 0;
}
.nav-trigger  a {
	display: table-cell;
	width: 50px;
	vertical-align: middle;
	height: 100vh;
	transition: background .3s ease;
}
.nav-trigger  a img {
	vertical-align: middle;
}
nav.on .nav-trigger a {
	background: #F2F2F2;
}


nav .nav-content {
	width: 420px;
	display: table-cell;
	height: 100vh;
	position: relative;
}
nav .nav-content .nav-header {
	padding: 30% 0 50%;
}

nav .nav-content .nav-header img {
	vertical-align: middle;
}
nav .nav-content .nav-list {
	height: 40vh;
}
nav .nav-content .nav-list .pageNav  {
	margin-bottom: 40px;
}
nav .nav-content .nav-list .pageNav li {
	padding: 0;
	margin: : 15px;
}
nav .nav-content .nav-list .pageNav li a {
	position: relative;
	display: block;
	height: 30px;
	line-height: 30px;
	margin: 10px auto;
	width: 90px;
}
nav .nav-content .nav-list .pageNav li a img {
	vertical-align: middle;
}
nav .nav-content .nav-list .pageNav li a span {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0px;
	left: 0px;
	transition: top 200ms linear, opacity 200ms linear;
}
nav .nav-content .nav-list .pageNav li a span.button__text-hover {
	top: 20px;
	opacity: 0;
}
nav .nav-content .nav-list .pageNav li a:hover span.button__text-hover {
	top: 0;
	opacity: 1;

}
nav .nav-content .nav-list .pageNav li a:hover span.button__text {
	top: -20px;
	opacity: 0;
}

nav .nav-content .nav-list .snsNav li {
	display: inline-block;
	padding: 0 10px;
}

nav .nav-content .nav-footer {
	width: 100%;
	position: absolute;
	bottom: 0;
}
nav .nav-content .nav-footer  small {
	display: block;
	padding: 0 0 20px;
}
/* 
=======================
   Circle Preloader
=======================
*/
.second-wrapper {
	position: absolute;
	z-index: 998;
	background-color: #f2f2f2;
	left: 0;
	top: 0;
	transition: all 1.2s ease-in-out;
}
.first-wrapper {
	position: absolute;
	z-index: 999;
	background-color: #E6E6E6;
	left: 0;
	top: 0;
	transition: all 1.0s ease-in-out;
}
.circle-loader {
 position: relative;
}

.circle {
	border-radius: 50% 50% 50% 50%;
	position: absolute;
	border-top: 2px solid #999;
	border-bottom: 2px solid transparent;
	border-left:  2px solid #999;
	border-right: 2px solid transparent;
	animation: animate 2s infinite;	
}

.circle_one {
	left: 75px;
	top: 75px;
	width: 30px;
	height: 30px;
}
.circle_two {
	left: 65px;
	top: 65px;
	width: 50px;
	height: 50px;
  animation-delay: 0.2s;
}
		
.circle_three {
	left: 55px;
	top: 55px;
	width: 70px;
	height: 70px;
	animation-delay: 0.4s;
}

.circle_four {
	left: 45px;
	top: 45px;
	width: 90px;
	height: 90px;
  animation-delay: 0.6s;
}	

@keyframes animate {
  50% { transform: rotate(360deg) scale(0.8); }	
}

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

body.underlayer .site-name {
	margin: 0;
	padding: 30px 0;
}
body.underlayer .pageHeader {
	background: url(../images/contact_bg.jpg) no-repeat top center;
	background-size: cover;
}


.pageHeader .ancNav  li {
	padding: 0 20px;
	margin: 15px;
	display: inline-block;
}

.pageHeader .ancNav  li.ancNav-01 a { width: 182px }
.pageHeader .ancNav  li.ancNav-02 a { width: 142px }
.pageHeader .ancNav  li.ancNav-03 a { width: 188px }
.pageHeader .ancNav  li.ancNav-04 a { width: 169px }
.pageHeader .ancNav  li.ancNav-05 a { width: 60px }

.pageHeader .ancNav  li a {
	position: relative;
	display: block;
	height: 30px;
	line-height: 30px;
	margin: 10px auto;
}
.pageHeader .ancNav  li a img {
	vertical-align: middle;
}
.pageHeader .ancNav  li a span {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0px;
	left: 0px;
	transition: top 200ms linear, opacity 200ms linear;
}
.pageHeader .ancNav  li a span.button__text-hover {
	top: 20px;
	opacity: 0;
}
.pageHeader .ancNav  li a:hover span.button__text-hover {
	top: 0;
	opacity: 1;

}
.pageHeader .ancNav li a:hover span.button__text {
	top: -20px;
	opacity: 0;
}

/**
 * page - company
 */

body.company .row {
/*	width: 840px; */
	width: 450px;
	margin: 0 auto;
	padding: 200px 0 0;
}
body.company .row .left {
	box-sizing: border-box;
	width: 260px;
	float: left;
}
body.company .row .left h2 {
	margin-bottom: 40px;
}
body.company .row .left .desc {
	font-size: 1.3rem;
	line-height: 2.03;
	text-align: justify;
}

body.company .row .right {
	width: 440px;
	box-sizing: border-box;
	float: right;
	font-size: 1.259rem;
	text-align: left;
}
body.company .row .right h2 {
	margin-bottom: 50px;
	text-align: center;
} 

body.company .row .right dl {
	margin: 0 0 14px;
}
body.company .row .right dl:last-child {
	margin-top: 30px;
}
body.company .row .right dt {
	display: inline-block;
	min-width: 90px;
	float: left;
}
body.company .row .right dd {
	margin: 0;
	padding-left: 90px;
}
body.company .row .right ol {
	padding-left: 15px;
}
body.company .row .right ol li {
margin-bottom: 7px;
line-height: 1.7;

}
body.company .row .right .btn {
	padding: 30px 0 0;
}
body.company .row .right .btn a {
}

/**
 * page - contact
 */
body.contact .pageHeader {
	padding: 100px 0;
	margin: 0 0 100px;
}
body.contact .pageHeader h1 {
	margin: 0;
}

body.contact main h1 img {
	vertical-align: middle;
}

body.contact form {
	width: 520px;
	margin: 0 auto;
	padding-bottom: 150px;
}
body.contact form dl {
	background: #F2F2F2;
	border-radius: 8px;
	padding: 10px 20px;
}
body.contact form dt {
	text-align: left;
	margin: 0 0 10px;
	padding: 0;
}
body.contact form dd {
	text-align: left;
	margin: 0;
	padding: 0 0 5px;
}
body.contact form dd input,
body.contact form dd textarea {
	background: transparent;
	border: none;
	padding: 5px 0;
	width: 100%;
	color: #808080;
	box-sizing: border-box;
}
body.contact form dd textarea {
	height:  200px;
}
body.contact .btn {
	padding-top: 50px;
}

body.contact form dd input:focus,
body.contact form dd textarea:focus {
	background: #FAFAFA;
	box-shadow: 2px 2px 5px rgba(60,60,60, .1) inset;
}

/**
 * page - service
 */
body.service .pageHeader {
	padding: 84px 0 40px;
	margin: 0 0 100px;
}
body.service .pageHeader h1 {
	margin: 0 0 50px;
}
body.service .row {
	width: 900px;
	margin: 0 auto;
	padding: 90px 0 40px;
}
body.service .row.first {
	padding-top: 0;
}

body.service .row .left {
	float: left;
	width: 470px;
}
body.service .grey_bg .row {
	padding: 0;
}
body.service .grey_bg .row .left {
	width: 337px;
}
body.service .grey_bg .row .right {
	width: 550px;
	padding: 30px 10px 24px;
}
body.service .grey_bg .row .right .box{
	display: inline-block;
}
body.service .dm_ttl {
	margin: 0;
	position: relative;
}
body.service .dm_ttl img {
	position: absolute;
	top: -28px;
	left: 0;
}
body.service .row .right {
	float: right;
	width: 430px;
	text-align: left;
	box-sizing: border-box;
	padding-left: 46px;
}
body.service .row .right h2 {
	padding-top: 50px;
	margin-bottom: 30px;
}
body.service .row .right h3 {
	font-size: 1.4rem;
	margin-bottom: 40px;
	font-weight: normal;
}
body.service .row .right .desc {
	font-size: 1.3rem;
	line-height: 2.03;
}
body.service .row .right .txtlink {
	text-align: right;
}

body.service .grey_bg {
	background: #F2F2F2;
}

body.service .bx-wrapper .bx-controls-auto,
body.service .bx-wrapper .bx-pager {
	left: 0;
}

body.service .bx-wrapper {
	border: none;
	box-shadow: none;
}
body.service .bx-wrapper .bx-pager.bx-default-pager a.active,
body.service .bx-wrapper .bx-pager.bx-default-pager a:focus,
body.service .bx-wrapper .bx-pager.bx-default-pager a:hover {
	background: #999999;
}

body.service .bx-wrapper .bx-pager.bx-default-pager a {
	background: #E6E6E6;
	width: 6px;
	height: 6px;
	margin: 0 10px;
}
body.service .row iframe {
	border-radius: 8px;
}


/**
 * page - works
 */
body.works .pageHeader {
	padding: 84px 0 40px;
	margin: 0 0 100px;
}
body.works .pageHeader h1 {
	margin: 0 0 50px;
}
body.works .row {
	width: 900px;
	margin: 0 auto;
	padding: 0 0 40px;
}

body.works .row h2 {
	text-align: left;
	padding-bottom: 10px;
	border-bottom: #D3D3D3 solid 1px;
	margin-bottom: 56px;
}

body.works .row .works_box {
	width: 437px;
	float: left;
	padding-bottom: 35px;
}
body.works .row .works_box.wide {
	width: auto;
	float: none;
	padding-bottom: 35px;
}

body.works .row .works_box:nth-child( 2n+1 ) {
	margin-left: 25px;
}
body.works .row .works_box.wide:nth-child( 2n+1 ) {
	margin-left: 0;
}

body.works .row .works_box h3 {
	text-align: left;
	font-weight: normal;
	line-height: 1.6;
	font-size: 1.0rem;
	color: #4D4D4D;
	letter-spacing: 1.7px;
}


body.works .row .works_box figure {
	width: 435px;
	height: 375px;
	margin: 0;
	padding: 0;
	background: #fff;
	overflow: hidden;
}
body.works .row .works_box figure img {
	-webkit-transform: scale(1);
	transform: scale(1);
	-webkit-transition: .8s ease-in-out;
	transition: .8s ease-in-out;
}
body.works .row .works_box figure:hover img {
	-webkit-transform: scale(1.2);
	transform: scale(1.2);
}

body.works .row iframe {
}

body.works .inline-modal-window {
	padding: 28px;
}
body.works .inline-modal-window::after {
	clear: both;
	display: block;
	content: "";
}
body.works .inline-modal-window .modal-left {
	float: left;
	width: 480px;
	height: 412px;
	margin-right: 20px;
}
body.works .inline-modal-window .modal-left img {
	width: 480px;
}
body.works .inline-modal-window .modal-right {
	float: right;
	width: 390px;
} 
body.works .inline-modal-window .modal-right .thumb-list {
	min-height: 350px;
}
body.works .inline-modal-window .modal-right .thumb-list li {
	width: 123px;
	height: 106px;
	float: left;
	margin-right: 10px;
	margin-bottom: 10px;
}
body.works .inline-modal-window .modal-right .thumb-list li img {
	cursor: pointer;
}

body.works .inline-modal-window h3 {
	text-align: left;
	font-weight: normal;
	line-height: 1.6;
	font-size: 1.0rem;
	color: #4D4D4D;
	letter-spacing: 1.7px;
}

@media screen and (max-width: 767px) {
	.pc-none {
		display: block;
	}
	.sp-none {
		display: none;
	}
	body.underlayer .site-name {
		padding: 12px 0;
		position: fixed;
		width: 100%;
		background: #FFF;
		z-index: 700;
	}

	body.underlayer .pageHeader {
		background: url(../images/contact_bg_sp.jpg) no-repeat top center;
		background-size: cover;
	}

	div[class*=loader] {
		display: block;
		margin: 0 auto;
		position: relative;
	}

	main h1 {
		padding: 0 15%;
	}
	.nav-trigger {
		padding: 18px 10px 6px;
		height: auto;
		position: fixed;
		width: 100%;
		text-align: right;
		right: 0;
		top: 0;
		left: auto;
	}
	.nav-trigger a {
		display: inline-block;
		height: auto;
		width: auto;
	}
	.nav-trigger  a img {
		display: none;
	}
	.hamburger-icon {
		position: relative;
		display: block;
	}
	.hamburger-icon,
	.hamburger-icon::after,
	.hamburger-icon::before {
		width: 20px;
		height: 2px;
		-webkit-transition: all .6s cubic-bezier(.19,1,.22,1);
		transition: all .6s cubic-bezier(.19,1,.22,1);
		background-color: #808080;
		margin: 0 auto;
	}
	.hamburger-icon {
		margin-bottom: 10px;
	}
	.hamburger-icon::after,
	.hamburger-icon::before {
		position: absolute;
		top: -6px;
		left: 0;
		content: ' ';
	}
	.hamburger-icon::after {
		top: 6px;
		margin-bottom: 10px;
	}

	main.activeNav {
		padding-left: 0;
	}

	nav {
		margin-left: -100%;
		width: 100%;
		padding-left: 0;
	}
	nav.on .nav-trigger a {
		background: transparent;
	}
	nav .nav-content .nav-header {
		padding: 20%;
		height: auto;
	}
	nav .nav-content,
	nav .nav-content .nav-list {
		height: auto;
	}
	.nav-trigger a {
		height: auto;
	}
	main, 
	main .inner	{
		height: 100%;
	}

	nav {
		height: 980px;
	}

	nav .nav-content .nav-footer {
		width: 100%;
		position: static;
		bottom: 0;
	}
	nav .nav-content .nav-footer  small {
		display: block;
		padding: 60px 0 5px;
	}

	body.company .row {
		width: auto;
		padding: 30px 30px 0;
	}
	body.company .row .left {
		width: auto;
		float: none;
	}
	body.company .row .right {
		padding-top: 20px;
		width: auto;
		float: none;
		font-size: 1.1rem;
	}
	body.company .row .right h2 {
		text-align: center;
	}
	body.company .row .right dt {
		width: 80px;
	}
	body.company .row .right dd {
		padding-left: 80px;
	}

	body.contact .pageHeader {
		padding: 40px 0;
		margin: 40px 0 30px;
	}
	body.contact .row {
		padding: 0 30px;
	}
	body.contact form {
		width: 100%;
	}
	body.contact form .btn input {
		max-width: 100%;
	}

	body.service .row {
		width: auto;
		padding: 0;
	}
	body.service .pageHeader {
		padding: 40px 0;
		margin: 40px 0 0;
	}
	body.service .pageHeader h1 {
		margin: 0;
	}
	body.service .pageHeader h1 img {
		vertical-align: middle;
	}
	body.service .row .left {
		width: auto;
		float: none;
		padding: 0;
	}
	body.service .row .right {
		width: auto;
		float: none;
		padding: 0 25px 50px;
	}
	body.service .row .right h2 {
		text-align: center;
	}
	body.service .row .right h3 {
		text-align: center;
		font-size: 1.1rem;
	}
	body.service .grey_bg .row .left {
		width: auto;
		float: none;
		padding: 0;
	}
	body.service .grey_bg .row .right {
		font-size: 0;
		width: auto;
		float: none;
		padding: 0 0 40px;
		overflow: auto;
		margin-top: -70px;
	}
	body.service .grey_bg .row .right .box {
		width: 50%;
		box-sizing: border-box;
		padding: 12px;
		text-align: center;
		float: left;
	}
	body.service .grey_bg .row .right .box img {
		margin-right: -10px;
	}
	body.service .row iframe {
		max-width: 100%;
	}
	body.service .dm_ttl {
		margin: 0 auto;
		position: relative;
		overflow: hidden;
		z-index: -1;
	}
	body.service .dm_ttl img {
		position: static;
		margin-top: -55px;
	}

	body.works .row {
		width: auto;
		padding: 40px 0 0;
	}
	body.works .pageHeader {
		padding: 40px 0;
		margin: 40px 0 0;
	}
	body.works .pageHeader h1 {
		margin: 0;
	}
	body.works .pageHeader h1 img {
		vertical-align: middle;
	}
	body.works .row h2 {
		text-align: center;
		padding-bottom: 0;
		border-bottom: none;
		margin-bottom: 48px;
	}
	body.works .row .works_box {
		float: none;
		width: auto;
		box-sizing: border-box;
		padding: 0 30px;
		margin-bottom: 25px;
	}
	body.works .row .works_box:nth-child( 2n+1 ) {
		margin-left: 0;
	}

	body.works .row .works_box figure {
		width: auto;
		height: auto;
	}
	body.works .row .works_box iframe {
		max-width: 100%;
		height: auto;
	}

	body.works .inline-modal-window {
		padding: 0;
		width: 100%;
		border-bottom: solid 40px rgba(238,238,238,.99);
	}
	body.works .inline-modal-window .modal-left {
		float: none;
		width: auto;
		height: auto;
		margin-right: 0;
	}
	body.works .inline-modal-window .modal-left img {
		width: 100%;
		height: auto;
	}
	body.works .inline-modal-window .modal-right {
		float: none;
		width: auto;
		padding-bottom: 20px;
	} 
	body.works .inline-modal-window .modal-right .thumb-list {
		min-height: inherit;
		text-align: center;
		padding: 40px 0 20px;
	}
	body.works .inline-modal-window .modal-right .thumb-list li {
		width: 67px;
		height: auto;
		float: none;
		display: inline-block;
		margin-right: 4px;
		margin-bottom: 10px;
	}
	body.works .inline-modal-window .modal-right .thumb-list li img {
		cursor: pointer;
	}

	body.works .inline-modal-window h3 {
		text-align: center;
		line-height: 2;
		font-size: 1.0rem;
		letter-spacing: 1.7px;
	}
	#cboxClose {
		bottom: 0;
		right: 0;
		display: block;
		background: url(colorbox/images/modal-close_sp.png) no-repeat top center;
		background-size: 71px auto;
		width: 100%;
		height: 14px;
		text-indent: -9999px;
		top: inherit;
	}
}
