@charset "utf-8";

/* ---------- basic ---------------------------------------- */
h1, h2, h3, h4, h5, h6 {}
p {
	font-size: 14px;
	margin-bottom: 1em;
	line-height: 180%;
}
p.kome {
	text-indent: -1em;
	padding-left: 1em;
}
span.kome {
	display: block;
	text-indent: -1em;
	padding-left: 1em;
}
p.cmnt {font-size: 13px;}
p.caption {font-size: 13px; text-align:center; }

ul li, ol li {	font-size: 14px;	list-style-type: none;}
ul li ul,
ul li ol,
ol li ol,
ol li ul {font-size: 14px;}
ul li ul li,
ul li ol li,
ol li ol li,
ol li ul li {	font-size: 14px;}
dl {}
dl dt, dl dd {	font-size: 14px;}
dl dt {} 
dl dd {}
table {}
table th, table td {
}
table th {	font-weight: bold;}
table td {}


table.outline {
	width: 840px;
	margin: 0 auto 30px;
	border-spacing: 0px;
}
table.outline th {
	background-color: #EEEEEE;
	border-bottom: solid 1px #FFF;
	width: 210px;
	color: #414141;
	font-weight: bold;
	vertical-align: top;
}
table.outline td {border-bottom: solid 1px #D3D3D3;}
table.outline.outline2 td {	border-top: solid 1px #D3D3D3;}


table.outline th ,
table.outline td {
	padding: 15px 20px;
	line-height: 180%;
}
table.outline td ul { margin-left: 1em;}
table.outline td ul li {
	list-style-type: disc;
	font-size: 14px;
	line-height: 180%;
}




/* ---------- 全ページ共通 --------------- */

/* page-visual */
#page-visual {margin-top: 40px;}
#page-visual .photo {
	position: relative;
	overflow: hidden;
	height: 320px;
}
#page-visual .photo img {
	min-width: 1200px;
	width: 100%;
	height: auto;
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;	
}
.page-menu {
  display: table;
  table-layout: fixed;
  text-align: center;
  width: 100%;
}
.page-menu .btn {
	background-color: #EEEEEE;
	text-align: center;
  display: table-cell;
  vertical-align: middle;
}
.page-menu .btn.abou { border-right: solid 1px #FFF;}
.page-menu .btn.plan { background-color: #E8EFF2;}
.page-menu .btn.conv {
	background-color: #E6F4ED;
	border-left: solid 1px #FFF;
	border-right: solid 1px #FFF;
}
.page-menu .btn.tran { background-color: #F8EFED;}

.page-menu .btn.select {
	background-color: #FFF;
}

.page-menu .btn a {
	display: block;
	padding: 15px 0;
}
.page-menu .btn.select a {pointer-events: none;}

.page-menu .btn p {
	display: inline-block;
	margin-bottom: 0;
	font-size: 15px;
	text-align: left;
	line-height: 130%;
	background-position: left center;
	background-repeat: no-repeat;
	padding: 10px 0 10px 70px;
}
/**/
.page-menu .btn.abou p { background-image: url(../images/ic_history.png);}
.page-menu .btn.prof p { background-image: url(../images/ic_profile.png);}
.page-menu .btn.plan p { background-image: url(../images/ic_planning.png);}
.page-menu .btn.conv p { background-image: url(../images/ic_convention.png);}
.page-menu .btn.tran p { background-image: url(../images/ic_translation.png);}


.page-menu .btn a p span {
	display: block;
	font-size: 12px;
}


/* page-ttl */
#page-ttl {
	text-align: center;
	font-size: 32px;
	font-weight: 400;
	line-height: 100%;
	border-bottom: solid 1px #616161;
	padding-bottom: 22px;
	display: table;
	margin: 0 auto 70px;
}
#page-ttl .jp {}
#page-ttl .en {
	display: block;
	font-size: 16px;
}

/* catchcopy */
.catchcopy {
	font-size: 24px;
	text-align: center;
	line-height: 180%;
	margin-bottom: 30px;
}

/* sub-catch */
.sub-catch {
	text-align: center;
	line-height: 200%;
	margin-bottom: 100px;
}

/* area-ttl */
.area-ttl {
	font-size: 13px;
	letter-spacing: 0.07em;
	position: relative;
	text-align: center;
	margin-bottom: 45px;
}
.area-ttl .en {
	font-size: 28px;
}
.area-ttl:before {
	border-top: 1px solid #616161;
	content: "";
	position: absolute;
	top: 30%;
	left: 0;
	width: 100%;
}
.area-ttl span {
	background-color: white;
	display: inline-block;
	padding: 0 15px; /*ラインとテキストの間を調整*/
	position: relative; /*水平ラインが突き抜けないように*/
}

/* detail */
.detail {
	display: inline-block;
}
.detail a {
	color: #000;
	font-size: 14px;
	padding-bottom: 3px;
	border-bottom: solid 1px #616161;
}

/* back-btn */
.back-btn {
	background-color: #EEEEEE;
	text-align: center;
	display: table;
	margin: 0 auto;
}
.back-btn a {
	position: relative;
	display: block;
	color: #000;
	font-size: 14px;
	border: solid 1px #616161;
	padding: 12px 87px;
	margin: 5px;
}
.back-btn a:after {
	content: '〉';
	position: absolute;
	top: 12px;
	right: 10px;
	font-size: 12px;
	font-weight: 500;
}


/* item-list-menu */
.item-list-menu {}
.item-list-menu li {
	font-size: 12px;
	border-bottom: solid 1px #616161;
	display: inline-block;
	margin: 0 5px;
	line-height: 130%;
	-webkit-transition: 0.3s ease-in-out;  
	transition: 0.3s ease-in-out;  
}
.item-list-menu li:hover {	border-bottom: none;}
.item-list-menu li a {
	color: #000;
	padding-bottom: 2px;
	display: block;
	-webkit-transition: 0.3s ease-in-out;  
	transition: 0.3s ease-in-out;  
}
.item-list-menu li a:hover {
	color: #757575;
}



/* ---------- home ---------------------------------------- */

#service {}
.top .area-ttl {
	width: 960px;
	margin: 0 auto 45px;
}
#service .service-list {
  text-align: center;
  width: 100%;
	margin-bottom: 40px;
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: -moz-flex;
	display: flex;
	-webkit-box-lines: multiple;
	-moz-box-lines: multiple;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}
#service .service-list .block {
	width: 20%;
	float: left;
}
/**/
#service .service-list .block.plan { background-color: #E8EFF2;}
#service .service-list .block.conv { background-color: #E6F4ED;}
#service .service-list .block.tran { background-color: #F8EFED;}

#service .service-list .block:nth-child(3),
#service .service-list .block:nth-child(7) { display: none;}

#service .service-list .block a {
	display: block;
	height: 100%;
}
#service .service-list .block .ttl {
  position: relative;
  top: 50%;
  -webkit-transform: translateY(-50%); /* Safari用 */
  transform: translateY(-50%);
	background-image: url(../images/ic_down.png);
	background-repeat: no-repeat;
	background-position: bottom center;
	padding-bottom: 20px;
}

#service .service-list .block img {}
#service .service-list .block h4 {
	font-size: 20px;
	padding-top: 10px;
	line-height: 110%;
}
#service .service-list .block h4 span {
	font-size: 13px;
	display: block;
}



#service .service-list .photo img {
	width: 100%;
	height: auto;
}
#service .back-btn { margin-bottom: 70px;}

.top #magazine { margin-bottom: 120px;}
.top #magazine .top-txt { text-align: center;}
.top #magazine .ctgr-menu { margin: 30px auto 50px;}
.top #magazine .work-list {
	max-width: 1270px;
	overflow: hidden;
	margin: auto;
}
.top #magazine .work-list .block {
	box-sizing: border-box;
	position: relative;
	display: inline-block;
	margin: 0 1.6% 35px;
	float: none;
	width: 30%;
}

.top #magazine .work-list .block:nth-child(3n) {
	clear: both;
	margin-right: 1%;
}
.top #magazine .work-list .block img {
	width: 100%;
	height: auto;
}


/* news */
.top .news-ticker.area {
	overflow: hidden;
	box-sizing: border-box;
	position: relative;
	min-height: 60px;
	padding: 15px 10px 15px 5px;
	margin: 0 auto 75px !important;
	border-top: solid 1px #616161;
	border-bottom: solid 1px #616161;
}
.top .news-ticker h3 {
	float: left;
	font-size: 16px;
	font-weight: 300;
	line-height: 150%;
	padding: 5px 25px;
}
.top .news-ticker .ticker {
	border-left: solid 1px #616161;
	padding-top: 5px;
	padding-left: 20px;
	margin-right: 120px;
	position: relative;
	overflow: hidden;
	padding-bottom: 5px;
}
.top .news-ticker .ticker ul {
	width: 100%;
	position: relative;
}

