@charset UTF-8;
/*---------------------------------------------------------
Theme Name: 内田染工場
Theme URI: http://d7r.com
Description: スピード重視
Author: sada
Author URI: https://pochilog.jp
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: flexible-width, custom-header, custom-menu, editor-style,
Version: 20170808
---------------------------------------------------------*/
/*----------------------------------------------------------
エディタ設定
----------------------------------------------------------*/
body.mceContentBody {
	margin : 0 10px;
	background : transparent;
}
/*--------------------------------------------------------------------------------------------------------------------
Normalize
--------------------------------------------------------------------------------------------------------------------*/
h1,h2,h3,h4,h5,h6,h7 {
	font-size : 1em;
	font-weight : normal;
	margin : 0;
	padding : 0;
}
audio,
canvas,
progress,
video {
	display : inline-block;
	vertical-align: baseline;
}
audio:not([controls]) {
	display : none;
	height : 0;
}
[hidden],
template {
	display : none;
}
abbr[title] {
	border-bottom : 1px dotted;
}
dfn {
	font-style : italic;
}
mark {
	background : #ff0;
	color : #000;
}
svg:not(:root) {
	overflow : hidden;
}
figure {
	margin : 1em 40px;
}
fieldset {
	border : 1px solid #ccc;
	margin : 0 10px;
	padding : 10px;
}
legend {
	border : 0;
	padding : 0;
}
optgroup {
	font-weight : bold;
}
img {
	border : 0;
	margin : 0;
}
a {
	color : #666;
	text-decoration : none;
	background : transparent;
}
a:active,
a:hover {
	color : #000;
}
a img {
	border : none;
}
a:hover img {
	opacity : 0.8;
}
HR {	
	border : 0 none;
	height : 1px;
	margin : 10px 0;
	padding : 0;
	color : #ccc;
	background : #ccc;
}
ol, ol li,
ul, ul li {
	list-style-type : none;
	padding : 0;
	margin : 0;
}
b,
strong {
	padding: 3px;
	margin: 0 3px;
	color: #000;
	background: #eee;
	font-weight : normal;
	border-bottom : 1px solid #999;
}
small {
	font-size : 75%;
}
sub,
sup {
	font-size : 75%;
	line-height : 0;
	position : relative;
	vertical-align : baseline;
}
sup {
	top : -0.5em;
}
sub {
	bottom : -0.25em;
}
/*----------------------------------------------------------
レスポンシブ対策
----------------------------------------------------------*/
img,
video,
object {
	max-width : 100%;
	height : auto;
	border : none;
	vertical-align : top;
}
iframe {
	max-width : 100%;
}
@media only screen and (max-width : 780px) {
.inner {
	padding : 0 10px;
}
.youtube-container {
	position : relative;
	padding-bottom : 56.25%;
	padding-top : 30px;
	height : 0;
	overflow : hidden;
}
.youtube-container iframe {
	position : absolute;
	top : 0;
	left : 0;
	width : 100%;
	height : 100%;
}
}
/*----------------------------------------------------------
フォーム
----------------------------------------------------------*/
button,
input,
optgroup,
select,
textarea {
	color : inherit;
	font : inherit;
	margin : 0;
}
button {
	overflow : visible;
}
button,
select {
	text-transform : none;
}
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
	-webkit-appearance : button;
	cursor : pointer;
}
button[disabled],
html input[disabled] {
	cursor : default;
}
button::-moz-focus-inner,
input::-moz-focus-inner {
	border : 0;
	padding : 0;
}
input {
	line-height : normal;
}
input[type="checkbox"],
input[type="radio"] {
	padding : 0;
}
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
	height : auto;
}
input[type="search"] {
	-webkit-appearance : textfield;
	width : 100%;
}
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
	-webkit-appearance : none;
}
input[type="select"] {
}
form select {
	font-size : 125%;
}
input[type="text"] {
	-webkit-appearance : textfield;
	max-width : 100%;
}
input[type="email"] {
	-webkit-appearance : textfield;
/*	width : 100%;*/
}
textarea {
	-webkit-appearance : textfield;
/*	width : 100%;*/
	overflow : auto;
}
form input[type="submit"] {
	border : 1px solid #999;
	padding : 10px 30px;
	border-radius : 4px;
	background : transparent;
	background : #fff;
}
form input[type="submit"]:hover {
	background : #666;
	color : #fff;
}
.post form input[type="submit"]:hover {
}
/*----------------------------------------------------------
clearfix
----------------------------------------------------------*/
.clearfix:after {
	content : "";
	display : block;
	clear : both;
	overflow : hidden;
	font-size : 0.1em;
	line-height : 0;
}
.clear {
	clear : both;
}
/*--------------------------------------------------------------------------------------------------------------------
リキャプチャ非表示reCAPTCHA
--------------------------------------------------------------------------------------------------------------------*/
.grecaptcha-badge {
	visibility : hidden;
}
/*--------------------------------------------------------------------------------------------------------------------
ブロック構成
--------------------------------------------------------------------------------------------------------------------*/
@font-face {font-family: "YuGothic M";src: local(Yu Gothic Medium)}
html {
	-ms-text-size-adjust : 100%;	/*モバイル端末の文字サイズ自動拡大機能オフ*/
	-webkit-text-size-adjust : 100%;
	text-size-adjust : 100%;
	table-layout : fixed;
	word-wrap : break-word;
	margin : 0;
	padding : 0;
	height : 100%;
}
body {
	margin : 0;
	padding : 0;
	min-width : 320px;
	background : #fff;
	/*font-family : "メイリオ", Meiryo, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, sans-serif;*/
	font-family : "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size : 16px;
	line-height : 2;
	color : #444;
}
#wrapper {
	width : 100%;
	padding : 0;
	margin : 0;
	position : relative;
}
#topbar_outer {
	width : 100%;
	margin : 0;
	padding : 0;
	background : #666;
}
#topbar {
	width : 1000px;
	margin : 0 auto;
	padding : 0;
	text-align : center;
}
#header_outer {
	width : 100%;
	margin : 0;
	padding : 0;
}
header {
	position : relative;
}
#gnav_outer {
	width : 100%;
	margin : 0;
	padding : 0;
}
nav {
	width : 1000px;
	margin : 0 auto;
	padding : 0;
}
header {
	width : 1000px;
	margin : 0 auto;
	padding : 0;
	text-align : left;
}
#container_outer {
	width : 100%;
	padding : 50px 0;
	margin : 0;
}
#container {
	width : 1000px;
	padding : 0;
	margin : 0 auto;
}
#content {
	width : 100%;
	padding : 0;
	margin : 0;
	float : left;
}
main {
	width : 100%;
	padding : 0;
	margin : 0;
}
#contactform_outer {
	background : #eee;
	padding : 40px 0;
}
#footer_outer {
	clear : both;
	width : 100%;
	margin : 0;
	padding : 0;
	background : #666;
}
footer {
	width : 1000px;
	margin : 0 auto;
	padding : 20px 0;
}
#footertitle_outer {
	clear : both;
	width : 100%;
	margin : 0;
	padding : 10px 0;
	background : #666;
	border-top : 1px solid #fff;
}
#footertitle {
	width : 1000px;
	margin : 0 auto;
}

