@charset "utf-8";

@import url("https://use.typekit.net/qtk7xbo.css"); /* edited */
/*
font-family: "playfair-display"
font-weight: 400, 700

font-family: "myriad-pro-semiextended"
font-weight: 400, 700

font-family: "din-2014"
font-weight: 200, 300, 400, 600, 700, 800
*/


/*
Theme Name:UNIQUE
Theme URI:
Description:WordPressテーマ「UNIQUE」
Author:Design Plus
Author URI:http://design-plus1.com/tcd-w/
Version:1.10
Text Domain:tcd-w
*/


/* ------------------------------------------------------------------------------------
 web fonts　ウェブフォントファイルを変更した場合はv=1.0の数字を変更（キャッシュ対策）
------------------------------------------------------------------------------------ */
@font-face {
  font-family: 'design_plus';
  src: url('fonts/design_plus.eot?v=1.3');
  src: url('fonts/design_plus.eot?v=1.3#iefix') format('embedded-opentype'),
       url('fonts/design_plus.woff?v=1.3') format('woff'),
       url('fonts/design_plus.ttf?v=1.3') format('truetype'),
       url('fonts/design_plus.svg?v=1.3#design_plus') format('svg');
  font-weight: normal;
  font-style: normal;
}


/* ----------------------------------------------------------------------
 reset css
---------------------------------------------------------------------- */
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; outline:0; font-size:100%; vertical-align:baseline; }

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display:block; }
audio, canvas, video { display:inline-block; max-width:100%; }
html { overflow-y: scroll; -webkit-text-size-adjust:100%; -ms-text-size-adjust:100%; }
ul, ol { list-style:none; }
blockquote , q { quotes:none; }
blockquote:before, blockquote:after, q:before, q:after { content:''; content: none; }
a:focus { outline:none; }
ins { text-decoration:none; }
mark { font-style:italic; font-weight:bold; }
del { text-decoration:line-through; }
abbr[title], dfn[title] { border-bottom:1px dotted; cursor:help; }
table { border-collapse:collapse; border-spacing:0; width:100%; }
hr { display:block; height:1px; border:0; border-top:1px solid #ccc; margin:1em 0; padding:0; }
button, input, select, textarea { outline:0; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; box-sizing:border-box; font-size:100%; }
input, textarea { background-image: -webkit-linear-gradient(hsla(0,0%,100%,0), hsla(0,0%,100%,0)); -webkit-appearance: none; border-radius:0; /* Removing the inner shadow, rounded corners on iOS inputs */ }
input[type="checkbox"]{ -webkit-appearance: checkbox; }
input[type="radio"]{ -webkit-appearance: radio; }
button::-moz-focus-inner, input::-moz-focus-inner { border:0; padding:0; }
img { -ms-interpolation-mode:bicubic; }

/* clearfix */
.clearfix:after { content: "."; display:block; clear:both; height:0; font-size:0.1em; line-height:0; visibility:hidden; overflow:hidden; }
.clearfix { display:inline-block; }
/* exlude MacIE5 \*/
* html .clearfix { height:1% }
.clearfix { display:block;}
/* end MacIE5 */




/* ----------------------------------------------------------------------
 基本設定
---------------------------------------------------------------------- */
body { font-family:Arial,sans-serif; color:#333; line-height:1; width:100%; }
.pc .admin-bar { padding-top:33px; }
a { color:#333; text-decoration:none; }
a, a:before, a:after, input {
  -webkit-transition-property:background-color, color; -webkit-transition-duration:0.2s; -webkit-transition-timing-function:ease;
  -moz-transition-property:background-color, color; -moz-transition-duration:0.2s; -moz-transition-timing-function:ease;
  -o-transition-property:background-color, color; -o-transition-duration:0.2s; -o-transition-timing-function:ease;
  transition-property:background-color, color; transition-duration:0.2s; transition-timing-function:ease;
}
a:hover { text-decoration:none; } /* edited */
.clear { clear:both; }
.hide { display:none; }

.font_type1 { font-family: Arial, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif; font-weight: normal; }
.font_type2 { font-family: "Segoe UI", Arial, "游ゴシック", YuGothic, "Hiragino Kaku Gothic ProN", Meiryo, sans-serif; font-weight: 400; }
.font_type3 { font-weight:500; font-family: "Times New Roman" , "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif; }

/* レイアウト */
#main_contents {
	padding-top: 82px; /* edited */
	/*background:#fff;*/
	width:100%;
	position:relative;
	z-index:10;
}
#main_col {
	width:calc(100% * 1150 / 1280);
	max-width:1150px;
	margin:0 auto 150px;
	padding:0;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	-o-box-sizing:border-box;
	-ms-box-sizing:border-box;
	box-sizing:border-box;
}
#left_col { width:calc(100% * 800 / 1150); float:left; }
#side_col { width:calc(100% * 300 / 1150); float:right; }
.pc .layout2 #left_col { float:right; }
.pc .layout2 #side_col { float:left; }


/* ----------------------------------------------------------------------
 トップページ
---------------------------------------------------------------------- */
/* ---------------------------------
 mainvisual
--------------------------------- */
#mv {
	width:100%;
	height:705px;
	position:relative;
	overflow:hidden;
	background: linear-gradient(
		to bottom,
		#ffffff,
		#f7f9fc
	);
	opacity:0;
}
@media only screen and (max-width:991px) {
	#mv{
		height:560px;
	}
}
@media only screen and (max-width:767px) {
	#mv{
		height:108vw;
	}
}
#mv_inner{
	width:100%;
	height:100%;
	padding:0;
	position:relative;
}
/* ---------------------------------
 mvBg
--------------------------------- */
.mvBg{
	width:100%;
	height:100%;
	position:absolute;
}
#mvBg_gray{
	filter: brightness(108%);
}
#mvBg_color{
	filter: opacity(100%) contrast(113%);
	clip-path: url(#mvLogo_clipath);
}
/* ---------------------------------
 mv_catchcopy
--------------------------------- */
#mv_catchcopy{
	width:86%;
	position:absolute;
	left:100px;
	top:56.5%;
	z-index:11;
	font-family: "playfair-display";
	color:#333;
	font-size:60px;
	font-weight:400;
	line-height:1.33;
	transform:translateY(-50%);
}
#mv_catchcopy>span{
	display:inline-block;
	position:relative;
}
#mv_catchcopy>span .text{
	display:inline-block;
	visibility:hidden;
}
#mv_catchcopy>span .cover{
	content:"";
	width:100%;
	height:90%;
	display:inline-block;
	position:absolute;
	left:0; top:0;
	background-color:#333;
	transform-origin:left top;
	transform:scaleX(0);
}
@media only screen and (max-width:991px) {
	#mv_catchcopy{
		left:60px;
		top:54.5%;
		font-size:50px;
	}
}
@media only screen and (max-width:767px) {
	#mv_catchcopy{
		width:70%;
		left:7%;
		top:60%;
		font-size:9.4vw;
	}
}
/* ---------------------------------
 mv_contact
--------------------------------- */
#mv_contact{
	width:150px;
	height:150px;
	display:block;
	position:absolute;
	bottom:40px;
	right:40px;
	opacity:0;
}
#mv_contact_text{
	width:100%;
	display:block;
	position:absolute;
	animation: round_mvContactText 10s linear 0s infinite normal forwards;
}
#mv_contact_icon{
	width:100%;
	display:block;
	position:absolute;
	transition: transform 0.5s ease;
}
#mv_contact:hover #mv_contact_icon{
	transform: scale(1.2);
}
#mv_contact_icon_path{
	transition: fill 0.5s ease;
}
#mv_contact:hover #mv_contact_icon_path{
	fill:#22bfad;
}
@keyframes round_mvContactText{
    0%{
        transform:rotate(0deg);
    }
    100%{
        transform:rotate(360deg);
    }
}
@media only screen and (max-width:767px) {
	#mv_contact{
		width:25%;
		height:25%;
		bottom:2%;
		right:5%;
	}
}

/* コンテンツビルダー */
.box_list {
	width:100%;
	position:relative;
	font-size:1vw; /* borderの太さをem指定するため */
}
.box-sizer {
	width:25%;
}
.box {
	width:25%;
	display:flex;
	position:relative;
	box-sizing:border-box;
	background:transparent;
	float:left;
}
.box2 {
	width:50%;
}
.box:before {
	content:"";
	width:100%;
	padding-top:150%;
	display:block;
}
.box2:before {
	padding-top:75%;
}

.box .box_inner {
	width:100%;
	height:0%; /* edited */
	display:block;
	position:absolute;
	left:0;
	top:0;
	box-sizing:border-box;
	
	background:none !important;
	
	overflow:hidden;
}

.animin{
	visibility:hidden;
}
@media only screen and (max-width: 767px){
	.animin{
		visibility:visible;
	}
}

.box.anim .box_inner{
	visibility:visible;
	-webkit-animation: wipein_bottom 0.6s linear 0s 1 normal forwards;
	animation: wipein_bottom 0.6s linear 0s 1 normal forwards;
}
#box_news.anim .box_inner{
	-webkit-animation-delay:0s;
	animation-delay:0s;
}
#box_about.anim .box_inner{
	-webkit-animation-delay:0.3s;
	animation-delay:0.3s;
}
#box_service.anim .box_inner{
	-webkit-animation-delay:0.6s;
	animation-delay:0.6s;
}
#box_work.anim .box_inner{
	-webkit-animation-delay:0s;
	animation-delay:0s;
}
#box_recruit.anim .box_inner{
	-webkit-animation-delay:0.3s;
	animation-delay:0.3s;
}
#box_contact.anim .box_inner{
	-webkit-animation-delay:0.6s;
	animation-delay:0.6s;
}
@-webkit-keyframes wipein_bottom{
	0%{			height:0%;}
	100%{		height:100%;}
}
@keyframes wipein_bottom{
	0%{			height:0%;}
	100%{		height:100%;}
}

.box_inner .content{
	width:100%;
	padding-top:150%;
	position:relative;
	box-sizing:border-box;
}
#box_service .content,
#box_work .content{
	padding-top:75%;
}

.box_inner .content .content_inner {
	width:100%;
	height:100%;
	position:absolute;
	left:0; top:0;
	box-sizing:border-box;
	
	border:solid 0.42em transparent;
}

.box_inner .content .content_inner_inner {
	width:100%;
	height:100%;
	padding:0 12%;
	display:flex;
	flex-direction:column;
	justify-content:center;
	align-items:center;
	position:relative;
	box-sizing:border-box;
	background-color:#F3F4F7;
	overflow:hidden;
}
@media only screen and (max-width:1199px) {
	.box_list {
		
	}
	.box-sizer {
		width:50%;
	}
	.box {
		width:50%;
	}
	.box2 {
		width:100%;
	}
	.box:before {
		padding-top:100%;
	}
	.box2:before {
		padding-top:50%;
	}
	
	.box .box_inner {
		
	}
	#box_news.anim .box_inner{
		-webkit-animation-delay:0s;
		animation-delay:0s;
	}
	#box_about.anim .box_inner{
		-webkit-animation-delay:0.3s;
		animation-delay:0.3s;
	}
	#box_service.anim .box_inner{
		-webkit-animation-delay:0s;
		animation-delay:0s;
	}
	#box_work.anim .box_inner{
		-webkit-animation-delay:0s;
		animation-delay:0s;
	}
	#box_recruit.anim .box_inner{
		-webkit-animation-delay:0s;
		animation-delay:0s;
	}
	#box_contact.anim .box_inner{
		-webkit-animation-delay:0.3s;
		animation-delay:0.3s;
	}
	
	.box_inner .content {
		padding-top:100%;
	}
	#box_service .content,
	#box_work .content {
  	  padding-top: 50%;
	}
	
	.box_inner .content .content_inner{
		
	}
	
	.box_inner .content .content_inner_inner {
		
	}
}
@media only screen and (max-width: 767px){
	.box_list {
		
	}
	.box-sizer {
		width:100%;
	}
	.box {
		width:100%;
	}
	.box2 {
		width:100%;
	}
	.box:before {
		display:none;
	}
	.box2:before {
		display:none;
	}
	
	.box .box_inner {
		position:relative;
		-webkit-animation:none !important;
		animation:none !important;
	}
	
	.box_inner .content{
		padding:0;
	}
	#box_service .content,
	#box_work .content {
  	  padding:0;
	}
	
	.box_inner .content .content_inner{
		position:relative;
	}
	
	.box_inner .content .content_inner_inner {
		display:flex;
		padding:18% 0;
	}
	#box_news .content_inner_inner {
		padding:18% 12% 18%;
	}
	#box_service .content_inner_inner,
	#box_work .content_inner_inner {
		padding:18% 0;
	}
}
#box_service .content_inner_inner,
#box_work .content_inner_inner {
	background-color:transparent !important;
	background-repeat:no-repeat;
	background-position:center center !important; /* edited */
	background-size:cover !important; /* edited */
}
#box_service .content_inner_inner{
	background-image:url(https://andinc.co.jp/wp2/wp-content/uploads/2021/01/home_service_catchimage.jpg);
}
#box_work .content_inner_inner{
	background-image:url(https://andinc.co.jp/wp2/wp-content/uploads/2020/12/home_work_catchimage.jpg);
}





