@charset "utf-8";
/*
Theme Name: マツタメ株式会社（GA4対応）
Version: 2023.0324
*/

/* =Reset default browser CSS.
Based on work by Eric Meyer: http://meyerweb.com/eric/tools/css/reset/index.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, font, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {border: 0;font-family: inherit;font-size: 100%;font-style: inherit;font-weight: inherit;margin: 0;outline: 0;padding: 0;vertical-align: baseline;}
:focus {outline: 0;}

h1, h2, h3, h4, h5, h6{ font-weight: 900; }

strong,em{ font-weight: 900; }


p{ margin: 1em 0;}
p:first-child{ margin-top: 0; }
p:last-child{ margin-bottom: 0; }
section{ margin: 2em 0;}
section:first-child{ margin-top: 0; }
section:last-child{ margin-bottom: 0; }

/*ol, ul {list-style: none;}*/
table {border-collapse: separate;border-spacing: 0;}
caption, th, td {font-weight: normal;text-align: left;}
blockquote:before, blockquote:after,q:before, q:after {content: "";}
blockquote, q {quotes: "" "";}
a img{border: 0;}
figure{margin:0}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display: block;}
figure img{ vertical-align: bottom;}
/* -------------------------------------------------------------- */

body{
	color:#333;
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	font-size: 88%;
	line-height:1.7;
	background:#888;
	-webkit-text-size-adjust: none;
}

html{background:#00aa8d;}

hr{ /*display: none;*/ }

/* リンク設定
------------------------------------------------------------*/
a{color:#164272;text-decoration:none;}
a:hover{ opacity: .8; }
a:active, a:focus{outline:0;}


/* クラス
------------------------------------------------------------*/
.bold	{ font-weight: 900;}
.xx-large	{ font-size: 240%; }
.x-large	{ font-size: 200%; }
.large	{ font-size: 160%; }

.section::after,
.inner::after,
.section-content::after,
.clearfix::after{
	display: block;
	content:"";
	height: 0;
	line-height: 0;
	clear: both;
}

.alignleft { text-align: left;}
.alignright { text-align: right;}
.aligncenter { text-align: center;}

img.aligncenter { display: block; margin: 0 auto; }
img.alignright { float: right; margin: 2em;  margin-right: 0; margin-top: 1em;}
img.alignleft { float: left; margin: 2em; margin-left: 0; margin-top: 1em; }

img[class*="wp-image-"],
img[class*="attachment-"] { height: auto; max-width: 100%;}


.acf-map {
	width: 100%;
	height: 400px;
	border: #ccc solid 1px;
	margin: 20px 0;
}

/* fixes potential theme css conflict */
.acf-map img {
   max-width: inherit !important;
}


/* ローディング
------------------------------------------------------------*/
#page-loading{
	display: none;
	z-index: 1000;
	background: #333;
	text-align: center;
	width: 100%;
	height: 100%;
	position: fixed;
	top:0;
	left:0;
}
#page-loader{
	z-index: 2000;
	display: none;
	position: fixed;
	top:50%;
	left:50%;
	width: 60px;
	height: 60px;
	margin-left: -30px;
	margin-top: -30px;
}
#page-loader img{
	width: 100%;
	height: auto;
}

/* 全体
------------------------------------------------------------*/
#wrapper{
	margin:0 auto;
	width:100%;
	position:relative;
}

.inner{
	margin:0 auto;
	width:1000px;
	position:relative;
}


/* ヘッダー
------------------------------------------------------------*/
#home-header,
#header{
	color: #fff;
	background:#00aa8d;
	line-height: 1;
}

/*メインページ用*/
#header{
	
}
#header .inner{
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	padding: 10px 20px;
	display: table;
}

#header .header-title{
	display: table-cell;
	width: 200px;
	font-weight: 900;
	text-align: center;
}
#header .header-title p{
	display: none;
}



/*フロントページ用*/
#home-header{
	width: 100%;
	height: 850px;
	position: relative;
	overflow: hidden;
}
#home-header .inner{
	padding: 100px 20px 0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

#home-header .header-title{
	width: 340px;
	font-weight: 900;
	font-size: 90%;
	white-space: nowrap;
	text-align: center;
}
#header .site-logo h1{
	margin: 0;
	padding: 0;
}
#header .site-logo img,
#home-header .site-logo img{
	width: 100%;
	height: auto;
}



/* ヘッダーメニュー（メインページ共通）
------------------------------------------------------------*/

#header #nav-menu{
	position: relative;
	display: table-cell;
	padding-left: 100px;
	vertical-align: middle;
}


/* ヘッダーメニュー（フロント）
------------------------------------------------------------*/

#home-header #nav-menu{
	position: absolute;
	top:20px;
	left: 10px;
}

/* グローバルナビゲーション
------------------------------------------------------------*/

#nav-menu ul{
	display: table;
	position: relative;
	list-style: none;
	margin: 0;
	padding: 0;
}
#nav-menu ul li{
	display: table-cell;
	padding: 1em 0;
	margin: 0;
}


#nav-menu ul li a{
	color: #fff;
	display: inline-block;
	padding: 0 .8em;
	border-left:1px solid #fff;
}

#nav-menu ul li:first-child a{
	border-left:none;
}

#nav-menu ul.sub-menu{
	display: block;
	text-align: center;
	position: absolute;
	top:47px;
	left:0;
	background: #055;
	border-radius: .5em;
	padding: 1em .5em;
	width:100%;
}
#nav-menu ul.sub-menu li{
	display: inline-block;
	text-align: center;
	padding: 0;
	border-left:1px solid #fff;
}
#nav-menu ul.sub-menu li:first-child{
	border-left:none;
}

#nav-menu ul.sub-menu li a{
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	color: #fff;
	display: block;
	width: 100%;
	padding: 0 1em;
	border:none;
}


/* グローバルナビゲーションカレント
------------------------------------------------------------*/

.news #nav-menu .li-news,
.company:not(.page-recruit) #nav-menu .li-company,
.solutions #nav-menu .li-solutions,
.products #nav-menu .li-products,
.recruit #nav-menu .li-recruit,
.page-contact #nav-menu .li-contact,
#nav-menu .current-menu-item
{
	border-bottom: 5px solid #fff;
}

#nav-menu .sub-menu .current-menu-item
{
	border-bottom: 0;
	opacity: 0.8;
}


/* フッター
------------------------------------------------------------*/
#footer{
	color: #00aa8d;
	background: #333;
	
}
#footer .inner{
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	padding: 80px 40px;
	padding-right: 0;
}
#footer a{
	color: #fff;
}

