@charset "utf-8";

/* 幅769px以上のときのCSS */


body {
	/*border-top: solid 3px red!important;*/
	min-width: 1000px;
}

/* --------------------------------------------------------------------------------
	Site Styles
-------------------------------------------------------------------------------- */
#main {
	padding: 0 1em;
}

.units-row {
	width: 980px;
	margin: 0 auto;
}

.units-row.index {
	padding-top: 3em;
}

.units-row .units-row {
	width: auto;
}

#main, #aside {
	margin: 0;
}

#main {
	width: 720px;
	padding: 0;
}

#aside {
	width: 230px;
	padding-bottom: 3em;
}


/* header
--------------------------------------------------------------- */
#header .units-row {
	margin-top: 10px;
	margin-bottom: 10px;
	display: table;
}

#header .helper {
	width: 50%;
	display: table-cell;
	vertical-align: middle;
}

#header #logo {
	width: 50%;
	display: table-cell;
	vertical-align: middle;
	position: static;
}

#header #logo img {
	width: 95px;
	height: auto;
}

#logo .logo-img,
#logo .desc {
	line-height: 0;
	vertical-align: middle;
	display: table-cell;
	font-weight: normal;
	font-size: 90%;
	color: #888;
}

h1#logo {
	font-size: 100%;
}

#logo .logo-img {
	padding: 0 20px 0 0;
}

#sp-access {
	display: none;
}

/* visual
--------------------------------------------------------------- */
.visual.pc {
	width: 980px;
	margin: 0 auto;
	padding: 1em 0 2em 0;
	display: block;
	position: relative;
}

.visual.sp {
	display: none;
}

/* breadcrumbs
--------------------------------------------------------------- */
.breadcrumbs .units-row {
	padding: 0;
}

/* navigation
--------------------------------------------------------------- */
/* megamenu */
#g-nav {
	width: 980px;
	position: static!important;
}

#g-nav li {
	width: auto;
}

#g-nav li .txt {
	display: none;
}

/* responsive nav */
.js .nav-collapse {
	position: relative;
}
.js .nav-collapse.closed {
	max-height: none;
}
.nav-toggle {
	display: none;
}

/* offer
--------------------------------------------------------------- */
#offer {
	padding: 3em 1em 2em 1em;
}

#offer .btn-style01 img{
	width: 130px;
	height: auto;
}

/* footer
--------------------------------------------------------------- */
.pagetop {
	bottom: 0;
    cursor: pointer;
    position: fixed;
    right: 10px;
	z-index: 9999;
	background: none;
}

.pagetop img {
	display: block;
}

.pagetop .en {
	display: none;
}

.pagetop:after{
	border: none;
	content: '';
}

/* footer-sitemap */
#footer-sitemap {
	padding: 1em 0;
	background: #f6f6f6 url(../../shared/images/common/shadow_bottom.png) repeat-x left bottom;
}

#footer-sitemap p {
	width: auto;
	margin: 0 0 0.5em 0;
	border: none;
	text-align: left;
	float: none;
}

#footer-sitemap a {
	color: #222;
}

#footer-sitemap a i {
	display: inline-block;
}

#footer-sitemap a:hover,
#footer-sitemap #btn-inq a:hover {
	color: #0085cd;
}

#footer-sitemap ul {
	margin: 0 0 1.5em 0;
	display: block;
}

#footer-sitemap li {
	list-style: none;
	font-size: 85%;
}

#footer-sitemap #btn-inq {
	width: auto;
	padding: 0;
	font-size: inherit;
	float: none;
	border: none;
	background: none;
}

#footer-sitemap #btn-inq a {
	width: auto;
	padding: 0.5em 0;
	border: none;
	background: none;
	color: inherit;
}

#footer-sitemap #btn-inq a:hover {
	background: none;
}

#footer-sitemap .unit-20 {
	width: 14%;
}

/* footer-helper */
#footer-helper {
	padding-top: 1em;
	border-top: dotted 1px #c5c5c5;
	display: block;
}

#footer-helper ul {
	margin: 0;
}

#footer-helper li {
	font-size: 100%;
}

#footer-helper .helper li {
	padding: 0 0.5em 0 0.8em;
	border-left: solid 1px #c5c5c5;
}