/* ----------------------------------------
 hover service work
---------------------------------------- */
#box_service .content_inner_inner:before,
#box_work .content_inner_inner:before{
	content:"";
	width:100%;
	height:100%;
	display:block;
	position:absolute;
	left:0; top:0;
	background-repeat:no-repeat;
	background-position:center center;
	background-size:cover;
	opacity:0;
	
	transition:opacity 0.35s ease;
}
#box_service .content_inner_inner:before{
	background-image:url(/wp2/wp-content/uploads/2021/06/home_service_catchimage_over.jpg);
}
#box_work .content_inner_inner:before{
	background-image:url(/wp2/wp-content/uploads/2021/06/home_work_catchimage_over.jpg);
}
#box_service .content_inner_inner:hover:before,
#box_work .content_inner_inner:hover:before{
	opacity:1;
}

/* ----------------------------------------
 hover about recruit contact
---------------------------------------- */
#box_about .content_inner_inner,
#box_recruit .content_inner_inner,
#box_contact .content_inner_inner{
	transition:background-color 0.35s;
}
#box_about .content_inner_inner:hover,
#box_recruit .content_inner_inner:hover,
#box_contact .content_inner_inner:hover{
	background-color:#e4f2f1 !important;
}

/* ----------------------------------------
 hover catch
---------------------------------------- */
.box_inner .content .catch{
	color:#333;
	text-align:center; /* edited */
}

.box a.content_inner_inner .catch{
	padding: 8px 2px;
	display:inline-block;
	position: relative;
	box-sizing: border-box;
	transition:color 0.2s ease;
}
.box a.content_inner_inner:hover .catch{
	color:#41b7aa;
}
.box a.content_inner_inner .catch:before{
	content: "";
	width: 100%;
	height: 4px;
	display: block;
	position: absolute;
	left: 0;
	bottom: 0;
	background-color: #22bfad;
	transform:scaleX(0);
	transform-origin: top right;
	
	transition:transform 0.25s ease-out;
}
#box_service .catch:before,
#box_work .catch:before{
	background-color: #fff;
}
.box a.content_inner_inner:hover .catch:before{
	transform-origin: top left;
	transform:scaleX(1);
}


.box_list { color:#fff; }
.box_list a { color:#fff; }

/* リンクボタン */
.box_list .link_button a { text-decoration:none; color:#fff; margin:30px 0 0 0; display:inline-block; background:#000; height:45px; line-height:45px; font-size:14px; width:170px; text-align:center; }
.box_list .link_button a:hover { background:#888; color:#fff; }

/* 最新の投稿・お知らせ */
.box_list .catch {
	margin:0; /* edited */
	font-family: "din-2014"; /* edited */
	font-size: 30px; /* edited */
	font-weight: 600; /* edited */
	line-height:1; /* edited */
}
.box_list #box_service .catch,
.box_list #box_work .catch{
	color:#fff; /* edited */
	font-size: 40px; /* edited */
}
.box_list .index_recent_post li { line-height:180%; font-size:12px; margin:0 0 18px 0; }
.box_list .index_recent_post li:last-child { margin:0; }
.box_list .index_recent_post li a {
	display:block;
	font-size: 14px;
	line-height:1.7;
}
.box_list .index_recent_post li a{
	transition:color 0.2s ease;
}
.box_list .index_recent_post li a:hover {
	color:#41b7aa !important;
	text-decoration:underline; /* edited */
}
.box_list .index_recent_post .date { font-size:11px; color:#aaa; }

/* コンテンツボックス */
.box_list .headline { position:absolute; top:0px; left:0px; width:100px; height:100px; line-height:100px; text-align:center; background:rgba(0,0,0,0.3); font-weight: 400; font-size: 14px; }
.box_list .desc p { line-height:2.2; font-size:14px; }
.box_list .image_box a {
  display:block; width:100%; height:100%; background:rgba(0,0,0,0.3);
  -webkit-transition:background-color 0.5s ease; -moz-transition:background-color 0.5s ease; -o-transition:background-color 0.5s ease; transition:background-color 0.5s ease;
}
.box_list .image_box a:hover { background:rgba(0,0,0,0); }
.box_list .image_box .image_content { display:block; width:100%; height:100%; }
.box_list .image_box img { display:none; }

@media only screen and (max-width:1199px) {
	.box_list .headline {
		width:80px;
		height:80px;
		margin:auto;
		left:0;
		right:0;
		font-size:14px;
		line-height:80px;
	}
	.box_list .link_button { text-align:center; }
}


/* ----------------------------------------------------------------------
 制作実績一覧
---------------------------------------------------------------------- */
.work_list {
	width:100%;
	margin-top:-1px;
	position:relative;
	box-sizing: border-box;
	font-size:1vw; /* borderの太さをem指定するため */
}
.work_list .box {
	width:25%;
}
.work_list .box:before {
	padding-top:100%;
}
.work_list .box_inner {
	
}

body.post-type-archive-work .work_list .box_inner {
	height:100%;
}
body.post-type-archive-work .work_list.sorted .box_inner {
	height:0%;
}
body.post-type-archive-work .work_list .animin{
	visibility:visible;
}

body.home .work_list .box:nth-of-type(4n-3).anim .box_inner{
	-webkit-animation-delay:0s;
	animation-delay:0s;
}
body.home .work_list .box:nth-of-type(4n-2).anim .box_inner{
	-webkit-animation-delay:0.3s;
	animation-delay:0.3s;
}
body.home .work_list .box:nth-of-type(4n-1).anim .box_inner{
	-webkit-animation-delay:0.6s;
	animation-delay:0.6s;
}
body.home .work_list .box:nth-of-type(4n).anim .box_inner{
	-webkit-animation-delay:0.9s;
	animation-delay:0.9s;
}

.work_list .box_inner .content {
	padding-top:100%;
}
.work_list .box_inner .content .content_inner{
	
}
.work_list .box_inner .content .content_inner_inner{
	
}
.work_list .content .image:before {
    content: "";
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    background-color: rgba(0,0,0,0.175);
    transition: background-color 0.35s;
}
.work_list .content:hover .image:before {
    background-color: rgba(0,0,0,0);
}
@media only screen and (max-width: 1199px){
	
}
@media only screen and (max-width: 767px){
	.work_list{
		
	}
	.work_list .box {
		width:50%;
	}
	.work_list .box:before {
		
	}
	.work_list .box_inner {

	}
	.work_list .box_inner .content {
		
	}
	.work_list .box_inner .content .content_inner{
		position:absolute;
	}
	.work_list .box_inner .content .content_inner_inner{
		
	}
}
@media screen and (max-width: 550px){
	.work_list{
		font-size:0vw; /* borderの太さをem指定するため */
	}
	.work_list .box {
		width:100%;
	}
	.work_list .box:before {
		
	}
	.work_list .box_inner {

	}
	.work_list .box_inner .content {
		
	}
	.work_list .box_inner .content .content_inner{

	}
	.work_list .box_inner .content .content_inner_inner{

	}
}

body.post-type-archive-work .work_list{
	border:solid 0.42em transparent;
}


/* カテゴリー */
/*
.work_list .category { position:absolute; top:0px; left:0px; z-index:10; }
.work_list .category a {
	background:#333;
	color:#fff;
	font-family: "din-2014";
	font-weight:400;
	font-size:12px;
	padding:0 20px;
	height:30px;
	line-height:30px;
	display:none;
	text-decoration:none;
}
.work_list .category a:first-child { display:block; }
.work_list .category a:hover { background:#888; color:#fff; }
*/
.work_list .category {
	position:absolute;
	top:0px;
	left:0px;
	z-index:10;
	
	background:#333;
	color:#fff;
	font-family: "din-2014"; /* edited */
	font-weight:400;
	font-size:12px;
	padding:0 20px;
	height:30px;
	line-height:30px;
}

/* タイトル */
.work_list .title {
	width:101%;
	position:absolute;
	left:0px;
	bottom:0px;
	font-size:14px;
	font-weight:normal;
	line-height:1.6;
	z-index:10;
	-webkit-transform: translate3d(0,101%,0);
	transform: translate3d(0,101%,0);
	-webkit-transition: -webkit-transform 0.35s;
	transition: transform 0.35s;
}
.work_list .title a {
	width:100%;
	padding:15.8px;
	display:block;
	box-sizing:border-box;
	color:#fff;
	text-decoration:none;
	background:rgba(37,168,153,0.7);
}
.work_list .content:hover .title {
	-webkit-transform: translate3d(0,1px,0);
	transform: translate3d(0,1px,0);
}

/* 画像 */
.work_list .image {
	width:100%;
	display:block;
	position:absolute;
	top:0px;
	left:0px;
}
.work_list .image img {
	width:100%;
	width:-webkit-calc(100% + 1px);
	width:-moz-calc(100% + 1px);
	width:calc(100% + 1px);
	height:auto;
	display:block;
	/*opacity:0.8;*/
	-webkit-transition:-webkit-transform 0.35s;
	transition: transform 0.35s;
	-webkit-backface-visibility: hidden;
}
/*
.work_list .content:hover img {
	opacity:1;
}*/


/* アーカイブページのアニメーション */
/*
#archive_work_list .box.active {
  -webkit-transform: translateY(50px); transform: translateY(50px);
  -webkit-animation: moveUp 0.65s ease forwards 0.5s; animation: moveUp 0.65s ease forwards 0.5s;
}
@-webkit-keyframes moveUp {
	0% { }
	100% { -webkit-transform: translateY(0); opacity: 1; }
}
@keyframes moveUp {
	0% { }
	100% { -webkit-transform: translateY(0); transform: translateY(0); opacity: 1; }
}
*/


/* ソートボタン */
#work_sort_list {
	background:transparent; /* edited */
	width:100%;
	/*height:60px;*/ /* edited */
	margin:0 0 48px;
}
#work_catgory_sort {
	margin:0 auto;
	/*width:calc(100% * 1150 / 1280);*/ /* edited */
	/*max-width:1150px;*/ /* edited */
	text-align:center;
}
#work_catgory_sort li {
	display:inline;
	margin-left:50px; /* edited */
}
#work_catgory_sort li:first-child{
	margin-left:0; /* edited */
}
#work_catgory_sort li a {
	/*height:60px;*/ /* edited */
	padding:0 2px 11px;
	display:inline-block;
	position:relative;
	font-family: "din-2014"; /* edited */
	color:#333; /* edited */
	font-size:14px;
	font-weight: 400; /* edited */
	/*line-height:60px;*/ /* edited */
	letter-spacing: 0.025em; /* edited */
	text-decoration:none;
	text-align:center;
	transition: color 0.2s ease;
}
#work_catgory_sort li a.active, #work_catgory_sort li.current-cat a { color:#333; }
#work_catgory_sort li a:hover{ color:#41b7aa; }
#work_catgory_sort li a.active:hover,
#work_catgory_sort li.current-cat:hover a{
	color:#333;
}

#work_catgory_sort li a:before{
	content: "";
	width: 100%;
	height: 4px;
	display: block;
	position: absolute;
	left: 0;
	bottom: 0;
	background-color: #22bfad;
	
	-webkit-transform:scaleX(0);
	transform:scaleX(0);
	-webkit-transform-origin: top right;
	transform-origin: top right;
	
	-webkit-transition:transform 0.4s cubic-bezier(.473,.427,0,.993);
	transition:transform 0.4s cubic-bezier(.473,.427,0,.993);
}
#work_catgory_sort li a.active:before,
#work_catgory_sort li.current-cat a:before {
	background-color: #333;
}

#work_catgory_sort li:hover a:before{
	background-color: #22bfad;
	-webkit-transform-origin: top left;
	transform-origin: top left;
	-webkit-transform:scaleX(1);
	transform:scaleX(1);
}

#work_catgory_sort li a.active:before,
#work_catgory_sort li.current-cat a:before {
	background-color: #333;
	-webkit-transition:none;
	transition:none;
	-webkit-transform:scaleX(1);
	transform:scaleX(1);
}



/* ----------------------------------------------------------------------
 製作実績ページ
---------------------------------------------------------------------- */
/* アーカイブページ */
.post-type-archive-work #main_col { margin-bottom:0; }


/* 詳細ページ　右側 */
/*#work_side_content .category a {*/
#work_side_content .category {
	font-family: "din-2014";
	font-weight:400;
	font-size:12px;
	background:#333;
	color:#fff;
	height:30px;
	line-height:30px;
	padding:0 15px;
	margin:0 0 26px 0;
	display:none;
	text-decoration:none;
}
/*
#work_side_content .category a:first-child,
#work_side_content .category a:only-child {
	display:inline-block;
}*/
#work_side_content .category{
	display:inline-block;
}
#work_title { font-size:20px; margin:0 0 17px 0; line-height:1.8; }
#work_info { font-size:14px; }
#work_button a { display:inline-block; font-size:12px; background:#bbb; color:#fff; height:45px; line-height:45px; padding:0 50px; text-decoration:none; }