#utils-footer{
	float: left;
	width:300px;
	font-size: 85%;
}

#footer-logo{
	margin-bottom: 1.5em;
	font-weight: 900;
	
}
#footer-logo img{
	width:100%;
	height: auto;
}

#utils-footer address{
	font-style: normal;
	margin-bottom: 1em;
}
#utils-footer small{
	font-family: Helvetica, "sans-serif";
	font-size: 90%;
}

#menu-footer{
	float: right;
	width:600px;
	display: table;
}

#menu-footer .ul-footer{
	list-style: none;
	margin: 0;
	padding: 0;
	display: table-cell;
	width: 33%;
}

#menu-footer .ul-footer li{
	font-weight: 900;
}
#menu-footer .ul-footer li a{
	padding: .2em;
	display: block;
}
#menu-footer .ul-footer .sub-menu{
	list-style: none;
	margin: 0 0 1em;
	padding: 0;
}
#menu-footer .ul-footer .sub-menu li{
	font-weight: normal;
	font-size: 90%;
	color: #333;
}
#menu-footer .ul-footer .sub-menu li a{
	
	color: #ccc;
}

a.btn{
	display: inline-block;
	background: rgba(0,170,141,0.90);
	padding: 1em 2em;
	color: #fff;
	font-size: 120%;
	font-weight: 900;
	margin: 1em 0;
	border: 1px solid #fff;
}

a.btn-totop{
	display: block;
	position: absolute;
	top:-40px;
	right: 40px;
	background: url(images/btn-totop.png) no-repeat 50% 50%;
	width:80px;
	height: 80px;
	text-indent: -9000px;
}
a.btn-totop:hover{
	opacity: 1 !important;
}



/* パンくずリスト
------------------------------------------------------------*/
.breadcrumbs ul{
	list-style: none;
	margin: 0;
	padding: 0;
	font-size: 90%;
}
.breadcrumbs ul li{
	display: inline-block;
}


/* トップページ
------------------------------------------------------------*/


.home section{
	margin: 0;
}

.home .section h2{
	text-align: center;
	font-family: Century Gothic, Futura, Arial, Helvetica, "sans-serif";
	font-size: 240%;
	margin-top: 0;
	margin-bottom: 1em;
	color:#00aa8d;
}

/* バナー、メッセージ
=====================*/


#home-header .banner .inner{
	position: relative;
	top:100px;
	left:0;
	width: 100%;
	min-width: 1000px;
	height: 600px;
	/*background: #D6CF2F;*/
}


#home-header .message{
	position: absolute;
	width: 100%;
	padding: 80px 0;
	text-align: center;
	top:0;
	left:0;
	z-index: 200;
	min-height: 380px;
	background: rgba(0,0,0,0.30);
	text-shadow: 0px 5px 10px rgba(0,0,0,.8);
}

#home-header .message p{
	line-height: 1.6;
}

#home-header .message .xx-large{
	font-size: 320%;
}

#home-header .message .heading-middle{
	margin: 50px 0 1em;
}


#showcase{
	position: absolute;
	top:50%;
	left:50%;
	width: 1250px;
	height: 2000px;
	-webkit-transform:translate(-30%,-40%) rotate(45deg);
	-moz-transform:translate(-30%,-40%) rotate(45deg);
	-ms-transform:translate(-30%,-40%) rotate(45deg);
	transform:translate(-30%,-40%) rotate(45deg);
	background:rgba(0,0,0,0.50) url(images/bg-showcase.png);
}
	
.mask {
	position: absolute;
	top: 50%;
	left: 0;
	background: transparent;
	overflow: hidden;
	
	width: 250px;
	height: 600px;
	clip-path: polygon(0 0, 250px 250px, 250px 600px, 0 350px);
}
.mask span{
	width: 250px;
	height: 600px;
	display: block;
	background: #ccc no-repeat 50% 50%/ cover;
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
	
}
	
#m1		{ left: 0; top: 30%;}
#m2		{ left: 250px; top: 30%;}
#m3		{ left: 500px; top: 30%;}
#m4		{ left: 750px; top: 30%;}
#m5		{ left: 1000px; top: 30%;}
#m6		{ left: 0; top: 60%;}
#m7		{ left: 250px; top: 60%;}
#m8		{ left: 500px; top: 60%;}
#m9		{ left: 750px; top: 60%;}
#m10	{ left: 1000px; top: 60%;}


/* レスポンシブ */
@media screen and (max-width:480px){
	#home-header .banner{ min-width: 0;}
	
	#home-header .banner .inner{
		top:0;
		min-width: 0;
	}
	
	#showcase{
		/*display: none;*/
		width: 1250px;
		transform:translate(-40%,-40%) rotate(45deg) scale(0.5);
	}
}




/* トップページ：コンテンツ紹介
=====================*/

#home-contents{
	background: #fff;
	padding: 50px 0;
}
#home-contents .section-item{
	width: 220px;
	margin: 15px;
	float: left;
}
#home-contents .section-item a{
	display: block;
	color: #fff;
	background:#00aa8d;
}
#home-contents .section-item .item-body{
	padding: 10px;
	padding-bottom: 20px;
	text-align: center;
	color: #000;
}

#home-contents .section-item h3{
	font-size: 120%;
	color: #fff;
}
#home-contents .section-item h3 span{
	display: block;
	font-family: Century Gothic, Futura, Arial, Helvetica, "sans-serif";
	font-size: 80%;
	color: #ccc;
}


/* トップページ：お知らせ
=====================*/

#home-information{
	background: #e6e6e6;
	padding: 50px 0 100px;
}

#home-information dl{
	border-bottom: 1px solid #ccc;
}

#home-information dl a{
	display: table;
	width: 100%;
	color: #333;
	border-top: 1px solid #ccc;
}
#home-information dl a:hover{
	opacity: 1;
	background: #fff;
}
#home-information dl a dt,
#home-information dl a dd
{
	display: table-cell;
	padding: 1em;
}

#home-information dl a dt{
	width: 10em;
	font-weight: 900;
	text-align: center;
}
#home-information dl a .cat	{
	display: inline-block;
	padding: .2em .8em;
	margin-right: 2em;
	width: 5em;
	text-align: center;
	background: #F15A24;
	color: #fff;
	font-weight: 900;
}
#home-information dl a .date{}



/* コンテンツ
------------------------------------------------------------*/