/*--------------------------------------------------------------------------------------------------------------------
MOBILE
--------------------------------------------------------------------------------------------------------------------*/
@media only screen and (max-width: 780px) {
body {
	font-size : 17px;
	line-height : 30px;
}
#wrapper {
}
#topbar {
	width : 100%;
	margin : 0;
}
header {
	width : 100%;
	margin : 0;
}
#container {
	width : 100%;
	padding : 0;
	margin : 0;
}
#content{
	width : 100%;
	float : none;
}
footer {
	width : 100%;
	margin : 0;
	padding : 10px 0;
}
#footertitle {
	width : 100%;
	margin : 0;
}
}
/*--------------------------------------------------------------------------------------------------------------------
表示コントロール
--------------------------------------------------------------------------------------------------------------------*/
.no_display {
	visibility : hidden;
	font-size : 0;
	line-height : 0;
}
.disp-pc {
	display : block;
}
.disp-mobile {
	display : none;
}
.disp-center {
	text-align :center;
}
.box_left {
	float : left;
}
.box_right {
	float : right;
}
.flex {
	display : -webkit-flex;
	display : -moz-flex;
	display : -ms-flex;
	display : -o-flex;
	display : flex;
	flex-wrap : wrap;
	justify-content : space-between;
	align-items : stretch;
}
.w760 {
	width : 760px;
	margin : 0 auto;
}
.w300 {
	width : 300px;
	margin : 0;
}
.collapseomatic {
	padding : 0 10px!important;
	margin : 10px 0!important;
	background-image : none!important;
	background : #ccc;
	color : #fff;
	font-family : sans-serif;
	font-size : 14px;
	font-weight : bold;
	line-height : 2;
}
.collapseomatic a {
}
.collapseomatic:hover {
	background : #999;
	text-decoration : none;
}
.collapseomatic_content {
	padding : 0!important;
	margin : 10px 0!important;
	font-size : 14px;
}
@media only screen and (max-width : 780px) {
.disp-pc {
	display : none;
}
.disp-mobile {
	display : block;
}
.box_left ,
.box_right {
	float : none;
	text-align : center;
}
.w760 {
	width : 100%;
	margin : 0;
}
}
/*--------------------------------------------------------------------------------------------------------------------
画像
--------------------------------------------------------------------------------------------------------------------*/
img.size-full,
img.size-large {
	max-width : 100%;
	height : auto;
}
img.alignright {
	display : inline;
	float : right;
	margin : 0 0 10px 10px;
}
img.alignleft {
	display : inline;
	float : left;
	margin : 0 10px 10px 0;
}
img.aligncenter {
	display : block;
	margin : 0 auto;
}
.shadow20 img {
	border : 20px solid #fff;
	box-shadow : 2px 2px 6px #999;
	margin : 0 0 10px 0;
}
@media only screen and (max-width: 780px) {
img.alignright ,
img.alignleft ,
img.aligncenter {
	display : block;
	float : none;
	margin : 0 0 10px 0;
}
}
/*--------------------------------------------------------------------------------------------------------------------
必須・注意書き
--------------------------------------------------------------------------------------------------------------------*/
.require,
.caution {
	font-size : 70%;
	color : #f00;
}
/*--------------------------------------------------------------------------------------------------------------------
検索フォーム
--------------------------------------------------------------------------------------------------------------------*/
#search {
	padding : 0px;
	position : relative;
	width : 100%;
	box-sizing : border-box;
	background : #fff;
	border : 1px solid #999;
	height : 35px;
}
#s {
	height : 33px;
	color : #666;
	border : none;
	z-index : 10;
	padding : 5px 40px 5px 5px;
	width : 85%;
	box-sizing : border-box;
}
#searchsubmit {
	position : absolute;
	right : 0px;
	top : 0px;
	z-index : 20;
	width : 33px;
	height : 33px;
	border-radius : 0;
}
*:first-child + html #searchsubmit {
	top : 1px;
}
/*--------------------------------------------------------------------------------------------------------------------
topbar
--------------------------------------------------------------------------------------------------------------------*/
#topbar {
	position : relative;
}
#topbar h1 {
	font-family : "メイリオ", Meiryo, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, sans-serif;
	margin : 0;
	color : #eee;
	font-size : 12px;
	line-height : 20px;
}
#english_site a {
	display : block;
	position : absolute;
	top : 0;
	right : 20px;
	background : #000;
	color : #fff;
	padding : 5px 20px;
	border-radius : 0 0 8px 8px;
}
#english_site a:hover {
	color : #fff;
	background : #900;
}
/*--------------------------------------------------------------------------------------------------------------------
ヘッダ header
--------------------------------------------------------------------------------------------------------------------*/
header #sitename {
	position : relative;
	margin : 40px 0;
	text-align : center;
}
header #sitename #oeko-tex {
	position : absolute;
	top : 0;
	left : 0;
}
#video {
	position : relative;
	margin : 0 0 40px 0;
	width : 100%;
	height : 25vw;
	overflow : hidden;
}
#video img {
	width : 100%;
	height : 25vw;
}
#video video {
	width : 100%;
	height : 25vw;
}
#video_dot {
	position : absolute;
	top : 0;
	left : 0;
	width : 100%;
	height : 25vw;
	background : url(images/video_dot-black.png);
	text-indent : -9999px;
}
#video_catch {
	position : absolute;
	top : 0;
	left : 0;
	width : 100%;
	height : 25vw;
	font-size : 2.6vw;
	line-height : 25vw;
	color : #fff;
	font-weight : bold;
	text-align : center;
}
@media screen and (max-width: 780px) {
header #sitename {
	margin : 10px 0 20px 0;
}
header #sitename #oeko-tex {
	display : none;
}
}
/*----------------------------------------------------------
GNAV
----------------------------------------------------------*/
nav#gnav ul {
	margin : 0 30px 0 30px;
	padding : 0;
	display : -webkit-flex;
	display : -moz-flex;
	display : -ms-flex;
	display : -o-flex;
	display : flex;
	flex-wrap : wrap;
	justify-content : space-between;
	align-items : stretch;
}
nav#gnav ul li {
	position : relative;
	float : left;
	margin :0;
	margin : 0;
	text-align : center;
	box-sizing : border-box;
}
nav#gnav a {
	float : left;
	display : block;
	width : 100%;
	height : 29px;
	padding : 0;
	color : #666;
	font-size : 16px;
	line-height : 28px;
	letter-spacing : 1px;
	box-sizing : border-box;
}
/*----------------------------------------------------------
hover
current
----------------------------------------------------------*/
nav#gnav a:hover {
	border-bottom : 1px solid #666;
}
nav#gnav li.current-menu-item > a {
	color : #000;
	border-bottom : 1px solid #e33;
}
/*----------------------------------------------------------
スマホメニュー
----------------------------------------------------------*/
@media only screen and (max-width: 780px) {
#mobile_header {
	margin : 0;
	padding : 0;
}
#mobile_header li {
	box-sizing : border-box;
	padding : 1vw;
	margin : 0 1vw;
	background : #999;
	text-align : center;
	float : left;
}
#mobile_header li:nth-child(1) {
	width : 25vw;
}
#mobile_header li:nth-child(2) {
	width : 18vw;
}
#mobile_header li:nth-child(3) {
	width : 18vw;
}
#mobile_header li:nth-child(4) {
	width : 25vw;
}
#mobile_header li a {
	color : #fff;
}
button#sm_bttn {
	width : 100%;
	border : none;
	box-shadow : none;
	background : transparent;
	color : #fff;
	padding : 0;
	text-align : center;
}
}

