@charset "utf-8";

/* =========================================================
 CSS Reset
========================================================= */

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}

article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, video {
	display: block;
}

/* =========================================================
　　　　　　　　　　　基本設定
========================================================= */

body {
	line-height: 1;

}
#main {
	font-feature-settings : "palt";
	text-align: justify;
	text-justify: inter-ideograph;
}
ol, ul {
	list-style: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
strong,h1, h2, h3, h4, h5, h6 {
	font-weight: bold;
}
a {
	text-decoration: none;
	color: #000;
	transition: 0.3s;
}
a:visited {
	color: #000;
}
a:hover {
	color: #000;
}
/* clearfix */
.clx::after {
	content: "";
	display: block;
	clear: both;
}
a:hover img  {
	opacity: 0.5 ;
	filter: alpha(opacity=50);
	transition: all 0.3s ease;
}

.hover { /*スマホでリンクをタッチしたとき*/
	opacity: 0.5 ;
	filter: alpha(opacity=50);
}

.madr::after {
	content: attr(data-domain);
}
.madr::before {
	content: attr(data-user) "@";
}

/* =========================================================
　　　　　　　　　　　共通設定
========================================================= */

html {
	font-size: 13px;
}
body {
	color:#333;
	font-family: "游ゴシック" , "Yu Gothic" , "游ゴシック体" , "YuGothic" , "ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro" , "Meiryo UI" , "メイリオ" , Meiryo , "ＭＳ Ｐゴシック" , "MS PGothic" , sans-serif;
	background: #EBEBEB;
	-webkit-text-size-adjust: none;
	font-weight: 500;
}
.contInner,.contInner-710,.contInner-850 {
	width: 90%;
	margin-right: auto;
	margin-left: auto;
}
.page a:link {
	text-decoration: underline;
}
.sp-e18 {
	line-height: 1.5em;
	margin-bottom: 1.8em;
}
.tx_center {
	text-align: center;
}
/* 画像のリサイズ　ボックスに対して100％ */
.flxb img {
	width: 100%;
	height: auto;
}
/* @group Webフォント */
@font-face {
  font-family: 'icomoon';
  src:  url('../fonts/icomoon.eot?ubl5ka');
  src:  url('../fonts/icomoon.eot?ubl5ka#iefix') format('embedded-opentype'),
    url('../fonts/icomoon.ttf?ubl5ka') format('truetype'),
    url('../fonts/icomoon.woff?ubl5ka') format('woff'),
    url('../fonts/icomoon.svg?ubl5ka#icomoon') format('svg');
}
[class^="icon-"], [class*=" icon-"] ,#navConBtn a::before,.btnPage a::before,.abAdd:before,.abTel:before,.abFax:before,.abMail:before,.btnConPage a::before,.ftLink01 ul li ul li::before,#menu > li > a::before,
.breadcrumb ol li::after,.circleTi::before,.introFeature dd::before,.snsFeature dd::before,.maplink a::before,.toiBox .toitelno::before,.toiBox .toimail::before {
	font-family: 'icomoon';
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	margin-right: 0.3em;
	/* Better Font Rendering =========== */
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
/* アイコンフォントメモ
電話
content: "\e942";
位置情報
content: "\e948";
プリンター（FAX）
content: "\e954";
チェックマーク
content: "\ea10";
まる三角
content: "\ea15";

サークル
content: "\e900";
リンク[>]
content: "\e901";
メール
content: "\e902";
三角
content: "\e903";
パンくず[>]
content: "\e904";
*/

.icon-link1::before {
	content: "\ea15";
}
/* @group end */

/* @group スマホメニュー */
#menu {
	display: none;
}
.slicknav_menu {
	display: block;
}
/* @group end */

/* @group .pagehd */
.globalmenu {
	position: relative;
	z-index: 9999;	
}
.fixed {
    position: fixed;
    top: 0;
    left: 0;
}
.pagehd {
	width: 100%;	
}
.pagehd h1 {
	box-sizing: border-box;
	width: inherit;
	padding-left: 10px;
	padding-right: 10px;
	height: 24px;
	line-height: 24px;
	font-weight: normal;
}
.globalmenu {
	width: inherit;
}
#gnav {
	box-sizing: border-box;
	width: inherit;
	height: 50px;
	background: #fff;
	position: relative;
}
#hdLogo {
	position: absolute;
	width: 100px;
	height: 33px;
	top: 6px;
	left: 10px;
}
#hdLogo img {
	width: 100%;
	height: auto;
}
#mainec {
	width: 100%;
	background-size: cover;
	height: 200px;
	background-image: url(../img/bg_catch.jpg);
	background-repeat: no-repeat;
	background-position: center center;
}
.ecInner {
	width: 100%;
	height: inherit;
	position: relative;
}
.ecInner h2 {
	width: 90%;
	color: #fff;
	padding-top: 60px;
	font-size: 26px;
	line-height: 1.35em;
	margin: auto;
}
#navConBtn {
	position: absolute;
	top: 7px;
	right: 52px;
}
#navConBtn a {
	font-weight: bold;
	width: 100px;
	height: 36px;
	line-height: 36px;
	box-sizing: border-box;
	border-radius: 3px;
	text-align: center;	
	display: block;
	color: #fff;
	background: #ff9900;
	background: -moz-linear-gradient(45deg,  #ff9900 20%, #ff6633 80%);
	background: -webkit-linear-gradient(45deg,  #ff9900 20%,#ff6633 80%);
	background: linear-gradient(45deg,  #ff9900 20%,#ff6633 80%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ff9900', endColorstr='#ff6633',GradientType=1 );
}
#navConBtn a:hover {
	opacity: 0.5 ;
	filter: alpha(opacity=50);
}
#navConBtn a::before {
	content: "\e902";
	font-size: 16px;
	vertical-align: -10%;
}
/* @group end */

/* @group #intro */