.top .news-ticker .ticker ul li a {
	color: #000;
	font-size: 13px;
	line-height: 150%;
	letter-spacing: 0.1em;
	display: block;
	-webkit-transition: 0.3s ease-in-out;  
	transition: 0.3s ease-in-out;  
}
.top .news-ticker .ticker ul li a:hover {
	color: #757575;
}

.top .news-ticker .ticker ul li a span {
	font-family: "Roboto";
	font-size: 14px;
	font-weight: 300;
	font-style: italic;
	margin-right: 10px;
	color: #606060;
}


/* ticker */
.ticker {
	position: relative;
	overflow: hidden;
}
.ticker ul {
	width: 100%;
	position: relative;
}
.ticker ul li {
	width: 100%;
	display: none;
}

.top .news-ticker .more-button {
	position: absolute;
	top: 21px;
	right: 25px;
	background-color: #FFF;
	text-align: center;
}
.top .news-ticker .more-button a {
	line-height: 20px;
	font-size: 13px;
	font-weight: 400;
	color: #000;
	display: block;
	-webkit-transition: 0.3s ease-in-out;  
	transition: 0.3s ease-in-out;  
}
.top .news-ticker .more-button a:hover {
	color: #757575;
}

.top .news-ticker .more-button a:before {
	content: '〉';
	font-size: 13px;
	font-weight: 400;
}


/* ---------- news ---------------------------------------- */

.news .news-list {}
.news .news-list ul {}
.news .news-list ul li {
	border-bottom: solid 1px #AAA;
}
.news .news-list ul li a:after {
	content: '〉';
	position: absolute;
	top: -10px;
	bottom: 0;
	right: 0;
	width: 5px;
	height: 12px;
	margin: auto;
	font-size: 15px;
}

.news .news-list ul li a {
	position: relative;
	padding: 20px 0;
	display: block;
	font-size: 16px;
	color: #000;
}
.news .news-list ul li a:hover {
	background-color: #F2F2F2;
}

.news .news-list ul li .en {
	font-size: 13px;
	line-height: 200%;
	color: #606060;
	font-style: italic;
	margin-right: 60px;
	float: left;
}
.news .news-list ul li .ttl {
	display: table;
	padding-right: 50px;
}

.news #contents .wp-pagenavi { padding-top: 0;}


/* ---------- service ---------------------------------------- */
.serv #main-plan { margin-bottom: 80px;}
.serv #main-plan .block {
	float: left;
	width: 460px;
	text-align: center;
	margin-bottom: 60px;
}
.serv #main-plan .block.left {margin-right: 40px;}
.serv #main-plan .block img {}
.serv #main-plan .block h3 {
	font-size: 20px;
	padding: 20px 0 15px;
}
.serv #main-plan .block h3 span {
	display: block;
	font-size: 13px;
}
.serv #main-plan .block .btn {}

.serv #unique-venue .inner {
	background-color: #E8EFF2;
	border: 1px solid #AAAAAA;
  position: relative;
  width: 960px;
  margin: 0 auto;
}
.serv #unique-venue .inner:before {
	background-color: #E8EFF2;
	position: absolute;
	content: "";
	width: 100%;
	min-height: 100%;
	top: -7px;
	left: -7px;
	padding-bottom: 15px;
	padding-right: 15px;
	z-index: -1;
}
.serv .case-area {
	width: 860px;
	border-bottom: solid 1px #AAAAAA;
	margin: 40px auto 30px;
	padding-bottom: 40px;
}
.serv .case-area.case5 {
	border-bottom: none;
	padding-bottom: 10px;
}
.serv .case-area .case {
	font-size: 13px;
	text-align: center;
	border-bottom: solid 1px #616161;
	float: left;
	line-height: 180%;
	padding-bottom: 8px;	
}
.serv .case-area .case span {
	display: block;
	font-size: 28px;
}
.serv .case-area .text-area {
	width: 790px;
	float: right;
}
.serv .case-area .text-area .project {
	margin-left: -10px;
	margin-bottom: 30px;
	font-size: 18px;
}
.serv .case-area .text-area .project > span {
	background-color: #FFF;
	width: 120px;
	vertical-align: middle;
	font-size: 13px;
	text-align: center;
	line-height: 50px;
	display: inline-block;
	margin:0 10px;
}
.serv .case-area .text-area .project .enter {
	display: inline-block;
	height: 50px;
	float: none;
	width: auto;
}
.serv .case-area .text-area .project .enter span {
	box-sizing: border-box;
	line-height: 140%;
	padding: 7px 0;
	background-color: #FFF;
	width: 120px;
	vertical-align: middle;
	font-size: 13px;
	text-align: center;
	display: inline-block;
}
.serv .case-area .text-area .project .plan {
	background-color: inherit;
	width: auto;
	vertical-align: middle;
	font-size: 18px;
	text-align: left;
	line-height: 150%;
	display: inline-block;
	margin:0 10px;
}

.serv .case-area .text-area .photo {margin-bottom: 25px;}
.serv .case-area .text-area .photo.left {float: left;}
.serv .case-area .text-area .photo.right {float: right;}
.serv .case-area .text-area .jp {
	float: left;
	font-size: 16px;
	margin-right: 30px;
	margin-bottom: 20px;
	line-height: 180%;
}
.serv .case-area .text-area p {
	float: left;
	width: 430px;
	line-height: 200%;
	font-size: 13px;
}

.serv.plan #works .back-btn { background-color: #E8EFF2; width: 296px;}
.serv.conv #works .back-btn { background-color: #E6F4ED; width: 296px;}
.serv.tran #works .back-btn { background-color: #F8EFED; width: 296px;}


/* ---------- 通訳・翻訳 translation ------------- */
.serv #scene {}
.serv #scene .scene-area {
	border-bottom: solid 1px #BDBDBD;
	padding-bottom: 50px;
	margin-bottom: 50px;
}
.serv #scene .scene-area.end {
	border-bottom: none;
	padding-bottom: 0px;
	margin-bottom: -30px;
}

.serv #scene .scene-area h4 {
	font-size: 20px;
	text-align: center;
	margin-bottom: 40px;
}
.serv #scene .scene-area h4:after {
	content: '';
	border-bottom: solid 1px #616161;
	display: block;
	width: 20px;
	margin: 10px auto 0;
}

.serv #scene .scene-area .category {
    display:-webkit-box;
    display:-moz-box;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
}
.serv #scene .scene-area .category .block {
	background-color: #F8EFED;
	border: 1px solid #AAAAAA;
  position: relative;
  width: 460px;
  margin: 0 auto 35px;
	float: left;
	padding: 30px;
	box-sizing: border-box;
}
.serv #scene .scene-area .category .block:nth-child(odd) { margin-right: 35px;}

.serv #scene .scene-area .category .block:before {
	background-color: #F8EFED;
	position: absolute;
	content: "";
	width: 100%;
	min-height: 100%;
	top: -7px;
	left: -7px;
	padding-bottom: 15px;
	padding-right: 15px;
	z-index: -1;
}
.serv #scene .scene-area .category .block img { margin-bottom: 8px;}
.serv #scene .scene-area .category .block h5 {
	font-size: 18px;
	text-align: right;
	border-bottom: solid 1px #616161;
	padding-bottom: 12px;
	margin-bottom: 20px;
}
.serv #scene .scene-area .category .block p {}
.serv #scene .scene-area .category .block ul {}
.serv #scene .scene-area .category .block ul li {
	width: 193px;
	background-color: #FFF;
	font-size: 13px;
	text-align: center;
	line-height: 28px;
	display: inline-block;
	margin-bottom: 20px;
}
.serv #scene .scene-area .category .block ul li:first-child { margin-right: 5px;}

.serv #scene .scene-area table {}
.serv #scene .scene-area table th {
	width: 190px;
	background-color: #EEEEEE;
	font-size: 13px;
	text-align: center;
	display: block;
	margin-right: 20px;
	margin-bottom: 15px;
	font-weight: 500;
	padding: 4px 0;
}
.serv #scene .scene-area table td {
	font-size: 13px;
	margin-bottom: 15px;
	padding: 4px 0 15px;
}

.serv #scene .scene-area .top-txt {
	text-align: center;
	margin-bottom: 60px;
}