/* 詳細ページ　ナビゲーション */
#work_navigation { text-align:center; font-size:0; margin-top:40px; }
#work_navigation a {
	width:160px;
	height:45px;
	display:inline-block;
	position:relative;
	font-family: "din-2014";
	color:#fff;
	font-size:14px;
	font-weight:400;
	line-height:45px;
	letter-spacing: 0.025em;
	text-decoration:none;
	vertical-align:top;
	background:#bbbbbb;
}
#work_navigation a:hover { background:#000; }
#work_navigation a.archive_link { width:45px; overflow:hidden; }
#work_navigation a.archive_link span { text-indent:-200px; display:block; }
#work_navigation a.prev { margin:0 6px 0 0; }
#work_navigation a.next { margin:0 0 0 6px; }
#work_navigation a:before {
  content:'';
  font-family:'design_plus'; color:#fff; font-size:16px; display:block;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#work_navigation a.archive_link:before {
  content:'\e5c4'; font-size:30px; position:absolute; top:2px; left:8px;
}
#work_navigation a.prev:before {
  content:'\e90f'; position:absolute; top:2px; left:15px;
}
#work_navigation a.next:before {
  content:'\e910'; position:absolute; top:2px; right:15px;
}




/* ----------------------------------------------------------------------
 アーカイブページ
---------------------------------------------------------------------- */

/* 見出し */
#page_header {
	text-align:center;
	margin:0 0 50px 0; /* edited */
}
body.post-type-archive-work #page_header {
	text-align:center;
	margin:0 0 50px 0; /* edited */
}
#page_header .headline {
	font-family: "din-2014"; /* edited */
	font-weight: 600; /* edited */
	font-size:50px;
	line-height:1.2;
	margin:0;
	margin-bottom:1px;
	color:#333; /* edited */
}
#page_header .desc {
	display:none; /* edited */
	font-size:14px;
	line-height:2.3;
	margin:-7px 0 54px 0;
	color:#929697;
}

/* キャッチフレーズ */
#page_header .catch_headline { font-size:40px; line-height:1.7; margin:30px 0 14.7px 0; color:#929699; }
#page_header .catch_desc { font-size:14px; line-height:2.3; margin:0; }


/* ブログ記事一覧 */
#blog_list { margin:0 0 50px 0; }
#blog_list li { float:left; width:33.33333%; width:-webkit-calc(100% / 3); width:-moz-calc(100% / 3); width:calc(100% / 3); position:relative; overflow:hidden; }
#blog_list .title {
  position:absolute; bottom:0px; left:0px; z-index:11; width:100%; font-weight:normal; font-size:14px; line-height:180%;
  padding:15px 20px; background:rgba(0,0,0,0.7);
  -webkit-transform: translate3d(0,101%,0); transform: translate3d(0,101%,0);
  -webkit-transition: -webkit-transform 0.35s; transition: transform 0.35s;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
#blog_list .title h4 { font-size:14px; font-weight:normal; margin:0; line-height:180%; }
#blog_list .title .date { color:#bbb; font-size:12px; }
#blog_list .title a { display:block; width:100%; color:#fff; text-decoration:none; }
#blog_list li:hover .title { -webkit-transform: translate3d(0,1px,0); transform: translate3d(0,1px,0); }
#blog_list .image { display:block; }
#blog_list .image img {
  display:block; width:100%; height:auto;
  -webkit-backface-visibility: hidden;
}
#blog_list li:hover img { }
#blog_list .category { position:absolute; top:0px; left:0px; z-index:10; }
#blog_list .category a { background:#000; color:#fff; font-size:12px; padding:0 20px; height:30px; line-height:30px; display:none; text-decoration:none; }
#blog_list .category a:first-child { display:block; }
#blog_list .category a:hover { background:#888; color:#fff; }


/* ページング */
.page_navi {
	margin:60px 0 0; /* edited */
	font-size:0;
	text-align:center;
}
.page_navi .page-numbers {
	display:inline-block;
	font-size:12px;
	border:none; /* edited */
}
.page_navi .page-numbers:last-child {
	border:none; /* edited */
}
.page_navi a,
.page_navi a:hover,
.page_navi span{
	width:40px;
	height:40px;
	margin:0 5px;
	display:inline-block;
	box-sizing:border-box;
	font-family:"din-2014";
	font-size:12px;
	font-weight:500;
	line-height:38px;
	background:#fff;
}
/*.page_navi li:first-child a, .page_navi li:first-child span { border-left: 1px solid #ccc; }*/
.page_navi a:hover { color:#fff; background:#222; text-decoration:none; }
.page_navi span.dots { background:none; }
.page_navi span.current {
	color:#fff !important; /* edited */
	background:#333 !important; /* edited */
	border-color: #333!important; /* edited */
}
.page_navi p.back { margin:0; text-align:center; }
.page_navi p.back a { background:#fff; color:#333; border:1px solid #ddd; text-decoration:none; display:inline-block; width:200px; height:50px; line-height:50px; text-align:center; font-size:12px; position:relative; padding:0; }
.page_navi p.back a:hover { color:#fff; }
.page_navi p.back a:hover:before { color:#fff; }
.page_navi .prev::before { content: "\e90f"; font-family:"design_plus"; transition:none; font-size:10px; }
.page_navi .next::after { content: "\e910"; font-family:"design_plus"; transition:none; font-size:10px; }


/* ----------------------------------------------------------------------
 お知らせ
---------------------------------------------------------------------- */
/* アーカイブページ */
#news_list li{
	border:1px solid #ddd;
	margin:0 0 30px 0;
	background-color:#fff; /* edited */
	-webkit-transition: background-color 0.35s; /* edited */
	transition: background-color 0.35s; /* edited */
}
#news_list li:last-child{
	margin-bottom:0;
}
#news_list li:hover{
	background-color:#F3F4F7; /* edited */
}
#news_list li .image{
	width:410px;
	height:270px;
	display:block;
	float:left;
}
#news_list li .image img{
	width:100%;
	height:auto;
	display:block;
	opacity:1;
	-webkit-transition: opacity 0.35s, -webkit-transform 0.35s;
	transition: opacity 0.35s, transform 0.35s;
	-webkit-backface-visibility: hidden;
}
#news_list li .title{
	width:calc(100% - 410px);
	height:270px;
	padding:0 5%;
	display:table;
	box-sizing:border-box;
	line-height:180%;
	text-decoration:none;
}

#news_list .title-inner{
	display: table-cell; vertical-align:middle;
}
#news_list li .title time{ display:block; color:#aaa; font-size:12px; margin:0 0 5px 0; }
#news_list li .title span{
    margin-bottom: 10px;
	display: inline-block;
	color:#333;
	font-size:18px; /* edited */
	line-height:1.8;
}

@media only screen and (max-width:1199px) {
	#news_list li .image {
		width:205px;
		height:135px;
	}
	#news_list li .title { width:calc(100% - 205px); height:135px; }
}

/* 詳細ページ */
#archive_news_list { position:relative; }
#archive_news_list .headline { color:#fff; height:50px; line-height:50px; padding:0 25px; margin:40px 0 25px 0; font-size:14px; font-weight:400; }
#archive_news_list .archive_link { position:absolute; top:19px; right:25px; color:#fff; padding:0 25px 0 0; font-size:14px; }
#archive_news_list .archive_link:before {
  content:''; width:15px; height:20px;
  font-family:'design_plus'; color:#fff; font-size:16px; display:block;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
  content:'\e910'; position:absolute; top:0px; right:0px;
}
#archive_news_list li { border:1px solid #ccc; margin:0 0 -1px 0; }
#archive_news_list li a { display:block; padding:25px; text-decoration:none; color:#333;}
#archive_news_list li a .entry-date { display:block; margin:0 0 10px 0; font-size:12px; color:#aaa; }
#archive_news_list li a:hover { background-color:#F3F4F7; }




/* ----------------------------------------------------------------------
 記事
---------------------------------------------------------------------- */
#article { position:relative; }


/* アイキャッチ画像 */
#post_image { padding:0; margin:0 0 42.8px 0; position:relative; }
#post_image img { width:100%; height:auto; display:block; margin:0; z-index:1; }


/* カテゴリー */
#post_meta_top { margin:0 0 30px 0; }
#post_image #post_meta_top { margin:0; position:absolute; bottom:0px; left:0; z-index:2; }
#post_meta_top li { float:left; margin:0; font-size:12px; }
#post_meta_top .category { }
#post_meta_top .category a { height:30px; line-height:30px; padding:0 25px; display:inline-block; text-decoration:none; background:#000; color:#fff; }
#post_meta_top .category a:hover { color:#fff; background:#888; }
#post_meta_top .date {
	height:30px;
	line-height:30px;
	background:#333; /* edited */
	color:#fff;
	padding:0 25px;
	position:relative;
}


/* 記事タイトル */
#post_title {
	padding:0;
	margin:0 0 34.4px;
	font-size:21px;
	line-height:1.5; /* edited */
}


/*  記事本文*/
.post_content a:hover { text-decoration: underline; }


/* SNSボタン */
#single_share_top { margin:-10px 0 15px; }
#single_share_top #share_top1 { padding-top:0; }


/* ページ分割 */
#post_pagination { margin:0 0 50px 0; clear:both; font-size:0; text-align:center; }
#post_pagination h5 { margin:0 0 10px 0; font-size:12px; }
#post_pagination a, #post_pagination p { font-size:12px; display:inline-block; background:#fff; margin:0 -1px 0 0; width:40px; height:40px; line-height:40px; text-align:center; text-decoration:none; color:#333; border:1px solid #ccc; }
#post_pagination p { background:#000; color:#fff; }
#post_pagination a:hover { color:#fff; }


/* メタ情報 */
#post_meta_bottom { margin:0 0 50px; background:#fafafa; padding:25px; }
#post_meta_bottom li { display:inline; margin:0 10px 0 0; padding:0 15px 0 20px; border-right:1px solid #ddd; font-size:12px; line-height:180%; position:relative; }
#post_meta_bottom li:last-child { border:none; margin:0; }
#post_meta_bottom li:before { font-family:'design_plus'; color:#aaa; font-size:13px; display:block; position:absolute; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
#post_meta_bottom li.post_category:before { content:'\e92f'; top:-2px; left:0px; }
#post_meta_bottom li.post_tag:before { content:'\e935'; top:-1px; left:0px; }
#post_meta_bottom li.post_author:before { content:'\e90d'; top:-2px; left:0px; }
#post_meta_bottom li.post_comment:before { content:'\e916'; font-size:16px; top:-2px; left:0px; }


/* 次の記事、前の記事 */
#previous_next_post { margin:0 0 50px 0; display:table; border-collapse:collapse; width:100%; }
#previous_next_post .prev_post, #previous_next_post .next_post { float:left; width:50%; }
#previous_next_post .prev_post { margin-right:-1px; }
#previous_next_post .next_post { }
#previous_next_post a {
  border:1px solid #ddd; display:table-cell; padding:0 25px 0 60px; color:#333; font-size:14px; height:120px; line-height:180%; color:#333; text-decoration:none; position:relative; vertical-align:middle;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
#previous_next_post .next_post a { padding:0 60px 0 25px; }
#previous_next_post a:hover { background:#f7f7f7; color:#333; }
#previous_next_post .prev_post a:before {
  content:''; width:15px; height:20px;
  font-family:'design_plus'; color:#aaa; font-size:16px; display:block;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
  content:'\e90f'; position:absolute; top:0px; bottom:0px; left:20px; margin:auto;
}
#previous_next_post .next_post a:before {
  content:''; width:15px; height:20px;
  font-family:'design_plus'; color:#aaa; font-size:16px; display:block;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
  content:'\e910'; position:absolute; top:0px; bottom:0px; right:20px; margin:auto;
}


/* 広告 */
#single_banner_area { margin:0 0 50px; text-align:center; }
#single_banner_area .single_banner_left { display:inline-block; margin:0 10px 0 0; }
#single_banner_area .single_banner_right { display:inline-block; margin:0 0 0 10px; }
#single_banner_area img { max-width:100%; height:auto; display:block; }
#single_banner_area.one_banner .single_banner_left { float:none; margin:0 auto; }
#single_banner_area.one_banner img { margin:0 auto; }


/* 広告（ページ下部） */
#single_banner_area_bottom { margin:0 0 50px; text-align:center; }
#single_banner_area_bottom .single_banner_left { display:inline-block; margin:0 10px 0 0; }
#single_banner_area_bottom .single_banner_right { display:inline-block; margin:0 0 0 10px; }
#single_banner_area_bottom img { max-width:100%; height:auto; display:block; }
#single_banner_area_bottom.one_banner .single_banner_left { float:none; margin:0 auto; }
#single_banner_area_bottom.one_banner img { margin:0 auto; }


/* 広告（ショートコードver） */
#single_banner_area2 { margin:0 0 30px 0; text-align:center; }
#single_banner_area2 .single_banner_left { display:inline-block; margin:0 10px 0 0; }
#single_banner_area2 .single_banner_right { display:inline-block; margin:0 0 0 10px; }
#single_banner_area2 img { max-width:100%; height:auto; display:block; }
#single_banner_area2.one_banner .single_banner_left { float:none; margin:0 auto; }
#single_banner_area2.one_banner img { margin:0 auto; }