#intro {
	background-color: #E0E0E0;
	border-bottom: #B3B3B5 solid 1px;
	background-image: url(../img/bg_intr.png);
	background-repeat: no-repeat;
	background-position: -300px center;
}
.introUD {
	padding-top: 20px;
	padding-bottom: 20px;
}
#intro h2 {
	font-size: 18px;
	line-height: 1.5em;
	margin-bottom: 10px;
	position: relative;
	padding-left: 1.2em;
	box-sizing: border-box;
}
#intro h2 span::before {
	content: "";
	width: 1em;
	border-top: #333 solid 1px;
	position: absolute;
	top: 0.75em;
	left: 0;
}
#intro p {
	line-height: 1.5em;
}

/* @group end */

/* @group #service */

#service {
	border-top: #F9F9F9 solid 1px;
}
.tiTop {
	width: 100%;
	text-align: center;
}
.tiTop h2 {
	letter-spacing: 0.1em;
	font-size: 28px;
	padding-top: 15px;
	padding-bottom: 4px;
	font-weight: normal;
}
.tiTop span {
	display: block;
	padding-bottom: 15px;
}
.svList {
	width: 100%;
	overflow: hidden;
}
.svBox {
	width: 100%;
	height: 160px;
	margin: 0;
	padding: 0;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	position: relative;
}
.seo-bg {
	background-image: url(../img/bgsv04.jpg);
}
.listing-bg {
	background-image: url(../img/bgsv01.jpg);
}
.display-bg {
	background-image: url(../img/bgsv02.jpg);
}
.sns-bg {
	background-image: url(../img/bgsv03.jpg);
}
.web-bg {
	background-image: url(../img/bgsv05.jpg);
}
.other-bg {
	background-image: url(../img/bgsv06.jpg);
}
.svBox::before {
	content: "";
	display: block;
	width: 100%;
	height: inherit;
	background: rgba(0,0,0,0.6);
	position: absolute;	
}
a .svBox::before {
	transition: 0.6s;
}
a:hover .svBox::before {
	background: rgba(0,0,0,0.1);
}
.svInner {
	position: relative;
	width: inherit;
	height: inherit;
	color: #fff;
	z-index: 2;
	text-shadow: 1px 1px 2px #3b3b3b;
}
.svName {
	width: 100%;
	position: absolute;
	font-size: 24px;
	font-weight: bold;
	text-align: center;
	top: 30px;
	letter-spacing: 0.02em;
}
.svInner p {
	position: absolute;
	width: 100%;
	text-align: left;
	line-height: 1.5em;
	bottom: 1em;
	padding: 0 16px;
	box-sizing: border-box;
}

/* @group end */

/* @group #news */

#news {
	background-color: #CDCDCD;
	padding-bottom: 20px;
	clear: both;
}
.newsList {
	padding-bottom: 5px;
}
.newsList li,.newspList .newsBg {
	margin-bottom: 10px;
}
.newspList li {
	margin-top: -80px;
	padding-top: 80px;
}
.newsList li .nDate,.newspList li .nDate {
	display: block;
}
.newspList li .nDate {
	margin-bottom: 6px;
}
.newsList li .newsChild,.newspList li .newspChild {
	line-height: 1.35em;
}
.newsList li a,.newspList .newsBg {
	color: #000;
	padding: 1em;
	background-color: #FFF;
	display: block;
}
.newsList li a:hover {
	background-color: rgba(255,255,255,0.5);
}
.newspChild .nBody {
	padding-right: 20px;
}
.newspChild .nBody .detail {
	margin-top: 0.5em;
	padding-left: 1em;
	border-left: #E0E0E0 solid 1px;
}
.newspList li .newspChild {
	position: relative;
}
.btnPage a {
	width: 240px;
	margin: 0 auto;
	height: 34px;
	line-height: 34px;
	position: relative;
	color: #000;
	border-radius: 23px;
	border: #666 solid 2px;
	text-align: center;
	display: block;
}
.btnPage a::before {
	position: absolute;
	content: "\ea15";
	top: 0;
	right: 0;
	bottom: 0;
	left: -12em;
	width: 1em;
	height:1em;
	font-size: 16px;
	line-height: 1em;
	transition: 0.3s;
	margin: auto;
}
.btnPage a:link::before {
	color: #666;
}
.btnPage a:visited::before {
	color: #666;
}
.btnPage a:hover::before {
	color: #fff;
}
.btnPage a:active::before {
	color: #fff;
}
.btnPage a:hover {
	color: #fff;
	background-color: #666;	
}
/* @group end */