.serv #fields table.outline th,
.serv #fields table.outline td {padding: 22px 25px;}

.serv #fields ul {
	margin-bottom: 15px;
	float: right;
}
.serv #fields ul li {
	background-color: #F8EFED;
	position: relative;
	font-size: 16px;
	line-height: 50px;
	width: 355px;
	text-align: center;
	letter-spacing: 0.1em;
	float: left;
	margin: 0 5px;
}
.serv #fields ul li:before {
	content: "";
	position: absolute;
	top: 100%;
	left: 50%;
 	margin-left: -10px;
	border: 10px solid transparent;
	border-top: 10px solid #F8EFED;
}

.serv #fields table {width: 100%;}
.serv #fields table th {}
.serv #fields table td {width: 38%;}
.serv #fields table td.left {border-right: solid 1px #D3D3D3;}

.serv #faq table {width: 100%;}
.serv #faq table tr {
	padding: 20px 25px;
	display: block;
}
.serv #faq table .question {background-color: #F8EFED;}
.serv #faq table .answer { margin-top: 10px; margin-bottom: 25px;}
.serv #faq table th {
	font-family: 'Roboto', sans-serif;
	font-weight: 300;
	letter-spacing: 0.07em;
	border-right: solid 1px #AAAAAA;
	font-size: 20px;
	padding-right: 20px;
}
.serv #faq table td {	padding-left: 20px;}
.serv #faq table th ,
.serv #faq table td {
	vertical-align: middle;
}


/* ---------- works ---------------------------------------- */

#works {text-align: center;}

#ctgr-menu-area { text-align: center;}
.work .ctgr-menu {
	margin: 0 auto 50px;
	clear: both;
}
.work .ctgr-menu.plan {
	background-color: #E8EFF2;
	width: 815px;
	margin: 0 auto 15px;
}
.work .ctgr-menu.conv {
	background-color: #E6F4ED;
	display: inline-block;
	width: 490px;
	margin-right: 20px;
}
.work .ctgr-menu.tran {
	background-color: #F8EFED;
	display: inline-block;
	width: 300px;
}
.work .ctgr-menu dl dt { width: 150px;}

.work-list {
	clear: both;
    display:-webkit-box;
    display:-moz-box;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
}
.work-list .block {
	width: 300px;
	float: left;
	text-align: center;
	margin-right: 30px;
	margin-bottom: 50px;
}
.work-list .block:nth-child(3n) { margin-right: 0;}

.work-list .block a {}
.work-list .block img {
	width: 100%;
	height: auto;
}
.work-list .block ul {margin: 13px auto;}
.work-list .block ul li {
	font-size: 12px;
	border-bottom: solid 1px #616161;
	display: inline-block;
	margin: 0 5px;
}
.work-list .block .ttl {
	font-size: 16px;
	color: #000;
}


/* wp-pagenavi */
#contents .pagenavi-area {
	clear: both;
	margin-bottom: 150px;
}
#contents .wp-pagenavi {
	padding-top:50px;
	font-size: 82%;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
	font-weight: bold;
}
#contents .wp-pagenavi .pages {
	border: none;
	background-color: inherit;
	color: #757575;
	float: left;
	margin: 0px;
	padding: 0px;
	font-weight: 300;
}
#contents .wp-pagenavi a,
#contents .wp-pagenavi span {
	/* border: 1px solid #CCCCCC; */
	border: solid 1px #616161;
	margin: 2px;
	padding: 10px 15px;
	text-decoration: none;
	/* color: #666666; */
	color: #000;
	font-weight: 400;
}
#contents .wp-pagenavi a:hover,
#contents .wp-pagenavi span.current {
	border: solid 1px #EEEEEE;
	color: #000;
	background-color: #EEEEEE;
}
#contents .wp-pagenavi a:hover {
	border: solid 1px #EEEEEE;
	background-color: #EEEEEE;
	color: #000;
}
#contents .wp-pagenavi a img {padding-bottom: 5px;}

#contents .news-pagenavi .wp-pagenavi {}
#contents .news-pagenavi .wp-pagenavi a, .news-pagenavi .wp-pagenavi span	{
	background-color: inherit;
}
#contents .news-pagenavi .wp-pagenavi a span {
	color:#0B347D;
	text-decoration: underline;
	display: inline-block;
}

#contents .news-pagenavi .wp-pagenavi a span:hover {
	text-decoration: none;
}
#contents .news-pagenavi .wp-pagenavi .news-list-btn {}
#contents .news-pagenavi .wp-pagenavi .page-btn {}
#contents .news-pagenavi .wp-pagenavi .page-btn:hover {
	background-color: inherit;
	color: #0B347D;
}


/* ---------- works 詳細 ------------ */
#work-ttl {
	width: 960px;
	margin: 0 auto 50px;
	text-align: center;
}
#work-ttl ul { margin-bottom: 20px;}
#work-ttl ul li {
	font-size: 12px;
	border-bottom: solid 1px #616161;
	display: inline-block;
	margin: 0 5px;
	line-height: 130%;
}
#work-ttl h2 {
	font-size: 21px;
	letter-spacing: 0.07em;
}
#work-ttl h2 span {
	display: block;
	font-size: 13px;
	color: #616161;
	font-style: italic;
	padding-top: 10px;
	padding-bottom: 5px;
}

#work-ttl h2:after {
	content: '';
	border-bottom: solid 1px #616161;
	width: 40px;
	display: block;
	margin: 20px auto 0;
}

.main-work {}
.main-work .photo {
	float: right;
}
.main-work .photo img {
	max-width: 450px;
	height: auto;
}
.main-work .text-area {
	width: 460px;
	float: left;
}
.main-work .text-area table {width: 100%;}
.main-work .text-area table th {width: 25%;}
.main-work .text-area table td {}
.main-work .text-area .entrust {}
.main-work .text-area h3 {
	font-weight: bold;
	font-size: 14px;
	margin-bottom: 15px;
	letter-spacing: 0.07em;
}
.main-work .text-area .item {
	font-size: 14px;
	border-left: solid 1px #616161;
	padding-left: 20px;
}


.main-work-end {
	width: 720px;
	margin: 0 auto;
	overflow: hidden;
}
.main-work .description {
	clear: both;
	box-sizing: border-box;
	border-left: solid 1px #616161;
	border-right: solid 1px #616161;
	padding: 15px 50px;
	margin: 70px auto 0;
	line-height: 200%;
}
.main-work .postbody {
	margin-top: 70px;
}
.main-work .sub-cont {}
.main-work .sub-cont h4 {
	position: relative;
	text-align: center;
	font-size: 18px;
	font-weight: 500;
	letter-spacing: 0.07em;
	margin-top: 70px;	
	margin-bottom: 40px;
}
.main-work .sub-cont h4:before {
	border-top: 1px solid #616161;
	content: "";
	position: absolute;
	top: 40%;
	left: 0;
	width: 100%;
}
.main-work .sub-cont h4 span {
	background-color: white;
	display: inline-block;
	padding: 0 15px; /*ラインとテキストの間を調整*/
	position: relative; /*水平ラインが突き抜けないように*/
}
.main-work .sub-cont p {
	margin-bottom: 20px;
	line-height: 200%;
}
.main-work .sub-cont .photo { margin-bottom: 30px;}
.main-work .sub-cont .photo img {
	width: 100%;
	height: auto;
}

/* work-nav */
.work-nav {
	margin: 80px 0 60px;
	overflow: hidden;
}
.work-nav:after {
	content: '';
	border-left: solid 1px #616161;
	height: 40px;
	width: 1px;
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
	display: block;
}

.work-nav .btn {
	width: 30%;
}
.work-nav .btn.prev {
	float: left;
}
.work-nav .btn.next {
	float: right;
	text-align: right;
}
.work-nav .btn span {
	display: block;
}
.work-nav .btn a {
	display: block;
	font-size: 14px;
	color: #000;
	font-weight: 400;
	background-repeat: no-repeat;
	padding: 0 20px;
}
.work-nav .btn.prev a {
	background-image: url(../images/deta_prev.png);
	background-position: left center;
}
.work-nav .btn.next a {
	background-image: url(../images/deta_next.png);
	background-position: right center;
}



/* ---------- company ---------------------------------------- */
.comp .sub-catch {}