/*----------------------------------------------------------
メニュー本文
----------------------------------------------------------*/
#sm_menu {
	display : none;
}
@media only screen and (max-width: 780px) {
#sm_menu {
	display : none;
}
#sm_menu {
	position : relative;
	z-index : 1000;
	width : 100%;
	border-bottom : 1px solid #000;
	overflow-y : scroll;
}
#sm_menu li {
	list-style : none;
	background : #fff;
	border-top : 1px solid #ccc;
}
#sm_menu li a {
	display : block;
	padding : 0 0 0 10px;
	font-size : 14px;
	line-height : 30px;
	color : #000;
	text-decoration: none;
}
#sm_menu li li a {
	padding : 0 0 0 30px;
}
}
/*--------------------------------------------------------------------------------------------------------------------
コンテンツ
--------------------------------------------------------------------------------------------------------------------*/
.post p {
	margin : 0 0 10px 0;
}
/*.post p:first-letter { font-size : 300%; font-weight : bold; float : left; width : 1em; color : #c00; }*/

.post ul ,
.post ol {
	padding : 10px 0 10px 30px;
}
.post ul li {
	list-style-type : disc;
}
.post ol li {
	list-style-type : decimal;
}
.post h1 {
}
h2 {
	clear : both;
	font-size : 20px;
	line-height : 30px;
	margin : 40px 0 30px 0;
	padding : 0 0 4px 0;
	border-bottom : 1px solid #666;
}
h2:nth-child(1) {
	margin-top : 0;
}
h3 {
	font-size : 17px;
	margin : 40px 0 20px 0;
	padding : 0 0 0 30px;
	line-height : 24px;
	font-weight : normal;
	background : url(images/h3.png) no-repeat;
}
h3:nth-child(1) {
	margin-top : 0;
}
h3 a {
	text-decoration : none;
}
h4 {
	font-size : 16px;
	margin : 20px 0 10px 0;
	padding : 0 0 0 15px;
	line-height : 24px;
	font-family : sans-serif;
	background : url(images/arrow-black.png) no-repeat;
}
.emphasis {
	padding: 5px 10px;
	margin: 0 20px 0 0;
	color: #000;
	background: #eee;
	border : 1px solid #ccc;
}
/*----------------------------------------------------------
投稿日・カテゴリ・タグ・投稿者
----------------------------------------------------------*/
.publish_date {
	padding : 10px;
	border : 1px solid #534741;
	background : #fff;
	color : #534741;
}
.blog_info {
	margin : 20px 0 10px 0;
	padding : 4px 0;
	border-top : 1px solid #999;
	border-bottom : 1px dotted #999;
}
.blog_info p {
	margin : 0;
}
.blog_info * {
	font-size: 12px;
	line-height : 16px;
}
/*----------------------------------------------------------
引用
----------------------------------------------------------*/
.post blockquote {
	padding: 40px 20px 0 20px;
	margin: 20px 0;
	background: #e3e3e3 url("images/quote-top.png") left top no-repeat;
	border : 8px solid #eee;
}
.post blockquote:after {
	display : block;
	content : url(images/quote-bottom.png);
	text-align : right;
	padding : 0;
	margin : 0;
}

