@charset "utf-8";
html, body, div, span, applet, object, iframe,h1, h2, h3, h4, h5, h6, p, blockquote, pre,a, abbr, acronym, address, big, cite, code,del, dfn, em, img, ins, kbd, q, s, samp,small, strike, strong, sub, sup, tt, var,b, u, i, center,dl, dt, dd, ol, ul, li,fieldset, form, label, legend,table, caption, tbody, tfoot, thead, tr, th, td,article, aside, canvas, details, embed,figure, figcaption, footer, header, hgroup,menu, nav, output, ruby, section, summary,time, mark, audio, video {
margin: 0;padding: 0;border: 0;font-style:normal;font-weight: normal;font-size: 100%;vertical-align: baseline;}
body {font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", 'Hiragino Sans', 'Hiragino Kaku Gothic ProN', '游ゴシック Medium', Meiryo, sans-serif;
background: #fcfcfc;color: #222;letter-spacing: .1em;font-feature-settings: "palt" 1;font-kerning: auto;-webkit-font-smoothing: antialiased;position: relative;}
html {font-size: 62.5%;}
ul {list-style: none;}
a:link ,a:visited {color: #222;text-decoration: none;}
img {width: 100%;vertical-align: bottom;}
/* 管理画面 */
#loginUserStatus img {width: 20px;}
body div#adminBox.acms-admin-box {position: fixed;bottom: 0;left: 0;z-index: 2000;width: 100%;margin: 0;padding: 10px 10px 2px;}
#loginUserStatus {float: left;padding: 0 10px 0 0;}
.lite-editor-btn-group-wrap {padding: 0;}
.entryFormLiteEditor {font-size: 1.6em;}

header {position: fixed;width: 100%;height: 80px; top: 0;left: 0;z-index: 1000;background: #fcfcfc;}
header h1 {width: 550px;padding: 15px 0;height: 50px;}
header h1 svg {width: 285px;height: 42px;padding: 10px 0 0;}
header h1 span {display: inline-block;padding: 16px 20px 0;font-size: 1.4em;vertical-align: top;letter-spacing: 0;}
header nav {position: absolute;right: 0;top: 0;height: 80px;}
header nav svg {height: 12px;}
header nav li.service svg {width: 67px;}
header nav li.blog svg {width: 43px;}
header nav li.recruit svg {width: 69px;}
header nav li.company svg {width: 81px;}
header nav li.contact svg {width: 77px;}
header nav span {width: 100%;display: block;margin: 2px 0 0;}
header nav ul {padding: 27px 0;overflow: hidden;}
header nav li {
	text-align: center;float: left;position: relative;
	display: inline-block;margin: 0 0 0 30px;
}
header nav li a {display: block;position: relative;z-index: 10;}
header nav li:after {
	content: " ";width: 38px;height: 95px;background: url(../img/icon/on.svg) no-repeat;transition: all .2s;
	position: absolute;right: -100%;left: -100%;bottom: -100%;top: -100%;margin: auto;opacity: 0;
}
header nav li:hover:after {opacity: 1;transition: all .2s;}
header nav ul.service li.service:after ,
header nav ul.blog li.blog:after ,
header nav ul.recruit li.recruit:after ,
header nav ul.company li.company:after ,
header nav ul.contact li.contact:after {opacity: 1;}
footer {
	border-top: solid 1px #ddd;
	margin: 90px 0 0;padding: 90px 0 150px;position: relative;
}
footer .box {width: 300px;float: left;}
footer .center {margin: 0 190px;}
footer address {
	line-height: 1.3;font-size:1.2em;box-sizing: border-box;
	position: absolute;bottom: 0;left: 0;background: #f4f4f4;
	width: 100%;height: 90px;padding: 40px 260px;text-align: center;
}
footer address ul {width: 1180px;margin: 0 auto;text-align: center;}
footer address ul li {display: inline-block;margin: 0 60px 0 0;}
footer address ul li:after {display: none;}
footer address span {display: block;margin:1em 0;}
footer p {font-size: 1.4em;line-height: 2;}
footer p a:link ,
footer p a:visited {color: #FF458B;text-decoration: underline;}
footer small {
	background: #333;padding: 40px;display: inline-block;height: 90px;box-sizing: border-box;
	color: #fff;font-size: 1.1em;line-height: 1;
	position: absolute;bottom: 0;left: 0;z-index: 10;
}
footer ul li span {
	font-size: 1.6em;line-height: 1;padding: .3em 0;
	display: block;border-bottom: solid 1px #666;
}
footer ul li {margin: 0 0 40px;position: relative;}
footer ul li:after {
	content: " ";width: 12px;height: 12px;position:absolute;right: 0;top: 7px;
	background: url(../img/icon/arrow.svg) no-repeat;background-size: 100%;opacity: .6;
}
footer ul li li:after {top: 4px;opacity: .2;}
footer ul li ul {margin: 20px 0 40px 20px;}
footer ul li li {margin: 0 0 15px;}
footer ul li li span {font-size: 1.2rem;border: none;}

main {margin: 160px 0 0;display: block;}
main#top {margin: 80px 0 0;}
.wrap {width: 1280px;margin: 0 auto;overflow: hidden;position: relative;}
.listBox {width: 1300px;margin: 0 auto;overflow: hidden;position: relative;}
.more {text-align: center;margin: 40px 0;}
.more a {
	display: inline-block;background: #333;padding: .8em 3em;
	color: #fcfcfc;font-size: 1.6em;line-height: 1;border-radius: 5px;
}
.more.big {position: absolute;bottom: 0;width: 360px;left: -100%;right: -100%;margin: 0 auto;}
main#contact .more.big {position: static;margin: 100px auto 0;}
.more.big a {padding: 2.1em 8em 2em;border-radius: 1px;position: relative;}
main#contact .more.big a {padding: 2.1em 0 2em;width: 100%;}
.more.big a:after {
	content: "";position: absolute;width: 100%;height: 100%;top: 0;left: 0;box-sizing: border-box;
	border: solid 1px #FF458B;transform: translate3d(-5px,-5px,0);transition: all .2s;
}
.more.big a:hover:after {transform: translate3d(0,0,0);transition: all .2s;}
.more a svg {
	display: block;width: 102px;height: 15px;vertical-align: top;
}
section.list {width: 940px;float: left;}
section.list article {overflow: hidden;padding: 20px 0 20px 10px;border-bottom: solid 1px #ddd;position: relative;}
section.list article:first-child {padding: 0 0 20px 10px;}
section.list article img {width: 200px;float: left;}
section.list article .text {width: 700px;float: left;margin: 0 0 0 20px;}
section.list article h2 {font-size: 2.6em;line-height: 1.4;margin: 5px 0 0;}
section.list article:first-child span.new {
	position: absolute;top: 8px;left: 0;background: #FF458B;
	display: inline-block;border: solid 2px #fcfcfc;
	color: #fcfcfc;font-size: 1.5em;font-weight: 700;padding: .3em .4em;letter-spacing: 0;
}
section.list article span.new {
	position: absolute;top: 28px;left: 0;background: #FF458B;
	display: inline-block;border: solid 2px #fcfcfc;
	color: #fcfcfc;font-size: 1.5em;font-weight: 700;padding: .3em .4em;letter-spacing: 0;
}
section.list article time ,
section.list article span {font-size: 1.2em;line-height: 1;}
section.list article span.cate {
	background: #333;display: inline-block;padding: .5em 1em .4em;margin: 0 1em 0 0;
	color: #fcfcfc;
}
section.list article p.tag {
	position: absolute;bottom: 20px;left: 220px;
}
section.list article p.tag span {
	background: #F2EBC2;display: inline-block;padding: .5em 1em;
	color: #887525;border-radius: 5px;margin: 0 10px 0 0;
}

section.lead .wrap {
	background: url(../img/back/top@2x.jpg?2) no-repeat;background-position: top;
	background-size: 100%;padding:600px 0 0;
}
section.lead .wrap svg {
	width: 480px;height: 195px;position: absolute;top: 250px;left: -100%;right: -100%;
	margin: 0 auto;
}
section.lead .text {padding: 100px 0;overflow: hidden;}
section.lead .wrap p {
	width: 700px;float: left;margin: 0 0 0 100px;
	font-size: 1.6em;line-height: 2.5;
}
section.lead .wrap p strong {font-weight: 700;}
section.lead .wrap h1{width: 440px;float: left;position: relative;padding: 0 20px}
section.lead .wrap h1 img{position: relative;z-index: 10;}
section.lead .wrap h1:after{
	content: "";width: 100%;height: 50px;background: #eee;
	position: absolute;bottom: 20px;left: 0;
}
main#index p.kind {
	background: #333;padding: 1.6em;
	color: #fcfcfc;font-size: 1.6em;line-height: 1;
}
main#index p.kind span {display: inline-block;padding: 0 .5em;}
main#index p.kind span.tag:before {content: "#";}

section.award {background: #F2EBC2;padding: 60px 0;margin: 0 0 100px;}
section.award .wrap {width: 740px;height: 170px;background: url(../img/back/award@2x.png) no-repeat top;background-size: 100%;}
section.award:hover p {background: #B29D20;color: #fcfcfc;transition: all .2s;}
section.award p {
	background: #fcfcfc;display: inline-block;border-radius: 5px;margin: 118px 0 0;
	font-size: 1.5em;color: #B29D20;padding: 1em;transition: all .2s;
}
.aside {width: 300px;float: left;margin: 0 0 0 40px;}
.aside h2 {
	color: #fcfcfc;font-size: 1.4em;text-align: center;line-height: 1;font-weight: 700;
	background: #333;border-radius: 5px;padding: 1em;margin: 0 0 20px;
}
.aside ul ,.aside ol ,.aside a.link {list-style: none;margin: 0 0 50px;display: block;}

.aside ul.cateList li span {
	font-size: 1.4em;line-height: 1;border-bottom: solid 1px #ddd;
	padding: 1em 0;margin: 0 0 0 3em;display: block;
}
.aside ul.cateList li {position: relative;}
.aside ul.cateList li:after {
	content: " ";width: 8px;height: 12px;position: absolute;top: 1.7em;right: 0;
	background: url(../img/icon/arrow.svg) no-repeat;background-size: 100%;
}
.aside ul.cateList li svg {width: 10px;height: 10px;position: absolute;top: 1.6em;left: 1.5em;fill: #bbb;transition: all .2s;}
.aside ul.cateList li:hover svg {fill: #FF458B;transition: all .2s;}
.aside ul.cateList.blog li.blog svg ,
.aside ul.cateList.works li.works svg ,
.aside ul.cateList.media li.media svg ,
.aside ul.cateList.news li.news svg {fill: #FF458B;transition: all .2s;}

.aside ul.pickupList h2 {background: #9F720D;}
.aside ul.pickupList li ,
.aside ol li {overflow: hidden;margin: 0 0 20px;position: relative;}
.aside ul.pickupList li img ,
.aside ol li img {float: left;width: 90px;}
.aside ul.pickupList li h3 ,
.aside ol li h3 {
	font-size: 1.3em;font-weight: 700;line-height: 1.3;
	float: left;width: 200px;margin: 0 0 0 10px;
}
.aside ul.pickupList li span ,
.aside ol li span {
	color: #666;display: inline-block;padding: 0 0 3px 10px;
}
.aside ol {counter-reset: ranking_count;}
.aside ol li:before {
	display: inline-block;box-sizing: border-box;border: solid 2px #fcfcfc;
	width: 2em;height: 2em;padding: .4em 0;position: absolute;left: -2px;top: -2px;
	font-size: 1.3em;color: #fff;font-weight: 700;text-align:center;line-height: 1;letter-spacing: 0;
	background-color: #FF458B;
	counter-increment: ranking_count;content: counter(ranking_count);
}
.pagerBox {text-align: center;margin: 70px 0 0;}
.pagerBox.top {margin: 40px 0 20px;}
.pagerBox ul {display: inline-block;}
.pagerBox ul li {display: inline-block;width: 40px;height: 40px;border-right: solid 2px #fcfcfc;overflow: hidden;}
.pagerBox ul li span {
	font-size: 1.6em;line-height: 1;font-weight: 700;color: #333;
	background: #ddd;display: block;padding: 1.2rem 0;
}
.pagerBox ul li a span {background: #333;color: #fcfcfc;}

main#service section.box {padding: 0 0 40px;position: relative;overflow: hidden;margin: 0 0 200px;}
main#service .box .text {width: 500px;float: left;}
main#service .box img {width: 700px;float: right;}
main#service .box.even .text {float: right;}
main#service .box.even img {float: left;}
main#service .box h1 {
	width: 375px;position: relative;padding: 70px 0 0;
	background: url(../img/service/creative_back@2x.png) no-repeat top;background-size: 100%;
}
main#service .box.media h1 {
	width: 292px;
	background: url(../img/service/media_back@2x.png) no-repeat top;background-size: 100%;}
	main#service .box.other h1 {
	width: 309px;
	background: url(../img/service/other_back@2x.png) no-repeat top;background-size: 100%;}
main#service .box h1 svg {height: 42px;padding: 0 20px;}
main#service .box h1 span {
	font-size: 1.5em;font-weight: 700;
	display: block;margin: 30px 0 35px;
}
main#service .box p {
	text-indent: 1em;font-size: 1.5em;line-height: 2;
}
main#service .box p strong {font-weight: 700;display: block;}
main#service section.client h1 {
	width: 320px;padding: 0 50px 20px;box-sizing: border-box;margin: 0 auto;position: relative;
}
main#service section.client h1 svg {position: relative;z-index: 10;}
main#service section.client h1:after {
	content: "";width: 100%;height: 40px;bottom: 0;left: 0;position: absolute;
	background: #f4f4f4;
}
main#service section.client ul {overflow: hidden;width: 960px;margin: 80px auto;}
main#service section.client ul li {
	width: 300px;height: 60px;text-align: center;font-size: 1.5em;line-height: 1;
	background: #eee;padding: 23px 0;float: left;margin: 0 30px 30px 0;box-sizing: border-box;
}
main#service section.client ul li:nth-child(3n) {margin: 0 0 30px;}

main#service section.second {margin: 0 0 100px;}
main#service section.second h1 {text-align: center;font-size: 3em;font-weight: 700;margin: 0 0 50px;}
main#service section.second h1 svg {height: 30px;position: relative;bottom: -5px;padding: 0 1rem;}
main#service section.second ul {width: 600px;margin: 0 auto;}
main#service section.second ul li {position: relative;display: inline-block;margin: 0 0 1em;}
main#service section.second.mini ul li {position: relative;display: inline-block;margin: 0 200px 1em 0;}
main#service section.second ul li span {position: relative;z-index: 10;font-size: 1.5em;display: inline-block;padding: .3em .5em;}
main#service section.second ul li:after {
	content: "";width: 100%;height: 1em;background: #FCDBE8;
	position: absolute;bottom: 0;left: 0;
}

main#service section.thaad {position: relative;width: 100%;padding: 120px 0 0;}
main#service section.thaad img {position: absolute;width: 680px;border-radius: 5px;top: 0;}
main#service section.thaad .text {
	position: relative;width: 730px;top: 0;left: 550px;border-radius: 5px;
	background: #fcfcfc;box-sizing: border-box;padding: 50px 0 50px 60px;
}
main#service section.thaad .text h1 {font-size: 3em;line-height: 1.5;font-weight: 700;margin: 0 0 25px;}
main#service section.thaad .text p {font-size: 1.5em;line-height: 2.6;text-indent: 1em;}

main#service section.flow h1 {position: relative;}
main#service section.flow h1 svg {width: 110px;position: relative;background: #fcfcfc;padding: 0 30px 0 0;}
main#service section.flow h1:before {
	content: "";position: absolute;top: 15px;left: 0;
	height: 1px;width: 100%;background: #333;
}
main#service section.flow ol {overflow: hidden;margin: 60px 0;list-style: none;}
main#service section.flow ol li {
	float: left;width: 300px;box-sizing: border-box;height: 300px;
	padding: 40px 30px;background: #F4F4F4;margin: 0 10px 20px;
}
main#service section.flow ol h2 {font-size: 1.8em;font-weight: 700;margin: 0 0 10px;}
main#service section.flow ol p {font-size: 1.4em;line-height: 1.57;text-indent: 1em;}
main#service section.flow ol p a {color: #FF458B;}