.comp .solution {
	position: relative;
	border-top: 1px solid #616161;
	border-right: 1px solid #616161;
	border-bottom: 1px none #616161;
	border-left: 1px solid #616161;
	width: 600px;
	margin: 0 auto 20px;
	padding-bottom: 70px;
}
.comp .solution p {
	display: inline-block;
	margin: 0 auto;
	position: absolute;
	top: -10px;
	left: 0;
	right: 0;
	background: #FFF;
	padding: 0 10px;
	font-size: 16px;
	line-height: 120%;
	text-align: center;
	width: 120px;
}
.comp .solution p span { font-size: 10px;}
.comp .solu-area {
	text-align: center;
}
.comp .solu-area .block {
	display: inline-block;
	width: 240px;
	margin: 0 30px;
}
.comp .solu-area .block img {
	margin-bottom: 20px;
}
.comp .solu-area .block p {
	text-align: left;
	font-size: 13px;
	line-height: 200%;
}

.comp #outline table {width: 660px;}
.comp #outline table th { width: 140px;}

.comp #outline table .left {
	border-right: solid 1px #D3D3D3;
	width: 170px;
}

.comp #access {
	margin-bottom: 130px;
}
.comp #access p {
	text-align: center;
}
.comp #access .ttl {
	text-align: center;
}
.comp #access > section {
	margin-bottom: 65px;
}
.comp #access > section:last-child {
	margin-bottom: 0;
}

/* gmap */
.gmap {
	width: 100%;
	height: 400px;
	margin-top: 30px;
}
.gmap p {
	margin-bottom: 0;
}

.contact-end {
	text-align: center;
	border-top: solid 1px #616161;
	border-bottom: solid 1px #616161;
	padding: 50px 0;
	width: 560px;
	margin: 0 auto 150px;
}
.contact-end h3 {
	font-size: 16px;
	margin-bottom: 15px;
}
.contact-end .en {
	font-size: 16px;
	display: inline-block;
	padding: 0 28px;
}
.contact-end .en span {
	font-size: 24px;
	padding-left: 5px;
}
.contact-end .tel {
	border-right: solid 1px #616161;
}
.contact-end .back-btn { margin-top: 20px;}



/* 私たちについて */
.abou .block {
	position: relative;
}
.abou .block .en {
	font-size: 54px;
	vertical-align: top;
}
.abou .block .en:after {
	content: '';
	border-bottom: solid 1px #616161;
	width: 120px;
	height:1px;
	display: inline-block;
	vertical-align: super;
	padding: 0;
	margin: 0 20px;
}
.abou .block .txt {
	font-size: 14px;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	margin: auto;
	width: 560px;
	line-height: 200%;
}

.abou .block.even .en {
	float: right;
}
.abou .block.even .en:after { display: none;}
.abou .block.even .en:before {
	content: '';
	border-bottom: solid 1px #616161;
	width: 120px;
	height:1px;
	display: inline-block;
	vertical-align: super;
	padding: 0;
	margin: 0 20px;
}
.abou #history3 {margin: 0 auto 130px;}



/* ---------- recruit ---------------------------------------- */

.recr #message {}
.recr #message .employee {}
.recr #message .employee .block {
	text-align: center;
	float: left;
	width: 460px;
}
.recr #message .employee .block.right {
	float: right;
}
.recr #message .employee .block img { margin-bottom: 25px;}
.recr #message .employee .block .name {
	font-size: 14px;
	margin-bottom: 10px;
}
.recr #message .employee .block .text {
	font-size: 18px;
	margin-bottom: 20px;
}

.recr .recr-window {
	width: 320px;
	margin: 100px auto 120px;
	padding: 35px 0 30px;
	border-top: solid 1px #616161;
	border-bottom: solid 1px #616161;
	text-align: center;
}
.recr .recr-window .jp {
	font-size: 16px;
	font-weight: 400;
	margin-bottom: 10px;
	letter-spacing: 0.07em;
}
.recr .recr-window p {
	line-height: 200%;
	letter-spacing: 0.07em;
}

.recr.mess .mess-area {
	padding-bottom: 60px;
	margin-bottom: 20px;
}
.recr.mess .mess-area.top {
	border-bottom: solid 1px #AAAAAA;
	margin-bottom: 50px;
}
.recr.mess .mess-area .prof {
	float: left;
	font-size: 14px;
	line-height: 220%;
}
.recr.mess .mess-area .prof .name {
	display: block;
	font-size: 18px;
}
.recr.mess .mess-area .text-blk {
	float: right;
	width: 720px;
}
.recr.mess .mess-area .text-blk .catch {
	font-size: 21px;
	line-height: 180%;
	font-weight: 400;
	margin-bottom: 30px;
}
.recr.mess .mess-area .text-blk p {
	line-height: 200%;
	margin-bottom: 40px;
}
.recr.mess .mess-area .text-blk img {}







/* ---------- contact ---------------------------------------- */

.cont .contact-end {
	padding: 35px 0;
	margin: -40px auto 100px;
}

form {margin-bottom: 140px;}
form table {
	width: 100%;
	margin-bottom: 35px;
}
form table th {
	background-color: #EEE;
	border-bottom: solid 1px #FFF;
	font-size: 14px;
	color: #414141;
	font-weight: bold;
	width: 210px;
	vertical-align: middle;
	padding-left: 18px;
	padding-right: 18px;
}
form table th.deta {	vertical-align: top;}

form table td {
	padding-left: 15px;
	border-bottom: solid 1px #D3D3D3;
}
form table th ,
form table td {
	padding-top: 12px;
	padding-bottom: 12px;
}
form table th {}

form table .nini {
	background-color: #9E9E9E;
	color: #FFF;
	float: right;
	line-height: 18px;
	text-align: center;
	font-size: 10px;
	width: 32px;
	margin-top: 3px;
	border-radius: 3px;        /* CSS3草案 */  
	-webkit-border-radius: 3px;    /* Safari,Google Chrome用 */  
	-moz-border-radius: 3px;   /* Firefox用 */  
}
form table .hiss {
	background-color: #E22E19;
	color: #FFF;
	float: right;
	line-height: 18px;
	text-align: center;
	font-size: 10px;
	width: 32px;
	margin-top: 3px;
	border-radius: 3px;        /* CSS3草案 */  
	-webkit-border-radius: 3px;    /* Safari,Google Chrome用 */  
	-moz-border-radius: 3px;   /* Firefox用 */  
}


form table td input {
	border: solid 1px #E0E0E0;
	background-color: #F5F5F5;
	height: 40px;
	padding: 8px;
	box-sizing: border-box;
	border-radius: 3px;        /* CSS3草案 */  
	-webkit-border-radius: 3px;    /* Safari,Google Chrome用 */  
	-moz-border-radius: 3px;   /* Firefox用 */  
}
form table td input.radio {
	height: auto;
	margin-right: 4px;
	vertical-align: middle;
}
form table td label {
	margin-right: 15px;
	display: inline-block;
	line-height: 220%;
}

form table td input[type="text"],
form table td input[type="tel"],
form table td input[type="email"] {
	width: 460px;
}
form table td input.address {
	width: 650px;
}
form table td textarea {
	width: 600px;
	border: solid 1px #E0E0E0;
	background-color: #F5F5F5;
	padding: 8px;
	box-sizing: border-box;
}

form .contact-privacy { text-align: center; 	margin-bottom: 25px;}
form .contact-privacy a {
	text-decoration: underline;
	background-image: url(../../guideline/images/ic_link.gif);
	background-position: right center;
	background-repeat: no-repeat;
	color: #000;
}

form .contact-btn {
	position: relative;
	text-align: center;
	background-color: #EEEEEE;
	width: 320px;
	max-width: 100%;
	box-sizing: border-box;
	padding: 5px;
	margin: auto;
}
form .contact-btn button {
	border: solid 1px #616161;
	font-size: 14px;
	padding: 10px 65px;
	width: 100%;
	cursor: pointer;
}



.wpcf7 .contact-btn .ajax-loader {
	position: absolute;
	bottom: -40px;
	left: 50%;
	margin-left: -8px;
}
.wpcf7 span.wpcf7-not-valid-tip {
	color: #d91f52;
	display: block;
	font-size: 13px;
	font-weight: bold;
	padding: 2px 0 0px;
}
.wpcf7 div.wpcf7-response-output {
	margin: 1.5em 0.5em;
	padding: 14px 11px;
	font-size: 14px;
	font-weight: bold;
	line-height: 140%;
}
.wpcf7 div.wpcf7-response-output.wpcf7-validation-errors {
	color: #d91f52;
	border: 2px solid;
}
.wpcf7 div.wpcf7-response-output.wpcf7-mail-sent-ng {
	color: #d91f52;
	border: 2px solid;
}
.wpcf7 div.wpcf7-response-output.wpcf7-mail-sent-ok {
	color: #000;
	border: 2px solid #aaa;
}