/* 関連記事 */
#related_post { margin:0 0 20px 0; }
#related_post .headline { height:50px; line-height:50px; font-size:14px; margin:0 0 25px 0; padding:0 25px; background:#000; color:#fff; }
#related_post ol {
	margin:0; position:relative; font-size:0; display: -webkit-box; display: -webkit-flex; display: -ms-flexbox; display: flex;-webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap;
}
#related_post li {
	margin-right:calc(100% * 26 / 800); width: calc(100% * 180 / 800); margin-bottom: 25px;
}
#related_post li:nth-child(4n) { margin-right:0; }
#related_post li .image { margin:0 0 15px 0; display:block; overflow:hidden; }
#related_post li a.image img {
  width:100%; height:auto;
  -webkit-transition: all 0.35s ease-in-out; -moz-transition: all 0.35s ease-in-out; transition: all 0.35s ease-in-out;
  -webkit-transform: scale(1); -moz-transform: scale(1); -ms-transform: scale(1); -o-transform: scale(1); transform: scale(1);
}
#related_post li .image:hover img {
  -webkit-transform: scale(1.2); -moz-transform: scale(1.2); -ms-transform: scale(1.2); -o-transform: scale(1.2); transform: scale(1.2);
}
#related_post li .title { font-size:14px; line-height:160%; font-weight:400; }
#related_post li .title a { display:block; }
#related_post li .title a:hover { text-decoration:none; }




/* ----------------------------------------------------------------------
 ヘッダー
---------------------------------------------------------------------- */
#header {
	width:100%;
	/*height:70px;*/ /* edited */
	background:#fff;
	position:relative;
	z-index:20;
}
#header_inner {
	/*height:70px;*/ /* edited */
	/* width:calc(100% * 1150 / 1280); */ /* edited */
	/* max-width:1150px; */ /* edited */
	padding:0 50px; /* edited */
	margin:0 auto;
	position:relative;
	box-sizing: border-box; /* edited */
}
.home #header_inner {
	/*height:110px;*/
}
.home.header_fix #header_inner {
	height:70px;
}
.home #header {
	position:absolute;
	z-index:102;
	background:none;
}


/* 固定ヘッダー */
.pc .header_fix #header {
	height: 70px;
	position:fixed;
	top:0px;
	left:0px;
	z-index:200;
	/*box-shadow:0 0 5px 0 rgba(0,0,0,0.4);*/ /* edited */
	animation: slideDown 0.5s ease; -ms-animation: slideDown 0.5s ease; -webkit-animation: slideDown 0.5s ease; -moz-animation: slideDown 0.5s ease;
}
@-webkit-keyframes slideDown {
   0% { top:-50px; }
  100% { top:0px; }
}
@keyframes slideDown {
  0% { top:-50px; }
  100% { top:0px; }
}


/* ロゴ */
.pc #logo_text, .pc #logo_image {
	position:absolute;
	left:50px; /* edited */
	top:36px; /* edited */
	/*-webkit-transform:translateY(-50%);
	-ms-transform:translateY(-50%);
	transform:translateY(-50%);*/ /* edited */
}
.pc #header_logo .logo { font-size:20px; margin:0; }
.pc #header_logo .logo a { text-decoration:none; }
.pc #logo_image img.pc_logo_image { display:block; }
.pc #logo_image img.mobile_logo_image { display:none; }


/* グローバルメニュー */
.pc #global_menu {
	padding-top:53px; /* edited */
	float:right;
}

.pc #global_menu > ul {
	/*height:70px;*/ /* edited */
	font-size:0;
	position:relative;
}
.pc #global_menu > ul {
	font-family: "din-2014";
    font-weight: 400;
	letter-spacing:0.1em;
}
.pc #global_menu > ul > li {
	margin-left:22px;
	font-size:1%;
	position:relative;
	display:inline-block;
}
.pc #global_menu > ul > li:first-child {
	margin-left:0;
}
.pc #global_menu > ul > li > a {
	padding:0 2px 11px;
	display:block;
	position:relative;
	box-sizing:border-box;
	font-size:14px;
	text-decoration:none;
	letter-spacing: 0.025em;
	transition: color 0.2s ease;
}
.pc #global_menu > ul > li.current-menu-item > a {
    color: #333;
}
.pc #global_menu > ul > li > a:before {
	content: "";
	width: 100%;
	height: 4px;
	display: block;
	position: absolute;
	left: 0;
	bottom: 0;
	background-color: #22bfad;
	
	-webkit-transform:scaleX(0);
	transform:scaleX(0);
	-webkit-transform-origin: top right;
	transform-origin: top right;
	
	-webkit-transition:transform 0.4s cubic-bezier(.473,.427,0,.993);
	transition:transform 0.4s cubic-bezier(.473,.427,0,.993);
}
.pc #global_menu > ul > li:hover > a:before {
	-webkit-transform-origin: top left;
	transform-origin: top left;
	-webkit-transform:scaleX(1);
	transform:scaleX(1);
}
.pc #global_menu > ul > li.current-menu-item > a:before {
    background-color: #333;
	-webkit-transition:none;
	transition:none;
	-webkit-transform:scaleX(1);
	transform:scaleX(1);
}

.pc .single-work #global_menu #menu-item-31 > a:before,	/* WORK詳細 */
.pc .single-news #global_menu #menu-item-32 > a:before,	/* NEWS詳細 */
.pc .page-id-398 #global_menu #menu-item-33 > a:before{	/* RECRUIT ENTRY */
	-webkit-transition:none;
	transition:none;
	-webkit-transform:scaleX(1);
	transform:scaleX(1);
}


.pc .home #global_menu > ul > li > a {
	/*height:110px;*/ /* edited */
	/*line-height:110px;*/ /* edited */
	transition:color 0.2s ease;
}
.pc .home.header_fix #global_menu > ul > li > a {
	/*height:70px;*/
	/*line-height:70px;*/
}
.pc #global_menu > ul > li > a:hover {
	color:#41b7aa !important;
}
.pc #global_menu > ul > li.current-menu-item > a:hover {
	color:#333 !important;
}

.pc #global_menu ul ul { display:none; width:200px; position:absolute; top:70px; left:10px; margin:0; padding:0; }
.pc #global_menu ul ul ul { left:100%; top:0; margin:0; border:none; }
.pc #global_menu ul ul li { line-height:150%; padding:0; margin:0; text-align:left; position:relative; display:block; }
.pc #global_menu ul ul a { display:block; font-size:14px; border:none; position:relative; padding:14px 20px 12px 20px; height:auto; line-height:160%; margin:0; text-align:left; box-shadow:none; }
.pc #global_menu ul ul a:hover { text-decoration:none; border:none; }

.pc #global_menu ul ul li.menu-item-has-children > a:before { margin:0; display:block; top:20px; right:10px; position:absolute; content:""; width:0; height:0; border-style:solid; border-width:4px 0px 4px 4px; border-color:transparent transparent transparent #fff; }
.pc #global_menu li li.current-menu-item > a {  }


/* パンくずリンク */
#bread_crumb {
	margin:0;
	height:72px;
	display:none; /* edited */
	line-height:72px;
	overflow:hidden;
}
#bread_crumb ul { width:calc(100% * 1150 / 1280); max-width:1150px; margin:0 auto; }
#bread_crumb li.home { padding:0; }
#bread_crumb li.home a {
  float:left; height:15px; width:13px; line-height:15px; display:block; position:relative;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
#bread_crumb li.home a span { text-indent:100%; white-space:nowrap; overflow:hidden; display:block; }
#bread_crumb li.home a:before {
  font-family:'design_plus'; color:#aaa; font-size:14px; display:block; position:absolute; top:2px; left:0; width:17px; height:72px; line-height:72px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#bread_crumb li.home:after { display:none; }
#bread_crumb li.home a:before { content:'\e90c'; }
#bread_crumb li.home a:hover:before { color:#fff; }
#bread_crumb li { color:#999; font-size:12px; display:inline; padding:0 15px 0 0; margin:0 0 0 15px; line-height:1.7; position:relative; }
#bread_crumb li:after {
  font-family:'design_plus'; content:'\e910'; color:#999; font-size:9px; display:block; position:absolute; left:-20px; top:2px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#bread_crumb li a { color:#aaa; }




/* ----------------------------------------------------------------------
 フッター
---------------------------------------------------------------------- */
#footer_top { background:#fff; }
#footer_top_inner {
	width:100%; /* edited */
	max-width:none; /* edited */
	margin:0 auto;
	padding:44px 50px 54px; /* edited */
	box-sizing:border-box; /* edited */
}
#footer_menu_widget_area {
	/*float:right;*/
	/*width: 76%; */
	position: absolute;
    left: 285px;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
@media only screen and (max-width: 767px){
	#footer_menu_widget_area {
		position: static;
	}
}
.no_footer_menu #footer_menu_widget_area { width:730px; }

/* 住所 */
#footer_address {
	float:left;
	width:235px;
	font-size:12px; margin:0;
}
.no_footer_menu #footer_address { width:300px; }
#footer_address .logo { margin:-2px 0 5px 0; } /* edited */
#footer_address .logo a { display:inline-block; }
#footer_address .logo img { display:block; }
#footer_address .info { line-height:2.2; }


/* SNSボタン */
#footer_social_link { margin:0 0 0 -9px; } /* edited */
#footer_social_link li { float:left; margin:0 2px 0 0; position:relative; }
#footer_social_link li a {
  display:block; text-indent:-200px; overflow:hidden; width:30px; height:30px; position:relative;
  -webkit-transition-property:none; -moz-transition-property:none; -o-transition-property:none;
}
#footer_social_link li:before {
	width:17px;
	height:17px;
	display:block;
	position:absolute;
	top:10px;
	left:9px;
	font-family:'design_plus';
	color:#f5f5f5; /* edited */
	font-size:17px;
	line-height:17px;
	-webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
#footer_social_link li.twitter:before { content:'\e904'; }
#footer_social_link li.facebook:before { content:'\e902'; }
#footer_social_link li.insta:before { content:'\ea92'; top:11px; }
#footer_social_link li.rss:before { content:'\e90b'; }
#footer_social_link li.twitter:hover:before,
#footer_social_link li.facebook:hover:before,
#footer_social_link li.insta:hover:before,
#footer_social_link li.rss:hover:before { color:#fff; }


/* メニュー */
#footer_menu {
	width:190px; font-size:0; margin:0; width:calc(100% * 190 / 855);
}
#footer_menu .headline {
	margin:0 0 25px 0;
	display:none; /* edited */
	font-size:16px;
	font-weight: bold;
}
.footer_menu {
	width:100%;
	margin:0;
	display:inline-block;
	vertical-align:top;
}
@media only screen and (max-width: 767px){
	.footer_menu {
		margin-bottom:18px;
	}
}
#footer_menu.has_two_menu .footer_menu { width:calc(100% * 85 / 190); margin:0 20px 0 0; }
#footer_menu.has_two_menu .footer_menu:last-child { margin:0; }
.footer_menu li { margin:0 0 15px 0; font-size:12px; line-height:160%; }
.footer_menu a { display:block; }
.footer_menu a:hover { text-decoration:none; }


/* ウィジェット */
#footer_left_widget { width:calc(100% * 230 / 855); }
#footer_right_widget { width:calc(100% * 300 / 855); }
.no_footer_menu #footer_left_widget { float:left; width:300px; }
.footer_widget .footer_headline { margin:0 0 25px 0; font-size:16px; font-weight: bold; }

.footer_widget .side_widget { margin:0; font-size:12px; position:relative; margin-bottom:30px; }
.footer_widget .widget_calendar { border:none; padding:0; }
.footer_widget .widget_search #search-box, .footer_widget .widget_search #s, .footer_widget .side_widget.google_search #s { background:#e2e2e2; }
.footer_widget .styled_post_list1 li { margin-bottom:20px; padding-bottom:0; border-bottom:none; }
.footer_widget .styled_post_list1 li:last-child { margin-bottom:0; }
.footer_widget .styled_post_list1 li .image { width:70px; height:70px; }
.footer_widget .styled_post_list1 .title { font-size:12px; }
.footer_widget .project_list_widget li { width:80px; height:80px; }


/* フッター下部 */
#footer_bottom {
	width:100%;
	/*height:50px;*/
	background-color:#333 !important;
	border-top:solid 1px #5c5c5c; /* edited */
}
#footer_bottom_inner {
	width:100%; /* edited */
	max-width:none; /* edited */
	/*height:50px;*/
	padding: 20px 50px; /* edited */
	margin:0 auto;
	position:relative;
	box-sizing:border-box; /* edited */
}
#footer_bottom a { }