main#recruit h1 ,main#company h1 {display: inline-block;position: relative;padding: 0 0 20px;margin: 0 0 50px;}
main#recruit h1 svg ,main#company h1 svg {height: 41px;padding: 0 20px;position: relative;z-index: 10;}
main#recruit h1:after ,main#company h1:after {
	content: "";width: 100%;height: 38px;background: #eee;
	position: absolute;bottom: 0;left: 0;
}
main#company {position: relative;}
main#company h1 {position: absolute;top: 300px;}
main#company img {margin: 0 auto;width: 940px;display: block;}
main#company .box {margin: 100px auto;width: 940px;overflow: hidden;}
main#company .box dl {width: 360px;float: left;}
main#company .box dl div {overflow: hidden;font-size: 1.5em;margin: 0 0 30px;line-height: 2;}
main#company .box dl dt {width: 100px;float: left;text-align: right;font-weight: 700;}
main#company .box dl dd {width: 230px;float: right;}
main#company .box dl dd span {color: #999;}
main#company .box .map {width: 400px;margin: 0 0 0 180px}

main#contact section {width: 900px;margin: 0 auto;}
main#contact h1 {text-align: center;font-size: 1.8em;font-weight: 700;padding: 0 0 40px;}
main#contact .box {
	border: solid 1px #eee;text-align: center;font-size: 1.5em;line-height: 1;
	padding: 80px 0 60px;margin: 0 0 40px;
}
main#contact .box strong {font-weight: 700;font-size: 2em;display: block;margin: 20px 0;}
main#contact .box span {font-size: 1.2rem;color: #999;display: block;}
main#contact p.error {
	text-align: center;font-size: 1.4em;line-height: 1;padding: 1em 0;color: #C12B2B;
	background: #FFF5F5;border: solid 1px #DEA0A0;margin: 0 240px 40px;
}
main#contact dl {padding: 140px;background: #f4f4f4;}
main#contact dl div {overflow: hidden;margin: 0 0 40px;}
main#contact dl dt {
	width: 170px;float: left;
	font-size: 1.5em;font-weight: 700;line-height: 1;
}
main#contact dl dt span {
	font-size: 1rem;color: #fff;font-weight: 700;text-align: center;
	background: #bbb;padding: .5em;width: 5em;margin: 8px 0 0;
	display: block;border-radius: 3px;
}
main#contact dl dt span.required {background: #C12B2B;}
main#contact dl dd {width: 400px;float: left;position: relative;padding: 0 50px 0 0;}
main#contact dl input[type="text"] ,
main#contact dl textarea ,
main#contact .conf dl dd span {width: 400px;font-size: 1.6em;padding: 1em;border: solid 1px #ddd;border-radius: 3px;background: #fcfcfc;display: block;box-sizing: border-box;}
main#contact form.rt dl dd:after {
	content: "";width: 18px;height: 18px;position: absolute;top: 18px;right: 0;z-index: 10;
	background: url(../img/icon/check.svg) no-repeat;background-size: 100%;
}
main#contact dl dd.required:after {display: none;}
main#contact dl dd.required input[type="text"] ,
main#contact dl dd.required textarea {background: #FFF5F5;border: solid 1px #DEA0A0;}
main#contact #submit {
	text-align: center;margin: 40px 0 0;
}
main#contact input[type="submit"] {
	background: #333;color: #fcfcfc;font-size: 1.8em;line-height: 1;
	border: none;padding: 1.8em 3em;display: inline-block;
}
main#contact form.re input[type="submit"] {
	margin: 0 0 20px;background: #aaa;
}
section.thanks article {
	width: 600px;box-sizing: border-box;margin: 100px auto;
	background: #f7f7f7;border: solid 1px #ddd;border-radius: 3px;
	font-size: 1.4em;color: #333;text-align: center;padding: 40px;
}
section.thanks article p.address {
	text-align: center;margin: 20px 0;
}
section.thanks article p.address span {
	display: inline-block;background: #fcfcfc;padding: 1em 2em;border-radius: 5px;
}
section.notfound {height: 720px;
	background: url(../img/back/notfound@2x.jpg) no-repeat;background-size: cover;
}
section.notfound .wrap {height: 720px;}
section.notfound svg {
	position: absolute;top: -100%;bottom: -100%;margin: auto 0;
	width: 384px;height: 244px;right: 12%;
}