/* @group #about */
#about,#toForm {
	background-image: url(../img/bg_cttlink.jpg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	color: #fff;
}
#about {
	padding: 20px 0;
}
#about dt a {
	color: #fff;
}
#about dt a:hover {
	color: #999;
}
h2.tiAbout {
	letter-spacing: 0.1em;
	font-size: 28px;
	margin-bottom: 4px;
	font-weight: normal;
}
dl.txabout {
	padding-bottom: 1em;
}
.txabout dt {
	margin-bottom: 1.5em;
}
.txabout dt p {
	margin-bottom: 1em;
}
.txabout dd {
	line-height: 1.35em;
	margin-bottom: 0.6em;
	position: relative;
	padding-left: 1.3em;
}
.abAdd:before,.abTel:before,.abMail:before,.abFax:before {
	color: #AEAEB0;
	position: absolute;
	top: 0;
	left: 0;
	width: 1.3em;
	height: 1.35em;
	line-height: 1.35em;
}
.abAdd:before {
	content: "\e948";
}
.abTel:before {
	content: "\e942";
}
.abFax:before {
	content: "\e954";
}
.abMail:before {
	content: "\e902";
}
.fmlinkTop {
	border-top: #C8C8CA solid 1px;
	border-bottom: #C8C8CA solid 1px;
	padding: 24px 0;
	text-align: center;
	clear: both;
}
.btnConPage a {
	color: #fff;
	font-weight: bold;
	display: block;
	width: 196px;
	height: 40px;
	line-height: 40px;
	margin: 0 auto;
	border-radius: 5px;
	text-align: center;
	letter-spacing: 0.03em;
	background: #ff9900;
	background: -moz-linear-gradient(45deg,  #ff9900 20%, #ff6633 80%);
	background: -webkit-linear-gradient(45deg,  #ff9900 20%,#ff6633 80%);
	background: linear-gradient(45deg,  #ff9900 20%,#ff6633 80%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ff9900', endColorstr='#ff6633',GradientType=1 );

}
.btnConPage a::before {
	content: "\e902";
	font-size: 18px;
	vertical-align: -12%;	
}
.btnConPage a:link {
	text-decoration: none;
}
.btnConPage a:hover {
	opacity: 0.5 ;
	filter: alpha(opacity=50);
}

.fmlinkTop p,.tfmTx {
	font-size: 16px;
	text-align: center;
	margin-bottom: 16px;
}
/* @group end */

/* @group .pageft */
.pageft {
	padding-top: 1em;
	color: #000;
}

.ftLogo {
	width: 120px;
	height: 40px;
	margin: 0 auto;
	padding-bottom: 2em;
}
.ftLogo img {
	width: 100%;
	height: auto;
}
.pageft a:link {
	text-decoration: none;
}
.pageft a:hover {
	color: #000;
	text-decoration: underline;
}
.pageft li {
	line-height: 1.8em;
	font-size: 15px;
}
.ftlUD {
	padding: 10px 0;
}
.ftLink01,.ftLink02,.ft_badge {
	border-top: #B3B3B5 solid 1px;	
}
.ftLink01::before,.ftLink02::before,.ft_badge::before {
	content: "";
	background: #F9F9F9;
	display: block;
	height: 1px;
}
.ftLink01 ul li ul {
	margin-left: 6px;
}
.ftLink01 ul li ul li::before {
	content: "\e904";
	font-size: 8px;
	vertical-align: 10%;
	margin-right: 0.5em;
}
.pageft .contInner::after {
	content: "";
	display: block;
	clear: both;
}

.ft_badge {
	margin: 1em 0;
}
.ft_badge ul {
	display: flex;
	flex-flow: column;
	align-items: center;
}
.ft_badge li {
	margin-top: 16px;
}
.ftb_yahoo img,.ftb_google_sn img {
	width: 100%;
	height: auto;
}
.ftb_yahoo {
	width: 150px;
	height: 57px;
}
.ftb_google_sn {
	width: 100px;
	height: 100px;
}

.pageft .copyright {
	box-sizing: border-box;
	width: 100%;
	height: 26px;
	line-height: 26px;
	color: #fff;
	background-color: #333;
	font-size: 10px;
	text-align: center;
	margin-top: 20px;
	clear: both;
}
/* @group end */

/* =========================================================
　　　　　　　　　　下層ページ用CSS
========================================================= */

/* @group .breadcrumb */
.breadcrumb {
	background: #333;
	padding: 0.5em 10px;
}
.breadcrumb ol li {
	display: inline-block;
	color: #fff;
}
.breadcrumb ol li a {
	color: #fff;
}
.breadcrumb ol li::after {
	content: "\e904";
	color: #CCC;
	font-size: 0.77em;/*10px*/
	margin-left: 0.3em;
}
.breadcrumb ol li:last-child::after {
	content: none;
}
.breadcrumb ol li a:hover {
	color: #fff;
}
/* @group end */

/* @group #pageec */
#pageec {
	width: 100%;
	background-size: cover;
	height: 150px;
	background-repeat: no-repeat;
	background-position: center center;
	position: relative;
}
.listingEc-bg {
	background-image: url(../img/bg_ti_listing.jpg);
}
.seoEc-bg {
	background-image: url(../img/bg_ti_seo.jpg);
}
.displayEc-bg {
	background-image: url(../img/bg_ti_display.jpg);
}
.snsEc-bg {
	background-image: url(../img/bg_ti_sns.jpg);
}
.webEc-bg {
	background-image: url(../img/bg_ti_web.jpg);
}
.otherEc-bg {
	background-image: url(../img/bg_ti_other.jpg);
}
.newsEc-bg {
	background-image: url(../img/bg_ti_news.jpg);
}
.aboutEc-bg {
	background-image: url(../img/bg_ti_about.jpg);
}
.contactEc-bg {
	background-image: url(../img/bg_ti_contact.jpg);
}
.recruitEc-bg {
	background-image: url(../img/bg_ti_recruit.jpg);
}
.noEc-bg {
	background-image: url(../img/bg_ti_noslg.jpg);
}

.tiInner {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 54px;
	font-weight: bold;
	color: #fff;
	text-align: center;
	margin: auto;
}
.tiInner h2 {
	font-size: 1.85em;/*24px*/
	display: inline-block;
	padding-bottom: 0.2em;
	margin-bottom: 0.3em;
}
.tiInner .pageTi {
	border-bottom: #FFF solid 1px;	
}
.subTi {
	font-size: 1.23em;/*16px*/
	letter-spacing: 0.1em;
}
.subTieng {
	font-size: 1.23em;
	font-weight: normal;
	letter-spacing: 0.1em;
}
/* @group end */

/* @group #overview */
#overview {
	background: #E0E0E0;
	padding-top: 30px;
	padding-bottom: 30px;
}
.bg-grTitle {
	background-color: #fff;
	padding: 16px;
	border: #D2D2D2 1px solid;
}
.circleTi,.ctTi {
	font-size: 1.54em;/*20px*/
	margin-bottom: 0.892em;	
	line-height: 1.2em;
}
.ctTi {
	text-align: center;
}
.circleTi::before {
	content: "\e900";
	color: #F63;
	font-size: 1.2em;
	margin-right: 3px;
	vertical-align: -10%;
}
.introTxt {
	position: relative;
	line-height: 1.8em;
}
.btm-mg-m {
	margin-bottom: 20px;	
}

.boader-w-btm {
	border-bottom: #F9F9F9 solid 1px;
	padding-bottom: 20px;
}
.boader-w-btm::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 1px;
	background: #B3B3B5;
	display: block;
}
.nmlTi {
	font-size: 1.25em;
	line-height: 1.2em;
	margin-bottom: 10px;
}
.nmlTi::after {
	content: "";
	border-bottom: #D2D2D2 solid 3px;
	width: 2em;
	margin-top: 10px;
	display: block;
}
.captGrp {
	padding-top: 20px;
}
.captChild {
	margin-bottom: 20px;
}
.captChild figure {
	width: 90%;
	margin: 0 auto;
}
.cap-sns-fb .captChild figure {
	max-width: 537px;
}
.cap-sns-insta .captChild figure {
	max-width: 414px;
}
.cap-sns-tw .captChild figure {
	max-width: 480px;
}
.cap-sns-line .captChild figure {
	max-width: 414px;
}
/*.cap-sns-tw .captChild {
	margin-bottom: 0;
}*/
.cap-sns-line .captChild {
	margin-bottom: 0;	
}
[class^="cap-w465"] .captChild figure, [class*=" cap-w465"] .captChild figure {
	max-width: 465px;	
}
.cap-w305 .captChild figure {
	max-width: 305px;
}
.captChild figure img {
	width: 100%;
	height: auto;
	margin-bottom: 10px;
}
.captChild figcaption::before {
	content: "▲";
	font-size: 0.77em;/*10px*/
	margin-right: 0.3em;
}
.introFeature {
	width: 100%;
	border: #FF855C solid 4px;
	background: #F63;
	box-sizing: border-box;
	padding: 20px 15px 10px;
	color: #FFF;
	font-weight: bold;
}
.bg-grTitle-lf {
	background-color: #fff;
	padding: 16px;
	line-height: 1.8em;
	border-top-width: 1px;
	border-right-width: 1px;
	border-left-width: 1px;
	border-top-style: solid;
	border-right-style: solid;
	border-left-style: solid;
	border-top-color: #D2D2D2;
	border-right-color: #D2D2D2;
	border-left-color: #D2D2D2;
	box-sizing: border-box;
}
.snsFeature {
	width: 100%;
	border: #FF855C solid 4px;
	background: #F63;
	box-sizing: border-box;
	padding: 20px 15px 10px;
	color: #FFF;
	font-weight: bold;
}
.introFeature dt,.snsFeature dt {
	text-align: center;
	margin-bottom: 1em;
	font-size: 1.23em;/*16px*/
	
}
.introFeature dd,.snsFeature dd {
	position: relative;
	font-size: 1.15em;/*15px*/
	line-height: 1.5em;
	margin-bottom: 1em;
	padding-left: 1.4em;
}
.introFeature dd::before,.snsFeature dd::before {
	position: absolute;
	content: "\ea10";
	top: 2px;
	left: 0;
}