/* フッター下部のメニュー */
#footer_menu_bottom {
	float:left;
	/*margin:20px 0 0 0;*/
}
#footer_menu_bottom li { float:left; font-size:12px; margin:0 15px 0 0; padding:0 15px 0 0; border-right:1px solid #fff; }
#footer_menu_bottom li:last-child { border:none; margin:0; padding:0; }
#footer_menu_bottom li a {
	padding:0 2px 0;
	display:block;
	position:relative;
	font-family: "din-2014";
	color:#f5f5f5; /* edited */
	font-weight:400;
	line-height: 1.6;
	letter-spacing: 0.025em;
}


/* コピーライト */
#copyright {
	float:right;
	/*margin:20px 0 0 0;*/
	font-family: "din-2014";
	color:#f5f5f5;
	font-size:12px;
	line-height: 1.6;
	letter-spacing: 0.025em;
	background-color:transparent !important;
}
#copyright a{
	padding:0;
	display:inline-block;
	position:relative;
	color:#f5f5f5;
}

#footer_menu_bottom li a:before,
#copyright a:before{
	content: "";
	width: 100%;
	height: 1px;
	display: block;
	position: absolute;
	left: 0;
	bottom: 0;
	background-color: rgba(255,255,255,0.8);
	
	-webkit-transform:scaleX(0);
	transform:scaleX(0);
	-webkit-transform-origin: top right;
	transform-origin: top right;
	
	-webkit-transition:transform 0.4s cubic-bezier(.473,.427,0,.993);
	transition:transform 0.4s cubic-bezier(.473,.427,0,.993);
}
#footer_menu_bottom li a:hover:before,
#copyright a:hover:before{
	-webkit-transform-origin: top left;
	transform-origin: top left;
	-webkit-transform:scaleX(1);
	transform:scaleX(1);
}


/* ページ上部へ戻るボタン */
.pc #return_top a { position:relative; display:block; height:50px; width:100%; text-decoration:none; background:#d5d7d6; }
.pc #return_top span { text-indent:100%; white-space:nowrap; overflow:hidden; display:block; }
.pc #return_top a:before {
  font-family:'design_plus'; color:#fff; font-size:18px; display:block; position:absolute; width:23px; height:23px;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
.pc #return_top a:before { content:'\e911'; top:19px; left:0; right:0; margin:auto; }


/* ローディングアイコン */
#site_loader_overlay {
  position: fixed; background:#fff; background:rgba(255,255,255,1); top:0px; left:0px; bottom:0px; right:0px; z-index: 99999; opacity:1;
}
#site_loader_spinner {
  width:60px; height:60px; border-radius:100%; margin-top:-30px; margin-left:-30px; border:4px solid #ccc; border-top-color:#666; box-sizing:border-box; position:absolute; top:50%; left:50%;
  animation:loading 1.2s linear infinite; -webkit-animation:loading 1.2s linear infinite;
}
@keyframes loading{
  0% { transform:rotate(0deg); }
  100% { transform:rotate(360deg); }
}
@-webkit-keyframes loading{
  0% { -webkit-transform:rotate(0deg); }
  100% { -webkit-transform:rotate(360deg); }
}