#container{
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	width: 1000px;
	padding: 10px 20px;
	margin: 0 auto;
	background: -webkit-linear-gradient(rgba(255,255,255,0.8) 0%, rgba(255,255,255,1) 20%);
	background: -o-linear-gradient(rgba(255,255,255,0.8) 0%, rgba(255,255,255,1) 20%);
	background: linear-gradient(rgba(255,255,255,0.8) 0%, rgba(255,255,255,1) 20%); 
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#7affffff', endColorstr='#ffffff',GradientType=0 ); /* IE6-9 */
	
}


#main{
	margin: 0;
}

.home #main{
	margin: 0;
}


#main .main-article{
	padding: 50px;
}


#main .main-article .main-article-header,
#aside .aside-header{
	text-align: center;
	margin-bottom: 2em;
}

#main .main-article .main-article-header .header-title,
#aside .aside-header .header-title{
	font-size: 200%;
	font-weight: 900;
	color:#333;
	display: inline-block;
	border-top:5px solid #00aa8d;
	margin-top: 0;
	padding-top: 20px;
}
#main .main-article .main-article-header .header-title span,
#aside .aside-header .header-title span{
	display: block;
	font-weight: 900;
	font-family: Century Gothic, Futura, Arial, Helvetica, "sans-serif";
	font-size: 75%;
	color: #999;
	margin-top: 10px;
}


#page{
	padding: 100px 0;
	background-position: 50% 0;
	background-repeat: no-repeat;
	background-size: contain;
}


#page .page-header{
	text-align: center;
	margin-bottom: 2em;
}

#page .page-header .header-title{
	font-size: 200%;
	font-weight: 900;
	color:#333;
	display: inline-block;
	margin-top: 0;
}
#page .page-header .header-title:last-child{
	margin-bottom: 0;
}


/* 見出し
------------------------------------------------------------*/

body:not(.home) #main h2{
	font-size: 180%;
	color:#00aa8d;
	border-left:5px solid #00aa8d;
	padding-left: .5em;
	margin: 2em 0 .8em;
}

body:not(.home) #main h3{
	font-size: 160%;
	color:#987;
	margin: 1em 0 .5em;
}
body:not(.home) #main h3 a{
	color:#987;
	text-decoration: underline;
}

body:not(.home) #main h2:first-child,
body:not(.home) #main h3:first-child
{
	margin-top: 0;
}
body:not(.home) #main h2:last-child,
body:not(.home) #main h3:last-child
{
	margin-bottom: 0;
}


#main ul,
#main ol {
	margin: 1em 0;
	margin-left: 1.5em;
}
#main li {
	margin: .5em 0;
}


/* テーブル
------------------------------------------------------------*/

#main table{
	width:100%;
	border-bottom: 1px dotted #999;
}

#main th,
#main td
{
	border-top: 1px dotted #999;
	padding: 1em;
	vertical-align: top;
}

#main th{ font-weight: 900; width: 25%; }

.dl-horizontal{
	width: 100%;
}
.dl-horizontal::after{
	content:"";
	display:block;
	clear: both;
}
.dl-horizontal dt,
.dl-horizontal dd{
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	padding: .3em 0;
}
.dl-horizontal dt{
	font-weight: 900;
	float: left;
	clear: both;
	width: 20%;
}
.dl-horizontal dd{
	float: left;
	width: 80%;
	margin: 0;
}

@media screen and (max-width:480px){
	.dl-horizontal dt,
	.dl-horizontal dd{
		float: none;
		width: 100%;
		margin: 0;
		padding: 0;
	}
	
	.dl-horizontal dt{
		margin-top: 1em;
		
	}
	
	#main th{ padding-left: 0; padding-right: .5em; }
	#main td{ padding-left: 0; padding-right: 0; }
}


/* ページナビゲーション
------------------------------------------------------------*/

.navigation{
	margin: 50px 0 0;
}

.pagenav{
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	display: table;
	width: 100%;
	
	border-collapse: separate;
	border-spacing: 15px;
}
.pagenav a.pagenav-btn{
	display: table-cell;
	background: #00aa8d;
	border-radius: 1em;
	padding: 1em .5em;
	text-align: center;
	color: #fff;
}
.pagenav a.pagenav-btn p{
	margin: .5em 0 0;
}

.pagenav .btns{
	display: table-cell;
	width: 25%;
}
.pagenav .btns a.pagenav-btn{
	display: block;
	background: #999;
}


.pagination{
	padding: 2em 0 0 !important;
    text-align:center;
}
.pagination .screen-reader-text { display:none; }
.pagination .nav-links {}
.nav-links .page-numbers {
	display:inline-block;
	text-decoration:none;
	border-radius: .5em;
   
    padding:5px 10px;
    margin:0 2px;
	background: #E6E6E6;
}
.nav-links .page-numbers.current {
    background: #00aa8d;
    color: #FFF;
}
.pagination a{
	color: #666;
}
.pagination a:hover{
    color: #fff;
    background-color: #00aa8d;
}





/* レイアウト
------------------------------------------------------------*/
.table	{ display: table; width: 100%; margin: 1.5em auto; }
.cell	{ display: table-cell; vertical-align: top; }

.align-left{ text-align: left; }
.align-center{ text-align: center; }
.align-right{ text-align: right; }

img.align-left{ margin: 0 auto 0 0; display: block; }
img.align-center{ margin: 0 auto; display: block;}
img.align-right{ margin: 0 0 0 auto; display: block;}

/* レスポンシブ */
@media screen and (max-width:480px){
	.table,
	.cell	{ display: block; }
	
	.cell { margin: 1em 0; }
	.cell:first-child { margin-top: 0; }
	.cell:last-child { margin-bottom: 0; }
}


/* 固定ページ
------------------------------------------------------------*/

.page #page{
	padding-top: 30px;
}

/* お問い合わせ
------------------------------------------------------------*/

.page-recruit #main .contact-box,
.page-contact #main .contact-box{
	margin-left: 0;
	margin-right: 0;
}

.page-recruit #main .contact-box{ margin-top: 3em; }

#main .form-box{
	border:10px solid #00aa8d;

	padding: 20px 50px;
	background: #fff;
	border-radius: 1em;
}

.form-footer{ text-align: center;}

/* フォーム
-----------------------------------*/

#form table{
	margin: 2em 0;
	
}

#form table th,
#form table td
{
	vertical-align: middle;
}

#form table dl{
	overflow: hidden;
}

#form table dt {
	float: left;
	clear: both;
	width: 6em;
	padding: .5em;
	padding-top: 1em;
	font-weight: 900;
}
#form .mw_wp_form_confirm table dt {
	padding: .5em;
}