.svOtList li {
	background-color: #FFF;
	background-image: url(../img/bg_ot_line.png);
	background-repeat: repeat-y;
	background-position: left top;
	border: 1px solid #FFF;
	padding: 14px 20px;
	margin-bottom: 10px;
}
.svOtList h4 {
	font-size: 1.23em;
	line-height: 1.2em;
	margin-bottom: 0.6em;
}
.svOtList .otsvTx {
	line-height: 1.5em;
}
/* @group end */

/* @group #problem */
#problem {
	text-align: center;
	background-image: url(../img/bg_sol.png);
	background-repeat: repeat;
	background-position: left top;
	padding: 30px 0;
}
.ulineTi {
	width: 100%;
	font-size: 1.54em;/*20px*/
	padding-bottom: 1.8em;
	text-align: center;
	position: relative;
	line-height: 1.2em;
}
.ulineTi::after {
	content: "";
	width: 6em;
	height: 3px;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 1.1em;
	display: block;
	margin: auto;
	background: #F63;
}
.pbmList li {
	position: relative;
	width: inherit;
	background: #333;
	font-size: 1.15em;/*15px*/
	color: #fff;
	padding: 1em;
	line-height: 1.5em;
	margin-bottom: 18px;
	border-radius: 3px;
}
.pbmList li::after {
	position: absolute;
	display: block;
	content: "";
	left: 0;
	right: 0;
	bottom: -9px;
	margin: auto;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 10px 10px 0 10px;
	border-color: #333 transparent transparent transparent;
}

/* @group end */

/* @group #txsol */
#txsol {
	background: #ff9900;
	background: -moz-linear-gradient(45deg, #ff9900 0%, #ff6633 100%);
	background: -webkit-linear-gradient(45deg, #ff9900 0%,#ff6633 100%);
	background: linear-gradient(45deg, #ff9900 0%,#ff6633 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ff9900', endColorstr='#ff6633',GradientType=1 );
	padding: 20px;
}
.solInner {
	max-width: 566px;
	margin-left: auto;
	margin-right: auto;
}
.solInner img {
	width: 100%;
	height: auto;
}

/* @group end */

/* @group #atlFeature */
#atlFeature {
	background-image: url(../img/bg_atlfeature.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	padding: 30px 0 20px;
}
.atlfTi {
	font-size: 1.54em;/*20px*/
	color: #fff;
	text-align: center;
	line-height: 1.2em;
}
.subTxOg {
	width: 8em;
	text-align: center;
	color: #f90;
	font-size: 1.08em;/*14px*/
	font-weight: bold;
	letter-spacing: 0.1em;
	margin: 6px auto 20px;
}
.atlPoint li {
	background: #fff;
	padding: 0 14px 14px 14px;
	border-radius: 3px;
	margin-bottom: 1em;
	counter-increment: nb;
}
.atlPoint h4 {
	font-size: 1.23em;/*16px*/
	margin-bottom: 8px;
	border-top: #f90 solid 4px;
	padding-top: 13px;
	text-align: left;
}
.atlPoint h4::before {
	content: "0" counter(nb);
	font-family: 'Judson', serif;
	font-feature-settings: normal;
	font-weight: normal;
	color: #f90;
	font-size: 1.875em;
	margin-right: 0.3em;
	vertical-align: -10%;
}
.atlPoint li p {
	line-height: 1.5em;
}
/* @group end */

/* @group #case */

#case {
	padding: 30px 0 10px;
}
.caseChild::before {
	content: "CASE";
	width: 69px;
	text-align: center;
	font-weight: bold;
	color: #F63;
	letter-spacing: 0.1em;
	margin-bottom: 15px;
	display: block;
}

.caseChild {
	position: relative;
	padding: 20px;
	background-image: url(../img/case_line.gif);
	background-repeat: no-repeat;
	background-position: 20px -2px;
	background-color: #fff;
	border-radius: 6px;
	margin-bottom: 20px;
}
.caseChild::after {
	position: absolute;
	left: 0;
	right: 0;
	bottom: -6px;
	content: "";
	background-color: #D2D2D2;
	height: 12px;
	border-bottom-right-radius: 10px;
	border-bottom-left-radius: 10px;
	width: inherit;
	margin: auto;
	display: block;
	z-index: -1;
}
.caseChild h4 {
	font-size: 1.23em;/*16px*/
	line-height:1.2em;
	margin-bottom: 10px;
}
.caseChild .caseTx {
	line-height: 1.8em;
}
.hlt {
	font-weight: inherit;
	background: #FFDED2;
}

/* @group end */

/* @group #price */
#price {
	padding: 30px 0 20px;
	background: #E0E0E0;
}
.areaTi {
	width: inherit;
	font-size: 20px;
	text-align: center;
	margin-bottom: 20px;
}
.leftline {
	font-size: 1.23em;/*16px*/
	font-weight: bold;
	padding: 0.26em 0.26em 0.26em 0.545em;
	border-left: #F63 solid 4px;
	margin-bottom: 10px;
}
#price p {
	line-height: 1.5em;
}
#price p:not([class]) {
	margin-bottom: 1em;	
}
table.tbl {
	background-color: #FFF;
	border-top: #999 solid 1px;
	border-bottom: #999 solid 1px;
	border-left: #999 solid 1px;
	margin-bottom: 10px;
}
.tbl th,.tbl td {
	padding: 10px 1em;
	border-right: #999 solid 1px;
	line-height: 1.5em;
	vertical-align: middle;
}
.tbl th {
	text-align: left;
	width: 30%;
}
.tbl tr:nth-child(even) {
	background-color: #F2F2F2;
}
/* @group end */