/* ----------------------------------------------------------------------
 サイドコンテンツ
---------------------------------------------------------------------- */
/* 基本設定 */
.side_widget { margin:0 0 50px 0; font-size:12px; position:relative; }
.side_widget:last-child, .side_widget:only-child  { margin:0; }
.side_headline { height:50px; line-height:50px; font-size:14px; margin:0 0 30px 0; background:#333; color:#fff; padding:0 20px; font-weight: 400; }
.side_widget ul { margin:0; }
.side_widget li ul { margin:10px 0 0 0; }
.side_widget li { line-height:200%; padding:2px 0; margin:0 0 10px 0; }
.side_widget a { }
.side_widget a:hover { text-decoration:none; }
.side_widget img { height:auto; max-width:100%; }


/* 広告 */
.ml_ad_widget { margin:0 0 50px 0; border:none; padding:0; background:none; }
.ml_ad_widget img { height:auto; max-width:inherit;  margin:0 auto; display:block; }


/* カレンダー */
.widget_calendar { border:1px solid #ddd; padding:15px; }
.widget_calendar .side_headline { margin:-16px -16px 20px; position:relative; }
#wp-calendar { margin:0 auto; width:100%; font-size:11px; border-collapse:separate; table-layout:fixed; }
#wp-calendar th, #wp-calendar td { color:#333; padding:2px; line-height:340%; text-align:center; }
#wp-calendar td a { display:block; margin:0; padding:0; text-decoration:none; color:#333; background-color:#eee; }
#wp-calendar td a:hover { text-decoration:none; color:#fff; background:#ccc; }
#wp-calendar caption { padding:7px 0; }
#wp-calendar thead th, #wp-calendar tfoot td { border:none; padding:0; line-height:200%; }
#wp-calendar #prev, #wp-calendar #next { line-height:300%; }
#wp-calendar #prev a, #wp-calendar #next a { text-decoration:none; background:none; color:#333; }
#wp-calendar #prev a:hover, #wp-calendar #next a:hover { color:#fff; background:#ccc; }
#wp-calendar td#today { font-weight:bold; }


/* デザインされた記事一覧１ */
.styled_post_list1_widget { }
.styled_post_list1 { margin:0; padding:0; }
.styled_post_list1 li { margin:0 0 30px 0; padding:0 0 30px 0; background:none; border-bottom:1px solid #ddd; }
.styled_post_list1 li:last-child { border:none; padding:0; margin:0; }
.styled_post_list1 .image { float:left; display:block; margin:0 20px 0 0; overflow:hidden; width:100px; height:100px; position:relative; z-index:2; }
.styled_post_list1 .image img {
  width:100px; height:100px; -webkit-backface-visibility:hidden; backface-visibility:hidden; max-width:none;
  -webkit-transition: all 0.35s ease-in-out; -moz-transition: all 0.35s ease-in-out; transition: all 0.35s ease-in-out;
  -webkit-transform: scale(1); -moz-transform: scale(1); -ms-transform: scale(1); -o-transform: scale(1); transform: scale(1);
}
.styled_post_list1 .image:hover img {
  -webkit-transform: scale(1.2); -moz-transform: scale(1.2); -ms-transform: scale(1.2); -o-transform: scale(1.2); transform: scale(1.2);
}
.styled_post_list1 .info { }
.styled_post_list1 .title { font-size:14px; margin:0; padding:0; display:block; font-weight:400; line-height:1.8; }
.styled_post_list1 .date { margin:0 0 14.4px 0; position:relative; display:block; line-height:100%; color:#888; }


/* タブ記事 */
.tab_post_list_widget .styled_post_list1 li { padding:20px 20px 20px; margin:0; }
.widget_tab_post_list_button a {
  display:inline-block; padding:15px 0; width:50%; text-align:center; border:1px solid #ddd; float:left; margin-bottom:-1px; position:relative; background:#f7f7f7; text-decoration:none;
  -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box;
}
.widget_tab_post_list_button a.tab1 { border-right:0; }
.widget_tab_post_list_button a.active { background:#fff; border-bottom:1px solid #fff;}
.widget_tab_post_list { border:1px solid #ddd; }
.widget_tab_post_list2 { display:none; }


/* 開閉式カテゴリー一覧 */
.tcdw_category_list_widget { border-bottom:none; }
.tcdw_category_list_widget .side_headline { margin:0; }
.tcdw_category_list_widget li { border-left:1px solid #ddd; border-right:1px solid #ddd; }
.collapse_category_list ul { margin:0; padding:0; }
.collapse_category_list li ul { margin:0; padding:0; }
.collapse_category_list li { margin:0; padding:0; }
.collapse_category_list li li { margin:0; padding:0; border-right: none; border-left: none;  }
.collapse_category_list li a {
  border-bottom:1px solid #ddd; display:block; padding:12px 20px; margin:0; text-decoration:none; position:relative; color:#333; overflow:hidden;
  -webkit-transition-property:none; -moz-transition-property:none; -o-transition-property:none;
}
.collapse_category_list li a .count { float:right; top:0px; position:relative; background:#f2f2f2; padding:0 10px; min-width:15px; text-align:center; font-size:11px; border-radius:2px; }
.collapse_category_list li li a .count { background:#ccc; color:#fff; }
.collapse_category_list li li li a .count { }
.collapse_category_list .parent_category a.active { margin:0; }
.collapse_category_list .children { display:none; margin-top:-4px; }
.collapse_category_list .children a { padding-left:22px; margin:0; background:#f6f6f6; }
.collapse_category_list ul .children a { padding-left:33px; }
.collapse_category_list li a:hover { background:#e2e2e2; }
.collapse_category_list li a:hover .count { background:#000; color:#fff; }


/* 検索 */
.widget_search label { display:none; }
.widget_search #search-box, .widget_search #s, .side_widget.google_search #s { width:calc(100% - 40px); height:40px; margin:0; border:none; background:#f2f2f2; padding:0 10px; }
.widget_search #search-btn input, .widget_search #searchsubmit { border:none; width:40px; height:40px; background:#000 url(img/common/icon_search.png) no-repeat center; cursor:pointer; display:block; float:right; text-indent:-300%; overflow:hidden; }
.side_widget.google_search #searchsubmit { font-family: 'design_plus'; color:#ddd; font-size:18px; border:none; width:40px; height:40px; background:#222; cursor:pointer; display:block; float:right; overflow:hidden; }
.widget_search #search-btn input:hover, .widget_search #searchsubmit:hover, .side_widget.google_search #searchsubmit:hover { background-color:#666; }
.pc .three_column .widget_search #search-box, .pc .three_column .widget_search #s, .pc .three_column .side_widget.google_search #s { width:176px; }


/* アーカイブ、カテゴリードロップダウンメニュー */
.widget_archive, .widget_categories, .tcdw_archive_list_widget { background:#fff; padding:17px 17px 15px; }
.widget_archive { border:1px solid #ddd; border-bottom:none; padding:17px 0 0; }
.widget_archive ul  { margin:0; padding:0; }
.widget_archive ul li {
  border-bottom:1px solid #ddd; margin:-17px 0 15px; display:block; padding:12px 17px; margin:0; text-decoration:none; position:relative; color:#333; overflow:hidden;
  -webkit-transition-property:none; -moz-transition-property:none; -o-transition-property:none;
}
.widget_archive .side_headline, .widget_categories .side_headline, .tcdw_archive_list_widget .side_headline { margin:-17px -17px 15px; position:relative; }
.widget_archive .side_headline { margin:-17px 0 0; }
.widget_archive select, .widget_categories select, .tcd_archive_dropdown select { border:1px solid #ddd; padding:12px 10px; width:100%; margin:0; font-size:14px; }
.widget_archive select { border:none; border-bottom:1px solid #ddd; padding:12px; }
.widget_archive label, .widget_categories label { display:none; }
.widget_archive select option, .widget_categories select option, .tcd_archive_dropdown option { background:#fff; color:#333; }


/* デフォルトの最近の記事 */
.widget_recent_entries li { border-bottom:1px dotted #ccc; padding:0 0 15px 0; }
.widget_recent_entries li:last-child { border:none; padding:0; }


/* 制作実績 */
.work_list_widget { overflow:hidden; }
.work_list_widget .side_headline { margin-bottom:5px; }
.work_list_widget ol { position:relative; }
.work_list_widget li { float:left; margin:0 2% 2% 0; padding:0 !important; width:32%; height:32%; overflow:hidden; }
.work_list_widget li:nth-child(3n) { margin-right:0; }
.work_list_widget .image { display:block; }
.work_list_widget .image img { display:block; max-width:initial; width:100%; height:auto; }




/* ----------------------------------------------------------------------
 コメント
---------------------------------------------------------------------- */
/* 基本設定 */
#comments { font-size:12px; margin:0; }
#comment_headline { height:50px; line-height:50px; font-size:14px; margin:0 0 25px 0; padding:0 25px; background:#000; color:#fff; }
#comment_area, #trackback_area { margin:15px 0 20px; padding:0 0 5px 0; }
#trackback_area { display:none; }


/* コメント・トラックバックのタブ */
#comment_header { position:relative; margin:0 0 25px; }
#comment_header ul { margin:0; }
#comment_header ul li { float:left; text-align:center; margin:0; width:50%; }
#comment_header ul li a, #comment_header ul li p { font-size:11px; padding:15px 15px; line-height:180%; display:block; color:#333; text-decoration:none; border:1px solid #ccc; }
#comment_header ul li a:hover { color:#fff !important; background:#333; }
#comment_header ul li.comment_switch_active a, #comment_header #comment_closed p { color:#fff; position:relative; background:#333; }
#comment_header ul li.comment_switch_active a:after, #comment_header #comment_closed p:after { position:absolute; bottom:-17px; left:195px; content:""; width:0; height:0; border-width:10px; border-style:solid; border-color:#333 transparent transparent transparent; }


/*  コメントの基本部分 */
.commentlist { list-style-type:none; margin:0; padding:0; }
.comment { border:1px solid #ccc; color:#777; margin:0 0 15px; padding:15px 20px 0; background:#fff; }
#comments .post_content { margin:20px 0 0; padding:0; background:none; }
.admin-comment { }


/* コメントの情報部分 */
.comment-meta { position:relative; margin:0 0 10px 0; }

.comment-meta-left { float:left; width:400px; }
#comments .avatar { float:left; margin:0 10px 0 0; background:#fff; width:40px; height:40px; }
.comment-name-date { padding:3px 0 0 0; height:37px; }

a.admin-url { text-decoration:underline; }
a.guest-url { text-decoration:underline; }

.comment-name-date { margin:0; }
.comment-date { font-size:11px; color:#757676; margin:10px 0 0 0; }

.comment-act { background:url(img/common/arrow3.gif) no-repeat left; font-size:11px; position:absolute; right:0px; padding:0 0 0 10px; margin:5px 0 0 0; }
.comment-act li { display:inline; margin:0; }
.comment-reply a, .comment-reply a:visited { border-right:1px solid #aaa; padding:0 10px 0 0; margin:0 6px 0 0; }
.comment-edit a, .comment-edit a:visited { border-left:1px solid #aaa; padding:0 0 0 10px; margin:0 0 0 6px; }


/* コメント本文 */
#comments .post_content p { margin:0 0 15px 0; }
#comments .post_content blockquote span { margin:0 0 -1em 0; display:block; }


/* メッセージ、警告文 */
.comment-note { display:block; font-size:11px; margin:0 0 1em 0; color:#33a8e5; border:1px solid #94ddd4; padding:10px 15px; background:#d6f4f0; }
.comment_closed { border:1px solid #ccc; text-align:center; margin:0 35px 15px 0; padding:15px; background:#fefefe; }
.no_comment { padding-bottom:15px; }


/* トラックバック */
.trackback_time { font-size:11px; color:#757676; margin:0 0 7px 0px; }
.trackback_title { margin:2px 0 8px 0; margin:0 0 10px 0px; line-height:160%; }

#trackback_url_area { margin:0; }
#trackback_url_area label { display:block; margin:0 0 10px 0; font-size:11px; }
#trackback_url_area input { border:1px solid #ccc; background:#fafafa; padding:10px; width:100%; font-size:11px; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; box-sizing:border-box; }


/* ページナビ */
#comment_pager { margin:0 0 10px; height:24px; }
#comment_pager a, #comment_pager span { display:inline; float:left; margin:0 10px 0 0; }
#comment_pager .current { text-decoration:underline; }


/* コメントフォーム */
.comment_form_wrapper { border:1px solid #ccc; margin:0 0 0px; padding:15px; background:#fff; }
.comment .comment_form_wrapper { margin:0 0 20px; }

#cancel_comment_reply  { background:url(img/common/arrow3.gif) no-repeat left center; margin:0 0 1em 0; padding:0 0 0 10px; }

#comment_user_login p { padding:0 0 0 1px; margin:0; line-height:100%; }
#comment_user_login span { margin:0 0 0 40px; }

#comment_login { margin:0; padding:3px 30px 10px 30px; }
#comment_login p { margin:0; padding:12px 0 11px 36px; line-height:100%; }
#comment_login a { margin:0 0 0 20px; padding:0 0 0 20px; background:url(img/common/arrow3.gif) no-repeat 10px 3px; }

#guest_info { padding:0; width:100%; }
#guest_info div { margin:0 0 12px 0; text-align:left; }
#guest_info input { margin:0; padding:5px 0; border:1px solid #ccc; width:100%; background:#fff; color:#777; }
#guest_info input:focus { border:1px solid #e48898; }
#guest_info label { display:block; margin:0 0 5px 0; padding:0 0 0 0; font-size:11px; color:#888;}
#guest_info span { color:#666; margin:0 10px 0 0; }

#comment_textarea textarea { margin:15px 0 0; width:100%; height:150px; border:1px solid #ccc;
                             background:#fff; color:#777; font-size:11px; overflow:auto; }
#comment_textarea textarea:focus { border:1px solid #e48898; }

#submit_comment_wrapper { text-align:center; }
#submit_comment {
  background:#aaa; border:none; cursor:pointer; color:#fff; font-size:14px; width:200px; height:50px; margin:15px auto 0; display:block;
  -webkit-transition: background-color 200ms ease-in-out; -moz-transition: background-color 200ms ease-in-out; -o-transition: background-color 200ms ease-in-out; -ms-transition: background-color 200ms ease-in-out; transition: background-color 200ms ease-in-out;
}
#submit_comment:hover { background:#e48898; }

#input_hidden_field { display:none; }


/* パスワード保護 */
.password_protected { text-align:center; margin:0 38px 30px; padding:10px 20px; color:#fff; background:#3db4b2; border-radius:5px; }
.password_protected p { font-size:12px; margin:0; line-height:160%; }




/* ----------------------------------------------------------------------
 WordPress プリセットスタイル
---------------------------------------------------------------------- */
/* alignment */
.post_content .alignright { float:right; }
.post_content .alignleft { float:left; }
.post_content .aligncenter { display:block; margin-left:auto; margin-right:auto; margin-bottom:7px; }
.post_content blockquote.alignleft, .post_content img.alignleft { margin:7px 24px 7px 0; }
.post_content .wp-caption.alignleft { margin:7px 14px 7px 0; }
.post_content blockquote.alignright, .post_content img.alignright { margin:7px 0 7px 24px; }
.post_content .wp-caption.alignright { margin:7px 0 7px 14px; }
.post_content blockquote.aligncenter, .post_content img.aligncenter, .post_content .wp-caption.aligncenter { margin-top:7px; margin-bottom:7px; }


/* text and headline */
.post_content p {
	margin:0 0 40px 0;
	font-size:14px; /* edited */
	line-height:2.3;
}
.post_content p:last-child{
	margin-bottom:0; /* edited */
}
.post_content h1, .post_content h2, .post_content h3, .post_content h4, .post_content h5, .post_content h6 { clear:both; line-height:1.2; font-weight:600; margin:0 0 10px 0; padding:10px 0 0 0; }
.post_content h1 { font-size:150%; }
.post_content h2 { font-size:140%; }
.post_content h3 { font-size:130%; }
.post_content h4 { font-size:120%; }
.post_content h5 { font-size:110%; }
.post_content h6 { font-size:100%; }


/* image */
.post_content img[class*="align"], .post_content img[class*="wp-image-"], .post_content img[class*="attachment-"], .post_content img.size-full, .post_content img.size-large, .post_content .wp-post-image, .post_content img
 { height:auto; max-width:100%; }


/* list */
.post_content li, .post_content dt, .post_content dd { line-height:2.2; }
.post_content ul, .post_content ol, .post_content dl { margin-bottom:24px; }
.post_content ol { list-style:decimal outside none; margin-left:1.5em; }
.post_content ul { list-style:circle outside none; margin-left:1.3em; }
.post_content li > ul, .post_content li > ol { margin-bottom:0; }
.post_content dt { font-weight:bold; }
.post_content dd { margin-bottom:1em; }


/* table */
.post_content table {
	margin:0 0 24px 0;
	width:100% !important;
}
.post_content td, .post_content th {
	border:1px solid #ccc; /* edited */
	padding:10px 15px;
	line-height:2.2;
	background:transparent; /* edited */
}
.post_content th {
	background:transparent; /* edited */
	font-weight:normal;
}
/* table style */
.post_content table.table_no_border th,
.post_content table.table_no_border td {
	border:none;
	padding-left:0;
}
.post_content table.table_border_horizontal th,
.post_content table.table_border_horizontal td {
	border-left:none;
	border-right:none;
	padding-left:0;
}


/* block quote */
.post_content blockquote { margin:0 0 25px 0; padding:27px 30px 0; border:1px solid #ccc; box-shadow:0px 4px 0px 0px #f2f2f2; position:relative; }
.post_content blockquote:before { content: '"'; font-style:italic; font-size:30px; font-weight:normal; line-height:40px; width:30px; height:30px; position:absolute; top:5px; left:10px; color:#5cbcd7; }
.post_content blockquote:after { content: '"'; font-style:italic; font-size:30px; font-weight:normal; text-align:left; line-height:60px; width:30px; height:30px; position:absolute; bottom:7px; right:-2px; color:#5cbcd7; }
.post_content blockquote cite { border-top:1px dotted #aaa; display:block; padding:20px 0 0 0; font-style:italic; text-align:right; font-size:90%; }


/* captions */
.post_content .wp-caption { margin-bottom:24px; background:#fff; border:1px solid #ccc; padding:5px; max-width:100%; -webkit-border-radius:5px; -moz-border-radius:5px; border-radius:5px; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; box-sizing:border-box; }
.post_content .wp-caption-text { text-align:center; font-size:12px; font-style:italic; line-height:1.5; margin:9px auto; }
.post_content .wp-caption img[class*="wp-image-"] { display:block; margin:0 auto; }


/* gallery */
.gallery { margin-bottom:20px; }
.gallery a img { border: 0 !important; }
.gallery-item { float:left; margin:0 4px 4px 0; overflow:hidden; position:relative; }
.gallery-columns-1 .gallery-item { max-width:100%; }
.gallery-columns-2 .gallery-item { max-width:48%; max-width:-webkit-calc(50% - 4px); max-width:calc(50% - 4px); }
.gallery-columns-3 .gallery-item { max-width:32%; max-width:-webkit-calc(33.3% - 4px); max-width:calc(33.3% - 4px); }
.gallery-columns-4 .gallery-item { max-width:23%; max-width:-webkit-calc(25% - 4px); max-width:calc(25% - 4px); }
.gallery-columns-5 .gallery-item { max-width:19%; max-width:-webkit-calc(20% - 4px); max-width:calc(20% - 4px); }
.gallery-columns-6 .gallery-item { max-width:15%; max-width:-webkit-calc(16.7% - 4px); max-width:calc(16.7% - 4px); }
.gallery-columns-7 .gallery-item { max-width:13%; max-width:-webkit-calc(14.28% - 4px);	max-width:calc(14.28% - 4px); }
.gallery-columns-8 .gallery-item { max-width:11%; max-width:-webkit-calc(12.5% - 4px); max-width:calc(12.5% - 4px); }
.gallery-columns-9 .gallery-item { max-width: 9%; max-width:-webkit-calc(11.1% - 4px); max-width:calc(11.1% - 4px); }
.gallery-columns-10 .gallery-item { max-width: 7%; max-width:-webkit-calc(9.4% - 0px); max-width:calc(9.4% - 0px); }
.gallery-columns-1 .gallery-item:nth-of-type(1n), .gallery-columns-2 .gallery-item:nth-of-type(2n), .gallery-columns-3 .gallery-item:nth-of-type(3n), .gallery-columns-4 .gallery-item:nth-of-type(4n), .gallery-columns-5 .gallery-item:nth-of-type(5n), .gallery-columns-6 .gallery-item:nth-of-type(6n), .gallery-columns-7 .gallery-item:nth-of-type(7n), .gallery-columns-8 .gallery-item:nth-of-type(8n), .gallery-columns-9 .gallery-item:nth-of-type(9n), .gallery-columns-10 .gallery-item:nth-of-type(10n) { margin-right:0; }
.gallery-caption { background-color:rgba(0, 0, 0, 0.7);	-webkit-box-sizing:border-box; -moz-box-sizing:border-box; box-sizing:border-box; color:#fff; font-size:12px; line-height:1.5; margin:0; max-height:50%; opacity:0; padding:6px 8px; position:absolute; bottom:0; left:0; text-align:left; width:100%; }
.gallery-caption:before { content: ""; height:100%; min-height:49px; position:absolute; top:0; left:0; width:100%; }
.gallery-item:hover .gallery-caption { opacity: 1; }
.gallery-columns-7 .gallery-caption, .gallery-columns-8 .gallery-caption, .gallery-columns-9 .gallery-caption, .gallery-columns-10 .gallery-caption { display: none; }


/* etc */
.post_content .wp-smiley { border:0; margin-bottom:0; margin-top:0; padding:0; }
.post_content address { margin:0 0 24px 0; line-height:2.2; }
.post_content pre { border-left:5px solid #7fc120; font-size:12px; margin:0 0 27px 0; line-height:25px; background:url(img/common/pre.gif) repeat left top; padding:0 17px; overflow:auto; }
.post_content .sticky { }
.post_content .mejs-container { margin: 12px 0 25px; }

/* =====================================================================================
 追加スタイル
===================================================================================== */

.page-template .head-catchtxt{
	margin-bottom:30px;
	font-size:35px;
	line-height:1.8;
	letter-spacing: 0.035em;
}
.page-template .head-desctxt{
	margin-bottom:60px;
}
.page-template .head-keyvisual{
	margin-bottom:66px;
}
@media only screen and (max-width: 767px){
	.page-template .head-catchtxt{
		font-size:25px;
		letter-spacing: 0;
	}
	.page-template .head-desctxt{
		text-align:left;
	}
}


/* ボタン */
.button {
	min-width: 220px;
	max-width: 80%;
	padding: 16px 32px;
	margin: 0;
	display: inline-block;
	position:relative;
	box-sizing: border-box;
	color: #fff !important;
	font-size:15px;
	line-height: 1.5;
	text-align: center;
	text-decoration:none;
	background-color: #333;
	-webkit-transition: background-color .3s;
    transition: background-color .3s;
}
.button:hover{
	text-decoration:none !important;
	background-color: #666666;
}

.btbox{
	position:relative;
	text-align:center;
}
html .wpcf7 input.wpcf7-submit{
	margin-top:0;
}
html .wpcf7 .ajax-loader{
	margin:auto;
	position:absolute;
	left:0; right:0;
	top:0; bottom:0;
	background-color:transparent;
    transform: translateX(4em);
}


/* ----------------------------------------
 テキストリンク hover
---------------------------------------- */
a.txtlink {
	padding: 0;
	display: inline-block;
	position: relative;
	box-sizing: border-box;
	text-decoration: none;
}
a.txtlink:before {
	content: "";
	width: 100%;
	height: 1px;
	display: block;
	position: absolute;
	left: 0;
	bottom: 0;
	background-color: #333;
	transform:scaleX(0);
	transform-origin: top right;
	
	transition:transform 0.25s ease-out;
}
a.txtlink:hover:before {
	transform-origin: top left;
	transform:scaleX(1);
}

/* ----------------------------------------
 テキスト選択色
---------------------------------------- */
::selection {
	background: #81D8D0;
	color: #fff;
}
//Firefox
::-moz-selection {
	background: #81D8D0;
	color: #fff;
}
/* ----------------------------------------
 ul.dot
---------------------------------------- */
ul.dot{
	
}
ul.dot>li{
	padding-left:12px !important;
	display:block;
	position:relative;
	box-sizing:border-box;
}
ul.dot>li:before{
	content:"";
	width:4px;
	height:4px;
	display:block;
	position:absolute;
	left:0px;
	top:13px;
	background-color:#666;
}

/* ----------------------------------------
 ul.dash
---------------------------------------- */
ul.dash{
	
}
ul.dash>li{
	padding-left:20px !important;
	display:block;
	position:relative;
	box-sizing:border-box;
}
ul.dash>li:before{
	content:"";
	width:5px;
	height:1px;
	display:block;
	position:absolute;
	left:5px;
	top:16px;
	background-color:#333;
}
/* ----------------------------------------
 br_sp
---------------------------------------- */
.br_sp{
	display:none;
}
@media only screen and (max-width: 767px){
	display:block;
}
/* ========================================
 header
======================================== */
.logo .logotype{
	margin-bottom: 0.065em;
	display:block;
	font-family: "din-2014";
	font-size:55px;
	font-weight: 600;
	line-height:1;
	transition:color 0.2s ease;
}
.logo .logocopy{
	display:block;
	color:#666;
	font-family: "din-2014";
	font-size:12px;
	font-weight: 400;
	line-height:1.4;
	transition:color 0.2s ease;
}
.logo a:hover .logotype,
.logo a:hover .logocopy{
	color:#41b7aa;
}
.pc .header_fix #global_menu {
	padding-top: 30px;
}
.pc .header_fix #logo_text, .pc #logo_image {
	left:50px;
	top:50%;
	-webkit-transform:translateY(-50%);
	-ms-transform:translateY(-50%);
	transform:translateY(-50%);
}
.pc .header_fix #header .logotype{
	margin-bottom: 0;
	font-size:46px;
}
.pc .header_fix #header .logocopy{
	display:none;
}
/* グローバルナビのフォーカス */
.pc body.work-template-default #menu-item-31 a:before,	/* work詳細 */
.pc body.news-template-default #menu-item-32 a:before,	/* news詳細 */
.pc body.page-id-398 #menu-item-33 a:before{			/* recruit entry */
	content:"";
	width:100%;
	height:4px;
	display:block;
	position:absolute;
	left:0; bottom:0;
	background-color:#333;
}

/* ========================================
 HOME
======================================== */
body.home #main_contents{
	padding-top:0;
	border: solid 0.42em transparent;
	box-sizing: border-box;
}

/* ----------------------------------------
 home header_slider 
---------------------------------------- */
#header_slider .caption{
	width:100%;
    max-width:none;
	padding-left:100px;
	box-sizing:border-box;
}
#header_slider .caption .title{
	font-family: "playfair-display";
	font-weight: 400;
	line-height:1.2;
	text-align:left;
}

/* ----------------------------------------
 home news 
---------------------------------------- */
.index_recent_news .headline{
	display:none;
}
.index_recent_news .content h3{
	width:100%;
	margin-bottom:25px;
	display:block;
	font-family: "din-2014";
	color:#333;
	font-size:30px;
	font-weight: 600;
	line-height:1;
	text-align:center;
}
/* ----------------------------------------
 home service work
---------------------------------------- */
#box_service .box_inner,
#box_work .box_inner{
	
}




/* ========================================
 WORK
======================================== */
/* ----------------------------------------
 work 詳細
---------------------------------------- */
body.work-template-default .post_content img{
	margin-bottom:12px;
	display:block;
}
body.single-work #page_header{
	margin-bottom:80px;
}
#work_info dl{
	width:100%;
	display:flex;
	flex-wrap:wrap;
}
#work_info dl>dt{
	width:78px;
	margin-bottom:12px;
	font-family: "din-2014";
	font-weight:400;
	line-height:1.5;
}
#work_info dl>dd{
	width:calc(100% - 78px);
	margin-bottom:12px;
	font-weight:400;
	line-height:1.5;
}
/* ----------------------------------------
 work youtube埋め込み
---------------------------------------- */
.movie_wrapper{
	width: 100%;
	margin-bottom:50px;
}
.movie_wrapper_inner{
	width:100%;
	padding-top:56.25%;
	position:relative;
	box-sizing:border-box;
}
.movie_wrapper iframe{
	width:100%;
	height:100%;
	position:absolute;
	top:0;
}


/* ========================================
 固定ページレイアウト 
======================================== */
/* reset ul li */
body.page-template ul,
body.page-template li,
body.page-template form,
body.page-template label{
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline
}
body.page-template ul {
    list-style: none
}
body.page-template #main_col{
	width:100%;
	max-width:none;
}
@media only screen and (max-width: 767px){
	body.page-template #main_col{
		padding-left:0;
		padding-right:0;
	}
}

body.page-template #main_col,
body.post-type-archive-news #main_col,
body.single-news #main_col,
body.single-work #main_col{
	margin-bottom:150px;
}
@media only screen and (max-width: 767px){
	body.page-template #main_col,
	body.post-type-archive-news #main_col,
	body.single-news #main_col,
	body.single-work #main_col{
		margin-bottom:60px;
	}
}
body.post-type-archive-work #main_col{
	margin-bottom:0;
}



body.page-template .block-wide{
	width:100%;
	max-width:none;
}
body.page-template .block-large,
body.post-type-archive-news .block-large,
body.single-news .block-large{
	width:100%;
	max-width:1150px;
	margin-left:auto;
	margin-right:auto;
}
body.page-template .block-medium,
body.post-type-archive-news .block-medium,
body.single-news .block-medium{
	width:100%;
	max-width:960px;
	margin-left:auto;
	margin-right:auto;
}
body.page-template .block-narrow,
body.post-type-archive-news .block-narrow,
body.single-news .block-narrow{
	width:100%;
	max-width:770px;
	margin-left:auto;
	margin-right:auto;
}
@media only screen and (max-width: 767px){
	body.page-template .block-large,
	body.page-template .block-medium,
	body.page-template .block-narrow{
		width:90%;
	}
}
body.page-template h2{
	font-family: "din-2014";
	font-size:30px;
	font-weight: 600;
	line-height:1.5;
	text-align:center;
}
body.page-template h3{
	font-size:20px;
	font-weight: bold;
	line-height:1.7;
	text-align:center;
}
.disable-auto-tel a[href^="tel:"] {
	color: inherit;
	text-decoration: none;
	pointer-events: none;
}

/* ========================================
 ABOUT
======================================== */
body.page-id-52 #main_col{
	margin-bottom:0;
}
#company-profile{
	margin-bottom:70px;
}
#company-profile h2{
	margin-bottom:60px;
}
/* ----------------------------------------
 companyProfileList
---------------------------------------- */
.companyProfileList-wrapper{
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
}
.companyProfileList{
	width:47.39583333333333%;
	margin-bottom:0;
}
.companyProfileList>li{
	display:flex;
}
.page-template .companyProfileList>li{
	padding:0 0 17px;
	font-size:14px;
	line-height:2.2;
}
.companyProfileList .item-title,
.companyProfileList .item-data{
	display:block;
}
.companyProfileList .item-title{
	width:30%;
	font-weight:bold;
	text-align:left;
}
.companyProfileList .item-data{
	width:70%;
}
@media only screen and (max-width: 767px){
	#company-profile {
		margin-bottom: 40px;
	}
	body.page-id-52 .companyProfileList-wrapper{
		width:100%;
	}
	.companyProfileList{
		width:100%;
	}
	.companyProfileList .item-title{
		padding-right:15px;
		white-space: nowrap;
	}
}
/* ----------------------------------------
 access
---------------------------------------- */
#access h2{
	margin-bottom:30px;
}
.post_content .station-exit{
	margin-bottom:50px;
	text-align:center;
}
/* ----------------------------------------
 googleマップ埋め込み
---------------------------------------- */
#access>iframe{
	width:100%;
	height:500px;
	display: block;
	-webkit-filter: grayscale(1);
	filter: grayscale(1);
}
/* ----------------------------------------
 bizList
---------------------------------------- */
.bizList{
	width:auto;
	margin-bottom:20px !important;
}
.bizList:last-child{
	margin-bottom:0 !important;
}
.bizList>li{
	display:block;
}

/* ========================================
 SERVICE
======================================== */
.serviceList{
	width:100%;
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
}
.page-template .serviceList{
	
}
.serviceList>li{
	width:47.82608695652174%;
	display: flex;
	flex-direction: column;
}
.page-template .serviceList>li{
	padding-top: 50px;
	margin-bottom:60px;
	border-top:solid 1px #ddd;
}
.serviceList>li .service-icon{
	width:100px;
	height:100px;
	margin:0 auto 33px;
	display:block;
	background-color:#333;
	border-radius:50%;
}
.serviceList>li .service-icon img{
	width:100%;
	display:block;
}
.serviceList>li h3{
	margin-bottom:32px;
	font-size:20px;
	font-weight:bold;
	line-height:1.8;
}
.serviceList>li p{
	margin-bottom:0; /* edited */
	
}
.serviceList>li .image{
	width:100%;
	margin-top: auto;
}
.serviceList>li .image>img{
	width:100%;
	display:block;
}
@media only screen and (max-width: 767px){
	.page-template .serviceList>li{
		padding-top: 30px;
	}
	.serviceList>li .service-icon{
		width:80px;
		height:80px;
		margin:0 auto 20px;
	}
	.serviceList>li h3{
		margin-bottom:22px;
	}
}

/* ----------------------------------------
 service 最下部のマージン
---------------------------------------- */
body.page-id-60 #main_col{
	margin-bottom:90px;
}
@media only screen and (max-width: 767px){
	body.page-id-60 #main_col{
		margin-bottom:60px;
	}
	.serviceList>li{
		width:100%;	
	}
}
/* ========================================
 NEWS
======================================== */
body.post-type-archive-news #page_header{
	margin-bottom:60px;
}

/* ========================================
 NEWS詳細
======================================== */
body.single-news #page_header{
	margin-bottom:60px;
}

/* ========================================
 RECRUIT
======================================== */
/* ----------------------------------------
 recruit-message
---------------------------------------- */
#recruit-message{
	margin-bottom:90px;
}
#recruit-message h2{
	margin-bottom:70px;
}
#recruit-message-inner{
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
}
.recruit-message-text{
	
}
.recruit-message-text p{
	
}
.recruit-message-image{
	
}
.recruit-message-image img{
	width:100%;
	display:block;
}
#recruit-message-text1{
	width:68%;
	padding:0 7% 0 3.5%;
	margin-bottom: 80px;
	box-sizing:border-box;
}
#recruit-message-image1{
	width:32%;
}
#recruit-message-image2{
	width:48%;
}
#recruit-message-text2{
	width:52%;
	padding:0 3.5% 0 7%;
	display:flex;
	box-sizing:border-box;
	align-items:center;
}