#form table dd {
	padding: .5em;
	padding-left: 7em;
}

#form select {
	width: 100%;
	padding: .5em;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: 1px solid #999;
	border-radius: .3em;
	background: #FCF5DD;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	/*background: url(arrow01.png) right 50% no-repeat, -webkit-linear-gradient(top, #fff 0%,#efebe1 100%);
	background: url(arrow01.png) right 50% no-repeat, linear-gradient(to bottom, #fff 0%,#efebe1 100%);
	background-size: 20px, 100%;*/
}

#form input[type="number"],
#form input[type="email"],
#form input[type="tel"],
#form input[type="text"],
#form textarea
{
	padding: .5em;
	background: #FCF5DD;
	border:1px solid #999;
	border-radius: .3em;
	font-size: 100%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	/*
	width: 80%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	*/
}

#form .w100{
	width: 100%;
}
#form .w90{
	width: 90%;
}
#form .w80{
	width: 80%;
}
#form .w70{
	width: 70%;
}
#form .w60{
	width: 60%;
}
#form .w50{
	width: 50%;
}
#form .w30{
	width: 30%;
}
#form .w20{
	width: 20%;
}
#form .w10{
	width: 10%;
}

.nowrap{
	white-space: nowrap;
}

.title-thanks{
	color: #000 !important;
    font-weight: 900;
    font-size: 160% !important;
	margin: 0 0 .8em;
	text-align: center;
}

.require{ color: #f00; }
.mw_wp_form_confirm .require{
	display: none;
}

#form .mw_wp_form_input .hide-input,
#form .mw_wp_form_confirm .hide-confirm{
	display: none;
}

/*
.require:after{
	display: inline-block;
	margin:0 .5em;
	font-size: 90%;
	font-weight: 900;
	content:" ※";
	color: #e33;
}
*/

div.notice{
	margin: 2em auto;
	color: #555;
}

input[type="submit"].btn-form{
	cursor: pointer;
	display: inline-block;
	margin: 1em auto;
	padding: .8em 2em !important;
	border-radius: .5em !important;
	color: #fff;
	background: #999 !important;
	font-size: 120% !important;
	font-weight: 900 !important;
	/*box-shadow: 0px 3px 10px 5px rgba(0,0,0,0.30);*/
	
	text-align: center;
	width: auto;
	border: 0;
	
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	
}
input[type="submit"].btn-form:hover{
	opacity: .8;
}

input[type="submit"].btn-submit{
	color: #fff;
	background: #00aa8d !important;
}
input[type="submit"].btn-return{
	color: #fff;
	background: #999 !important;
	margin-left: 2em;
}


.mw_wp_form .horizontal-item{
	display: inline-block !important;
	margin-left: 0 !important;
	margin-right: 1em !important;
}

.mw_wp_form .error{
	display: inline-block !important;
	color: #e33 !important;
}

.for_comfirm	{ display: none; }
.mw_wp_form_preview .for_comfirm	{ display: block; }
.mw_wp_form_preview .for_form		{ display: none; }


/* プライバシーポリシー
------------------------------------------------------------*/

.page-privacy-policy #main h2{
	font-size: 160% !important;
	color: #765 !important;
}

.page-privacy-policy #main .main-article {
    padding: 50px 30px;
}

.page-privacy-policy #main .address{
	padding: 1.5em 3em;
}
.page-privacy-policy #main .address-heading{
	font-weight: 900;
	font-size: 140%;
	margin-bottom: 1em;
}
.page-privacy-policy #main .address p{
	margin: .5em 0;
}

.enactment-date{
	text-align: right;
	margin-top: 1em;
}


/* サイトマップ
-----------------------------------*/

.page-sitemap #main ul{
	list-style:none;
	margin:0;
	padding:0;
}

.page-sitemap #main ul.sitemap-ul{
	display:flex;
	-webkit-flex-wrap:	wrap; /* Safari */
	flex-wrap: wrap;
}

.page-sitemap #main ul.sitemap-ul li{
	-webkit-box-sizing:	border-box;
	box-sizing:			border-box;
	margin-right:1%;
	margin-bottom:1em;
	width:48%;
}
.page-sitemap #main ul.sitemap-ul>li{
	margin-bottom:2em;
}


.page-sitemap #main .menu-item a{
	display:block;
	color:#333;
	font-size:120%;
	font-weight:bold;
	position:relative;
	text-decoration:none;
	border-left: 5px solid #00aa8d;
	padding:0 .5em;
	margin: 0;
	font-size: 130%;
}
.page-sitemap #main .menu-item a:hover
{
	background: #eee;
}
.page-sitemap #main .menu-item a[title="static"]:hover
{
	color:#333;
	background:#fff;
	cursor:default;
}

.page-sitemap #main ul.sub-menu{
	padding: 0 15px;
	margin: 10px auto;
}
.page-sitemap #main ul.sub-menu li{
	width:100%;
	padding:.5em 0;
	margin:0;
	border-top:1px dotted #666;
}

.page-sitemap #main ul.sub-menu a{
	font-weight:900;
	font-size:100% !important;
	background:none;
	border-radius:5px;
	border-left:0;
	padding:.5em;
	margin:0;
	color:#666;
	text-decoration:none;
}
/*.page-sitemap #main ul.sub-menu a:hover
{
	color:#333;
	background-color:#CCC;
}*/


.page-sitemap #main ul.sub-menu ul.sub-menu {
	padding:0 0 0 1em;
	
}
.page-sitemap #main ul.sub-menu ul.sub-menu li{
	padding:0;
	border:none;
}
.page-sitemap #main ul.sub-menu ul.sub-menu a{
	font-weight:400;
}

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

.page-sitemap #main ul.sitemap-ul{
	display:block;
}

.page-sitemap #main ul.sitemap-ul li{
	margin-right:0;
	width:100%;
}

}


/* お知らせ
------------------------------------------------------------*/

#main .post-item .item-inner{
	display: table;
	color: #333;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%;
	border:1px solid #999;
	padding: 10px;
}

#main .post-item .item-heading {
	color:#00AA8D;
	font-weight: 900;
	font-size: 120%;
	margin-bottom: 1em;
}
#main .post-item .item-heading a{
	color:#00AA8D;
}

#main .post-item .item-heading .date{
	color:#333;
	font-weight: 500;
	font-size: 80%;
	margin-bottom: .5em;
}

#main .post-item .list-categolies{
	display: table;
	padding-top: 0em;
	font-weight: 500;
	font-size: 80%;
}