/* ---------- thanks ------------------------------------ */
.thanks-block {
	margin-bottom: 80px;
	text-align: center;
}
.thanks-title {
	display: inline-block;
	margin-bottom: 30px;
	padding: 28px 55px;
	border: solid 1px #727272;
	font-size: 15px;
	font-weight: bold;
}



/* ---------- magazine ---------------------------------------- */


.ctgr-menu {
	padding: 4px;
	box-sizing: border-box;
}
/**/
.ctgr-menu.tags {
	background-color: #EEEEEE;
	width: 750px;
	margin-left: auto;
	margin-right: auto;
}
.ctgr-menu.tags dl dt {	padding: 17px 26px;}

.ctgr-menu dl {
	border: solid 1px #AAAAAA;
}
.ctgr-menu dl dt,
.ctgr-menu dl dd {
	float: left;
	line-height: 150%;
	height: 54px;
	box-sizing: border-box;
}

.ctgr-menu dl dt {
	border-right: solid 1px #AAAAAA;
}
.ctgr-menu dl dt a {
	font-size: 14px;
	color: #000;
	padding: 17px 17px;
	display: block;
	-webkit-transition: 0.3s ease-in-out;  
	transition: 0.3s ease-in-out;  
}
.ctgr-menu dl dt a:hover { color: #757575;}

.ctgr-menu dl dd {
	padding: 15px 20px;
}
.ctgr-menu dl dd ul {}
.ctgr-menu dl dd ul li {}
.ctgr-menu dl dd ul li a {}


.work-list .block p {
	font-size: 13px;
	color: #5F5F5F;
	text-align: left;
	padding: 10px 0 0;

}
.work-list .block p span {
	display: block;
	text-align: center;
	font-style: italic;
	padding-top: 8px;
}


.maga #magazine .top-txt { text-align: center;}
.maga #magazine .ctgr-menu { margin: 30px auto 50px;}
.maga #magazine .work-list {
	width: 100%;
}
.maga #magazine .work-list .block {
	width: 300px;
	float: left;
}
.maga #magazine .work-list .block:nth-child(3n) {
    margin-right: 0px;
}
.maga #magazine .work-list .block img {
	width: 100%;
	height: auto;
}


/* ---------- magazine 詳細 area ------------ */

.main-maga {
	width: 720px;
	margin: auto;
}

.postbody p {
	margin-bottom: 2em;
	line-height: 200%;
}
.postbody h1,
.postbody h2 {
	position: relative;
	text-align: center;
	font-size: 18px;
	font-weight: 500;
	letter-spacing: 0.07em;
	margin-top: 70px;
	margin-bottom: 40px;
}
.postbody h1:before,
.postbody h2:before {
	border-top: 1px solid #616161;
	content: "";
	position: absolute;
	top: 40%;
	left: 0;
	width: 100%;
}
.postbody h1 span, 
.postbody h2 span {
	background-color: white;
	display: inline-block;
	padding: 0 15px; /*ラインとテキストの間を調整*/
	position: relative; /*水平ラインが突き抜けないように*/
}

.postbody h3,
.postbody h4 {
	font-size: 16px;
	font-weight: bold;
	letter-spacing: 0.07em;
	margin-top: 40px;
	margin-bottom: 25px;
}

.postbody blockquote {
	font-size: 14px;
	border-left: solid 1px #616161;
	padding-left: 20px;
	margin: 40px auto 40px;
}

.postbody a,
.postbody a:hover {
	text-decoration: underline;
}

.postbody img {
	display: block;
	margin-top: 1em;
	margin-bottom: 2em;
}
.postbody img:first-child {
	margin-top: 0;
}

.postbody ul {
	margin-bottom: 1.5em;
}
.postbody ul > li {
	padding-bottom: 0.5em;
	list-style-position: inside;
	list-style-type: disc;
	font-size: 14px;
	line-height: 180%;
	letter-spacing: 0.08em;
}

.postbody ol {
	margin-bottom: 1.5em;
}
.postbody ol > li {
	padding-bottom: 0.5em;
	list-style-position: inside;
	list-style-type: decimal;
	font-size: 14px;
	line-height: 180%;
	letter-spacing: 0.08em;
}

.postbody table {
	width: 100%;
	margin-bottom: 2em;
	border-spacing: 0px;
}
.postbody table th,
.postbody table td {
	padding: 15px 20px;
	line-height: 180%;
	font-size: 14px;
	text-align: left;
}
.postbody table thead,
.postbody table th {
	background-color: #EEEEEE;
	border-bottom: solid 1px #FFF;
	color: #414141;
	font-weight: bold;
	vertical-align: top;
}
.postbody table td {
	border-bottom: solid 1px #D3D3D3;
}

.postbody table tbody th {
	font-weight: bold;
}


.postbody .alignleft {
	float: left;
	margin-right: 1em;
}
.postbody .alignright {
	float: right;
	margin-left: 1em;
}
.postbody .aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.postbody .wp-caption {
	margin-top: 1.2em;
	margin-bottom: 1.2em;
}
.postbody .wp-caption > img {
	margin: 0;
}
.postbody .wp-caption .wp-caption-text {
	font-size: 12px;
	margin: 0;
}


/* ---------- search ---------------------------------------- */

.sear .search-count {
	text-align: center;
}
.sear .sear-list {}
.sear .sear-list ul {}
.sear .sear-list ul li {
	border-bottom: solid 1px #AAA;
}

.sear .sear-list ul li a {
	position: relative;
	padding: 28px 0 30px;
	display: block;
	color: #000;
}
.sear .sear-list ul li a:hover {
	background-color: #F2F2F2;
}

.sear .sear-list ul li .ttl {
	padding-bottom: 12px;
	font-size: 18px;
}
.sear .sear-list ul li p {
	line-height: 180%;
	margin-bottom: 0;
}

.sear #contents .wp-pagenavi { padding-top: 0;}


@media (max-width: 768px) {

	/* postbody */
	.postbody {}
	.postbody h1,
	.postbody h2 {
		margin: 30px auto 20px;
		font-size: 15px;
		font-weight: bold;
		text-align: left;
	}
	.postbody h1:before,
	.postbody h2:before {
		display: none;
	}
	.postbody h1 span, 
	.postbody h2 span {
		padding: 0; /*ラインとテキストの間を調整*/
	}


	.postbody h3,
	.postbody h4 {
		font-size: 13px;
		font-weight: bold;
		text-align: left;
	}
	.postbody p {
		margin-bottom: 0.8em;
		font-size: 13px;
	}
	.postbody img {
		max-width: 100%;
		height: auto;
		margin: 0.7em auto 1.5em;
	}
	.postbody img:first-child {
		margin-top: 0;
	}
	.postbody blockquote {
		font-size: 13px;
		padding-left: 16px;
		margin: 30px auto 30px;
	}
	.postbody ul {}
	.postbody ul > li {
		padding-left: 0.2em;
		padding-bottom: 0.3em;
		font-size: 13px;
	}

	.postbody ol {
		margin-bottom: 1.0em;
	}
	.postbody ol > li {
		padding-left: 0.2em;
		padding-bottom: 0.3em;
		font-size: 13px;
	}

	.postbody table {
		width: 100%;
		margin-bottom: 1.5em;
	}
	.postbody table th,
	.postbody table td {
		padding: 8px 10px;
		font-size: 13px;
	}

	.postbody .alignleft {
		float: none;
		margin-right: 0;
	}
	.postbody .alignright {
		float: none;
		margin-left: 0;
	}
	.postbody .aligncenter {}

}

.share-btn {
	overflow: hidden;
	box-sizing: border-box;
	position: relative;
	min-height: 60px;
	padding: 15px 10px 15px 5px;
	margin: 70px auto 80px !important;
	border-top: solid 1px #616161;
	border-bottom: solid 1px #616161;
	width: 600px;
}
.share-btn .share {
	float: left;
	font-size: 16px;
	font-weight: 400;
	line-height: 150%;
	padding: 5px 25px;
	border-right: solid 1px #616161;
}
.share-btn ul {
	display: table;
	padding-left: 30px;
	margin-bottom: 0;
}
.share-btn ul li {
	display: inline-table;
	margin: 0 6px;
	vertical-align: bottom;
	line-height: 0;
	font-size: 0;
}

.ctgr-menu.tags { margin-bottom: 130px;}