/* @group #toForm */
#toForm {
	padding: 30px 0;
}
/* @group end */

/* @group 会社概要 */
.whiteInner {
	background-color: #FFF;
	padding: 20px;
}
.abLogo {
	width: 120px;
	margin: 0 auto 30px;
}
.abLogo img {
	width: 100%;
	height: auto;
}
.dlnom {
	line-height: 1.5em;	
}
.dlnom dt {
	font-weight: bold;
	margin-top: 1em;
	margin-bottom: 0.5em;
}
.dlnom dd {
	margin-bottom: 0.5em;
}
#map_canvas {
	height: 200px;
	margin-bottom: 10px;
	box-sizing: border-box;
	border: #CCC 1px solid;
}
.maplink {
	text-align: right;
}
.maplink a:hover {
	color: #999;	
}
.maplink a::before {
	content: "\e948";
}
/* @group end */

/* @group .conOther 固定ページ汎用X */
.conOther a:link {
	text-decoration: underline;
}
.conOther a:hover {
	color: #666;
	text-decoration: none;
}
.conOther p {
	line-height: 1.5em;
	margin-bottom: 1em;
}
.conOther h4 {
	font-size: 16px;
	line-height: 1.2em;
	margin-top: 2em;
	margin-bottom: 1em;
}
.conOther h5 {
	line-height: 1.2em;
	margin-top: 2em;
	margin-bottom: 1em;
}
.conOther ul {
	list-style: disc;
	margin: 1em 0 1.4em 2em;
}
.conOther li {
	line-height: 1.5em;
	margin-bottom: 0.4em;
}
.conOther table {
	width: 100%;
	border-collapse: separate;
	border-spacing: 1px;
	text-align: left;
	line-height: 1.5;
	border-top: 1px solid #ccc;
	margin-bottom: 1em;
}
.conOther table th {
	width: 30%;
	padding: 0.6em 1em;
	font-weight: bold;
	vertical-align: top;
	border-bottom: 1px solid #ccc;
	background: #efefef;
	box-sizing: border-box;
}
.conOther table td {
	width: auto;
	padding: 0.6em 1em;
	vertical-align: top;
	border-bottom: 1px solid #ccc;
	box-sizing: border-box;
}
/* @group end */

/* @group .slider */
.slider {
	width: 80%;
	margin-right: auto;
	margin-left: auto;
}
.slider li {
	float: left;
	padding: 7px;
	background-color: #FFF;
	margin-right: 7px;
	margin-left: 7px;
	max-width: 305px;
	border: #E0E0E0 solid 1px;
}
.slider li img {
	width: 100%;
	height: auto;
	max-width: 285px;
}

/* @group end */

/* @group contact */

.mw_wp_form input[type="text"],.mw_wp_form input[type="email"], .mw_wp_form button, .mw_wp_form textarea/*, .mw_wp_form select*/ {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.mw_wp_form input,.mw_wp_form textarea,.mw_wp_form select {
	font-size: 14px;
}
.mw_wp_form input[type="text"]:focus,
.mw_wp_form textarea:focus,
.mw_wp_form input[type="email"]:focus {
	background-color: #FCFFC8;
}
.mw_wp_form dl {
	width: 100%;
	overflow: hidden;
}
.mw_wp_form dt {
	line-height: 1.5em;
	font-weight: bold;
	margin-bottom: 0.4em;
}
.mw_wp_form dt .req {
	line-height: 0;
	font-size: 11px;
	padding: 1px 3px;
	margin-left: 0.4em;
	color: #FF3333;
	border: solid 1px #FF3333;
}

.mw_wp_form dd {
	line-height: 1.5em;
	margin-bottom: 1.8em;
}
.mw_wp_form dd .fm_btm_mg {
	margin-bottom: 10px;
}
.mw_wp_form dd .fm_stitle {
	font-size: 14px;
	margin-bottom: 4px;
}
.mw_wp_form dd .fm_zipsubtxt {
	font-size: 12px;
	margin-left: 14px;
}
#confi .mw_wp_form dd .fm_zipsubtxt {
	display: none;
}