#main .post-item .item-content {
	
}



#main .post-item{
	margin-bottom: 1.5em;
}

#main .post-item:last-child{
	margin-bottom: 0;
}


.post #aside ul {
	list-style: none;
}

.post #aside ul li{
	margin: .5em 0;
	padding-bottom: .5em;
	border-bottom: 1px dotted #666;
}

.post #aside ul li a{
	color: #00aa8d;
	text-decoration: none;
	display: block;
}
.post #aside ul li a span.date{
	display: block;
	font-size: 90%;
	color: #666;
}


/* 事例紹介
------------------------------------------------------------*/

.solutions #main .main-article{
	padding: 20px 20px 40px;
}

.solutions #main h2{
	color: #765 !important;
}

/* 事例紹介シングル
------------------------------------------------------------*/
.tax-case .navigation,
.single-solutions .navigation{
	margin-bottom: 3em;
	padding-top: 0 !important;
}

.solutions #page{
	padding-top: 30px;
}

.post #page-content,
.search.solutions #page-content,
.tax-case #page-content,
.single-solutions #page-content{
	padding: 0 15px 30px;
}

.post #page-content .page-header,
.search.solutions #page-content .page-header,
.tax-case #page-content .page-header,
.single-solutions #page-content .page-header{
	border-top: 5px solid #00aa8d;
	border-bottom: 1px dotted #666;
	margin: 2em 0;
}

.post #page-content .page-header .header-title,
.search.solutions #page-content .page-header .header-title,
.tax-case #page-content .page-header .header-title,
.single-solutions #page-content .page-header .header-title{
	display: block;
	text-align: left;
	color:#333;
	margin: .5em 0;
	font-size: 180%;
}

#page-content .list-categolies{
	display: table;
	padding-top: 1em;
}


#page-content .list-categolies .list-heading,
#page-content .list-categolies ul
{ 
	display: table-cell;
	vertical-align: middle;
}

#page-content .list-categolies .list-heading{
	font-size: 130%;
	font-weight: 900;
	color: #666;
	padding-right: 1em;
}

#page-content .list-categolies ul{
	list-style: none;
	margin: 0;
	padding: 0;
	font-size: 90%;
}
#page-content .list-categolies ul li{
	display: inline-block;
	margin: .4em .2em;
}
#page-content .list-categolies ul li span,
#page-content .list-categolies ul li a{
	display: inline-block;
	background: #00aa8d;
	border-radius: 2em;
	color: #fff;
	padding: .5em .8em;
	line-height: 1.2;
}

.post #main,
.search.solutions #main,
.tax-case #main,
.single-solutions #main{
	float: left;
	width: 640px;
}

.post #main h2,
.tax-case #main h2,
.single-solutions #main h2{
	border: none !important;
	padding-left: 50px !important;
	background-repeat: no-repeat;
	background-position: 0 50%;
	font-size: 150% !important;
}

.single-solutions #main section{
	margin: 3em 0;
}
.single-solutions #main section:first-child{ margin-top: 0; }
.single-solutions #main section:last-child{ margin-bottom: 0; }

#problems .section-heading{ background-image: url(images/mk-problems.png); }
#proposals .section-heading{ background-image: url(images/mk-proposals.png); }
#voices .section-heading{ background-image: url(images/mk-voices.png); }

#problems .points,
#proposals .points	{ color: #fff; padding: 1em; margin: 1.5em 0; }

#problems .points .points-label,
#proposals .points .points-label	{ font-size: 120%; font-weight: 900; }

#problems .points	{ background-color: #0071BC; }
#proposals .points	{ background-color: #00aa8d; }

.post #aside,
.search.solutions #aside,
.tax-case #aside,
.single-solutions #aside{
	float: right;
	width: 240px;
}

.post #aside .aside-section,
.tax-case #aside .aside-section,
.single-solutions #aside .aside-section{
	padding: 0;
	border-top: none;
}

.post #aside .aside-section:first-child,
.search.solutions #aside .aside-section:first-child,
.tax-case #aside .aside-section:first-child,
.tax-case #aside .aside-section:first-child .section-heading,
.single-solutions #aside .aside-section:first-child,
.single-solutions #aside .aside-section:first-child .section-heading {
	margin-top: 0;
}

.post #aside .aside-section .section-heading,
.search.solutions #aside .aside-section .section-heading,
.tax-case #aside .aside-section .section-heading,
.single-solutions #aside .aside-section .section-heading {
	border-left:5px solid #00aa8d;
	padding-left: .5em;
	color:#765;
	font-size: 150% !important;
	margin-bottom: .5em;
}

#search-case ul li{
	margin: .5em 0;
}

#search-case ul li a{
	color: #00aa8d;
	text-decoration: underline;
}

#search-word .search-box .btn-submit-search{
	right: 0;
}


#main .solutions-item{
	margin-bottom: 1.5em;
}

#main .solutions-item:last-child{
	margin-bottom: 0;
}

#main .solutions-item .item-inner{
	display: table;
	color: #333;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%;
	border:1px solid #999;
	padding: 10px;
}

#main .solutions-item .item-thumbnail,
#main .solutions-item .item-content
{
	display: table-cell;
	vertical-align: top;
}

#main .solutions-item .item-thumbnail{
	width: 220px;
}
#main .solutions-item .item-thumbnail img{
	width: 100%;
	height: auto;
}
#main .solutions-item .item-content {
	padding-left: 1em;
}

#main .solutions-item .item-heading {
	color:#00AA8D;
	font-weight: 900;
	font-size: 120%;
	margin-bottom: .5em;
}

#main .solutions-item .item-body {
	font-size: 90%;
}



/* 事例紹介アーカイブ
------------------------------------------------------------*/
#search-case,
#search-word,
#search-post
{
	width: 100%;
	margin-top: 3em;
	padding-top: 1em;
	border-top:1px dotted #999; 
}
#search-case ul{
	overflow: hidden;
	list-style: none;
	padding: 0;
	margin: 0;
}
.post-type-archive-solutions:not(.search) #search-case ul li{
	width: 23%;
	float: left;
	margin: 1%;
	
}
.post-type-archive-solutions:not(.search) #search-case ul li:nth-child(4n+1){
	clear: both;
}
.post-type-archive-solutions:not(.search) #search-case ul li a{
	display: block;
	width: 100%;
	text-align: center;
	text-decoration: none;
	background: #00aa8d;
	border-radius: .5em;
	color: #fff;
	font-weight: 900;
	padding:1.5em 1em;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