.maga.deta .report {
	font-size: 20px;
	letter-spacing: 0.07em;
	text-align: center;
	margin-bottom: 35px;
}
.maga.deta .report:after {
	content: '';
	border-bottom: solid 1px #616161;
	display: block;
	margin:auto;
	width: 20px;
	padding-top: 8px;
}


/* ---------- sitemap ---------------------------------------- */
.sitemap {}
.link-list {
	overflow: hidden;
}
.link-list > li {
	margin-bottom: 24px;
}
.link-list > li > a {
	display: block;
	font-weight: 600;
	padding-bottom: 5px;
	border-bottom: solid 1px #AAA;
}
.link-list > li > a > span {
	padding-left: 17px;
	color: #000;
	font-size: 14px;
}
.link-list > li > a > span:before {
	content: '〉';
	font-size: 13px;
	font-weight: 500;
}

.link-list a {
	transition: opacity .2s;
	letter-spacing: 0.1em;
	color: #000;
}
.link-list a:hover {}

/* inner-list 子リンク */
.link-list .inner-list {
	margin-top: 10px;
	padding-left: 17px;
}
.link-list .inner-list li {
	padding: 6px 0;
}
.link-list .inner-list li a {
	padding-left: 17px;
	font-size: 14px;
}
.link-list .inner-list li a:hover { text-decoration: underline;}

.link-list .inner-list li a:before {
	content: '〉';
	font-size: 13px;
	font-weight: 500;
}

.sitemap .link-list > li {
	width: 430px;
	float: left;
	margin-bottom: 32px;
}
.sitemap .link-list > li:first-child {
	float: none;
}
.sitemap .link-list > li:nth-child(2n) {
	clear: both;
	margin-right: 38px;
}


/* ---------- agreement ---------------------------------------- */

.agre .block { margin-bottom: 60px;}
.agre .block h2 {margin-bottom: 20px;}
.agre .block h3 {
	font-size: 16px;
	padding-bottom: 10px;
	padding-top: 15px;
	font-weight: 500;
}
.agre .area-ttl::before {top: 45%;}
.agre .area-ttl span {font-size: 18px;}

.agre .block ol {margin-left: 1.2em;}
.agre .block ol li {
	list-style-type: decimal;
	line-height: 180%;
	margin-bottom: 1em;
}
.agre .block a:hover { text-decoration: underline;}


/* ---------- search ---------------------------------------- */

.sear .sear-list {}
.sear .sear-list ul {}
.sear .sear-list ul li {
	border-bottom: solid 1px #AAA;
}

.sear .sear-list ul li a {
	position: relative;
	padding: 28px 0 30px;
	display: block;
	color: #000;
}
.sear .sear-list ul li a:hover {
	background-color: #F2F2F2;
}

.sear .sear-list ul li .ttl {
	padding-bottom: 10px;
	font-size: 16px;
}
.sear .sear-list ul li p {
	line-height: 160%;
	margin-bottom: 0;
}

.sear #contents .wp-pagenavi { padding-top: 0;}


/* ---------- private ---------------------------------------- */

.priv .block { margin-bottom: 60px;}
.priv .block h2 {margin-bottom: 20px;}
.priv .block h3 {
	font-size: 16px;
	padding-bottom: 10px;
	padding-top: 15px;
	font-weight: 500;
}
.priv .area-ttl::before {top: 45%;}
.priv .area-ttl span {font-size: 18px;}

.priv .block ol {margin-left: 1.2em;}
.priv .block ol li {
	list-style-type: decimal;
	line-height: 180%;
	margin-bottom: 1em;
}
.priv .block a:hover { text-decoration: underline;}


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


/* ---------- basic ---------------------------------------- */
p {font-size: 13px;}
p.cmnt {font-size: 13px;}
p.caption {font-size: 11px; text-align:center; }

table.outline {
	width: 100%;
	margin: 0 auto 20px;
}
table.outline th {width: 30%;}
table.outline th, table.outline td {padding: 10px;}
table.outline td ul {margin-left: 1.2em;}
table.outline td ul li {font-size: 13px;}

ul li, ol li {font-size: 13px;}
ul li ul,
ul li ol,
ol li ol,
ol li ul {font-size: 13px;}
ul li ul li,
ul li ol li,
ol li ol li,
ol li ul li {	font-size: 13px;}
dl dt, dl dd {	font-size: 13px;}

.pcspace {
	display: none;
}


/* ---------- 全ページ共通 --------------- */

#page-visual .photo {height: auto;}
#page-visual .photo img {
	position: inherit;
	min-width: auto;
	height: auto;
	width: 100%;
}

.page-menu .btn p {
	font-size: 11px;
	background-position: top;
	padding: 48px 0 10px 0px;
	background-size: 40px;
	text-align: center;
}
.page-menu .btn a p span {
	font-size: 9px;
	padding-top: 3px;
}
.page-menu .btn a {padding: 10px 5px 5px;}

#page-ttl {
	font-size: 21px;
	padding-bottom: 15px;
	margin: 0 auto 30px;
}
#page-ttl .en {font-size: 12px;}


.area-ttl {
font-size: 11px;
margin-bottom: 30px;
}
.area-ttl span {padding: 0 10px;}
.area-ttl .en {font-size: 21px;}

/* catchcopy */
.catchcopy {
	font-size: 14px;
	margin: 0 5% 20px;
}

/* sub-catch */
.sub-catch {
	text-align: left;
	margin: 0 5% 40px;
}
.sub-catch br { display: none;}

/* detail */
.detail a {
	font-size: 11px;
}

/* back-btn */
.back-btn {
	width: 100%;
}
.back-btn a {
	font-size: 13px;
	padding: 13px 30px;
	margin: 5px;
}
.back-btn a:after {
	font-size: 11px;
	top: 15px;
}

/* ---------- home ---------------------------------------- */
.top .area-ttl {
	width: auto;
	margin: 0 0 30px;
}

#service .service-list {
	margin-bottom: 70px;
}
#service .area-ttl { margin: 0 5% 30px;}
#service .service-list .block {
	width: 50%;
	position: relative;
}
#service .service-list .block:nth-child(2n+1) {}
#service .service-list .block:nth-child(3),
#service .service-list .block:nth-child(7) { display: block;}
#service .service-list .block:nth-child(5) { display: none;}
#service .back-btn { display: none;}
#service .service-list .block.ayumi {height: 180px;}
#service .service-list .block.ayumi .ttl {
	background-image: none;
	padding-bottom: 0;
	height: 22px;
}
#service .service-list .block.ayumi .ttl:after {
	content: '〉';
	font-size: 13px;
	font-weight: 500;
}
#service .service-list .block.ayumi a { color: #000;}

#service .service-list .block .ttl {
	-webkit-transform: inherit;
	transform: inherit;
	padding-bottom: 15px;
	position: absolute;
	top: 0;
	bottom: 0;
	height: 95px;
	margin: auto;
	width: 100%;
	background-size: 10px auto;
}
#service .service-list .block .ttl img {
	width: 45px;
	height: auto;
}
#service .service-list .block h4 {
	font-size: 16px;
	padding-top: 10px;
	line-height: 110%;
}
#service .service-list .block h4 span {
	font-size: 11px;
	display: block;
	padding-top: 3px;
}

.top .news-ticker.area {
	min-height: 60px;
	padding: 15px 5px;
	margin: 0 5% 55px !important;
	width: 100%;
}
.top .news-ticker h3 {
	font-size: 14px;
	padding: 0 15px 0 0;
	vertical-align: middle;
	display: table-cell;
	box-sizing: border-box;
	float: none;
}
.top .news-ticker .news-area {
	border-left: solid 1px #616161;
	vertical-align: middle;
	display: table-cell;
	box-sizing: border-box;
	padding: 5px 0;
	width: 100%;
}
.top .news-ticker .ticker {
	border-left: none;
	padding-top: 0;
	padding-left: 15px;
	margin-right: 0px;
	padding-bottom: 0;
}
.top .news-ticker .ticker ul li a span {
	font-size: 11px;
	margin-right: 0px;
	margin-bottom: 3px;
	display: block;
}
.top .news-ticker .more-button {}
.top .news-ticker .ticker ul li a {
	font-size: 12px;
	line-height: 180%;
}
.top .news-ticker .more-button {
	position: static;
	text-align: left;
	padding-left: 15px;
	padding-top: 10px;
}
.top .news-ticker .more-button a ,
.top .news-ticker .more-button a::before {
    font-size: 11px;
}