/*----------------------------------------------------------
サイトマップ　色指定はブロックごと
----------------------------------------------------------*/
ul#sitemap_list li {
	list-style : none;
	line-height : 20px;
	margin : 0 0 7px 0;
}
ul#sitemap_list li > ul {
	border-top : 1px solid #999;
}

/*--------------------------------------------------------------------------------------------------------------------
post_list　記事一覧
--------------------------------------------------------------------------------------------------------------------*/
#post_list {
}
#post_list dl {
	padding : 10px 0;
	border-bottom : 1px dotted #999;
}
#post_list dt {
	width : 20%;
}
#post_list dd {
	width : 80%;
	padding : 0;
	margin : 0;
}
#post_list dd h3 {
	padding : 0;
	margin : 0 0 5px 0;
	background : transparent;
}
#post_list dd h3:hover {
	text-decoration : underline;
}
/*--------------------------------------------------------------------------------------------------------------------
404
--------------------------------------------------------------------------------------------------------------------*/
#tags_404 {
	margin : 30px 0 0 0;
	border : 1px solid #998675;
	padding : 10px;
}
#tags_404 h3 {
	margin : -10px -10px 10px -10px;
	padding : 10px;
	background : #998675;
	color : #fff;
	font-size : 20px;
	font-weight : bold;
	border : none;
}


/*--------------------------------------------------------------------------------------------------------------------
フッター
--------------------------------------------------------------------------------------------------------------------*/
footer p {
	color : #fff;
	margin : 0;
}
#footer_logo div {
	float : left;
	margin : 0 40px 0 0;
}
#footer_adress {
	margin : 20px 0;
	line-height : 21px;
}
#footers {
	margin : 30px 0 0 0;
}