#search-word .search-box{
	position: relative;
}
#search-word .search-box input[type="search"]{
	width: 100%;
	
	border: 1px solid #999;
	border-radius: .5em;
	background: #FCF5DD;
	padding: .5em;
	font-size: 120%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
#search-word .search-box .btn-submit-search{
	display: block;
	margin-top: -20px;
	padding: 0;
	border: none;
	background: transparent;
	color: #666;
	font-size: 150%;
	position: absolute;
	right: 10px;
	top:50%;
	width: 40px;
	height: 40px;
	
}

#search-new,
#search-all{
	
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

#search-new{
	width: 55%;
	padding-right: 20px;
}

#search-new .solution-article{
	display: table;
}

#search-new .solution-article-thumbnail,
#search-new .solution-article-content
{
	display: table-cell;
	vertical-align: top;
}
#search-new .solution-article-content{
	padding-left: 1em;
}
#search-new .solution-article-content a{
	color: #00aa8d;
}
#search-new .solution-article-heading{
	
	text-decoration: underline;
	font-size: 110%;
	font-weight: 900;
	margin-bottom: .5em;
}
#search-new .solution-article-body{
	font-size: 90%;
}


#search-all{
	padding-left: 20px;
}


/* 製品情報
------------------------------------------------------------*/

.products #page {
	background-image: url(images/bg-products.jpg);
	padding-top: 100px;
}

.products #page-content { padding:2em 0; }

.products:not(.post-type-archive) #aside{
	float:left;
	width: 280px;
	padding: 0px;
}

.products #nav-categories .ul-categories{
	list-style: none;
	margin: 0;
	padding: 0;
	
}

.products #nav-categories .ul-categories li{
	text-align: center;
	font-weight: 900;
	font-size: 110%;
	margin: .3em 0;
}

.products #nav-categories .ul-categories a{
	display: block;
	border-radius: 30px;
	width: 100%;
	padding: .5em 0;
	color: #666;
}
.products #nav-categories .ul-categories a:hover{
	background: #ddd;
}
.products #nav-categories .ul-categories li.current-menu-item a{
	color: #fff;
	background: #00aa8d;
}


.products:not(.post-type-archive) #main{
	float:right;
	width: 640px;
	padding: 15px;
	background: #fff;
	border-radius: 1em;
}

.products #main .main-article{
	padding: 25px;
}

/*製品情報アイテム（アーカイブ）*/
.post-type-archive-products #main .item{
	width: 260px;
	margin: 20px;
	float: left;
}
.post-type-archive-products #main .item:nth-child(3n+1){
	clear: both;
}
.post-type-archive-products #main .item a{
	display: block;
	background: #00aa8d;
	padding: 10px;
	width: 240px;
	color: #fff;
}
.post-type-archive-products #main .item .item-title{
	text-align: center;
	font-weight: 900;
	font-size: 120%;
	padding: .8em;
}

/*製品情報アイテム（シングルページ）*/
.products:not(.post-type-archive) #main .products-item{
	margin-bottom: 1.5em;
	background: #fff;
}
.products:not(.post-type-archive) #main .products-item:last-child{
	margin-bottom: 0;
}

.products:not(.post-type-archive) #main .products-item a,
.products:not(.post-type-archive) #main .products-item .item-inner{
	display: table;
	color: #333;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%;
	border:1px solid #999;
	padding: 10px;
}

.products:not(.post-type-archive) #main .products-item .item-thumbnail,
.products:not(.post-type-archive) #main .products-item .item-content {
	display: table-cell;
	vertical-align: top;
}

.products:not(.post-type-archive) #main .products-item .item-thumbnail{
	width: 180px;
}
.products:not(.post-type-archive) #main .products-item .item-thumbnail img{
	width: 100%;
	height: auto;
}
.products:not(.post-type-archive) #main .products-item .item-content {
	padding-left: 1em;
}

.products:not(.post-type-archive) #main .products-item .item-heading {
	color:#00AA8D;
	font-weight: 900;
	font-size: 140%;
	margin-bottom: .5em;
}

.products:not(.post-type-archive) #main .products-item .item-details {
	margin-top: 1em;
}
.products:not(.post-type-archive) #main .products-item .item-details .detail-label {
	display: inline-block;
	line-height: 1;
	padding: .5em .8em;
	background: #ccc;
	font-weight: 900;
	font-size: 100%;
	margin-bottom: .5em;
}

.products:not(.post-type-archive) #main .products-item .item-details .detail-content {
	border: none;
	display: block;
}

/* 企業情報
------------------------------------------------------------*/

.company #page { background-image: url(images/bg-company.jpg); padding-top: 200px;}


.company #main .item {
	border-bottom: 1px dotted #999;
	padding: 1.5em 0;
}
.company #main .item:first-child {
	border-top: 1px dotted #999;
}

/*.recruit #nav-menu .li-company{ border-bottom: none; }*/

.home #nav-menu .li-company .sub-menu,
.page-recruit #nav-menu .li-company .sub-menu,
body:not(.company) #nav-menu .li-company .sub-menu{ display: none; }


.company-location{
	margin-bottom: 2em;
	padding-bottom: 2em;
	border-bottom: 1px solid #999;
}
.company-location:last-child{
	margin-bottom:  0;
}

.company-location .acf-map{ margin: 0; }

.access-largemap{ text-align: right; margin: .5em 0; }


/* ページ内「お問い合わせ」
------------------------------------------------------------*/
.contact-box{
	background: #00aa8d;
	border-radius: 1em;
	padding: 0;
	text-align: center;
	color: #fff;
	margin: 1em;
	margin-top: 1em;
}
.single-products .contact-box{
	margin:3em 0 0;
}

.contact-box .box-content{
	padding: 10px;
	padding-bottom: 0;
}
.contact-box .table{
	border-collapse: separate;
	border-spacing: 10px;
	border: 0 !important;
	margin: 0 !important;
	padding-top: 10px !important;
}
.contact-box .cell{
	border-radius: 1em;
	background: #fff;
	padding: 1em;
	color: #555;
}
.contact-box h3{
	color:#fff !important;
	font-weight: 900;
	font-size: 160% !important;
}
.contact-box h4{
	color:#00aa8d;
	font-weight: 900;
	font-size: 140%;
	margin: 0;
}
.contact-box h4 .fa{
	font-size: 150%;
	vertical-align: -.1em;
}
.contact-box .feature{
	font-size: 180%;
	font-weight: 900;
	line-height: 1;
	margin: .5em 0;
}