@media only screen and (max-width: 767px){
	#recruit-message{
		margin-bottom:60px;
	}
	#recruit-message-text1{
		width:100%;
		padding:0;
		margin-bottom:25px;
	}
	#recruit-message-image1{
		width:36.8%;
		margin-bottom: 60px;
	}
	#recruit-message-image2{
		width:61%;
		margin-bottom: 60px;
	}
	#recruit-message-text2{
		width:100%;
		padding:0;
		display:block;
	}
}
/* ----------------------------------------
 recruit-info
---------------------------------------- */
#recruit-info{
	padding-top:50px;
	padding-bottom:90px;
	margin-bottom:60px;
	background-color:#f3f4f7;
}
#recruit-info h2{
	margin-bottom:50px;
	font-size:20px;
	font-weight:normal;
	line-height:1;
	letter-spacing:0.05em;
}

/* ----------------------------------------
 recruit-jobList
---------------------------------------- */
#recruit-jobList{
	width:100%;
	display: block;
	border-bottom:solid 1px #ddd; 
}
#recruit-jobList>li{
	font-size:14px;
	line-height:2.2;
	border-top:solid 1px #ddd; 
}
.job-name{
	width: 100%;
	padding:40px 10px;
	display: block;
	position:relative;
	box-sizing:border-box;
	font-size:18px;
	font-weight:normal;
	line-height: 1.5;
	outline: none;
	cursor: pointer;
}
.job-name:hover {
	
}
.job-name:after{
	content:"\e947";
	padding:40px 20px;
	display:block;
	position:absolute;
	right:0; top:0;
	font-family:"design_plus";
	font-size:20px;
	line-height:27px;
}
.opened .job-name:after{
	content:"\e946";
}
.job-detail{
	padding: 0 10px 40px;
	display: none;
	box-sizing:border-box;
}
@media only screen and (max-width: 767px){
	.job-name{
		padding:30px 10px;
	}
	.job-name:after{
		padding:30px 20px;
	}
}
/* ----------------------------------------
 job-detailList
---------------------------------------- */
.job-detailList{
	
}
.job-detailList>li{
	display:flex;
	justify-content:space-between;
}
.page-template .job-detailList>li{
	margin-bottom: 15px;
}
.job-detailList>li .job-detail-name{
	width:165px;
	font-weight:bold;
}
.job-detailList>li .job-detail-data{
	width:calc(100% - 165px);
}
/* ----------------------------------------
 job-detail-dataList
---------------------------------------- */
.job-detail-dataList{
	
}
.job-detail-dataList>li{
	
}