.footer_box {
	width : 300px;
}
.footer_box nav {
	width : 100%;
}
.footer_box nav ul li a {
	display : block;
	line-height : 24px;
	margin : 0 0 10px 0;
	color : #fff;
	padding : 0 0 0 16px;
	background : url(images/arrow.png) no-repeat;
	border-bottom : 1px solid #666;
}
.footer_box nav ul li a:hover {
	color : #fff;
	border-bottom : 1px solid #fff;
}
footer #access_txt {
	font-size : 14px;
	line-height : 20px;
}
footer #access_txt a {
	color : #fff;
}
footer #access_txt a:hover {
	color : #fff;
	border-bottom : 1px solid #fff;
}
footer h3 {
	font-size: 16px;
	font-weight: bold;
	color : #000;
	text-align : center;
	line-height: 25px;
	margin: 0 0 10px 0;
	padding: 2px 0;
	background : #fff;
}
a.to_contact {
	display : block;
	background : url(images/to_contact.png) center center no-repeat #ccc;
	height : 60px;
	width : 400px;
	border-radius : 30px;
	text-indent : -9999px;
	margin : 40px auto;
}
a.to_contact:hover {
	background : url(images/to_contact.png) center center no-repeat #999;
}
@media only screen and (max-width: 780px) {
.footer_box {
	width : 100%;
}
#footer01,
#footer02 {
	display : none;
}
a.to_contact {
	display : none;
}
}
/*----------------------------------------------------------
フッターSEO対策
----------------------------------------------------------*/
#footertitle p,
#footertitle a,
#footertitle h1,
#footertitle h1 a {
	color : #fff;
	font-weight : normal;
	font-size : 12px;
	line-height : 18px;
}
/*--------------------------------------------------------------------------------------------------------------------
HOME
--------------------------------------------------------------------------------------------------------------------*/
#frontimage {
	position : relative;
	width : 1000px;
	height : 500px;
	background : url(images/topimage.jpg);
}
h1#site_concept {
	font-size : 32px;
	margin : 0 0 10px 0;
	text-align : center;
}
#lead {
	padding : 0 0 30px 0;
	margin : 0 auto;
	width : 100%;
	font-size : 20px;
	line-height : 36px;
	font-weight : normal;
	color : #777;
	text-align : center;
}
#concepts {
	margin : 0 0 40px 0;
}
#concepts .concept-box {
	box-sizing : border-box;
	width : 190px;
	border : 1px solid #666;
	padding : 5px;
}
#concepts .concept-box h3 {
	background : transparent;
	background : #666;
	color : #fff;
	font-family : sans-serif;
	font-size : 16px;
	margin : -5px -5px 0 -5px;
	padding : 5px;
	text-align : center;
}
#concepts .concept-box p {
	font-size : 14px;
	line-height : 24px;
	padding : 5px;
	margin : 0;
}
#banners {
	margin : 0 0 40px 0;
}
.banner {
	width : 300px;
	margin : 0 0 30px 0;
}
.banner p {
	margin : 10px 0;
	padding : 0;
	font-size : 14px;
	line-height : 21px;
}
#pv {
	margin : 0 0 20px 0;
}
#home_works {
	padding : 30px 0;
	margin : 0 0 80px 0;
	border-bottom : 1px solid #666;
}
#home_works ul {
	margin : 0;
	padding : 0;
}
#home_works li {
	list-style : none;
	padding : 0;
	width : 300px;
}
#home_works p {
	text-align : center;
	margin : 10px 0 0 0;
}
#home_content {
	padding : 30px 0;
	margin : 0 0 80px 0;
	border-bottom : 1px solid #666;
}
#home_content_inner {
}
#home_content p {
	font-size : 15px;
	line-height : 24px;
	color : #777;
}
#news_blog {
	margin : 0 0 40px 0;
}
#news {
	width : 480px;
}
#blog {
	width : 480px;
}
#news_blog dl {
	font-size : 14px;
	line-height : 20px;
	margin : 0 0 5px 0;
}
#news_blog dl dt {
	float : left;
	width : 110px;
}
#news_blog dl dd {
	margin-left : 110px;
}
#news_blog dl dd a {
	color : #666;
}
#news_blog dl dd a:hover {
	color : #000;
	border-bottom : 1px solid #000;
}
#movies {
	margin : 0 0 20px 0;
}
#movies > div {
	margin : 0 0 20px 0;
	box-sizing : border-box;
}
#movies p {
	font-size : 15px;
	line-height : 22px;
	margin : 0;
}
.w-half {
	width : 48%;
}
.w-onethird {
	width : 31%;
}
.w-quarter {
	width : 22%;
	border : 1px solid #999;
	padding : 10px;
}
.w-quarter p {
	font-size : 14px;
	line-height : 20px;
}
#client_link {
	padding : 0;
	margin : 0 0 40px 0;
}
/*#client_link li {
	margin : 0;
	padding : 0;
	list-style : none;
	width : 300px;
}
#client_link li img {
	border : 1px solid #ccc;
}*/
@media only screen and (max-width: 780px) {
#concepts .concept-box {
	width : 100%;
}
.banner {
	width : 300px;
	margin : 0 auto 10px auto;
}
.banner p {
	margin : 10px 0;
	padding : 0;
	font-size : 14px;
	line-height : 21px;
}
#home_works {
	padding : 0;
	margin : 0 0 40px 0;
}
#home_works li {
	margin : 0 auto 10px auto;
	text-align : center;
}
#home_content {
	padding : 0;
	margin : 0 0 40px 0;
}
#news_blog {
	margin : 0;
}
#news ,
#blog {
	width : 100%;
	margin : 0 0 20px 0;
}
.w-half {
	width : 100%;
}
}