.top #magazine {margin: 0 5% 80px;}
.top #magazine .top-txt {text-align: left; margin-bottom: 20px;}
.top #magazine .ctgr-menu {margin: 20px auto 50px;}
.top #magazine .work-list {max-width: 100%;}
.top #magazine .work-list .block {
	margin: 0 auto 20px;
	float: none;
	width: 100%;
	max-width: 460px;
}
.top #magazine .work-list .block:nth-child(3n) {margin-right: auto;}

/* ---------- news ---------------------------------------- */

.news .news-list { margin: 0 5% 40px !important;}
.news .news-list ul li a {
    padding: 10px 0;
    font-size: 12px;
}
.news .news-list ul li .en {
    font-size: 11px;
    margin-right: 25px;
}
.news .news-list ul li .ttl {
    padding-right: 30px;
}
.news .news-list ul li a::after {
    top: -4px;
    font-size: 12px;
}



/* ---------- service ---------------------------------------- */

.serv #main-plan .block {
	float: none;
	width: 100%;
	max-width: 460px;
	margin: 0 auto 40px;
}
.serv #main-plan .block.left {margin-right: auto;}
.serv.conv #main-plan .block:nth-child(3) {margin-bottom: 60px;}
.serv #main-plan .block img {
	width: 100%;
	height: auto;
}
.serv #main-plan .block h3 {
	font-size: 15px;
	padding: 15px 0 15px;
}
.serv #main-plan .block h3 span {font-size: 11px;}
.serv.conv #works .back-btn {width: 100%;}

#unique-venue .area-ttl .en {width: 60%;}
.serv #unique-venue .inner {
	width: auto;
	padding: 0 5%;
}
.serv .case-area {
	width: auto;
	margin: 30px auto 30px;
	padding-bottom: 20px;
}
.serv .case-area .case {
	font-size: 11px;
	float: none;
	padding-bottom: 8px;
	display: table;
	margin: 0 auto 25px;
}
.serv .case-area .case span {font-size: 21px;}
.serv .case-area .text-area {
	width: auto;
	float: none;
}
.serv .case-area .text-area .project {
    font-size: 14px;
		margin-left: 0px;
		text-align: center;
}
.serv .case-area .text-area .project > span {
	width: 43%;
	font-size: 12px;
	line-height: 40px;
	margin: 0 5px;
	vertical-align: baseline;
}
.serv .case-area .text-area .project .enter span {
	padding: 4px 0;
	vertical-align: top;
	width: 100%;
}
.serv .case-area .text-area .project .enter {
	display: inline-flex;
	height: auto;
	float: none;
	width: 43%;
	margin-bottom: 0;
	vertical-align: top;
}
.serv .case-area .text-area .project .plan {
	font-size: 14px;
	display: block;
	margin: 10px 4% 0;
}
.serv .case-area .text-area .project .plan br { display: none;}
.serv .case-area.case1 .text-area .photo.left {
	float: left;
	width: 68%;
	margin-right: 5px;
}
.serv .case-area .text-area .photo.left {float: none;}
.serv .case-area.case1 .text-area .photo.right {
	float: right;
	width: 30%;
}
.serv .case-area .text-area .photo.right {float: none;}
.serv .case-area .text-area .photo img {
	width: 100%;
	height: auto;
}
.serv .case-area .text-area .jp {
	float: none;
	clear: both;
	font-size: 13px;
	margin-right: 0px;
	margin-bottom: 15px;
	line-height: 180%;
}
.serv .case-area .text-area p {
	float: none;
	width: auto;
	font-size: 12px;
}
.serv #scene .scene-area {
	border-bottom: solid 1px #BDBDBD;
	padding-bottom: 20px;
	margin-bottom: 30px;
}
.serv #scene .scene-area h4 {
	font-size: 15px;
	text-align: center;
	margin-bottom: 35px;
}
.serv #scene .scene-area h4::after {margin: 6px auto 0;}
.serv #scene .scene-area .category .block {
	width: 100%;
	margin: 0 auto 35px;
	float: none;
	padding: 25px 7%;
}
.serv #scene .scene-area .category .block:nth-child(2n+1) {margin-right: 0;}
.serv #scene .scene-area .category .block img {
	margin-bottom: 8px;
	width: 55px;
	height: auto;
}
.serv #scene .scene-area .category .block h5 {
	font-size: 14px;
	padding-bottom: 7px;
	margin-bottom: 17px;
}
.serv #scene .scene-area .category .block ul li {
	width: 47%;
	max-width: 150px;
	font-size: 11px;
	margin-bottom: 10px;
}
.serv #scene .scene-area table th {
	width: 50%;
	background-color: #EEEEEE;
	font-size: 12px;
	text-align: center;
	display: block;
	margin-right: 0px;
	margin-bottom: 10px;
	font-weight: 500;
	padding: 2px;
}
.serv #scene .scene-area table td {
	font-size: 13px;
	margin-bottom: 15px;
	padding: 0;
	display: block;
}
.serv #scene .scene-area .top-txt {
	text-align: left;
	margin-bottom: 30px;
}

.serv #fields .scroll-area {
	width: 100%;
	overflow-x: auto;
	margin-bottom: 20px;
}
.serv #fields .scroll-area::-webkit-scrollbar {height: 7px;}
.serv #fields .scroll-area::-webkit-scrollbar-track  {
  border-radius: 5px;
  background: #eee;
}
.serv #fields .scroll-area::-webkit-scrollbar-thumb {
  border-radius: 5px;
  background: #666;
}

.serv #fields .fields-list {width: 600px;}
.serv #fields table.outline th, .serv #fields table.outline td {padding: 11px 15px;}
.serv #fields ul li {
	font-size: 13px;
	line-height: 40px;
	width: 215px;
}
.serv #fields table {
	width: 100%;
	margin: 0 auto;
}
.serv #fields table th {width: 25%;}
.serv #faq table tr {padding: 13px 18px;}
.serv #faq table th {
	font-size: 16px;
	padding-right: 14px;
	line-height: 180%;
}
.serv #faq table td {padding-left: 15px;}
.serv #faq table .answer {
	margin-bottom: 15px;
}

.serv.plan #works .back-btn ,
.serv.conv #works .back-btn ,
.serv.tran #works .back-btn { width: 100%;}



/* ---------- works ---------------------------------------- */
.work .ctgr-menu {
	margin: 0 auto 10px;
	clear: both;
}
.work-list .block {
	width: 460px;
	float: none;
	text-align: center;
	margin-right: auto;
	margin: 0 auto 40px;
}
.work-list .block:nth-child(3n) {margin-right: auto;}
.work-list .block img {
	width: 100%;
	height: auto;
}
.work-list .block ul {margin: 13px auto 8px;}
.work-list .block ul li {
	font-size: 11px;
	margin: 0 3px;
}
.work-list .block .ttl {font-size: 14px;}
.work .ctgr-menu.tran {
	margin-bottom: 40px !important;
}

#contents .pagenavi-area {margin-bottom: 60px;}
#contents .wp-pagenavi .pages {
	float: none;
	display: block;
	margin: 0 0 15px;
}
#contents .wp-pagenavi {
	padding-top: 20px;
	font-size: 12px;
}
#contents .wp-pagenavi a,
#contents .wp-pagenavi span {
	margin: 7px 2px;
	padding: 6px 11px;
	display: inline-block;
}


#work-ttl {
	width: auto;
	margin: 0 5% 40px;
	text-align: center;
}
#work-ttl ul {margin-bottom: 7px;}
#work-ttl ul li {
	font-size: 11px;
	margin: 0 3px;
}
#work-ttl h2 {font-size: 16px;}
#work-ttl h2::after {margin: 15px auto 0;}
.main-work .photo {
	float: none;
	margin-bottom: 20px;
}
.main-work .photo img {
	width: 100%;
	height: auto;
}
.main-work table.outline th, .main-work table.outline td { padding: 10px 15px;}
.main-work .text-area table th {
    width: 30%;
}
.main-work .text-area {
	width: auto;
	float: none;
	margin-bottom: 40px;
}
.main-work .text-area h3 {
	font-size: 13px;
	margin-bottom: 10px;
}
.main-work .text-area .item {
	font-size: 13px;
	padding-left: 20px;
}

.main-work-end {
	width: auto;
	margin: 0 auto;
}
.main-work .description {
	padding: 0 20px;
	margin: 0 auto 40px;
}
.main-work .sub-cont h4 {
	font-size: 14px;
	margin-top: 40px;
	margin-bottom: 20px;
}