@media only screen and (max-width: 767px){
	#recruit-info{
		margin-bottom:40px;
	}
	.job-name{
		font-size:16px;
	}
	.job-name:after{
		line-height:24px;
	}
	
	.job-detailList>li{
		display:block;
	}
	.page-template .job-detailList>li{
		margin-bottom: 15px;
		display:block;
	}
	.job-detailList>li .job-detail-name{
		width:100%;
		display:block;
	}
	.job-detailList>li .job-detail-data{
		width:100%;
		display:block;
	}
}

/* ----------------------------------------
 recruit-entrynavi
---------------------------------------- */
#recruit-entrynavi{
	
}
#recruit-entrynavi .btbox p{
	margin-bottom:60px;
}

/* ========================================
 RECRUIT ENTRY
======================================== */
.entry-info-top{
	text-align:center;
}
.entry-info-top .info-send{
	font-size:14px;
}

/* ========================================
 CONTACT
======================================== */
.contact-info-top{
	margin-bottom:40px;
	text-align:center;
}
.contact-info-top .info-send{
	font-size:14px;
}
.contact-info-top .info-tel{
	width:450px;
	padding:25px 0 25px;
	margin:0 auto 60px auto;
	border-top:solid 1px #ccc;
	border-bottom:solid 1px #ccc;
}
.contact-info-top .tel-desc{
	margin-bottom:16px;
	display:block;
}
.contact-info-top .tel-num{
	margin-bottom:16px;
	display:block;
	font-family: "din-2014";
	font-size:33px;
	font-weight: 600;
}
.contact-info-top .tel-time{
	display:block;
}

.wpcf7 input:-webkit-autofill,
.wpcf7 input:-webkit-autofill:hover, 
.wpcf7 input:-webkit-autofill:focus, 
.wpcf7 input:-webkit-autofill:active  {
	-webkit-box-shadow: 0 0 0px 1000px #F3F4F7 inset;
}

/* ========================================
 contact form 7
======================================== */
.contact-formcontents{
	margin-bottom:30px;
}
.wp-block-contact-form-7-contact-form-selector .wpcf7{
	margin-bottom:0 !important;
	border: none;
	background-color: transparent;
}
.required-mark{
	padding-right:2px;
	display: inline-block;
	color: #00a4b7;
	position: relative;
    top: 4px;
	font-family: "playfair-display";
	font-size: 20px;
	font-weight: 400;
	line-height:32px;
}
#contactFormList{
	width:100%;
	margin-bottom: 90px;
}
#contactFormList>li{
	margin-bottom:40px;
	display:flex;
	justify-content:space-between;
}
#contactFormList>li:last-child{
	margin-bottom:0;
}
#contactFormList>li .item-title{
	width:20%;
	display:flex;
	align-items:center;
	font-weight:bold;
}
#contactFormList>li .item-title.required:after{
	content:"*";
	margin-left:0.3em;
	display:inline-block;
    position: relative;
    top: 4px;
	color:#00a4b7;
	font-family: "playfair-display";
    font-size: 20px;
	font-weight: 400;
}
#contactFormList>li .item-input{
	width:78%;
	display:block;
}
#contactFormList>li .item-input .wpcf7-form-control-wrap{
	display:block;
}
#contactFormList>li .item-input small{
	padding-top:8px;
	margin-bottom: -15px;
	display:block;
	font-size:12px;
	line-height:1.7;
}
@media only screen and (max-width:767px) {
	#contactFormList>li{
		flex-direction:column;
	}
	#contactFormList>li .item-title,
	#contactFormList>li .wpcf7-form-control-wrap{
		width:100%;
	}
	#contactFormList>li .item-title{
		margin-bottom:10px;
	}
}

/* -------------------------------------
 select
------------------------------------- */
/* selectの親要素 */
.your-reason,
.entry-job {
	display:block;
	position: relative;
	box-sizing: border-box;
	border:none;
	background:none;
}
.your-reason::before,
.entry-job::before {
	content: '';
	width: 0;
	height: 0;
	padding: 0;
	position: absolute;
	top: 24px;
	right: 21px;
	border-left: 5px solid transparent;
	border-right: 5px solid transparent;
	border-top: 5px solid #666;
	pointer-events: none;
}
.wpcf7-select {
	width: 100% !important;
	max-width:100% !important;
	padding: 18px 38px 18px 18px !important;
	margin: 0;
	box-sizing:border-box !important;
	text-indent: 0.01px;
	text-overflow: ellipsis;
	border: none !important;
	outline: none;
  background: #F3F4F7;
	background-image: none;
	box-shadow: none;
	-webkit-appearance: none;
	appearance: none;
	cursor: pointer;
}
.wpcf7-select::-ms-expand {
    display: none;
}
.wpcf7-select option {
    color: #333;
}
/* -------------------------------------
 input, textarea
------------------------------------- */
.wpcf7-form-control-wrap input,
.wpcf7-form-control-wrap textarea{
	width:100% !important;
	padding: 18px 38px 18px 18px !important;
	display:block;
	position: relative;
	box-sizing:border-box !important;
	border:none !important;
	background: #F3F4F7;
}
/* -------------------------------------
 button（ファイル添付等）
------------------------------------- */
.wpcf7-form-control-wrap + input.button{
	width:auto !important;
	min-width:0;
	padding: 10px 20px !important;
	font-size:14px;
	cursor:pointer;
}
.page-template div#mfcf7_zl_multifilecontainer{
	margin-top:0;
}
/* -------------------------------------
 placeholder
------------------------------------- */
.wpcf7-form-control-wrap ::placeholder {
  color:#aaa;
}
/* -------------------------------------
 wpcf7-not-valid-tip
------------------------------------- */
.wpcf7-not-valid-tip{
	padding-top:0.75em;
	display:block;
	background-color:#fff;
}
/* -------------------------------------
 not-valid の色
------------------------------------- */
.wpcf7 .wpcf7-not-valid {
    background-color: #d5f2ef !important;
}
.wpcf7-not-valid-tip{
	color: #00a4b7 !important;
}

.contact-info-bottom{
	text-align:center;
}
.wpcf7 .contact-info-bottom p{
	margin:0;
	font-size:14px;
}
/* -------------------------------------
 wpcf7-response-output の色
------------------------------------- */
body .wpcf7 form .wpcf7-response-output{
	max-width:770px;
	padding:20px 18px 18px;
	margin:30px auto 0;
	display:block;
	font-size:15px;
	line-height:20px;
	text-align:center;
	background-color:#F3F4F7;
	border:none  !important;
}
body .wpcf7 form.invalid .wpcf7-response-output{
	background-color:#F3F4F7;
}
body .wpcf7 form.sent .wpcf7-response-output{
	background-color:#F3F4F7;
}
body .wpcf7 form .wpcf7-response-output:before{
	content:"";
	padding:0 8px 2px 0;
    display: inline-block;
	font-family:"design_plus";
	font-size:18px;
	line-height:18px;
	vertical-align: middle;
}
body .wpcf7 form.invalid .wpcf7-response-output:before{	/* 入力エラーがあったとき */
	content:"\f071";
	color:#ed5151;
}
body .wpcf7 form.sent .wpcf7-response-output:before{ /* 送信完了のとき */
	content:"\ea10";
	color:#51ae64;
}

@media only screen and (max-width:767px) {
	#contactFormList>li .item-input {
		width:100%;
	}
}

/* ========================================
 PRIVACY POLICY
======================================== */
.page-template .privacy-contents h2{
	margin-bottom:2em;
	font-size:18px;
	font-weight:bold;
	text-align:center;
}
.page-template .privacy-contents h3{
	padding-bottom:0.5em;
	margin-bottom:1em;
	font-size:15px;
	font-weight:bold;
	text-align:left;
	border-bottom:solid 1px #ddd;
}
.page-template .privacy-contents .block-h2{
	margin-bottom:6em;
}
.page-template .privacy-contents .block-h3{
	margin-bottom:3em;
}


/* ========================================
 footer
======================================== */
#return_top{
	display:none;
}
#footer_top{
	background-color:#333;
}
#footer_top .logotype{
	color:#f5f5f5;
	font-size:45px;
}
#footer_top .logocopy{
	color:#ddd;
	font-size:11px;
}

/* -------------------------------------
 menu-footer-menu
------------------------------------- */
#menu-footer-menu{
	width:240px;
	display:flex;
	flex-wrap:wrap;
}
#menu-footer-menu>li{
	width:50%;
	margin: 0 0 15px 0;
	display:inline-block;
	font-size: 13px;
	line-height:1.6;
}
#menu-footer-menu>li:last-child{
	margin-bottom:0;
}
#menu-footer-menu>li a{
	padding:0 2px 0;
	display:inline-block;
	position:relative;
	box-sizing:border-box;
	font-family: "din-2014";
	color:#f5f5f5;
	font-weight: 400;
	letter-spacing: 0.025em;
}
#menu-footer-menu>li a:before{
	content: "";
	width: 100%;
	height: 1px;
	display: block;
	position: absolute;
	left: 0;
	bottom: 0;
	background-color: rgba(255,255,255,0.8);
	
	-webkit-transform:scaleX(0);
	transform:scaleX(0);
	-webkit-transform-origin: top right;
	transform-origin: top right;
	
	-webkit-transition:transform 0.4s cubic-bezier(.473,.427,0,.993);
	transition:transform 0.4s cubic-bezier(.473,.427,0,.993);
}
#menu-footer-menu>li.current-menu-item a:before{
	-webkit-transition:none;
	transition:none;
	-webkit-transform:scaleX(1);
	transform:scaleX(1);
}
.pc .single-work #menu-footer-menu #menu-item-38 > a:before,	/* WORK詳細 */
.pc .single-news #menu-footer-menu #menu-item-39 > a:before,	/* NEWS詳細 */
.pc .page-id-398 #menu-footer-menu #menu-item-40 > a:before{	/* RECRUIT ENTRY */
	-webkit-transition:none;
	transition:none;
	-webkit-transform:scaleX(1);
	transform:scaleX(1);
}

#menu-footer-menu>li a:hover:before{
	-webkit-transform-origin: top left;
	transform-origin: top left;
	-webkit-transform:scaleX(1);
	transform:scaleX(1);
}
#footer_bottom a:link,
#footer_bottom a:visited,
#footer_bottom a:hover,
#footer_bottom a:active {
	color: #f5f5f5 !important;
}


/* ========================================
 Utility Classes
======================================== */
.m5{ margin:5px;}
.m10{ margin:10px;}
.m15{ margin:15px;}
.m20{ margin:20px;}
.m25{ margin:25px;}
.m30{ margin:30px;}
.m35{ margin:35px;}
.m40{ margin:40px;}
.m45{ margin:45px;}
.m50{ margin:50px;}

.mb5{ margin-bottom:5px;}
.mb10{ margin-bottom:10px;}
.mb15{ margin-bottom:15px;}
.mb20{ margin-bottom:20px;}
.mb25{ margin-bottom:25px;}
.mb30{ margin-bottom:30px;}
.mb35{ margin-bottom:35px;}
.mb40{ margin-bottom:40px;}
.mb45{ margin-bottom:45px;}
.mb50{ margin-bottom:50px;}

.mt5{ margin-top:5px;}
.mt10{ margin-top:10px;}
.mt15{ margin-top:15px;}
.mt20{ margin-top:20px;}
.mt25{ margin-top:25px;}
.mt30{ margin-top:30px;}
.mt35{ margin-top:35px;}
.mt40{ margin-top:40px;}
.mt45{ margin-top:45px;}
.mt50{ margin-top:50px;}