#footer-helper .helper li:first-child {
	border: none;
}

/* footer-address */
#footer-address {
	padding: 1em 0;
	border-bottom: dotted 1px #c5c5c5;
	font-size: 100%;
}

#footer-address .unit-50 {
	width: 48.5%;
	float: left;
}

/* footer-copy */
#footer-copy {
	padding: 1em 0;
}

#footer-copy .copy {
	width: auto;
	text-align: right;
}

#footer-copy .unit-40 {
	margin-left: 0;
}

/* sns */
.sns-button {
	padding: 0 1em 0 0;
	float: left;
}
/* content
--------------------------------------------------------------- */
.cat-title {
	margin: 40px 0;
	padding: 0;
}

.card {
	margin: 0 0 2em 0;
	border: solid 1px #d5d5d5;
	-webkit-box-shadow: 0px 0px 4px #C0C0C0;
	-moz-box-shadow: 0px 0px 4px #C0C0C0;
	box-shadow: 0px 0px 4px #C0C0C0;
	background: #fff;
	overflow: hidden;
}

.unit-50 .card {
	margin: 0 0 2em 0;
}

.more {
	margin: 0;
	padding: 0.5em 1em;
	text-align: right;
	background: #f8f8f8;
	border-top: solid 1px #ccc;
}

.more a {
	color: #333;
}

.more a:hover {
	color: #0085cd;
}

/* aside
--------------------------------------------------------------- */
#s-nav {
	-webkit-box-shadow: 0px 0px 4px #C0C0C0;
	-moz-box-shadow: 0px 0px 4px #C0C0C0;
	box-shadow: 0px 0px 4px #C0C0C0;
}

#s-nav.no-children {
	display: block;
}

.side-banner {
	margin: 0;
}


/* --------------------------------------------------------------------------------
	Page Styles
-------------------------------------------------------------------------------- */


/* 制作実績
--------------------------------------------------------------- */
.case {
	height: 260px;
	overflow: hidden;
}

/* 制作実績下層 */
#contents-wrapper .units-row {
	padding-left: 0;
	padding-right: 0;
}

#contents-wrapper #main {
	padding-left: 1.5em;
	padding-right: 1.5em;
}

#contents-wrapper #main {
	width: 640px;
}

#contents-wrapper #aside {
	width: 240px;
}

#contents-wrapper {
	margin-bottom: 3em;
	padding: 30px 30px 10px 30px;
	-webkit-box-shadow: 0px 0px 4px #C0C0C0;
	-moz-box-shadow: 0px 0px 4px #C0C0C0;
	box-shadow: 0px 0px 4px #C0C0C0;
}

/* よくあるご質問
--------------------------------------------------------------- */
.parallel-group.units-row li {
	width: 23.5%;
	margin-left: 2%;
}

.parallel-group li a {
	font-size: 85%;
}

.parallel-group li a i {
	top: 45%;
}

.pagelink {
	padding-top: 80px;
	margin-bottom: -20px;
}

.pagelink#hp {
	margin-top: -70px;
}

/*　回答ページ */

.faq-answer {
	padding-top: 80px;
	margin-bottom: -60px;
}

.faq-answer:first-child {
	margin-top: -70px;
}

.faq-answer:last-child {
	margin-bottom: 0;
}



/* --------------------------------------------------------------------------------
	Utility
-------------------------------------------------------------------------------- */
/* button
-------------------------------------------------------------------------------- */
.btn-style01 {
	width: auto;
	min-width: 20em;
}

.btn-style03.hidden-sp {
	display: inline;
}

.pc-none {
 display: none;
}

/* --------------------------------------------------------------------------------
	Media Queries
-------------------------------------------------------------------------------- */

/* Larger than standard 960 (PC browsers) */
@media only screen and (min-width: 960px) {
}
/* Smaller than standard 960 (devices and browsers) */
@media only screen and (max-width: 959px) {
}

/* Tablet Portrait size to standard 960 (devices and browsers) */
@media only screen and (min-width: 768px) and (max-width: 959px) {
}
/* All Mobile Sizes (devices and browser) */
@media only screen and (max-width: 767px) {
}

/* Mobile Landscape Size to Tablet Portrait (devices and browsers) */
@media only screen and (min-width: 480px) and (max-width: 767px) {
}