/*--------------------------------------------------------------------------------------------------------------------
コンタクトフォーム#contactform Contactform7
--------------------------------------------------------------------------------------------------------------------*/
#contactform {
	width : 760px;
	margin : 0 auto;
}
#contactform h3 {
	font-size : 20px!important;
	line-height : 36px!important;
	margin : 0 0 20px 0!important;
	padding : 0;
	background : transparent;
}
#contactform table#contactform_table {
	background : #fff;
}
#contactform .attention {
	background : #666;
	color : #fff;
	border : 1px solid #333;
	padding : 10px 20px;
}
form input[type="email"] {
	width : 100%;
}
.wpcf7-list-item {
	display : block;
}
table#contactform_table {
	width : 100%;
}
table#contactform_table td:nth-of-type(1) {
	width : 30%;
}
table#contactform_table td:nth-of-type(2) {
	width : 70%;
}
.form_fullsize {
	width : 100%;
}
.form_tel {
	width : 40%;
	margin : 20px 0 10px 0;
}
.send_check {
	font-family : sans-serif!important;
	font-size : 20px;
	padding : 5px 10px;
	border : 2px solid #fc0;
/*	font-weight : bold;
	text-decoration : underline;
	text-decoration-color : #fc0;*/
}
.send_check input[type="checkbox"]{
	width : 20px;
	height : 20px;
}
@media screen and (max-width: 780px) {
form * {
	box-sizing : border-box;
}
#contactform {
	width : 100%;
	margin : 0;
}
table#contactform_table td ,
table#contactform_table td:nth-of-type(1) ,
table#contactform_table td:nth-of-type(2) {
	display : block;
	width : 100%!important;
	border : none;
	padding : 0;
}
.form_tel {
	width : 300px;
}
}
/*--------------------------------------------------------------------------------------------------------------------
添付ファイルのアイコン表示
--------------------------------------------------------------------------------------------------------------------*/
a[href $='.pdf'] {
	display : block;
	height : 63px;
	background:url(images/pdf.png) no-repeat;
	margin: 20px 0 20px 0;
	padding : 20px 0 0 70px;
}
a[href $='.doc'] {
	display : block;
	height : 63px;
	background:url(images/word.png) no-repeat;
	margin: 20px 0 20px 0;
	padding : 20px 0 0 70px;
}
a[href $='.docx'] {
	display : block;
	height : 63px;
	background:url(images/word.png) no-repeat;
	margin: 20px 0 20px 0;
	padding : 20px 0 0 70px;
}
a[href $='.xls'] {
	display : block;
	height : 63px;
	background:url(images/excel.png) no-repeat;
	margin: 20px 0 20px 0;
	padding : 20px 0 0 70px;
}
a[href $='.xlsx'] {
	display : block;
	height : 63px;
	background:url(images/excel.png) no-repeat;
	margin: 20px 0 20px 0;
	padding : 20px 0 0 70px;
}
a[href $='.ppt'] {
	display : block;
	height : 63px;
	background:url(images/powerpoint.png) no-repeat;
	margin: 20px 0 20px 0;
	padding : 20px 0 0 70px;
}
a[href $='.pptx'] {
	display : block;
	height : 63px;
	background:url(images/powerpoint.png) no-repeat;
	margin: 20px 0 20px 0;
	padding : 20px 0 0 70px;
}

.noneicon a[href $='.pdf'],
.noneicon a[href $='.doc'],
.noneicon a[href $='.docx'],
.noneicon a[href $='.xls'],
.noneicon a[href $='.xlsx'],
.noneicon a[href $='.ppt'],
.noneicon a[href $='.pptx'] {
	display : inline;
	height : 0;
	background:none;
	margin: 0;
	padding : 0;
}
/*--------------------------------------------------------------------------------------------------------------------
metasliderキャプションオーバーレイの調整
--------------------------------------------------------------------------------------------------------------------*/
.metaslider {
	z-index : 100;
}
.metaslider ul.slides .caption-wrap {
	position: absolute;
	bottom: 6px;
	left: 0;
	opacity : 1;	/*metasliderの指定をリセット*/
	background-color : rgba(0,0,0,0.6);	/*RGBaで再指定*/
	margin: 0;
	display: block;
	width: 100%;
	line-height: 1.4em;
}

.metaslider ul.slides .caption-wrap .caption {
	padding: 5px 10px;
	word-wrap: break-word;
	color: #fff;
	font-size : 18px;
}
/*--------------------------------------------------------------------------------------------------------------------
画像キャプション
--------------------------------------------------------------------------------------------------------------------*/
.wp-caption {
	position : relative;
	display : block;
	padding : 0;
	max-width : 100%;
	margin : 0 0 20px 0;
}
.wp-caption p.wp-caption-text {
	position : absolute;
	display : block;
	width : 100%;
	margin : 0;
	bottom : 0;
	background : rgba(0,0,0,0.5);
	color : #fff;
	padding : 5px;
	font-size :14px;
	line-height : 21px;
	box-sizing : border-box;
}