.mw_wp_form input[type="text"],.mw_wp_form input[type="email"] {
	padding: 10px;
	border-bottom: solid 1px #CECECE;
}
.mw_wp_form input[type="text"]#address1,.mw_wp_form input[type="text"]#address2 {
	width: 100%;
}
.mw_wp_form textarea {
	padding: 10px;
	border: solid 1px #CECECE;
	background-color: #F6F6F6;
	width: 100%;
	box-sizing: border-box;
}
.mw_wp_form select {
	padding: 6px 10px;
	border: solid 1px #CECECE;	
}
.btnform {
	text-align: center;
}
.mw_wp_form button.btn {
	padding: 10px 14px;
	text-align: center;
	background-color: #333;
	color: #fff;
	border-radius: 4px;
	margin: 5px;
}
.toiBox {
	text-align: center;
	font-weight: bold;
}
.tiUb {
	padding-bottom: 0.26em;
	display: inline-block;
	border-bottom: solid 1px #333;
	margin-bottom: 1.2em;
}
.toiBox .toitelno {
	font-size: 18px;
	margin-bottom: 8px;
}
.toiBox .toitelno::before {
	font-size: 16px;
	content: "\e942";
	margin-right: 0.2em;
}
.toiBox .toimail::before {
	font-size: 15px;
	content: "\e902";
}
.toiBox .toimail {
	font-size: 16px;
}
.toitelno + p {
	margin-bottom: 20px;
}
.contInner + .contInner {
	margin-top: 40px;
}
/* @group end */


/* @group 404 */
.tiIIdt {
	font-size: 18px;
	line-height: 1.5em;
}
.tx404info {
	line-height: 1.5em;
	margin-bottom: 20px;
}
/* @group end */

@media screen and (-ms-high-contrast:none){ /*IE下余白調整*/
#navConBtn a {
	line-height: 40px;
}
.btnConPage a {
	line-height: 44px;
}

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

.ftLink01 {
	width: 48%;
	float: left;
}
.ftLink02 {
	width: 48%;
	float: right;
}
}

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

html {
	font-size: 15px;
}
.contInner-710 {
	width: 710px;
}
/* @group .pagehd */
.ecInner h2 {
	width: 16em;
	height: 44px;
	font-size: 32px;
	left: 10%;
	position: absolute;
	top: 0;
	bottom: 0;
	padding-top: 0;
}
/* @group end */

/* @group #service */

.svBox {
	width: 50%;
	float: left;
	height: 240px;
}
.svInner {
	width: 100%;
}
.svName {
	top: 70px;
}
.svInner p {
	height: 6em;
	padding-left: 20px;
	padding-right: 20px;
}
/* @group end */

/* @group .pageft */
.ft_badge {
	width: auto;
}
.ft_badge ul {
	flex-flow: row;
	align-items: flex-start;
	justify-content: flex-end;
}
.ft_badge li {
    margin-right: 1em;
}
.ft_badge li:last-child {
    margin-right: 0;
}
/* @group end */

/* =================下層ページ用CSS======================== */

.ulineTi,.atlfTi,.areaTi {
	font-size: 30px;
}
/* @group #pageec */
#pageec {
	height: 240px;
}
.tiInner {
	height: 70px;
}
.tiInner h2 {
	font-size: 34px;
}
.subTi,.subTieng {
	font-size: 18px;
}
/* @group end */

/* @group #overview */

#overview {
	padding-top: 46px;
}
.circleTi,.ctTi {
	font-size: 28px;
/*	margin-bottom: 0.6em;*/
	letter-spacing: 0.04em;
}
.introTxt {
	font-size: 18px;
	line-height: 1.8em;
}

.captChild figure {
	width: 70%;
}
.introFeature {
	width: 600px;
	padding-left: 30px;
	padding-right: 30px;
	margin-left: auto;
	margin-right: auto;
	border-width: 6px;
}
/* @group end */

/* @group #txsol */
#txsol {
	padding: 30px 0;
}
/* @group end */

}
@media screen and (min-width:980px) {
.contInner-850 {
	width: 850px;
}
	
.svInner p {
/*	height: 4.5em;*/
}
}
@media screen and (min-width:1024px) {

html {
	font-size: 16px;
}
.contInner {
	width: 960px;
}
.pagehd h1 {
	font-size: 14px;
	padding-left: 20px;
	padding-right: 20px;
}
.btnConPage a::before {
	vertical-align: baseline;
}

/* @group スマホメニュー */
#menu {
	display: block;
}
.slicknav_menu {
	display: none;
}
/* @group end */


/* @group .pagehd */

#gnav {
	height: 58px;
}
/*.linksp {
	margin-top: -58px;
	padding-top: 58px;
}*/
#hdLogo {
	width: 140px;
	height: 47px;
	left: 20px;
}
#navConBtn {
	top: 7px;
	right: 20px;
}
#navConBtn a {
	width: 122px;
	height: 44px;
	line-height: 44px;
	border-radius: 4px;
}
#menu {
	position: absolute;
	top: 7px;
	right: 141px;
	width: 346px;
}

#menu > li {
	width: 100px;
	float: left;
	margin: 0 10px 0 0;
	font-size: 16px;
	font-weight: bold;
	box-sizing: border-box;
	letter-spacing: 0.04em;
}
#menu > li > a::before {
	content: "\e903";
	font-size: 9px;
	color: #ccc;
	vertical-align: 20%;
	margin-right: 5px;
}
#menu li > a {
	color: #333;
	height: 44px;
	line-height: 44px;
	display: block;
	padding-left: 10px;
}
#menu li > a:hover,#menu li .copn {
	background: rgba(0,0,0,0.54);
	color: #fff;
}

#menu li .menuChild {
	display: none;
	width: 240px;
	background: rgba(0,0,0,0.54);
	color: #fff;
	padding: 0.2em 0.5em;
}
#menu li .menuChild li {
	font-size: 15px;
	line-height: 1.2em;
	padding: 0.5em 0;
	border-bottom: rgba(255,255,255,0.5) solid 1px;
}
#menu li .menuChild li:last-child {
	border-bottom: none;
}
#menu li .menuChild li a {
	color: #fff;
	height: 28px;
	line-height: 28px;
}