/* Mobile Portrait Size to Mobile Landscape Size (devices and browsers) */
@media only screen and (max-width: 479px) {
}

/* --------------------------------------------------------------------------------
	Plugin Style
-------------------------------------------------------------------------------- */

/* waypoint (sticky) */
.sticky-wrapper {
	height: auto!important;
}
.sticky-element.stuck {
	position: fixed;
	top: 0;
	box-shadow: 0 2px 4px rgba(0, 0, 0, .3);
	width: 100%;
	z-index: 99999;
}

/* --------------------------------------------------------------------------------
	icon
-------------------------------------------------------------------------------- */
[class^="icon-"], [class*=" icon-"] {
	margin-right: 3px;
	vertical-align: middle;
	display: inline-block;
}

.icon-back {
	width: 18px;
	height: 18px;
	background: url(../../shared/images/icon/back.png) no-repeat left center;
}

/*blank.svg*/

.icon-blank {
	margin-left: 3px;
	width: 11px;
	height: 11px;
	background: url(../../shared/images/icon/blank.png) no-repeat left center;
}

/*faq.svg*/

.icon-faq {
	width: 16px;
	height: 16px;
	background: url(../../shared/images/icon/faq.png) no-repeat left center;
}

/*map.svg*/

.icon-map {
	width: 16px;
	height: 16px;
	background: url(../../shared/images/icon/map.png) no-repeat left center;
}

/*next.svg*/

.icon-next,
.slick-next {
	width: 25px;
	height: 25px;
	background: url(../../shared/images/icon/next.png) no-repeat left center;
	position: relative;
	top: -2px;
}

/*prev.svg*/

.icon-prev,
.slick-prev {
	width: 25px;
	height: 25px;
	background: url(../../shared/images/icon/prev.png) no-repeat left center;
	position: relative;
	top: -2px;
	border: solid 1px red;
}

/*portfolio.svg*/

.icon-portfolio {
	width: 19px;
	height: 19px;
	margin-right: 10px;
	background: url(../../shared/images/icon/portfolio.png) no-repeat left center;
	position: relative;
	top: -2px;
}

/*q.svg*/

.icon-q {
	width: 25px;
	height: 25px;
	margin-right: 10px;
	background: url(../../shared/images/icon/q.png) no-repeat left center;
}

/*a.svg*/

.icon-a {
	width: 25px;
	height: 25px;
	background: url(../../shared/images/icon/a.png) no-repeat left center;
}

/*arrowB.svg*/

.icon-arrowB {
	width: 5px;
	height: 5px;
	background: url(../../shared/images/icon/arrowB.png) no-repeat left center;
}

/*arrowR.svg*/

.icon-arrowR {
	width: 11px;
	height: 11px;
	background: url(../../shared/images/icon/arrowR.png) no-repeat left center;
}
.icon-arrowR-w {
	width: 11px;
	height: 11px;
	background: url(../../shared/images/icon/arrowR-white.png) no-repeat left center;
}

/*arrowSQ.svg*/

.icon-arrowSQ {
	width: 11px;
	height: 11px;
	background: url(../../shared/images/icon/arrowSQ.png) no-repeat left center;
	position: relative;
	top: -1px;
}


/* --------------------------------------------------------------------------------
	採用情報
-------------------------------------------------------------------------------- */
.indent {
	margin-left: 2em!important;
}

.star {
	color: #FF9600;
}

.forms .inline-select,
.forms .inline-label {
	margin: 0;
	display: inline-block;
	vertical-align: middle;
}

th.narrow,
td.narrow {
	padding-top: 0!important;
	padding-bottom: 0!important;
}

.narrow input[type="radio"] {
	top: 3px;
}

/* --------------------------------------------------------------------------------
	SWITCH
-------------------------------------------------------------------------------- */
.visible-pc {
	display: block;
}

.hidden-pc {
	display: none;
}

.hidden-sp {
	display: block;
}

/* --------------------------------------------------------------------------------
	「わたし」からアクション宣言
-------------------------------------------------------------------------------- */
.action-container {
	display: flex;
	justify-content: space-between;
}

.action-left {
	flex-basis: 25%;
	margin-left: 0;
	margin-right: 0;
}

.action-right {
	flex-basis: 70%;
}