/*--------------------------------------------------------------------------------------------------------------------
テーブル
--------------------------------------------------------------------------------------------------------------------*/
table {
	width : 100%;
	margin : 0 0 10px 0;
	border-collapse : collapse;
	border-spacing : 0;
}
table th,
table td {
	margin : 0;
	padding : 5px 10px;
	border-collapse : collapse;
	border : 1px solid #ccc;
	border-spacing : 0;
	vertical-align : top;
}
table th {
	text-align : center;
	font-weight : normal;
	background : #eee;
	color : #000;
}
.post table p {
	margin : 0;
}
table.processing {
}
table.processing td:nth-of-type(1) {
	width : 40%;
}
table.processing td:nth-of-type(2) {
	width : 60%;
}
table.processing .point {
	padding : 10px;
	margin : 10px 0 0 0;
	border : 1px solid #ccc;
	background : #eee;
	font-size : 90%;
}
table.processing .request {
	padding : 10px;
	margin : 10px 0 0 0;
	border : 1px solid #ccc;
	background : #ddd;
	font-size : 90%;
}
table.route ,
table.route td {
	border : none;
}
table.route td {
	padding : 0 0 10px 0;
}
table.route td:nth-of-type(1) {
	padding : 0 20px 10px 0;
}

@media only screen and (max-width: 780px) {
table.processing {
	border-bottom : 1px solid #ccc;
}
table.processing td:nth-of-type(1) {
	background : #eee;
}
table.processing td:nth-of-type(1) ,
table.processing td:nth-of-type(2) {
	display : block;
	box-sizing : border-box;
	width : 100%;
	border-bottom : none;
}
}
/*----------------------------------------------------------
はみ出しスライドテーブル
----------------------------------------------------------*/
@media screen and (max-width: 780px) {
.slide_tbl {
	overflow-x : auto;
	white-space : normal;
}

.slide_tbl table th,
.slide_tbl  table td ,
.slide_tbl  table td p {
	font-size : 14px;
	line-height : 18px;
	min-width : 100px;
	max-width : 100px;
	margin-bottom : 0!important;
	margin : 0!important;
}
}
@media screen and (min-width: 781px) {
tr.pc_no_disp {
	display : none;
}
}

/*----------------------------------------------------------
PAGE TOP
----------------------------------------------------------*/
#page-top {
	position : fixed;
	z-index : 9999;
	bottom : 30px;
	right : 20px;
}
#page-top a {
	display : block;
	width : 120px;
	height : 120px;
	padding : 32px 0 0 0;
	box-sizing : border-box;
	background : rgba(0,0,0,0.2);
	text-align : center;
	border-radius : 60px;
	color : #fff;
	font-family : sans-serif;
	font-weight : bold;
	font-size : 18px;
	line-height : 28px;
}
#page-top a:hover {
	background : rgba(0,0,0,0.5);
}

/*----------------------------------------------------------
ページャー
----------------------------------------------------------*/
.pagination {
	clear : both;
	position : relative;
	font-size : 14px;
	line-height : 13px;
	margin : 0 0 40px 0;
	padding : 20px 0;
}
.pagination span,
.pagination a {
	display : block;
	float : left;
	margin : 2px 2px 2px 0;
	padding : 6px 9px 5px 9px;
	text-decoration : none;
	width : auto;
	color : #fff;
	background : #999;
}
.pagination .page-count {
	background : #000;
	font-weight : bold;
}
.pagination a:hover {
	color : #fff;
	background : #666;
}
.pagination .current {
	padding : 6px 9px 5px 9px;
	color : #fff;
	background : #900;
}
@media only screen and (min-width: 780px) {
.pagination {
	clear : both;
	position : relative;
	font-size : 11px;
	line-height : 13px;
	margin-bottom: 20px;
	padding : 20px 0;
}
.pagination span, .pagination a {
	display : block;
	float : left;
	margin : 2px 2px 2px 0;
	padding : 6px 9px 5px 9px;
	text-decoration : none;
	width : auto;
	color : #fff;
	background : #999;
}
.pagination a:hover {
	color : #fff;
	background : #666;
}
.pagination .current {
	padding : 6px 9px 5px 9px;
	color : #fff;
	background : #900;
}
}

/*----------------------------------------------------------
ぱんくず
----------------------------------------------------------*/
#breadcrumb {
	clear : both;
	margin : 0 0 40px 0;
}
#breadcrumb span {
	padding : 0;
	font-size : 12px;
}
/*----------------------------------------------------------
前後の記事
----------------------------------------------------------*/
.p-navi {
	margin : 10px 0;
}
.p-navi a {
	display : block;
	color : #fff;
	padding : 10px 0 10px 42px;
	line-height : 20px;
}
.p-navi .previous a {
	background : url(images/previous.png) #ccc left center no-repeat;
}
.p-navi .next a {
	background : url(images/next.png) #ccc left center no-repeat;
}
.p-navi a:hover {
	background-color : #999;
}