#mainec {
	height: 406px;
}
.ecInner h2 {
	height: 71px;
	font-size: 52px;
	left: 10%;
}
/* @group end */

/* @group #intro */

#intro {
	background-position: 0 -90px;
}
.introUD {
	width: 640px;
	padding-top: 48px;
	padding-bottom: 50px;
	margin-right: 0;
	margin-left: auto;
}
#intro h2 {
	width: 630px;
	font-size: 30px;
	padding-left: 1.3em;
	line-height: 1.35em;
	margin-bottom: 26px;
	letter-spacing: 0.05em;
}
#intro h2 span::before {
	border-top-width: 2px;
	top: 0.65em;
}
#intro p {
	line-height: 1.8em;
}

/* @group end */

/* @group #service */
.tiTop h2 {
	font-size: 36px;
	display: inline-block;
	margin-bottom: 0;
	height: 100px;
	line-height: 100px;
	padding: 0;
}
.tiTop span {
	font-size: 18px;
	display: inline;
	vertical-align: 6px;
	padding: 0 0 0 0.5em;
	margin: 0;
}
.svBox {
	width: 33.33%;
	height: 330px;
}
.svName {
	top: 110px;
	font-size: 28px;
}
.svInner p {
	height: 5.4em;
	font-size: 15px;
	line-height: 1.35em;
}

/* @group end */

/* @group #news */
#news {
	padding-bottom: 34px;
}
.newsList,.newspList {
	padding-bottom: 35px;
}
.newsList li,.newspList .newsBg {
	margin-bottom: 4px;
}
.newspList li {
	margin-top: -84px;
	padding-top: 84px;
}
.newsList li .nDate,.newspList li .nDate {
	width: 110px;
	float: left;
	margin-bottom: 0;
}
.nBody {
	margin-left: 125px;
}
.newsList li .nDate::after,.newspList li .nDate::after {
	content: "";
	display: inline-block;
	width: 28px;
}
.newsList li .newsChild,.newspList li .newspChild {
	font-size: 18px;
}
.newsList li a,.newspList .newsBg {
	padding: 28px 30px;
}
.btnPage a {
	font-size: 18px;
	width: 308px;
	height: 42px;
	line-height: 42px;
	border-radius: 27px;
}
.btnPage a::before {
	left: -15em;
}
/* @group end */

/* @group #about */
#about {
	padding-top: 48px;
	padding-bottom: 28px;
}
h2.tiAbout {
	font-size: 36px;
}
.txabout dt {
	width: 252px;
	font-size: 18px;
	float: left;
}
.txabout dt a {
	font-size: 1rem;
}
.txabout dd {
	margin-left: 252px;
	padding-left: 1.7em;
}
.fmlinkTop {
	padding-top: 25px;
	padding-bottom: 25px;
	font-size: 18px;
}
.fmlinkTop p {
	font-size: 18px;
}

.fmlinkTop .btnConPage a {
	height: 44px;
	line-height: 44px;
/*	margin-top: 18px;*/
}
.fmlinkTop .btnConPage a::before {
	font-size: 16px;
}
/* @group end */

/* @group .pageft */
.pageft {
	padding-top: 26px;
}
.ftLogo {
	width: 140px;
	float: left;
	padding-right: 161px;
	margin-top: -5px;
}
.ftLink01 {
	width: 315px;
	margin-right: 25px;
}
.ftLink01 .ftlUD li ul {
	margin-top: 4px;
}
.ftLink01 ul li ul {
	margin-left: 25px;
}
.ftLink02 {
	width: 315px;
}

.pageft .copyright {
	font-size: 12px;
	margin-top: 12px;
	height: 30px;
	line-height: 30px;
}

/* @group end */

/* =================下層ページ用CSS======================== */

/* @group .breadcrumb */
.breadcrumb {
	font-size: 14px;
	padding: 12px 20px;
}
/* @group end */

.ulineTi,.atlfTi,.areaTi {
	font-size: 40px;
}
/* @group #pageec */
#pageec {
	height: 300px;
}
.tiInner {
	height: 90px;
}
.tiInner h2 {
	font-size: 46px;
}
.subTi {
	font-size: 20px;
}
.subTieng {
	font-size: 24px;
}
/* @group end */


/* @group #overview */
#overview {
	padding-bottom: 60px;
}

.boader-w-btm {
	padding-bottom: 40px;
}
.btm-mg-m {
	margin-bottom: 40px;
}
.bg-grTitle {
	border-width: 10px;
	padding: 24px 24px 20px 24px;
}

.captGrp {
	padding-top: 34px;
}
.captChild {
	margin-bottom: 56px;
}
.cap-w465-1col {
	margin-bottom: 30px;
}
.cap-w305 {
	width: 614px;
	margin-left: auto;
	margin-right: auto;
}
.captChild figure {
	width: 100%;
}
.captChild figcaption::before {
	font-size: 8px;
	margin-right: 0.6em;
	margin-left: 0.3em;
	vertical-align: 30%;
}
.pos2col-l {
	float: left;
}
.pos2col-r {
	float: right;
}
.introFeature {
	width: 684px;
	border-width: 10px;
	padding: 42px 48px 30px;
}
.introFeature dt {
	margin-bottom: 34px;
	font-size: 26px;
	letter-spacing: 0.1em;
}
.introFeature dd {
	font-size: 20px;
	line-height: 1.2em;
	margin-bottom: 0.8em;
}
.tbcbox {
	display: table;
	width: 100%;
}
.bg-grTitle-lf,.snsFeature {
	padding-left: 24px;
	padding-right: 24px;
}
.bg-grTitle-lf {
	width: 60%;
	display: table-cell;
	border-bottom-color: #D2D2D2;
	border-bottom-style: solid;
	border-width: 10px;
}
.snsFeature {
	width: 40%;
	display: table-cell;
	border-width: 10px;
}

