/************************************************************/
/************************************************************/
/*共通パーツ
/************************************************************/
/************************************************************/
html{}

body {
	width:100%;
	font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;	
}

input,textarea,select,button {
	font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
}

/*画像リンク*/
a img:hover{animation: flash 1s;}


/*基本非表示*/
.none{display:none}

/*FORMパーツの初期入力文字カラー*/
:placeholder-shown {color:#BFBFBF;}
::-webkit-input-placeholder {color:#BFBFBF;}
:-moz-placeholder {color:#BFBFBF; opacity:1;}
::-moz-placeholder {color:#BFBFBF; opacity:1;}
:-ms-input-placeholder {color:#BFBFBF;}
	
/*基本ボタン*/
.btn          {text-align:left;}
.btn-is-center{text-align:center}
.btn-is-right {text-align:right}

#wpmem_login .buttons,
#wpmem_reg .buttons,
.btn a,
.btn input[type="submit"]{
	display: inline-block;
	height:40px;
	line-height:40px;
	padding:0 40px;
	margin:0 auto;
	border-radius: 3px;
	box-sizing:border-box;
	font-size:12px;
	font-weight:bold;
	border: 1px solid #3F3F3F;
	background:#3F3F3F;
	color:#FFF;
	text-decoration:none;
}
#wpmem_login .buttons:hover,
#wpmem_reg .buttons:hover,
.btn a:hover,
.btn.current a,
.btn input[type="submit"]:hover{
	background:transparent;
	border: 1px solid #325A8C;
	color: #325A8C;
	transition: 0.2s;
}
/*基本ボタンREDバージョン*/
.btn-is-red a{
	background:#B82C2C;
	border: 1px solid #B82C2C;
}
/*基本ボタンREDバージョン2(hoverホワイト)*/
.btn-is-red2 a{
	background:#B82C2C;
	border: 1px solid #B82C2C;
}
.btn-is-red2 a:hover{
	background:transparent;
	border: 1px solid #fff;
	color: #fff;
	transition: 0.2s;
}

/*基本ボタンダウンロードバージョン*/
.btn-is-download a{
	width:200px;
	height:auto;
	line-height:1.5;
	padding:10px 20px;
	font-weight:normal;
	text-align:center;
	margin-bottom:10px;
}
.btn-is-download a.big{
	font-weight:bold;
	background:#B82C2C;
	border: 1px solid #B82C2C;
}
.btn-is-download a.big:hover{
	background:transparent;
	border: 1px solid #B82C2C;
	color: #B82C2C;
	transition: 0.2s;
}

.btn-is-download a span{
	display:block;
	font-size:9px;
}



/*基本ボタンクリアバージョン*/
.btn-is-clear a{
	position: relative;
	overflow: hidden;
	background:transparent;
	color:#C8E5DF;
	border:#C8E5DF solid 1px;
	box-shadow:1px 1px 1px #3F3F3F inset,1px 1px 1px #3F3F3F;
	z-index: 2;
}
.btn-is-clear a:hover {
	border:#C8E5DF solid 1px;
	color: #fff;
	text-shadow: 1px 1px 1px #000000;
	transition: 0.2s;
}
.btn-is-clear a::after {
	content: '';
	position: absolute;
	top: -100%;
	left: -100%;
	width: 100%;
	height: 100%;
	z-index: -1;
}
.btn-is-clear a:hover::after {
	top: 0;
	left: 0;
	background-color: #C8E5DF;
	box-shadow:1px 1px 1px #3F3F3F;
	transition: 0.2s;
}

/*基本マージンボトム(ブロックエリアでのみ使用)*/
.mb-is-0  {margin-bottom:0    !important;}
.mb-is-10 {margin-bottom:10px !important;}
.mb-is-20 {margin-bottom:20px !important;}
.mb-is-30 {margin-bottom:20px !important;}
.mb-is-40 {margin-bottom:20px !important;}
.mb-is-60 {margin-bottom:30px !important;}
.mb-is-80 {margin-bottom:40px !important;}
.mb-is-100{margin-bottom:80px!important;}


/*基本フォントカラー(ブロックエリアでのみ使用)*/
.c-is-white{color:#ffffff !important;}
.c-is-light{color:#D8D8D8 !important;}
.c-is-gray {color:#7F7F7F !important;}
.c-is-dark {color:#3F3F3F !important;}
.c-is-red  {color:#B92C2C !important;}
.c-is-pink {color:#DB4984 !important;}
.c-is-green{color:#37684E !important;}
.c-is-blue {color:#325A8C !important;}
.c-is-wordpress{color:#B92C2C !important;}
.c-is-seo      {color:#DB4984 !important;}
.c-is-idea_material{color:#FABE00 !important;}
.c-is-marketing{color:#325A8C !important;}
.c-is-coding   {color:#534970 !important;}
.c-is-design   {color:#248696 !important;}


/*基本背景カラー(ブロックエリアでのみ使用)*/
.bgc-is-red  {background:#B92C2C !important;}
.bgc-is-pink {background:#DB4984 !important;}
.bgc-is-green{background:#37684E !important;}
.bgc-is-blue {background:#325A8C !important;}
.bgc-is-wordpress{background:#B92C2C !important;}
.bgc-is-seo      {background:#DB4984 !important;}
.bgc-is-idea_material{background:#FABE00 !important;}
.bgc-is-marketing{background:#325A8C !important;}
.bgc-is-coding   {background:#534970 !important;}
.bgc-is-design   {background:#248696 !important;}


/*マウスオーバーフラッシュ*/
@keyframes flash {
0%  {opacity: 0.5;}
100%{opacity: 1.0;}
}

/************************************************************/
/************************************************************/
/*ヘッダーエリア
/************************************************************/
/************************************************************/
.l-header{
	position: fixed;
    top: 0;
    left: 0;
	width:100%;
	height:50px;
	background:#191919;
	color:#ffffff;
	box-shadow: 0px 2px 2px 0px rgba(0,0,0,0.15);
	font-size:11px;
	font-weight:500;
	z-index:9999;
	transition: 0.2s;
}

/************************************************************/
/************************************************************/
/*メインコンテンツエリア
/************************************************************/
/************************************************************/
.l-contents {
	width:100%;
	overflow:hidden;
	color:#191919;
	font-size:13px;
	font-weight:500;
}

/************************************************************/
/************************************************************/
/*共通コンテンツエリア
/************************************************************/
/************************************************************/
.l-common {
	width:100%;
	overflow:hidden;
	color:#191919;
	font-size:13px;
	font-weight:500;
}

/************************************************************/
/************************************************************/
/*フッターエリア
/************************************************************/
/************************************************************/
.l-footer {
	width:100%;
	height:auto;
	color:#ffffff;
	background:#191919;
	font-size:13px;
	font-weight:500;
}





/*ナビゲーションエリアパーツ
/************************************************************/
.navi{
	position:relative;
	width:100%;
	height:50px;
	margin:0 auto;
}

/*ナビゲーションロゴエリア*/
.navi__logo{
	width:28px;
	height:20px;
	background: url(../img/common/sp_logo_header.svg) no-repeat center center;
	margin:15px 0 15px 20px;
	float:left;
	position: relative;
	display: block;
}
.navi__logo:hover{animation: flash 1s;}
.navi__logo a {display:block;width:28px;height:20px;}
.navi__logo img{display: none;}



/*ナビゲーションリストエリア*/
.navi__list{
	height:50px;
	float:right;
}
.navi__list a {display:block; text-decoration:none;}

.navi__list li{
	position: relative;
	float:left;
	height:50px;
	line-height:50px;
	padding:0 10px;
	font-weight:bold;
	text-align: center;
	box-sizing:border-box;
}
.navi__list li.current {background:#325A8C;}


/*スマホ専用*/
#navi__toggle{display: none;}
.navi__toggle__switch{
	position: relative;
	float:right;
	height:50px;
	line-height:50px;
	padding:0 10px;
	margin-right:10px;
	font-weight:bold;
	cursor:pointer;
}
.navi__toggle__switch::after{
	content:"";
	display:inline-block;
	margin-left:5px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 6px 4px 0 4px;
	border-color: #d8d8d8 transparent transparent transparent;
}
#navi__toggle:checked + .navi__toggle__switch::after{border-width: 0 4px 6px 4px; border-color: transparent transparent #d8d8d8 transparent;}
.navi__list-is-sp{
	height:0;
	overflow: hidden;
	-moz-transition: height 0.5s ease-in-out 0s;
}
/*トグルopen*/
#navi__toggle:checked + .navi__toggle__switch + .navi__list-is-sp{
	position:absolute;
	top:50px;
	left:0;
	width:100%;
	height:200px;
	border-top:#000000 1px solid;
	transition: 0.5s;

}
.navi__list-is-sp li{
	float:none;
	margin:0;
	background:#191919;
	border-top:#3F3F3F 1px solid;
	border-bottom:#000000 1px solid;
}


/*ナビゲーションマウスオーバー日本語英語切り替え「スマホでは切り替えない」*/
.navi__list li span:nth-child(1)       {display: inline-block;}
.navi__list li span:nth-child(2)       {display: none;}


/*プルダウンナビゲーション「スマホでは非表示」*/
.navi__list li ul{display: none;}





/*ローカルナビエリアパーツ
/************************************************************/
.local {
	width:100%;
	margin-top:80px;
	text-align:center;
}
.local__inner{
	width : calc(100% - 40px) ;
	margin:0 auto;	
}
.local__title{
	font-family: 'Anton';
	font-size:26px;
	letter-spacing:1px;
	margin-bottom:10px;
}
.local__navi{ margin:0 0 0 -20px;}
.local__navi li{
	display: inline-block;
	height: 30px;
	line-height: 30px;
	margin-left: 20px;
	margin-bottom: 10px;
	font-size: 11px;
	color: #BFBFBF;
	box-sizing: border-box;
	transition: 0.2s;
}
.local__navi li:hover,
.local__navi li.current {
	color: #191919;
	font-weight:bold;
	border-bottom: 3px solid;
}
.local__navi li a{display:block; text-decoration:none;}


/************************************************************/
.key {
	position: relative;
	width:100%;
	text-align:center;
}
.key-is-top {
	background: url(../img/top/key_top02.jpg) no-repeat 65% bottom;
	background-size: cover;
    height: auto;
    min-height: 100vh;
	z-index:2;
}
.key-is-about {
	background: url(../img/about/key_about.jpg) no-repeat center bottom;
	background-size: cover;
	padding:60px 0 40px 0;
	z-index:2;
}
.key-is-service {
    padding:60px 0 40px 0;
	z-index:2;
}
.key-is-service-is-homepage  {background: url(../img/service/key_serviceHomepage.jpg) no-repeat center bottom;background-size: cover;}
.key-is-service-is-marketing {background: url(../img/service/key_serviceMarketing.jpg) no-repeat center bottom;background-size: cover;}
.key-is-service-is-seo       {background: url(../img/service/key_serviceSeo.jpg) no-repeat center bottom;background-size: cover;}
.key-is-service-is-consulting{background: url(../img/service/key_serviceConsulting.jpg) no-repeat bottom center;background-size: cover;}
.key-is-service-is-logo      {background: url(../img/service/key_serviceLogo.jpg) no-repeat center bottom;background-size: cover;}
.key-is-wptheme {
	background: url(../img/wptheme/key_wptheme.jpg) no-repeat center center;
	background-size: cover;
	padding:60px 0 40px 0;
	z-index:2;
}
.key-is-works {
	background: url(../img/works/key_works.jpg) no-repeat center bottom;
	background-size: cover;
    padding:60px 0 40px 0;
	z-index:2;
}
.key-is-contact {
	background: url(../img/contact/key_contact.jpg) no-repeat center bottom;
	background-size: cover;
    padding:60px 0 40px 0;
	z-index:2;
}

.key-is-blog {
	background: url(../img/blog/key_blog.jpg) no-repeat center bottom;
	background-size: cover;
    padding:80px 0 70px 0;
	z-index:2;
}
.key-is-blog::after{
	background-color: rgba(0,0,0,.25);
	position:absolute;
	bottom:0;
	left:0;
	width:100%;
	height:40px;
	content:'';
	z-index:-1;
}

.key-is-top::after,
.key-is-about::after,
.key-is-service::after,
.key-is-wptheme::after,
.key-is-works::after,
.key-is-contact::after{
	background-color: rgba(0,0,0,.25);
	background-image: linear-gradient(90deg, rgba(0,0,0,.5) 50%, transparent 50%), linear-gradient(rgba(0,0,0,.25) 50%, transparent 50%);
	background-size: 2px 2px;
	position:absolute;
	top:0;
	right:0;
	bottom:0;
	left:0;
	content:'';
	z-index:-1;
}


/*キービジュアルの内枠(ブログでは不使用)*/
.key__inner{
	width : calc(100% - 40px);
	margin:auto;
}
.key-is-top .key__inner{
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	height: 300px;
}


.key__subtitle{
	font-family: 'Anton';
	font-size:38px;
	letter-spacing:2px;
	line-height: 1.1;
	color:#ffffff;
	text-shadow: 1px 1px 1px #000000;
	margin:0 auto 10px auto;
}
.key-is-top .key__subtitle{font-size:38px;}
.key-is-blog .key__subtitle a{ text-decoration:none}


.key__title{
	font-family: "Sawarabi Mincho";
	font-size:16px;
	font-weight:normal;
	letter-spacing:2px;
	line-height: 1.5;
	color:#ffffff;
	text-shadow: 1px 1px 1px #000000;
	margin:0 auto 20px auto;
}
.key-is-top .key__title{margin-bottom:30px;}


/*ナビエリア(トップページ専用)*/
.key-is-top .key__navi{
	margin:0 auto;
	margin:0 -10px 30px -10px;
	width : calc(100% + 10px);
	height:90px;
}
.key-is-top .key__navi .btn{
	float:left;
	width : calc(50% - 10px) ;
	text-align:center;
	margin:0 0 10px 10px;
	text-shadow: 1px 1px 1px #000000;
}
.key-is-top .key__navi .btn a{display:block;padding:0 ;}




/*ナビエリア(ブログ専用)*/
.key-is-blog .key__navi{
	position: absolute;
	bottom:0;
	left:0;
	width:100%;
	height:40px;
	line-height:40px;
}

/*トグル設定*/
.key-is-blog .key__navi #key__toggle{display: none;}
.key-is-blog .key__navi .key__toggle__switch{
	display:block;
	position: relative;
	width:100%;
	height:40px;
	line-height:40px;
	font-weight:bold;
	font-size:16px;
	color:#FFF;
	cursor:pointer;
}
.key-is-blog .key__navi .key__toggle__switch:hover{animation: flash 1s;}
.key-is-blog .key__navi .key__toggle__switch::before{
	content:"";
	display:inline-block;
	background:url(../img/blog/icon_category.svg) no-repeat;
	width:14px;
	height:14px;
	margin-right:5px;
}
.key-is-blog .key__navi .key__toggle__switch::after{
	content:"OPEN";
	display:inline-block;
	margin-left:5px;
}
.key-is-blog .key__navi #key__toggle:checked + .key__toggle__switch::after{
	content:"CLOSE";
}
/*トグルopen*/
.key-is-blog .key__navi #key__toggle:checked + .key__toggle__switch + ul{
	position:absolute;
	top:40px;
	left:0;
	width:100%;
	height:120px;
	background-color: rgba(0,0,0,0.90);
	border-bottom:#000000 1px solid;
	transition: 0.5s;	
}
.key-is-blog .key__navi ul{
	height:0;
	overflow: hidden;
}
.key-is-blog .key__navi ul li{
	width:50%;
	height:40px;
	line-height:40px;
	float:left;
	color:#FFF;
	font-size:12px;
	text-align:center;
	border-top:#3F3F3F 1px solid;
	border-bottom:#191919 1px solid;
	box-sizing:border-box;
}
.key-is-blog .key__navi ul li:hover{ background:#000;}
.key-is-blog .key__navi ul li:nth-child(even) {border-left:#3F3F3F 1px solid;border-right: none;}
.key-is-blog .key__navi ul li a{text-decoration:none; display:block;}


/*テキストエリア(トップページ専用)*/
.key__text{
	font-weight:bold;
	font-size:16px;
	line-height:1.25;
	width:90%;
	margin:0 auto 0 auto;
	color:#ffffff;
	text-shadow: 1px 1px 1px #000000;
}
.key__text b{font-size:28px;}


/*ページscrollボタン(トップページ専用)*/
.key__scroll{ display:none;}

/*検索窓エリア(ブログ専用)*/
.key-is-blog .foam__blogInput{width:270px; height:30px; line-height:30px; padding:0 10px; box-sizing:border-box; }
.key-is-blog .foam__blogBtn{width:30px; height:30px; background:#3F3F3F url(../img/blog/icon_search.svg) no-repeat center center; text-indent: -9999px;}



/*パンくずエリアパーツ
/************************************************************/
.breadcrumb{
	background:#ffffff;
	text-align:center;
	overflow:hidden;
}
.breadcrumb-is-gray{background:#EFEFEF;}

.breadcrumb__inner{
	width : calc(100% - 40px) ;
	margin:0 auto;
	padding:18px 0;
	text-align:left;
	overflow:hidden;
}
.breadcrumb__inner li{
	display:inline-block;
	position:relative;
	padding:2px 10px 2px 0;
	margin-right:5px;
	line-height:1.5;
	font-size:11px;
}
.breadcrumb__inner li:first-child{background:url(../img/blog/icon_home.svg) no-repeat center left; padding-left:17px;}
.breadcrumb__inner li::after {
    content: "";
    position: absolute;
    right: 0;
    top: 50%;
    margin-top: -3px;
    width: 5px;
    height: 5px;
    border-top: 1px solid #BFBFBF;
    border-right: 1px solid #BFBFBF;
    transform: rotate(45deg);
}
.breadcrumb__inner li:last-child::after{border: none;}



/*ブロックエリアパーツ
/************************************************************/
.bloc{
	padding:60px 0;
	background:#ffffff;
	text-align:center;
}
.bloc-is-half{padding:40px 0;}

.bloc-is-gray{background:#EFEFEF;}
.bloc-is-blue{background:#325A8C;}
.bloc-is-commonHalf{padding:0; overflow:hidden;}
.bloc-is-topService{padding:0; overflow:hidden;}
.bloc-is-topAbout{background:url(../img/about/bg_about01.jpg) no-repeat center center; background-size:cover; position:relative; z-index:2;}
.bloc-is-serviceHomepage{background:url(../img/service/img_serviceHomepage04.jpg) no-repeat center center; background-size:cover; position:relative; z-index:2;}
.bloc-is-serviceMarketing01{background:url(../img/service/img_serviceMarketing01.jpg) no-repeat center center; background-size:cover; position:relative; z-index:2;}
.bloc-is-serviceMarketing02{background:url(../img/service/img_serviceMarketing02.jpg) no-repeat center center; background-size:cover; position:relative; z-index:2;}
.bloc-is-serviceSeo01{background:url(../img/service/img_serviceSeo01.jpg) no-repeat center center; background-size:cover; position:relative; z-index:2;}
.bloc-is-serviceSeo02{background:url(../img/service/img_serviceSeo02.jpg) no-repeat center center; background-size:cover; position:relative; z-index:2;}
.bloc-is-serviceConsulting01{background:url(../img/service/img_serviceConsulting01.jpg) no-repeat center center; background-size:cover; position:relative; z-index:2;}
.bloc-is-serviceConsulting02{background:url(../img/service/img_serviceConsulting02.jpg) no-repeat center center; background-size:cover; position:relative; z-index:2;}
.bloc-is-serviceLogo{background:url(../img/service/img_serviceLogo.jpg) no-repeat center center; background-size:cover; position:relative; z-index:2;}
.bloc-is-wptheme{background:url(../img/wptheme/bg_wptheme01.jpg) no-repeat center center; background-size:cover; position:relative; z-index:2;}




.bloc-is-topAbout::before,
.bloc-is-serviceHomepage::before,
.bloc-is-serviceMarketing01::before,
.bloc-is-serviceMarketing02::before,
.bloc-is-serviceSeo01::before,
.bloc-is-serviceSeo02::before,
.bloc-is-serviceConsulting01::before,
.bloc-is-serviceConsulting02::before,
.bloc-is-serviceLogo::before,
.bloc-is-wptheme::before{background-color:rgba(0,0,0,0.75); position:absolute; top:0; right:0; bottom:0; left:0; content:''; z-index:-1;}


.bloc-is-member{margin-top:20px}
.bloc__inner{
	width : calc(100% - 40px) ;
	margin:0 auto;
	text-align:center;
	overflow:hidden;
}
.bloc__inner-is-left{text-align:left;}
.bloc__inner-is-half{text-align:left;}

.bloc__title{
	font-size:16px;
	line-height:1.5;
	margin-bottom:20px;
}
.bloc__bigtitle{
	font-size:24px;
	margin-bottom:30px;
	line-height:1.25;
}
.bloc__bigtitle span{
	display: inline-block;
    margin-left: 10px;
    padding: 5px 10px;
    background: #7F7F7F;
    color: #fff;
    line-height: 100%;
    border-radius: 3px;
	font-size:14px;
}

.bloc__text{line-height:1.75;}
.bloc__text            a{color:#325A8D;}
.bloc__text.c-is-white a{color:#ffffff;}
.bloc__text.c-is-light a{color:#D8D8D8;}
.bloc__text.c-is-gray  a{color:#325A8D;}
.bloc__text.c-is-dark  a{color:#325A8D;}

.bloc__description{
	font-family: 'Anton';
	font-size:14px;
	margin-bottom:10px;
	color:#7F7F7F
}
.bloc__badgeRight{
	display:none;
}
.bloc__name{
	margin-bottom:20px;
	color:#7F7F7F
}
.bloc__name span{display: inline-block; padding:5px 15px; color:#ffffff}
.bloc__name span a{text-decoration:none}
.bloc__subtitle{
	font-family: 'Anton';
	font-size:34px;
	font-weight:normal;
	line-height:1.1;
	margin-bottom:30px;
}
.bloc__image{
	margin:0 0 30px 0;
}
.bloc__image.mb-is-20{margin:0 0 30px 0 !important;}
.bloc__image.mb-is-40{margin:0 0 30px 0 !important;}
.bloc__image.mb-is-100{margin:0 0 30px 0 !important;}
.bloc__image img{width:100%;}

.bloc__wideImage{
	margin:0 0 30px 0;
}
.bloc__wideImage.mb-is-40{margin:0 0 30px 0 !important;}
.bloc__wideImage img{width:100%;}



.bloc__headin{
	color:#325A8D;
	font-size:16px;
	line-height:1.5;
	margin-bottom:10px;
}
.bloc__mark{
	position:relative;
	font-size:16px;
	line-height:1;
	margin-bottom:20px;
	text-align:left;
}
.bloc__mark::before{
	display:inline-block;
	content:"";
	width:12px;
	height:12px;
	border:2px solid #325A8C;
	border-radius: 12px;
	box-sizing:border-box;
	margin-right:10px;
}
.bloc__list li{
	list-style:circle;
	margin-left:17px;
	margin-bottom:10px;
	font-size:12px;
	line-height:1.5;
}
.bloc__quote{
	position:relative;
	width:100%;
	padding:20px;
	margin-bottom:20px;
	box-sizing:border-box;
	background:#EFEFEF;
	line-height:1.75;
}
.bloc__quote::before,
.bloc__quote::after{
	content:"";
	position:absolute;
	width:10px;
	height:10px;
	background:url(../img/common/icon_quote.svg);
	background-size:10px 10px;
}
.bloc__quote::before{top:10px;left:10px;}
.bloc__quote::after{bottom:10px;right:10px;transform: rotate(180deg);}

.bloc__quote-is-white{background:#ffffff;}
.bloc__quote span{
	margin-top:20px;
	display:block;
	text-align:right;
	font-size:11px;
}



/*ソーシャルリスト*/
.bloc__socialList{
	overflow:hidden;
	width:100%;
	height:40px;
	margin-bottom:20px;
}
.bloc__socialList li{
	position:relative;
	float:left;
	width:25%;
	height:40px;
	overflow:hidden;
}
.bloc__socialList li img{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	height:40px;
}
  
.bloc__socialList li:hover{animation: flash 1s;}

/*基本ページネーションデザイン*/
.bloc__pager{
	position:relative;
	width:100%;
	height:40px;
	font-size:11px;
}
.bloc__pager a,
.bloc__pager .current{
	display:inline-block;
	width:28px;
	height:38px;
	line-height:38px;
	color:#3F3F3F;
	border:#3F3F3F solid 1px;
	border-radius: 3px;
	text-decoration:none;
}
.bloc__pager a:hover,
.bloc__pager .current{color:#ffffff; background:#3F3F3F; transition: 0.2s;}
.bloc__pager .prev{width:43px; position:absolute; left:0}
.bloc__pager .next {width:43px; position:absolute; right:0}




/*基本テーブルデザイン*/
.bloc__table{
	border-collapse: collapse;
	width:100%;
	box-sizing:border-box;
	margin:0 auto;
	text-align: left;
}
.bloc__table th {
	display: block;
	width:100%;
	padding: 10px;
	background-color: #EFEFEF;
    border: #D8D8D8 1px solid;
	font-size:12px;
	font-weight:normal;
	vertical-align:middle;
	box-sizing:border-box;
}
.bloc__table tr:nth-child(even) th {
	background-color: #F7F7F7
}
.bloc__table td {
	display: block;
	width:100%;
    border-bottom: #D8D8D8 1px solid;
    border-right: #D8D8D8 1px solid;
    border-left: #D8D8D8 1px solid;
    padding: 10px;
	font-size:12px;
	line-height:1.75;
	min-height:42px;
	vertical-align:middle;
	box-sizing:border-box;
}
.bloc__table tr td:last-child{
	margin-bottom:10px;
}
.bloc__table a{
	color:#325A8D;
}


.bloc__table__price {
	color:#B02427;
	font-size:12px;
}
.bloc__table span{
	display:block;
	font-size:10px;
}





/*基本著作者デザイン*/
.bloc__author{
    border: #D8D8D8 1px solid;
	width:100%;
	padding:20px;
	overflow:hidden;
	box-sizing:border-box;
}
.bloc__author-is-blog{padding:30px;}

.bloc__author img{
	float:left;
	width:50px;
	height:75px;
	margin-right:10px;
}
.bloc__author h3{
	height:75px;
	margin-bottom:10px;
	color:#191919;
}
.bloc__author h3 span{
	display:block;
	font-size:10px;
	font-weight:normal;
	color:#7F7F7F;
}




/*ブログ一覧(TOPでも使用)*/
.bloc__blog__list{
	width : 100%;
	margin:0 0 -20px 0;
	overflow:hidden;
}

.bloc__blog__list li{
	position:relative;
	width : 100%;
	background:#ffffff;
	margin:0 0 20px 0;
	padding-bottom:50px;
}
.bloc__blog__listImg{
	position:relative;
	width : 100%;
	height: auto;
	overflow:hidden;
}
.bloc__blog__listImg img{width:100%; height:auto}
.bloc__blog__listImg span{
	position:absolute;
	top:0;
	right:0;
	color:#ffffff;
	padding:0 20px;
	height:30px;
	line-height:30px;
	text-align:center;
	font-size:12px;
}



.bloc__blog__listContents{margin:20px;}
.bloc__blog__listContents p{font-size:13px;}

.bloc__blog__listDate{
	position:absolute;
	bottom:0;
	left:0;
	width:100%;
	height:50px;
	line-height:50px;
	padding:0 20px;
	background:#F7F7F7;
	box-sizing:border-box;
}
.bloc__blog__listDate span{
	display:inline-block;
	float:left;
	background:url(../img/common/icon_calendar.svg) no-repeat left center;
	text-indent:24px;
	font-size:12px;
	color:#7F7F7F;
}
.bloc__blog__listDate a{
	position:relative;
	display:inline-block;
	float:right;
	font-size:12px;
	color:#7F7F7F;
	padding-right:16px;
	text-decoration:none;
}
.bloc__blog__listDate a::before{
	content:"";
	position:absolute;
	right: 0;
	top:50%;
	margin-top:-3px;
	width: 6px;
	height: 6px;
	border-top: 1px solid #7F7F7F;
	border-right: 1px solid #7F7F7F;
	transform: rotate(45deg);
}

.bloc__blog__listDate a::after {
	position: absolute;
	content: '';
	bottom: 15px;
	left: 0;
	width: 0;
	height: 0;
	border-bottom: 1px solid transparent;
}
.bloc__blog__listDate a:hover::after {
	width: 100%;
	border-bottom-color: #7F7F7F;
	transition: 0.5s;
}


/*サービス概要一覧(TOPページでのみ使用)*/
.bloc__topService{
	position: relative;
	width:100%;
	overflow:hidden;
	background:no-repeat center center;
	z-index:2;
}
.bloc__topService::before{
	background-color: rgba(0,0,0,0.75);
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	content: '';
	z-index: -1;
}
.bloc__topService-is-01{
	z-index:3;
	background-image: url(../img/top/img_top_service01.jpg);
	background-size:cover;
}
.bloc__topService-is-02{
	background-image: url(../img/top/img_top_service02.jpg);
	background-size:cover;
}
.bloc__topService-is-03{
	background-image: url(../img/top/img_top_service03.jpg);
	background-size:cover;
}
.bloc__topService-is-04{
	background-image: url(../img/top/img_top_service04.jpg);
	background-size:cover;
}

.bloc__topService-is-01 .bloc__description{margin-top:60px; text-align:center;}
.bloc__topService-is-01 .bloc__subtitle{text-align:center;}


.bloc__topService__box{
	width:calc(100% - 40px);
	margin:20px auto;
	border:1px solid #D8D8D8;
	box-sizing:border-box;
	padding:20px;
	text-align:left;
}

.bloc__topService__box h2{
	color:#fff;
	font-size:10px;
	font-weight:normal;
	margin-bottom:5px;
}

.bloc__topService__box h3{color:#fff;}

.bloc__topService__box p{font-size:12px; margin-bottom:20px;}

.bloc__topService__box a{
	display:block;
	width:100%;
	height:40px;
	line-height:40px;
	font-size:12px;
	background:#EFEFEF;
	border:1px solid #EFEFEF;
	text-align:center;
	text-decoration:none;
}
.bloc__topService__box a:hover {
	background:transparent;
	color: #fff;
	transition: 0.2s;
}






/*制作実績一覧(共通パーツ)*/
.bloc__commonWorks{
	height: 160px;
	overflow:hidden;
	margin-bottom:30px;
}
.bloc__commonWorks li{
	float:left;
	width:240px;
	margin-right:20px;
}
.bloc__commonWorks li img{
	width:240px;
	height:160px;
	box-sizing: border-box;
}

/*jQueryカルーセル用(#loopSlide) */
.simply-scroll-clip { 
	position: relative;
	overflow: hidden;
}	







/*ニュース/コンタクト(共通パーツ)*/
.bloc__commonHalf{
	width:100%;
	text-align:left
}
.bloc__commonHalf-is-left{background:#ffffff;}
.bloc__commonHalf-is-right{background:#325A8C;}

.bloc__commonHalf__inner{
	padding:60px 20px;
}
.bloc__commonHalf-is-left .bloc__description{font-weight:normal;}
.bloc__commonHalf-is-right .bloc__description{color:#ffffff; font-weight:normal;}


.bloc__commonHalf__newsList{
	border-top:1px solid #D8D8D8;
	margin-bottom:30px;
	box-sizing:border-box;
}
.bloc__commonHalf__newsList li{
	line-height:2;
	border-bottom:1px solid #D8D8D8;
	box-sizing:border-box;
	font-size:12px;
	padding:10px 0;
}
.bloc__commonHalf__newsList li span{
	float:left;
	display:block;
	color:#7F7F7F;
	margin-right:20px;
}
.bloc__commonHalf__newsList li div{
	float:left;
	display:block;
	width:100px;
	height:24px;
	line-height:24px;
	text-align:center;
	background:#325A8C;
	color:#fff;
	margin-bottom: 5px;
}
.bloc__commonHalf__newsList li div + a {
	display:block;
    clear: left; 
}
.bloc__commonHalf__inner-is-left .btn{
	text-align:center;
}



.bloc__commonHalf__contactBox{
	position: relative;
    padding: 40px 20px 20px 20px;
    background: #ffffff;
    box-sizing: border-box;
    width: 100%;
    text-align: center;
}
.bloc__commonHalf__contactBox span{
	display:block;
	position:absolute;
	top:0;
	right:0;
	height:30px;
	line-height:30px;
	padding:0 20px;
	font-size:12px;
	font-weight:bold;
	color:#ffffff;
	background:#B82C2C;
}
.bloc__commonHalf__contactBox h3{text-align:left;}
.bloc__commonHalf__contactBox p{text-align:left; font-size:12px;}

.bloc__commonHalf__inner-is-right .btn a{width:100%; text-align:center; margin-top:20px;}




/*TOP用リスト*/
.bloc__topList{
	width:100%;
	margin:0 0 -20px 0;
	overflow:hidden;
}

.bloc__topList li{
    width: 100%;
    background: #fff;
    margin: 0 0 20px 0;
	overflow: hidden;
}

.bloc__topList__contents     {margin:20px;}
.bloc__topList__contents p   {margin-bottom:20px; text-align:justify;}

/*TOP用リスト*/
.bloc__topList2{
	width:100%;
	margin:0 0 -20px 0;
	overflow:hidden;
}

.bloc__topList2 li{
    width: 100%;
    background: #f2f2f2;
    margin: 0 0 20px 0;
	overflow: hidden;
}


/*サービスページ用ホームページ制作の2ブロック*/
.bloc__serviceHalf{
	overflow:hidden;
}
.bloc__serviceHalf__box{
	width:calc(100% - 40px);
	margin:0 auto;
	text-align:left;
	overflow:hidden;
}
.bloc__serviceHalf__box-is-bg01{display:none}
.bloc__serviceHalf__box-is-bg02{display:none}
.bloc__serviceHalf__box-is-bg03{display:none}

.bloc__serviceHalf__box span{
	position:relative;
	display:block;
	width:100%;
	height:200px;
	color:#ffffff;
	font-size:15px;
	font-weight:bold;
	line-height:75px;
	text-indent:10px;
	margin-bottom:20px;
	z-index:2;
}
.bloc__serviceHalf__box span::before{
	position:absolute;
	content:"";
	display:block;
	width:50px;
	height:50px;
	background:#325A8D;
	z-index:-1;
}
.bloc__serviceHalf__no01{background: url(../img/service/img_serviceHomepage01.jpg) center center no-repeat; background-size: cover;}
.bloc__serviceHalf__no02{background: url(../img/service/img_serviceHomepage02.jpg) center center no-repeat; background-size: cover}
.bloc__serviceHalf__no03{background: url(../img/service/img_serviceHomepage03.jpg) center center no-repeat; background-size: cover}






/*サービスページ用ホームページ制作のコミットメントエリア用リスト*/
.bloc__serviceList01{
	overflow:hidden;
}
.bloc__serviceList01 > li{
	position:relative;
	width:100%;
	height: auto;
	background:#ffffff;
	padding:20px;
	box-sizing:border-box;
	text-align:center;
}
.bloc__serviceList01 > li:first-child{ margin-bottom:20px;}
.bloc__serviceList01 > li:last-child{ margin-top:20px;}
.bloc__serviceList01 > li img{ margin-bottom:10px; height:40px;}
.bloc__serviceList01 > li p{ text-align:left;}

.bloc__serviceList01__box{
	background:#EFEFEF;
	padding:20px;
}
.bloc__serviceList01__box h4{line-height:1.5; margin-bottom:10px}
.bloc__serviceList01__box li{text-align:left;}



/*サービスページ用ホームページ制作のサービスメニュー紹介用リスト*/
.bloc__serviceList02{
	width:100%;
	margin:0 0 -20px 0;
	overflow:hidden;
}

.bloc__serviceList02 li{
    width: 100%;
    background: #EFEFEF;
    margin: 0 0 20px 0;
	overflow: hidden;
}
.bloc__serviceList02 img{
	width: 100%;
    height: auto;
}

.bloc__serviceList02__contents     {margin:20px;}
.bloc__serviceList02__contents span{display:block; color:#3F3F3F; font-size:10px; margin-bottom:10px}
.bloc__serviceList02__contents h3  {color:#191919;}
.bloc__serviceList02__contents p   {margin-bottom:20px;}

.bloc__serviceList02__contents a{
	display:block;
	width:100%;
	height:40px;
	line-height:40px;
	font-size:12px;
	background:#ffffff;
	border:1px solid #ffffff;
	text-align:center;
	text-decoration:none;
}
.bloc__serviceList02__contents a:hover {
	border:1px solid #191919;
	transition: 0.2s;
}

/*サービスページ用コンテンツマーケティングのメリットデメリットリスト*/
.bloc__serviceList03{
	width:100%;
	margin:0 0 -60px 0;
	overflow:hidden;
	padding-top:40px;
}
.bloc__serviceList03 li{
	position:relative;
	width:100%;
	margin:0 0 60px 0;
	padding:25px;
	box-sizing:border-box;
}
.bloc__serviceList03 li::before{
	content:"";
	position:absolute;
	top:5px;
	left:5px;
	width : calc(100% - 10px) ;
	height: calc(100% - 10px) ;
	border:#FFF 1px solid;
	box-sizing:border-box;
}
.bloc__serviceList03 li::after{
	content:"";
	position:absolute;
	top:0;
	left:50%;
	width:80px;
	height:80px;
	margin:-40px 0 0 -40px;	
}
.bloc__serviceList03 li.bloc__serviceList03__good{background:#325A8D;}
.bloc__serviceList03 li.bloc__serviceList03__good::after{background: url(../img/service/icon_good.svg) center center no-repeat; background-size:80px 80px;}
.bloc__serviceList03 li.bloc__serviceList03__bad {background:#3F3F3F;}
.bloc__serviceList03 li.bloc__serviceList03__bad::after{background: url(../img/service/icon_bad.svg) center center no-repeat; background-size:80px 80px;}

.bloc__serviceList03 li span{
	display:block;
	position:absolute;
	top:5px;
	left:5px;
	width:100px;
	height:30px;
	line-height:30px;
	background:#ffffff;
	font-size:14px;
	font-weight:bold;
	text-align:center
}
.bloc__serviceList03__good span{color:#325A8D;}
.bloc__serviceList03__bad  span{color:#3F3F3F;}

.bloc__serviceList03 li h3{
	color:#ffffff;
	text-align:center;
	border-bottom:1px solid #fff;
	margin:30px 0 20px 0;
	padding-bottom:10px;
}




/*サービスページ用コンテンツマーケティングのコンテンツの種類リスト*/
.bloc__serviceList04{
	width:100%;
	margin:0 0 -20px 0;
	overflow:hidden;
}
.bloc__serviceList04 li{
	position:relative;
	width:100%;
	margin:0 0 20px 0;
	padding:20px 20px 50px 20px;
	box-sizing:border-box;
	background:#fff;
}
.bloc__serviceList04 li img{margin-bottom:10px; height:40px;}
.bloc__serviceList04 li h3 {color:#3F3F3F;}
.bloc__serviceList04 li p  {font-size:12px; text-align:left;}
.bloc__serviceList04 li span{
	position:absolute;
	bottom:0;
	left:0;
	width:100%;
	height:30px;
	line-height:30px;
	border-top:1px solid #D8D8D8;
	color:#B02427;
	font-size:12px;
	text-align:left;
	padding-left:90px;
	box-sizing:border-box;
}
.bloc__serviceList04 li span::before{
	content:"提供方法";
	position:absolute;
	top:0;
	left:0;
	width:80px;
	height:30px;
	line-height: 0.5;
	padding:12px;
	box-sizing:border-box;
	background:#B02427;
	color:#ffffff;
	text-align:center;
}









/*サービスページ用コンテンツマーケティングのメニュー料金リスト*/
.bloc__serviceList05{
	width:100%;
	margin:0 0 -20px 0;
	overflow:hidden;
}
.bloc__serviceList05 li{
	width:100%;
	margin:0 0 20px 0;
	padding:20px 20px 0 20px;
	box-sizing:border-box;
	background:#ffffff;
}
.bloc__serviceList05 li h3{text-align:center}
.bloc__serviceList05 li span{
	display:block;
	margin-top:20px;
	width:100%;
	height:60px;
	line-height:60px;
	font-weight:bold;
	text-align:center;
	border-top:#D8D8D8 1px dashed;
}






/*サービスページ用コンテンツマーケティングのステップリスト*/
.bloc__serviceList06{
	position:relative;
	width:100%;
	overflow:hidden;
	box-sizing:border-box;
	margin-bottom:20px;
}

.bloc__serviceList06 > li{
	width:100%;
	padding:20px;
	box-sizing:border-box;
	background:#EFEFEF;
	margin-bottom:20px;
}
.bloc__serviceList06 > li:nth-child(even){background:#F7F7F7;}

.bloc__serviceList06 > li > span{display:block; font-size:12px; font-weight:bold; color:#7F7F7F; margin-bottom:10px;}
.bloc__serviceList06 > li > h3{color:#191919; font-size:14px; margin-bottom:20px;}
.bloc__serviceList06 > li > p {font-size:12px; text-align:left; margin-bottom:20px;}


.bloc__serviceList06__contents{
	width:100%;
	background:#ffffff;
}
.bloc__serviceList06__contents h4{
	font-size:12px;
	height:30px;
	line-height:30px;
	color:#ffffff;
}
.bloc__serviceList06__contents ul{
	margin:10px;
}
.bloc__serviceList06__contents ul li{
	font-size:11px;
	text-align:left;
	margin-bottom:5px;
}
.bloc__serviceList06__contents p{
	font-size:11px;
	width:100%;
	height:20px;
	line-height:20px;
	color:#ffffff;
	background:#191919;
}



/*サービスページ用SEOのチェックリスト*/
.bloc__serviceList07{
	width:100%;
	margin:0 0 10px 0;
	overflow:hidden;
}
.bloc__serviceList07 li{
	position:relative;
	width:100%;
	height:50px;
	line-height:50px;
	margin:0 0 10px 0;
	padding-left:43px;
	box-sizing:border-box;
	background:#EFEFEF;
	text-align:left;
}
.bloc__serviceList07 li::before{
	content:"";
	position:absolute;
	top:10px;
	left:10px;
	width:23px;
	height:23px;
	background: url(../img/service/icon_check.svg) center center no-repeat;
}


/*サービスページ用SEOの4つのポイントリスト*/
.bloc__serviceList08{
    width: 100%;
    margin: 0 0 -60px 0;
    overflow: hidden;
    padding-top: 40px;
}
.bloc__serviceList08 li{
    position: relative;
    width: 100%;
    margin: 0 0 60px 0;
    padding: 25px;
    box-sizing: border-box;
	background: #325A8D;
}
.bloc__serviceList08 li::before{
    content: "";
    position: absolute;
    top: 5px;
    left: 5px;
    width: calc(100% - 10px);
    height: calc(100% - 10px);
    border: #FFF 1px solid;
    box-sizing: border-box;
}
.bloc__serviceList08 li::after{
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    width: 80px;
    height: 80px;
    margin: -40px 0 0 -40px;
}
.bloc__serviceList08__01::after{background: url(../img/service/icon_point01.svg) center center no-repeat;background-size: 80px 80px;}
.bloc__serviceList08__02::after{background: url(../img/service/icon_point02.svg) center center no-repeat;background-size: 80px 80px;}
.bloc__serviceList08__03::after{background: url(../img/service/icon_point03.svg) center center no-repeat;background-size: 80px 80px;}
.bloc__serviceList08__04::after{background: url(../img/service/icon_point04.svg) center center no-repeat;background-size: 80px 80px;}

.bloc__serviceList08 li h3{
	color:#ffffff;
	border-bottom:1px solid #fff;
	margin:30px 0 20px 0;
	padding-bottom:10px;
}
.bloc__serviceList08 li p{
	text-align:left;
}




/*サービスページ用SEOの料金リスト*/
.bloc__serviceList09{
    width: 100%;
    margin: 0 0 -20px 0;
    overflow: hidden;
}
.bloc__serviceList09 li{
    width: 100%;
    margin: 0 0 20px 0;
    padding: 20px 20px 10px 20px;
    box-sizing: border-box;
	background:#EFEFEF;
}
.bloc__serviceList09 li img{margin-bottom: 10px; height: 40px;}
.bloc__serviceList09 li h3 {color:#3F3F3F;}
.bloc__serviceList09 li p  {font-size:12px; text-align:left; margin-bottom:20px;}
.bloc__serviceList09 li span{
	display:block;
	width:100%;
	height:40px;
	line-height:40px;
	border-top:1px solid #D8D8D8;
	color:#B02427;
	font-size:12px;
}



/*サービスページ用コンサルティングの料金リスト*/
.bloc__serviceList10{
	width:100%;
	margin:0;
	overflow:hidden;
}
.bloc__serviceList10 > li{
	position:relative;
	width:100%;
	margin:0 0 20px 0;
	background:#EFEFEF;
}
.bloc__serviceList10 > li h3{
	background:#325A8D;
	line-height:1.5;
	padding:10px;
	color:#ffffff;
}
.bloc__serviceList10 > li p{
	margin:20px;
	text-align:left;
}

.bloc__serviceList10__box{
	width : calc(100% - 40px) ;
	padding:20px;
	box-sizing:border-box;
	background:#ffffff;
	margin:0 auto;
}

.bloc__serviceList10__box h4{ margin-bottom:20px;}
.bloc__serviceList10__box ul li{text-align:left}

.bloc__serviceList10 > li span{
	width:100%;
	height:50px;
	line-height:50px;
	font-size:14px;
	font-weight:bold;
}



/*サービスページ用LOGO・DTPの作業フローリスト*/
.bloc__serviceList11{
	width:100%;
	overflow:hidden;
}
.bloc__serviceList11 li{
	position:relative;
	width:100%;
	height:60px;
	line-height:60px;
	background:#EFEFEF;
	text-align:center;
	font-size:14px;
	font-weight:bold;
}
.bloc__serviceList11 li::before{
    content: "";
    position: absolute;
    top: 0px;
    left: 50%;
    margin-left: -40px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 15px 40px 0 40px;
    border-color: #F7F7F7 transparent transparent transparent;
}
.bloc__serviceList11 li:first-child::before{border-color: transparent}
.bloc__serviceList11 li:nth-child(even)::before{border-color: #EFEFEF transparent transparent transparent;}
.bloc__serviceList11 li:nth-child(even){background:#F7F7F7;}
.bloc__serviceList11 li:last-child{background:#325A8D; color:#ffffff;}



/*サービスページ用コンテンツマーケティングのステップ説明エピソードボックス*/
.bloc__serviceBox01{
	width:100%;
	overflow:hidden;
	box-sizing:border-box;
	border:1px solid #D8D8D8;
	padding:20px;
	margin:0 auto;
	line-height:2;
	text-align:left;
	font-size:12px;
}
.bloc__serviceBox01 .bgc-is-red,
.bloc__serviceBox01 .bgc-is-pink,
.bloc__serviceBox01 .bgc-is-green,
.bloc__serviceBox01 .bgc-is-blue{
	color:#ffffff;
	display:inline-block;
	padding:0 5px;
	margin-right:10px;
}
.bloc__serviceBox01 .c-is-red,
.bloc__serviceBox01 .c-is-pink,
.bloc__serviceBox01 .c-is-green,
.bloc__serviceBox01 .c-is-blue{
	font-weight:bold;
}


/*サービスページ用コンサルティングの説明ボックス*/
.bloc__serviceBox02{
	width:100%;
	overflow:hidden;
	background:#325A8D;
	box-sizing:border-box;
	padding:20px;
	margin:0 auto;
	text-align:left;
	color:#ffffff;
}
.bloc__serviceBox02_pc{ display:none;}
.bloc__serviceBox02_sp{ margin:0 auto; width:100%}



/*WPテーマリスト*/
.bloc__wpthemeList01{
	width : 100%;
	margin:0 0 -20px 0;
	overflow:hidden;
}

.bloc__wpthemeList01 > li{
	position:relative;
	width : 100%;
	background:#ffffff;
	margin:0 0 20px 0;
	box-sizing:border-box;
	padding:20px;
	text-align:left;
}

/*テーマダウンロード用テーブルデザイン*/
.bloc__wpthemeTable {
    border-collapse: collapse;
    width: 100%;
    margin: -30px auto -10px auto;
    text-align: left;
}
.bloc__wpthemeTable th {
    display: block;
    padding: 30px 0 0px 0;
    vertical-align: top;
    line-height: 26px;
    text-align: center;
}
.bloc__wpthemeTable th strong{font-size:15px;}
.bloc__wpthemeTable td {
    display: block;
    padding: 0px 0 10px 0;
    line-height: 26px;
    text-align: center;
}
.bloc__wpthemeTable td .btn  {text-align:center;}



/*テーマダウンロード用リストデザイン*/
.bloc__wpthemeList{
	width:100%;
	margin: 0 auto -40px auto;
	text-align: center;
	overflow:hidden;
}
.bloc__wpthemeList__item {
	width:100%;
	margin-bottom:40px;
}
.bloc__wpthemeList__item strong{
	display:block;
	font-size:15px;
}
.bloc__wpthemeList__item div{margin-top:20px;}
.bloc__wpthemeList__item div img{width:100%;}
.bloc__wpthemeList__item .btn a{height:30px; line-height:30px; padding:0 20px; font-weight:normal;}






/*ワークスページ用実績一覧リスト*/
.bloc__worksList{
	width:100%;
	overflow:hidden;
	margin-bottom:-20px;
}
.bloc__worksList > li{
	position:relative;
	width:100%;
	background:#ffffff;
	margin-bottom:20px;
}

.bloc__worksList__left{
	width:100%;
	height:auto;
}
.bloc__worksList__left img{
	width:100%;
	height:auto;
}
.bloc__worksList__right{
	position:relative;
	width:100%;
	height:auto;
	padding:20px;
	box-sizing:border-box;	
}
.bloc__worksList__right span{
	display:block;
	font-size:12px;
	margin-bottom:10px;
}

.bloc__worksList__icon{
	margin:0 -5px 15px 0;
	overflow:hidden;
}
.bloc__worksList__icon li{
	float:left;
	width:70px;
	height:24px;
	line-height:24px;
	margin:0 5px 5px 0;
	font-size:10px;
	text-align:center;
	border:#D8D8D8 1px solid;
	background:#FFF;
	box-sizing:border-box;
	color:#BFBFBF;
}
.bloc__worksList__icon li.is-on{
	border:#3F3F3F 1px solid;
	background:#3F3F3F;
	color:#ffffff;
}

.bloc__worksList__right .btn a {width:100%; text-align:center}





/*ニュースページタイトル*/
.bloc__newsTitle{
	height:50px;
	line-height:50px;
	font-size:20px;
	font-weight:bold;
	color:#191919;
	text-align:left;
	text-shadow:none;
	background:url(../img/news/icon_category.svg) no-repeat center left;
	padding-left:26px;
}
/*ニュースページ用ボタンリスト*/
.bloc__newsList01{
	width:100%;
	overflow:hidden;
	margin-bottom:-5px;
}
.bloc__newsList01 li{
	width:100%;
	text-align:center;
	margin-bottom:5px;
}
.bloc__newsList01 li a{width:100%; padding:0}


/*ニュースページ用一覧リスト*/
.bloc__newsList02{
	width:100%;
	border-top:1px dotted #D8D8D8;
	margin-bottom:40px;
	box-sizing:border-box;
}
.bloc__newsList02 li{
	border-bottom:1px dotted #D8D8D8;
	box-sizing:border-box;
	padding: 20px 0;
}
.bloc__newsList02 li span{
	float:left;
	display:block;
	color:#7F7F7F;
	height:24px;
	line-height:24px;
	font-size:12px;
	margin-right:20px;
}
.bloc__newsList02 li div{
	float:left;
	display:block;
	width:100px;
	height:24px;
	line-height:24px;
	font-size:12px;
	text-align:center;
	background:#325A8C;
	color:#fff;
	margin-bottom:10px;
}
.bloc__newsList02 li  div + a{display:block; clear: left; position:relative; line-height:1.5;}




/*投稿記事用専用ボックス*/
.bloc__article {
	overflow:hidden;
}
.bloc__article p{
	line-height:1.75;
	font-size:14px;
	margin-bottom:40px;
}
.bloc__article .prettyprint + p{margin-top:-30px;} /*Pがコードハイライトの隣の時*/
.bloc__article p + .prettytitle{margin-top:-30px;} /*Pがコードタイトルの隣の時*/
.bloc__article p + h2          {padding-top:20px;} /*Pがh2の隣の時*/
.bloc__article .quote + p      {margin-top:-30px;} /*Pが引用ボックスの隣の時*/
.bloc__article .iframe + p     {margin-top:-30px;} /*Pがiframeの隣の時*/
.bloc__article ul + p          {margin-top:-30px;} /*Pがulの隣の時*/
.bloc__article p + ul          {margin-top:-30px;} /*Pがulの隣の時*/
.bloc__article ol + p          {margin-top:-30px;} /*Pがolの隣の時*/
.bloc__article p + ol          {margin-top:-30px;} /*Pがolの隣の時*/
.bloc__article table + p       {margin-top:-30px;} /*Pがテーブルの隣の時*/
.bloc__article p + table       {margin-top:-30px;} /*Pがtableの隣の時*/

.bloc__article p img{
	display:block;
	width:100%;
	margin-bottom:10px;
}
.bloc__article p a.btn{
	display:inline-block;
	position: relative;
	background:transparent;
	color:#3F3F3F;
	font-size:12px;
	text-decoration:none;
	height:30px;
	line-height:30px;
	padding:0 10px;
	border:#3F3F3F solid 1px;
	border-radius: 3px;
	z-index: 2;
}
.bloc__article p a.btn:hover {
	background:#3F3F3F;
	color: #fff;
	transition: 0.2s;
}
.bloc__article p a[target="_blank"]{
	color:#315786;
}
.bloc__article p a[target="_blank"]::before{
	content: url(../img/common/icon_link.svg);
	margin-right:5px;
}

.bloc__article h2{
	line-height:1.5;
	font-size:20px;
	margin-bottom:10px;
}
.bloc__article h2:first-letter{
	font-size:24px;
	border-bottom:2px solid;
}
.bloc__article .prettyprint + h2{padding-top:20px;} /*コードハイライトがh2の隣の時*/

.bloc__article-is-wordpress h2:first-letter{color:#B92C2C;}
.bloc__article-is-seo h2:first-letter      {color:#DB4984;}
.bloc__article-is-idea_material h2:first-letter{color:#FABE00;}
.bloc__article-is-marketing h2:first-letter{color:#325A8C;}
.bloc__article-is-coding h2:first-letter   {color:#534970;}
.bloc__article-is-design h2:first-letter   {color:#248696;}

.bloc__article h3{
	line-height:1.5;
	font-size:18px;
	margin-bottom:10px;
	color:#3F3F3F
}
.bloc__article h4{
	line-height:1.5;
	font-size:16px;
	margin-bottom:10px;
	color:#3F3F3F
}

/*ul ol li*/
.bloc__article ul{
	margin: 0 0 40px 20px;
}
.bloc__article ul li{
	list-style:circle;
	line-height:1.75;
	font-size:12px;
	margin-bottom:10px;
}
.bloc__article ul li:last-child{
	margin-bottom:0;
}

.bloc__article ol{margin: 0 0 40px 25px;}
.bloc__article ol.linenums{margin-bottom: 0}

.bloc__article ol li{
	list-style:decimal-leading-zero;
	line-height:1.75;
	font-size:12px;
	margin-bottom:10px;
}
.bloc__article ol li:last-child{
	margin-bottom:0;
}


/*table*/
.bloc__article table{
	width:100%;
	margin:0 auto 40px auto;
	font-size:12px;
	text-align: left;
	border-collapse: collapse;
    border-top: #D8D8D8 1px solid;
    border-left: #D8D8D8 1px solid;
	box-sizing:border-box;	
}
.bloc__article table th {
	padding: 10px;
	line-height:1.5;
	font-weight:normal;
	background-color: #EFEFEF;
    border-bottom: #D8D8D8 1px solid;
    border-right: #D8D8D8 1px solid;
	box-sizing:border-box;
	vertical-align:middle;
}
.bloc__article table td {
    padding: 10px;
	line-height:1.5;
	border-bottom: #D8D8D8 1px solid;
    border-right: #D8D8D8 1px solid;
	box-sizing:border-box;
	vertical-align:middle;
}

/*iframe*/
.bloc__article .iframe{
	position: relative;
	width:100%;
	margin-bottom:40px;
	padding-top:56.25%;
}
.bloc__article .iframe iframe{
	position: absolute;
	top: 0;
	left: 0;
	width:100%;
	height:100%;
}


/*引用ボックス*/
.bloc__article div.quote{
	position:relative;
	width:100%;
	padding:20px;
	margin-bottom:40px;
	box-sizing:border-box;
	background:#EFEFEF;
	line-height:1.75;
}
.bloc__article div.quote::before,
.bloc__article div.quote::after{
	content:"";
	position:absolute;
	width:10px;
	height:10px;
	background:url(../img/common/icon_quote.svg);
	background-size:10px 10px;
}
.bloc__article div.quote::before{top:10px;left:10px;}
.bloc__article div.quote::after{bottom:10px;right:10px;transform: rotate(180deg);}

.bloc__article div.quote span{
	margin-top:20px;
	display:block;
	text-align:right;
	font-size:11px;
}

/*背景グレーボックス*/
.bloc__article div.bggray{
	width:100%;
	padding:20px 20px 5px 20px;
	margin-bottom:40px;
	box-sizing:border-box;
	background:#EFEFEF;
	line-height:1.75;
}

/*注釈部分*/
.bloc__article span.asterisk {
    display: block;
    font-size: 12px;
    color: #7F7F7F;
}

/*コードハイライトJSの追加CSS*/
.bloc__article div.prettytitle{
	background-color: #333;
}
.bloc__article div.prettytitle span{
	display: inline-block;
    background-color: #aeaeae;
    color: #191919;
    line-height: 20px;
    min-width: 52px;
	padding:0 10px;
	box-sizing:border-box;
    text-align: center;
    font-size: 12px;
}
.bloc__article pre.prettyprint{
	margin: 0 0 40px 0;
	overflow-x:auto;
}
.bloc__article ol.linenums li{
	margin:0 0 0 50px;
	padding:0 0 0 10px;
	list-style-type:decimal;
	border-left: solid #191919 2px;
}
.bloc__article ol.linenums li span:last-child{padding-right:10px;}
.bloc__article .prettyprint + .prettytitle{margin-top:-30px;} /*コードハイライトがコードタイトルの隣の時*/



/*ブログページ用関連記事リスト*/
.bloc__relationlList{
	overflow:hidden;
	padding:30px;
	margin-bottom:30px;
	background:#EFEFEF;
	box-sizing:border-box;
}

/*ブログページ用広告枠*/
.bloc__adBox{
	overflow:hidden;
	margin-bottom:30px;
	padding: 0 10px;
	box-sizing:border-box;
    text-align: center;
    background-color: #F2F2F2;
    background-image: linear-gradient(to top right, #fff 0%, #fff 25%, transparent 25%, transparent 50%, #fff 50%, #fff 75%, transparent 75%, transparent 100%);
    background-size: 6px 6px;
}
/*ブログページ用広告枠title*/
.bloc__adBox__title{
	font-size: 12px;
    padding: 10px 0;
    display: block;
    font-weight: normal;
}






/*お問い合わせページ用お問い合わせリスト*/
.bloc__contactList{
	width:100%;
	margin:0 0 -20px 0;
	overflow:hidden;
}
.bloc__contactList li{
	width:100%;
	margin:0 0 20px 0;
	padding:20px;
	box-sizing:border-box;
	background:#EFEFEF;
}
.bloc__contactList li .btn a{width:100%; text-align:center;}




/*お問い合わせページ用テーブルデザイン*/
.bloc__contactTable{
	border-collapse: collapse;
	width:100%;
	margin:0 auto;
	text-align: left;
}
.bloc__contactTable th {
	display:block;
	padding:20px 0 0 0;
	vertical-align:top;
	line-height:30px;
}
.bloc__contactTable th span{
	display:block;
	float:left;
	text-align:center;
	width:40px;
	height:20px;
	line-height:20px;
	margin-top:5px;
	margin-right:10px;
	font-size:12px;
	background:#C1272D;
	color:#fff;
	border-radius:3px;	
}
.bloc__contactTable th br{ display:none}
.bloc__contactTable td {
	display:block;
    padding:0 0 20px 0;
	vertical-align:top;
	line-height:30px;
}
.bloc__contactTable td .asterisk{
	display:block;
	font-size:12px;
	color:#7F7F7F;
}
.bloc__contactTable td .error{font-size:12px;}

.bloc__contactTable td .btn a{height:30px; line-height:30px; padding:0 20px; font-weight:normal;}






/*テーマ用料金リスト*/
.bloc__wpthemeList03{
	width:100%;
	margin:20px 0 0 0;
	overflow:hidden;
}
.bloc__wpthemeList03 > li{
	position:relative;
	width:100%;
	margin:0 0 20px 0;
	padding:20px 20px 0 20px;
	box-sizing:border-box;
	background:#ffffff;
	text-align:center;
}
.bloc__wpthemeList03 > li > img{height:40px;}
.bloc__wpthemeList03 > li h3{margin-top:10px;}
.bloc__wpthemeList03 > li span{
	display:block;
	margin-top:20px;
	width:100%;
	height:60px;
	line-height:60px;
	font-weight:bold;
	text-align:center;
	border-top:#D8D8D8 1px dashed;
}
.bloc__wpthemeList03 > li span img{
	position:absolute;
	bottom:40px;
	right:10px;
	z-index:10;
	height:60px;
}
.bloc__wpthemeList03__box{
	background:#EFEFEF;
	padding:20px;
}
.bloc__wpthemeList03__box h4{line-height:1.5; margin-bottom:10px}
.bloc__wpthemeList03__box li{text-align:left;}
.bloc__wpthemeText{ font-size:11px; margin-bottom:20px;}




/*メンバープラグイン用CSS*/
#wpmem_login,
#wpmem_reg{
	width:100%;
	margin:0 auto;
	padding: 20px;
	box-sizing:border-box;
	border: 1px solid #D8D8D8;
    background: #fff;
    line-height: 2;
	text-align:left;
}
#wpmem_login legend,
#wpmem_reg legend{
	font-weight:bold;
}
#wpmem_login .buttons{
	display:block;
	margin:20px 0;
}
#wpmem_login .div_text,
#wpmem_reg .div_text{margin-bottom:20px;}
#wpmem_login .req,
#wpmem_reg .req{color: #FF0000;}
#wpmem_msg,
.wpmem_msg{
	width: 100%;
	margin: 0 auto 40px auto;
	padding: 20px 0;
	box-sizing:border-box;
	border: 1px solid #D8D8D8;
    background: #F7F7F7;
    line-height: 2;
}
#wpmem_login input[type="checkbox"]{
	vertical-align: middle;
    -webkit-appearance: checkbox;
    -moz-appearance: checkbox;
    appearance: checkbox;
}

#wpmem_reg .noinput{
	height: 30px;
    width: 100%;
    padding: 0 10px;
    box-sizing: border-box;
	border:1px solid #EFEFEF;
}



/*会員ページ用追加項目*/
.memberMessage {
	width:100%;
	margin:20px auto 0 auto;
    font-size: 14px;
	text-align:left;
	line-height:2;
}
.memberMessageBox {
	width:100%;
    padding: 20px;
    background-color: #F7F7F7;
    border: #D8D8D8 1px solid;
	margin:40px auto 0 auto;
    font-size: 13px;
    box-sizing: border-box;
	text-align:left;
	line-height:2;
}
/*注釈部分*/
.memberMessageBox .asterisk {
    display: block;
    font-size: 11px;
    color: #7F7F7F;
}
.memberPrivacy {
	width: 100%;
	margin:0 auto;
	font-size:13px;
	line-height:2;
	text-align:left;
}


/*MEMBERSHIPのナビ（footer固定）*/
.memberBox {
	width:130px;
	height:60px;
	position: fixed;
	bottom:0;
	right:0;
	overflow:hidden;
	z-index:9999;
}
.memberBox .memberBox__slideup{
	width:130px;
	height:60px;
	background:rgba(50,90,140,0.9);
	position:absolute;
	top:30px;
	left:0;
	color:#fff;
	transition: 0.2s;
	box-sizing:border-box;
	border-top: solid 1px rgba(255,255,255,0.5);
	border-left: solid 1px rgba(255,255,255,0.5);
}
.memberBox .memberBox__slideup:hover {top:0;}
.memberBox .memberBox__slideup span {
	margin:5px;
	padding:5px;
	text-align:center;
	font-weight:bold;
	display:block;
	font-size:12px;
	transition: 0.2s;
}
.memberBox .memberBox__slideup:hover span {display:none;}
.memberBox__navi{
	margin-top:5px;
}
.memberBox__navi li{
	position: relative;
	overflow: hidden;
	height: 25px;
	line-height:25px;
	text-align:left;
	padding-left:10px;
	box-sizing:border-box;
	font-size:11px;
}

.memberBox__navi li::before{
	content: '';
	position: absolute;
	top: 50%;
	right: 20px;
	width: 4px;
	height: 4px;
	margin-top: -4px;
	border-top: solid 1px #ffffff;
	border-right: solid 1px #ffffff;
	transform: rotate(45deg);
}


#wpmem_login input[type="text"],
#wpmem_login input[type="email"],
#wpmem_login input[type="password"],
#wpmem_reg input[type="text"],
#wpmem_reg input[type="email"],
#wpmem_reg input[type="password"],
.form__text{
	height: 30px;
	width:100%;
    padding:0 10px;
	box-sizing:border-box;
	background:#EFEFEF;
}
.form__text-is-half{
	width:200px;
}
.form__text-is-half:last-child{margin-top:10px;}

.form__textarea{
	height:200px;
	width:100%;
    padding:10px;
	box-sizing:border-box;
	background:#EFEFEF;
}

.form__radio,
.form__checkbox{display: none;}

.form__radio:checked + .mwform-radio-field-text:after {
	position: absolute;
	content: "";
	top: 50%;
	left:4px;
	width: 6px;
	height: 6px;
	margin-top: -3px;
	border-radius:50%;
	background: #7f7f7f;
}
.form__checkbox:checked + .mwform-checkbox-field-text:after {
	position: absolute;
    content: "";
    top: 50%;
    left: 5px;
    width: 3px;
    height: 7px;
    margin-top: -5px;
    border: solid 1px #7f7f7f;
    border-left: 0;
    border-top: 0;
    transform: rotate(45deg);
}

.mwform-radio-field-text,
.mwform-checkbox-field-text{
	display: inline-block;
	position: relative;
	cursor: pointer;
	margin:0;
	padding:0;
	text-indent:19px;
}

.mwform-radio-field-text:before,
.mwform-checkbox-field-text:before{
	position: absolute;
	content: "";
	top: 50%;
	left:0;
	width: 14px;
	height: 14px;
	margin-top: -7px;
	background: #fff;
	border:#D8D8D8 1px solid; 
	border-radius:50%;
	box-sizing:border-box;
}

.form__privacy {
	width: 100%;
	height: 200px;
	overflow: scroll;
	border:#D8D8D8 1px solid;
	font-size:13px;
	line-height:1.75;
	padding:20px;
	margin-bottom:20px;
	box-sizing:border-box;
}
.form__privacy2 {
	width: 100%;
	font-size:13px;
	line-height:2;
	text-align:left;
}

.form__check {
	overflow:hidden;
	width: 100%;
	text-align:center;
	margin-bottom:60px;
	line-height:1.75;
}


/*関連記事*/
.related__list {
	list-style-type: none;
	margin-top:20px;
}
.related__item {padding-top:20px;}
.related__item:first-child{padding-top:0;}
.related__item::after {
	content: "";
	display: block;
	clear: both;
}
.related__imgLink{
	display:block;
	float:left;
	width:75px;
	height:50px;
	overflow: hidden;
}
.related__imgLink img{
	width:inherit;
	height:inherit;
	vertical-align:bottom;	
}
.related__title{
	width:calc(100% - 85px);
	float:right;
	font-size:14px;
	font-weight:700;
	line-height:1.5;
	margin-bottom:10px;
}
.related__title a:hover {text-decoration:underline;}
.related__title span{
	display: block;
    font-size: 12px;
    color: #7F7F7F;
    font-weight: normal;
}
.related__contents{
	width:calc(100% - 85px);
	float:right;
	font-size:12px;
	line-height:1.5;
}
.related__text{
	font-size:12px;
	line-height:1.75;
}



/*ダブルレクタングル広告リスト*/
.rectangle {
	width:100%;
	overflow:hidden;
	margin:auto;
	padding:0 10px;
	box-sizing:border-box;
	margin-bottom:30px;
	background-color:#F2F2F2;
    background-image: linear-gradient(to top right, #fff 0%, #fff 25%, transparent 25%, transparent 50%, #fff 50%, #fff 75%, transparent 75%, transparent 100%);
    background-size: 6px 6px;
}
.rectangle__item {
    float:left;
	width:50%;
}
.rectangle__title{
	clear: both;
	font-size:12px;
	padding:10px 0;
	display:block;
	font-weight:normal;
	text-align:center;
}
.rectangle__item.rectangle__item-left{width:100%; text-align:center;}
.rectangle__item.rectangle__item-right{display:none;}
.rectangle .adsbygoogle {
	width:336px;
	height: 280px;
	max-width:100%;
}


/*CTA広告エリア*/
.cta {
	position:relative;
	border: #D8D8D8 1px solid;
    width: 100%;
    overflow: hidden;
	box-sizing: border-box;
	margin-bottom: 30px;
}
.cta__title{
	width: 100%;
	background:#EFEFEF;
	text-align:center;
	font-size:20px;
	line-height:2;
	padding:10px;
	box-sizing: border-box;
}
.cta__imgBalloon{
	position:absolute;
	top:50px;
	right:20px;
	width:63px;
	height:74px;
}
.cta__contents{
	padding:30px;
	box-sizing: border-box;
}
.cta__contents img.cta__imgLion{
    float: right;
    width: 75px;
    height: 145px;
    margin-left: 20px;
}
.cta__subtitle{
	margin-bottom: 10px;
    color: #191919;
	font-size: 16px;
    line-height: 1.5;
	margin-top:20px;
}
.cta__list{
	font-size: 14px;
	font-weight: bold;
    color: #B82C2C;
	margin-bottom:20px;
}
.cta__list li{
	margin-bottom:10px;
	line-height: 1.3;
}








/*コピーライトエリアパーツ
/************************************************************/
.author{
	width:100%;
	margin:0 auto;
	color:#ffffff;
	overflow:hidden;
}

.author__logo{
	width:42px;
	height:30px;
	margin:0 auto;
}
.author__logo:hover{animation: flash 1s;}

.author__copyright{
	display:block;
	margin:0 auto;
	font-size:11px;
	padding:20px 0;
	text-align:center;
}

.author__social{
	height:30px;
	margin:20px 0;
	text-align:center;
	margin-left:-10px;
}
.author__social li{
	display:inline-block;
	margin-left:10px;
	transition: 0.2s;
}

.author__social li:hover{
	opacity: 1;
	animation: flash 1s;
}