/*スマホ*/

#btn-menu-sp{
	display: none;
	text-indent: -9000px;
	background: url(images/img-btn-menu-sp.png) no-repeat 0 0;
	width: 100px;
	height: 40px;
	border: 1px solid rgba(255,255,255,0.60);
	border-right:0;
	outline: none;
	position: fixed;
	top:15px;
	right: 0;
	z-index: 500;
}
#btn-menu-sp:hover{
	cursor: pointer;
}
#btn-menu-sp.open{
	background-position: 0 -40px;
}

/* レスポンシブ
------------------------------------------------------------*/

.br-pc { display: block; }
.br-sp { display: none; }

.for-pc { display: block; }
.for-sp { display: none; }

#nav-menu .for-sp { display: none; }

#menu-footer .ul-footer.for-pc { display: table-cell; }
#menu-footer .ul-footer.for-sp { display: none; }

/* レスポンシブ */
@media only screen and (max-width:480px){
	
	.br-pc { display: none; }
	.br-sp { display: block; }
	
	.for-pc { display: none; }
	.for-sp { display: block; }
	
	#nav-menu {display: none;}
	
	#btn-menu-sp,
	#nav-menu .for-sp { display: block; }
	
	#menu-footer .ul-footer.for-pc { display: none; }
	#menu-footer .ul-footer.for-sp { display: table-cell; }
	
	.inner,
	#container,
	#menu-footer,
	#utils-footer { width: 100%; }
	
	
	#form .w100,
	#form .w90,
	#form .w80,
	#form .w70,
	#form .w60,
	#form .w50,
	#form .w30,
	#form .w20,
	#form .w10{
		width: 100%;
	}
	
	
	/*フッター*/
	
	
	#footer .inner{
		padding: 10px;
		padding-bottom: 140px;
	}
	#utils-footer{
		text-align: center;
	}
	#footer-logo{
		width: 300px;
		margin: 0 auto 1.5em;
	}
	
	#menu-footer{
		margin-bottom: 3em;
	}
	
	#menu-footer .ul-footer li{
		padding: 3px;
	}
	#menu-footer .ul-footer li a {
		background: #00aa8d;
		text-align: center;
		border-radius: .5em;
		padding: .5em .2em;
	}
	
	a.btn-totop {
    	top: auto;
    	right: auto;
		bottom: 30px;
		left:50%;
		margin-left: -40px;
	}
	
	
	
	/*ヘッダー*/
	
	#header #nav-menu,
	#header .header-title { display: block; }
	
	#header #nav-menu,
	#home-header #nav-menu{
		display: none;
		position: fixed;
		top:0;
		left: 0;
		width: 100%;
		height: 100%;
		z-index: 400;
		background: rgba(51,51,51,0.90);
		padding: 0;
		/*background: rgba(0,138,115,0.95);*/
	}
	
	#nav-menu ul,
	#nav-menu ul li,
	#nav-menu ul li a { display: block; }
	
	#nav-menu { display: none; }
	
	#nav-menu ul:first-child { padding-top: 70px;}
	#nav-menu ul li   { border-bottom: 1px solid rgba(255,255,255,0.30); padding: 1em; }
	#nav-menu ul li a {
		border: none;
		text-align: center;
	}
	
	#nav-menu ul.sub-menu {
		box-sizing: border-box;
		position: static;
    	background: #055;
    	border-radius: .5em;
		margin-top: 1em;
    	padding: 1em .5em;
    	width: 100%;
	}
	#nav-menu ul.sub-menu li{
		display: block;
		border: none;
	}
	#nav-menu ul.sub-menu li a{
		display: block;
		padding: .5em;
	}
	
	
	.home #nav-menu .li-home,
	.news #nav-menu .li-news,
	.company:not(.recruit) #nav-menu .li-company,
	.solutions #nav-menu .li-solutions,
	.products #nav-menu .li-products,
	.recruit #nav-menu .li-recruit,
	.page-contact #nav-menu .li-contact,
	#nav-menu .current-menu-item {
    	border-bottom: 1px solid rgba(255,255,255,0.30);
		background: #00aa8d;
	}
	
	#home-header{ 
		/*height: auto;*/
		height: 690px;
	}
	
	#home-header .header-title{
		/*margin: 0 auto;*/
		width: 300px;
		font-size: 85%;
		position: absolute;
		top:80px;
		left:50%;
		margin-left: -150px;
		z-index: 200;
	}
	#home-header .inner		{ padding: 180px 0 50px; }
	#home-header .banner,
	#home-header .message	{ /*position: static;*/ }
	
	#home-header .banner .inner{ height: auto; }
	
	#home-header .message{
		box-sizing: border-box;
		margin: 0;
		padding: 2em .5em;
	}
	#home-header .message .xx-large { font-size: 170%; }
	#home-header .message p { font-size: 80%; }
	#home-header .message .heading-middle {
    	margin: 2em 0 1em;
		font-size: 140%;
	}
	
	
	/*フロントページ*/
	
	#home-contents .section-content{ padding: 0 10px; }
	#home-contents .section-item {
		box-sizing: border-box;
    	width: 50%;
   		margin: 0;
		padding: 10px;
    	float: left;
		
	}
	#home-contents .section-item p{font-size: 80%;}
	#home-contents .section-item:nth-child(2n+1){
		clear: both;
	}
	#home-contents .section-item img{
		width: 100%;
		height: auto;
	}
	
	#home-information { padding-bottom: 50px; }
	
	#home-information dl a,
	#home-information dl a dt{ display: block; }
	#home-information dl a { padding: 0 10px; box-sizing: border-box;}
	
	#home-information dl a dt,
	#home-information dl a dd {
		padding: .5em;
		text-align: left;
	}
	
	#home-information dl a dd { display: table; padding-top: 0; }
	
	#home-information dl a dd span.cat,
	#home-information dl a dd span.title { display: table-cell; vertical-align: middle; }
	#home-information dl a dd span.title { padding-left: 1em;}
	
	
	/*ナビゲーション*/
	
	.navigation {
		margin-bottom: 50px;
	}
	
	.pagenav,
	.pagenav a.pagenav-btn,
	.pagenav .btns{
    	display: block;
	}
	
	.pagenav a.pagenav-btn,
	.pagenav .btns{
		margin: 1em 0;
	}
	
	.pagenav .btns {
    	width: 100%;
	}
	
	/*メインページ*/
	
	#page,
	.page #page,
	.solutions #page	{ padding: 0; }
	.products #page		{ padding-top: 150px; }
	
	#main .main-article,
	.products #main .main-article,
	.solutions #main .main-article,
	.page-privacy-policy #main .main-article,
	.tax-case #page-content,
	.single-solutions #page-content
	{
    	padding: 0px;
	}
	
	
	.page-privacy-policy #main h2 {
    	font-size: 120% !important;
	}
	
	#main .main-article img{
		width: 100%;
		height: auto;
	}
	
	.breadcrumbs:first-child{
		margin-bottom: 2em;
	}
	
	
	#main .main-article .main-article-header .header-title,
	#aside .aside-header .header-title {
    	font-size: 160%;
	}
	
	
	.contact-box {
    margin: 1em 0;
    margin-top: 3em;
	}
	
	.contact-box .table,
	.contact-box .cell {
		box-sizing: border-box;
		display: block;
	}
	.contact-box .table {
		padding: 10px !important;
			
	}
	
	
	/*お問い合わせ*/
	
	.page-contact #main h2 {
    	font-size: 120% !important;
	}
	
	.page-contact #main .contact-box {
		margin-top: 0;
	}
	
	.page-contact #main .form-box {
    	padding: 10px;
		margin-bottom: 50px;
	}
	.page-contact #main .form-box table,
	.page-contact #main .form-box tr,
	.page-contact #main .form-box th,
	.page-contact #main .form-box td {
		box-sizing: border-box;
		display: block;
		width: 100%;
	}
	
	.page-contact #main .form-box th,
	.page-contact #main .form-box td {
		border: none;
	}
	.page-contact #main .form-box th {
		background: #00aa8d;
		color: #fff;
		border-radius: .5em;
		margin-top: 1em;
		padding: .5em;
		
	}
	
	/*事例紹介*/
	.post-type-archive-solutions:not(.search) #search-case ul li {
		width: 48%;
	}
	.post-type-archive-solutions:not(.search) #search-case ul li:nth-child(2n+1){ clear:both; }
	.post-type-archive-solutions:not(.search) #search-case ul li:nth-child(4n+1){ clear:none; }
	
	.post-type-archive-solutions:not(.search) #search-case ul li a { padding: 1em 0; }
	
	#search-post{ margin-bottom: 50px; }
	
	#search-new{ width: 100%; padding: 0; }
	#search-new .solution-article-thumbnail{ width: 30%; }
	
	#search-all{ padding: 0; }
	#search-all a.btn{ display: block; text-align: center; padding-left: 0; padding-right: 0; }
	
	.post #main,
	.tax-case #main,
	.single-solutions #main,
	.post #aside,
	.tax-case #aside,
	.single-solutions #aside {
    	float: none;
    	width: 100%;
	}
	
	.post #main,
	.tax-case #main,
	.single-solutions #main{
		margin-bottom: 50px;
	}
	
	.post #aside,
	.tax-case #aside,
	.single-solutions #aside {
    	padding: 30px 0;
		border-top:1px solid #999;
	}
	
	.post #aside ul li {
    margin: .5em 0;
    padding-bottom: 0;
    border-bottom: 0;
	}
	
	#main .solutions-item .item-inner,
	#main .solutions-item .item-thumbnail,
	#main .solutions-item .item-content
	{
		width: 100%;
		display: block;
	}
	
	#main .solutions-item .item-content
	{
		padding: 0;
		margin-top: 1em;
	}
	
	#aside ul.ul-categories{
		text-align: center;
	}
	
	#aside ul.ul-categories li{
		display: inline-block;
	}
	#aside ul.ul-categories li a {
		text-decoration: none;
    	display: inline-block;
    	background: #eee;
    	border-radius: 2em;
    	color: #000;
    	padding: .5em .8em;
    	line-height: 1.2;
		font-weight: normal !important;
	}
	
	#page-content .list-categolies,
	#page-content .list-categolies .list-heading,
	#page-content .list-categolies ul { 
	display: block;
	}
	#page-content .list-categolies .list-heading{
		padding: 0;
		margin-bottom: .5em;
	}
	.single-solutions #page-content .page-header .header-title { font-size: 140%; }
	.single-solutions #main h2 { font-size: 130% !important; padding-top: .5em; padding-bottom: .5em; }
	
	
	/*商品情報*/
	
	.products #page-content { padding: 2em 0 50px; }
	.products #container {padding: 10px;}
	
	.post-type-archive-products #main .main-article-content{ margin-bottom: 50px;}
	
	.post-type-archive-products #main .item {
		box-sizing: border-box;
    	width: 50%;
		padding: 10px;
    	margin: 0;
    	float: left;
	}
	.post-type-archive-products #main .item:nth-child(2n+1){ clear: both; }
	.post-type-archive-products #main .item:nth-child(3n+1){ clear: none; }
	
	.post-type-archive-products #main .item a{
		box-sizing: border-box;
		width: 100%;
	}
	.post-type-archive-products #main .item a img{
		width: 100%;
	}
	.post-type-archive-products #main .item .item-title{
		font-size: 100%;
		padding: .8em 0 0;
	}
	
	.products:not(.post-type-archive) #main,
	.products:not(.post-type-archive) #aside
	{
    	float: none;
    	width: 100%;
		padding: 0;
		background: none;
	}
	
	.products:not(.post-type-archive) #main .products-item a,
	.products:not(.post-type-archive) #main .products-item .item-inner,
	.products:not(.post-type-archive) #main .products-item .item-thumbnail,
	.products:not(.post-type-archive) #main .products-item .item-content {
		display: block;
		width: 100%;
		box-sizing: border-box;
	}
	.products:not(.post-type-archive) #main .products-item .item-thumbnail{
		text-align: center;
	}
	
	.products:not(.post-type-archive) #main .products-item .item-thumbnail img{
		width: auto;
	}
	
	.products:not(.post-type-archive) #aside
	{
		padding-top: 30px;
		border-top:1px solid #999;
		margin-top: 50px;
	}
	
	.products #nav-categories .ul-categories li{
		display: inline-block;
	}
	.products #nav-categories .ul-categories a{
		padding: .5em;
		width: auto;
	}
	
}

/* レスポンシブ */
@media only screen and (max-width:380px){
	#home-header .message .xx-large { font-size: 140%; }
	#home-header .message p { font-size: 90%; }
	#home-header .message .heading-middle {
    	margin: 2em 0 1em;
		font-size: 110%;
	}
	
	#home-contents .section-item p { font-size: 65%;}
	#home-contents .section-item h3 span { font-size: 70%;}
}