.svOtList li {
	padding: 34px 55px;
	margin-bottom: 16px;
}
.svOtList h4 {
	font-size: 24px;
	margin-bottom: 10px;
}
/* @group end */

/* @group #problem */
#problem {
	padding-top: 46px;
	padding-bottom: 25px;
}
.ulineTi {
	padding-bottom: 63px;
}
.ulineTi::after {
	width: 190px;
	height: 4px;
	top: 14px;
	bottom: 0;
}
.pbmList li {
	font-size: 26px;
	padding-top: 15px;
	padding-bottom: 15px;
	border-radius: 6px;
	margin-bottom: 31px;
}
/* @group end */

/* @group #txsol */
#txsol {
	line-height: 0;
	padding-top: 38px;
	padding-bottom: 38px;
}
/* @group end */

/* @group #atlFeature */
#atlFeature {
	padding-top: 76px;
	padding-bottom: 62px;
}
.subTxOg {
	font-size: 22px;
	margin-top: 8px;
	margin-bottom: 42px;
	letter-spacing: 0.2em;
}
.atlPoint li {
	width: 474px;
	height: 202px;
	float: left;
	box-sizing: border-box;
	padding-left: 34px;
	padding-right: 34px;
	margin-bottom: 14px;
}
.atlPoint h4 {
	font-size: 24px;
	padding-top: 10px;
	margin-bottom: 12px;
}
.atlPoint h4.txCsp {
	font-size: 22px;
	letter-spacing: -0.14em;
}
.atlPoint h4::before {
	font-size: 50px;
}
.atlPoint li:nth-child(odd)  {
	margin-right: 12px;
}
/* @group end */

/* @group #case */
#case {
	padding-top: 44px;
	padding-bottom: 55px;
}
#case .ulineTi,#price .areaTi {
	font-size: 32px;
}
.caseChild {
	width: 430px;
	height: 368px;
	background-position: 38px top;
	float: left;
	margin-bottom: 0;
	box-sizing: border-box;
	padding-top: 22px;
	padding-left: 38px;
	padding-right: 38px;
}
.caseChild::before {
	font-size: 14px;
	margin-bottom: 18px;
}
.caseChild::after {
	bottom: -5px;
}
.caseChild h4 {
	margin-bottom: 18px;
}
.caseChild .caseTx {
	font-size: 15px;
}
#case .contInner {
	width: 914px;
}

.caseInner .caseChild:nth-of-type(odd) {
	margin-right: 54px;
}
/* @group end */

/* @group #price */
#price {
	padding-top: 55px;
	padding-bottom: 32px;
	font-size: 18px;
}
.leftline {
	border-left-width: 6px;
/*	padding-left: 12px;*/
	margin-bottom: 16px;
}
.areaTi {
	margin-bottom: 31px;
}
.priceInfo {
	font-size: 16px;
}
table.tbl {
	margin-bottom: 14px;
}
.tbl th, .tbl td {
	padding-top: 14px;
	padding-bottom: 12px;
}
.tbl th {
	padding-left: 30px;
	padding-right: 30px;
}
#price p:not([class]) {
	margin-bottom: 10px;
}
#price .fs-stx {
	font-size: 13px;
}
/* @group end */

/* @group #toForm */
#toForm {
	padding-top: 69px;
	padding-bottom: 72px;
	text-align: center;
}
.tfmTx {
	font-size: 20px;
	margin-right: 30px;
}
.tfmTx,.btnConPage {
	display: inline-block;
}
#toForm .btnConPage a {
	width: 235px;
	height: 53px;
	font-size: 22px;
	line-height: 55px;
	border-radius: 6px;
}
#toForm .btnConPage a::before {
	font-size: 20px;
}
/* @group end */

/* @group 会社概要 */
.whiteInner {
	padding: 36px 58px;
}
.abLogo {
	width: 140px;
	height: 47px;
	margin-bottom: 60px;
}
.dlnom dt {
	width: 120px;
	float: left;
	margin-top: 0;
	margin-bottom: 0;
}
.dlnom dd {
/*	width: 714px;*/
	margin-left: 130px;
	margin-bottom: 30px;
}
#map_canvas {
	height: 340px;
	margin-bottom: 20px;
}
.maplink {
	font-size: 14px;
}
/* @group end */

/* @group .conOther 固定ページ汎用X */
.conOther h4 {
	font-size: 20px;
}
.conOther h5 {
	font-size: 18px;
}
/* @group end */

/* @group contact */

.mw_wp_form dt {
	width: 20%;
	display: block;
	float: left;
	clear: left;
}
.mw_wp_form dd {
	width: 80%;
	float: left;
}

/*.toiBox { ※メールありの場合
	padding-top: 20px;
	padding-bottom: 20px;
	float: left;
	width: 50%;
}*/
	
.toiBox {
	width: 90%;
	margin: 0 auto;
}
.toiBox .toitelno {
	font-size: 26px;
}
.toiBox .toitelno::before {
	font-size: 20px;
}
.toiBox .toimail::before {
	font-size: 18px;
}
.toiBox .toimail {
	font-size: 20px;
}
.toitelno + p {
	margin-bottom: 0;
}
.contInner + .contInner {
	margin-top: 46px;
}
/* @group end */
	
/* @group 404 */
.tiIIdt {
	font-size: 32px;
	margin-left: 46px;
	margin-bottom: 52px;
}
.tx404info {
	font-size: 18px;
}
/* @group end */

}
@media screen and (-ms-high-contrast:none) and (min-width:1024px){ /*IE下余白調整 1024*/
#navConBtn a {
	line-height: 50px;
}
.fmlinkTop .btnConPage a {
	line-height: 50px;
}
#toForm .btnConPage a {
	line-height: 60px;
}
.btnPage a {
	line-height: 48px;
}
}
@media screen and (min-width:1200px) {

.svName {
	font-size: 40px;
}



}
@media screen and (min-width:1360px) {
.svInner p {
	height: 4.05em;
}
/* @group .slider */
.slider {
	width: 1244px;
}
/* @group end */
}
@media screen and (min-width:1367px) {
#mainec {
	height: 500px;
}
.introUD {
	width: 900px;
}
}