.work-nav {margin: 30px 0 40px;}
.work-nav .btn {width: 40%;}
.work-nav .btn a {
	font-size: 12px;
	padding: 0 15px;
	background-size: 8px auto;
}
#ctgr-menu-area {
	text-align: center;
	margin: 0 0 -30px !important;
}




/* ---------- company ---------------------------------------- */

.contact-end {
	padding: 30px 0;
	width: auto;
	margin: 0 5% 80px;
}
.contact-end .back-btn {width: 240px;}
.contact-end .back-btn a {padding: 13px 5px;}
.contact-end .back-btn a:after {top: 15px;}

.contact-end h3 {
	font-size: 13px;
	margin-bottom: 13px;
}
.contact-end .en {
	font-size: 12px;
	padding: 0;
	margin-bottom: 5px;
	display: block;
}
.contact-end .tel {border-right: none;}
.contact-end .en span {
	font-size: 18px;
	padding-left: 0;
}

.comp .sub-catch {margin: 0 0 40px;}
.comp .solution {
	width: auto;
	margin: 0 auto;
	padding-bottom: 45px;
}
.comp .solu-area .block {
	width: 100%;
	margin: 30px 0 0;
}
.comp .solu-area .block img {
	margin-bottom: 20px;
	width: 60%;
	height: auto;
	max-width: 240px;
}
.comp .solu-area .block p {
	font-size: 13px;
	margin-bottom: 0;
}

.comp #outline table {width: 100%;}
.comp #outline table th {width: 25%;}
.comp #outline table .left {width: 37%;}

.comp #access {
	margin-bottom: 80px;
}
.comp #access > section {
	margin-bottom: 35px;
}
.gmap {
	width: 100%;
	height: 240px;
	margin: 25px 0 0;
}


/* 私たちについて */
.abou .block {margin: 0 5% 40px !important;}
.abou .block .en {
	text-align: center;
	font-size: 27px;
}
.abou .block .en:after {
	width: 1px;
	margin: 10px auto;	
	display: block;
	border-bottom: solid 30px #616161;
}
.abou .block .txt {
	font-size: 13px;
	position: inherit;
	width: auto;
	line-height: 200%;
}

.abou .block.even .en {float: none;}
.abou .block.even .en:after { display: block;}
.abou .block.even .en:before { display: none;}
.abou #history3 {margin: 0 5% 60px;}





/* ---------- recruit ---------------------------------------- */

.recr #message .employee .block {
	float: none;
	width: auto;
	margin-bottom: 35px;
}
.recr #message .employee .block:nth-child(2n) { margin-bottom: 0;}

.recr #message .employee .block img {
	margin-bottom: 20px;
	width: 100%;
	height: auto;
}
.recr #message .employee .block .name {
	font-size: 13px;
	margin-bottom: 10px;
}
.recr #message .employee .block .text {
	font-size: 14px;
	margin-bottom: 15px;
}

.recr .recr-window {
	width: 100%;
	margin: 70px auto 80px;
	padding: 15px 0 5px;
}
.recr .recr-window .jp {
	font-size: 14px;
	margin-bottom: 7px;
}

.recr.mess .mess-area.top {
    margin-bottom: 35px;
}
.recr.mess .mess-area {
    padding-bottom: 40px;
    margin-bottom: 20px;
}
.recr.mess .mess-area .prof {
    float: none;
    font-size: 13px;
    line-height: 180%;
		margin-bottom: 20px;
}
.recr.mess .mess-area .prof .name {
    display: block;
    font-size: 15px;
}
.recr.mess .mess-area .text-blk {
    float: none;
    width: auto;
}
.recr.mess .mess-area .text-blk .catch {
    font-size: 16px;
    line-height: 150%;
    font-weight: 400;
    margin-bottom: 20px;
}
.recr.mess .mess-area .text-blk p {
    line-height: 200%;
    margin-bottom: 25px;
}
.recr.mess .mess-area .text-blk img {
    width: 100%;
    height: auto;
}



/* ---------- magazine ---------------------------------------- */

.ctgr-menu {
	width:  100% !important;
	margin-right: 0 !important;
}
.ctgr-menu dl {
	width: 100%;
	box-sizing: border-box;
}
.ctgr-menu dl dt {
	width: 170px !important;
	border-right: none;
}
.ctgr-menu dl dd {
	border-left: solid 1px #AAAAAA;
	width: 75%;
	padding: 10px;
}
.ctgr-menu dl dt, .ctgr-menu dl dd {
	vertical-align:middle;
	display:table-cell;
	float: none;
	line-height: 120%;
	height: auto;
	box-sizing: border-box;
}
.ctgr-menu dl dt a {
	font-size: 13px;
	padding: 7px 5px;
	line-height: 150%;
}
.ctgr-menu dl dd ul {text-align: left;}
.item-list-menu li {
	font-size: 12px;
	margin: 6px 5px;
}
.ctgr-menu.tags dl dt {
    padding: 17px 15px;
    width: 10% !important;
}
.ctgr-menu.tags dl dd { width: 80%;}



.maga #magazine .top-txt {text-align: left;}

.maga #magazine .work-list .block {
	width: 460px;
	float: none;
	text-align: center;
	margin-right: auto;
	margin: 0 auto 30px;
}
.maga #magazine .work-list .block:nth-child(3n) {margin-right: auto;}

.main-maga {
	width: auto;
	margin: 0 5%;
}
.maga #magazine .ctgr-menu {margin: 0px auto 30px;}

.share-btn {
	width: auto;
	margin: 0 auto 50px !important;
}
.share-btn .share {
	float: none;
	font-size: 13px;
	padding: 5px 15px;
	vertical-align: middle;
	border-right: none;
	display: table-cell;
}
.share-btn ul {
	border-left: solid 1px #616161;
	display: table-cell;
	padding-left: 15px;
}
.share-btn ul li {
	display: inline-table;
	margin: 5px;
	vertical-align: bottom;
}




/* ---------- contact ---------------------------------------- */
.cont .contact-end {
	padding: 20px 0 15px;
	margin: -10px 5% 70px;
}
form {margin-bottom: 80px;}
form table {margin-bottom: 20px;}
form table th {padding: 7px 12px;}
form table td {padding: 3px 0px 16px;}
form table th, form table td {
	display: inline-block !important;
	box-sizing: border-box;
	width: 100%;
	font-size: 12px;
	border-bottom: none;
}
form table .hiss ,
form table .nini {
	width: 27px;
	font-size: 9px;
}

form table td input,
form table td textarea {
	width: 100%;
	padding: 6px;
}
form table td input[type="text"],
form table td input[type="tel"],
form table td input[type="email"],
form table td input.address {
	width: 100%;
}
form .contact-btn button {
    font-size: 13px;
    padding: 13px 65px;
}

	/* ---------- thanks ------------------------------------ */
	.thanks-block {
		margin-bottom: 40px;
		text-align: center;
	}
	.thanks-block .thanks-title {
		margin-bottom: 20px;
		padding: 16px 14px;
		font-size: 15px;
		text-align: center;
		line-height: 160%;
	}
	.thanks-block p {
		text-align: left;
	}
	.thanks-block p br {
		display: none;
	}


/* ---------- agreement ---------------------------------------- */

.agre .block {margin-bottom: 30px;}
.agre .block h2 {margin-bottom: 15px;}
.agre .block h3 {font-size: 14px;}
.agre .area-ttl span {font-size: 15px;}


/* ---------- privacy ---------------------------------------- */

.priv .block {margin-bottom: 30px;}
.priv .block h2 {margin-bottom: 15px;}
.priv .block h3 {font-size: 14px;}
.priv .area-ttl span {font-size: 15px;}




/* ---------- sitemap ---------------------------------------- */
.sitemap .link-list > li {
	width: auto;
	float: none;
	margin-bottom: 20px;
}
.link-list > li > a {padding-bottom: 3px;}
.link-list > li > a > span {
	padding-left: 5px;
	font-size: 12px;
}
.link-list > li > a > span::before,
.link-list .inner-list {padding-left: 0px;}
.link-list .inner-list li {padding: 3px 0;}
.link-list .inner-list li > a {
    padding-left: 0px;
    font-size: 12px;
}
.link-list .inner-list li a::before {font-size: 10px;}


/* ---------- search ---------------------------------------- */

.sear .sear-list {}
.sear .sear-list ul li a {
	position: relative;
	padding: 18px 0 20px;
	display: block;
	color: #000;
}
.sear .sear-list ul li .ttl {
	padding-bottom: 8px;
	font-size: 17px;
}
.sear .sear-list ul li p {
	margin-bottom: 0;
}



}