/*----------------------------------------------------------
samples作品サンプル
----------------------------------------------------------*/
#samples_list {
}
#samples_list dl {
	width : 220px;
}
#samples_list dl dt {
	border : 1px solid #999;
}
#samples_list dl dt ,
#samples_list dl dd {
	margin : 0;
}
.post #samples_list dl dd h3 {
	padding : 5px;
	margin : 0 0 10px 0;
	background : transparent;
	background : #eee;;
	border : 1px solid #999;
	border-top : none;
	font-size : 16px;
	color : #666;
	text-align : center;
}
.post #samples_list dl dd p {
	font-size : 14px;
	line-height : 21px;
	margin : 0;
}
@media only screen and (max-width: 780px) {
#samples_list dl {
	width : 44vw;
}
}
/*----------------------------------------------------------
写真アクセス
----------------------------------------------------------*/
#route div ,
#route div p {
	text-align : center;
}
/*--------------------------------------------------------------------------------------------------------------------
加工紹介
--------------------------------------------------------------------------------------------------------------------*/
ul.process_index {
	border : 1px solid #666;
	margin : 0 0 20px 0;
	padding : 0;
}
ul.process_index li {
	box-sizing : border-box;
	border-right : 1px solid #666;
	width : 20%;
	list-style : none;
	margin : 0;
	padding : 0;
	text-align : center;
}
ul.process_index li:nth-last-child(1) {
	border-right : none;
}
ul.process_index li a {
	display : block;
	padding : 5px 0;
}
ul.process_index li a:hover {
	background : #ccc;
}
@media only screen and (max-width: 780px) {
ul.process_index li {
	width : 100%;
	border-right : none;
	border-bottom : 1px solid #666;
}
ul.process_index li:nth-child(5) {
	border-bottom : none;
}
}
/*--------------------------------------------------------------------------------------------------------------------
会社概要
--------------------------------------------------------------------------------------------------------------------*/
ul#client  {
	padding : 0 0 0 0!important;
	margin : 0 0 20px 0!important;
}
#client li {
	width : 50%;
	list-style : none;
	padding : 0!important;
	margin : 0;
}
@media only screen and (max-width: 780px) {
#client li {
	width : 100%;
}
}
/*--------------------------------------------------------------------------------------------------------------------
LCM Movie 動画 周動画
--------------------------------------------------------------------------------------------------------------------*/
#movs {
	margin : 10px 0 20px 0;
	display : -webkit-flex;
	display : -moz-flex;
	display : -ms-flex;
	display : -o-flex;
	display : flex;
	flex-wrap : wrap;
	justify-content : space-between;
	align-items : stretch;
}
#lcm-movie {
	box-sizing : border-box;
	display : block;
	width : 49%;
	border : 4px solid #ccc;
	padding : 20px;
	font-size : 18px;
	color : #333;
}
#shu-mov {
	width : 49%;
}
@media only screen and (max-width: 780px) {
#movs {
	margin : 10px 0;
	display : block;
}
#lcm-movie {
	width : 100%;
	margin : 0 0 10px 0;
}
#shu-mov {
	width : 100%;
}
}
/*--------------------------------------------------------------------------------------------------------------------
英語ページ
--------------------------------------------------------------------------------------------------------------------*/
.english_page * {
	line-height : 1.2;
}
.english_page dl {
	width : 100%;
	margin : 0 0 5px 0;
}
.english_page dl dt {
	padding : 0;
	margin : 0;
	font-family : sans-serif;
	font-weight : bold;
}
.english_page dl dd {
	padding : 0;
	margin : 0 0 0 10px;
}
.english_page dl dt,
.english_page dl dd {
	float : left;
}
.english_page h2 {
	padding : 0;
	font-size : 30px;
}
.english_page table {
	margin : 0 0 30px 0;
}
.english_page table#ccm th {
	width : 25%;
}
.english_page table#ccm td {
	width : 75%;
}
.english_page table th ,
.english_page table td {
	background : transparent;
}
.english_page table#capabilities th ,
.english_page table#capabilities td {
	width : 12.5%;
}
.english_page table th h2 {
	text-align : left;
	font-size : 22px;
	border : none;
	margin : 0;
	padding : 0;
}
.english_page table td h3 {
	font-size : 16px;
	padding : 0;
	margin : 0 0 10px 0;
	background : transparent;
	font-weight : bold;
}
.english_page table td p {
	margin : 0 0 5px 0;
	padding : 0;
}
@media only screen and (max-width : 780px) {
.english_page table,
.english_page table th,
.english_page table td {
	display : block;
	border : none;
}
.english_page table#ccm th ,
.english_page table#ccm td ,
.english_page table#capabilities th ,
.english_page table#capabilities td {
	width : 100%;
	padding : 0;
}
.english_page table#ccm th h2 {
	margin : 0 0 10px 0;
}
.english_page table#capabilities th {
	margin : 20px 0 10px 0;
}
.english_page table td h3 {
	margin : 15px 0 5px 0;
}
}
