@media screen and (max-width:640px) {
/*
 *     トップウィンドウ
 */
#top_box {
	display: none;
}

#top_box .inq {
	position: absolute;
	top: 10px;
	right: 180px;
	width: 160px;
	height: 80px;
	border-radius: 6px;
	border: 1px solid transparent;
	background: #000080;
}
#top_box .inq:hover {
	background: rgba(0,0,128,0.5);
}
#top_box .inq a {
	display: block;
	width: 160px;
	height: 80px;
	font-size: 18px;
	font-weight: bold;
	color: #FFF;
	text-decoration: none;
	text-align: center;
}
#top_box .inq .mail {
	width: 120px;
	margin: 4px auto;
	border-radius: 6px;
	border: 1px solid #FFF;
	color: #FFF;
}
#top_box .inq .tel {
	font-size: 90%;
}
#top_box .inq .tel2 {
	font-size: 60%;
}
s
#top_box .demo {
	position: absolute;
	top: 10px;
	right: 0;
	width: 160px;
	height: 80px;
	border-radius: 6px;
	border: 1px solid transparent;
	background: #ff6c00;
}
#top_box .demo:hover {
	background: rgba(255,108,0,0.50);;
}
#top_box .demo a{
	display: block;
	text-align: center;
	position: absolute;
	margin: auto;
	top : 0;
	bottom: 0;
	width: 100%;
	height: 55px;
	font-size: 18px;
	font-weight: bold;
	text-decoration: none;
	color: #FFF;
}
#top_box .demo p {
}

/**
 *   header部
 *
 */

#sitecopy {
	font-size: 10px;
}

.header_top {
	position: relative;
	width: 100%;
	height: 80px;
	overflow: hidden;
	z-index: 999;
	background: #FFF;
}

.header_logo {	background: url(../images/header/header_logo.svg) no-repeat;
	margin-left: 12px;
	width: 214px;
	height: 60px;
}

.header_logo a{
	display: block;
	width: 214px;
	height: 60px;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
}

.header_inq {
	position: absolute;
	top: 0;
	right: 190px;
	width: 160px ;
	height: 50px;
	border-radius: 6px;
	border: 1px solid #69F;
	background: #6CF;
}
.header_inq p {
	text-align: center;
}

.header_demo {
	position: absolute;
	top: 0;
	right: 0px;
	width: 160px ;
	height: 50px;
	border-radius: 6px;
	border: 1px solid #F3C;
	background: #F9C;
}
.header_demo p {
	text-align: center;
}

/***** ナビメニュー *****/
#toggle {
	display: block;
	position: absolute;
	top: 36px;
	right: 16px;
	width: 34px;
	height: 36px;
	cursor: pointer;
	z-index: 1;
}
#toggle div {
	position: relative;
}
#toggle span {
	display: block;
	position: absolute;
	left: 0;
	width: 100%;
	height: 4px;
	background: #666;
	-webkit-transition: .35s ease-in-out;
	-moz-transition: .35s ease-in-out;
	transition: .35s ease-in-out;
}
#toggle span:nth-child(1) { top: 0; }
#toggle span:nth-child(2) { top: 11px; }
#toggle span:nth-child(3) { top: 22px; }

.open #toggle span:nth-child(1) {
	top: 11px;
	-webkit-transform: rotate(315deg);
	-moz-transform: rotate(315deg);
	transform: rotate(315deg);
}
.open #toggle span:nth-child(2) {
	width: 0;
	left: 50%;
}
.open #toggle span:nth-child(3) {
	top: 11px;
	-webkit-transform: rotate(-315deg);
	-moz-transform: rotate(-315deg);
	transform: rotate(-315deg);
}
/* スライドアニメーション */
.open #top_menuNavi {
	-moz-transform: translateY(580px);
	-webkit-transform: translateY(580px);
	transform: translateY(580px);
}

#top_menuNavi {
	position: absolute;
	top: -500px;
	background: #e60012;
	width: 100%;
	text-align: center;
	padding: 10px 0;
	-webkit-transition: .5s ease-in-out;
	-moz-transition: .5s ease-in-out;
	transition: .5s ease-in-out;
}

#top_menuNavi ul {
	position: static;
	list-style: none;
	right: 0;
	bottom: 0;
	margin: 0;
}

#top_menuNavi li {
	float: none;
	width: 100%;
	position: static;
}

#top_menuNavi li a {
	display: inline-block;
	position: relative;
	width: 100%;
	height: 51px;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
}

#top_menuNavi li a::after {
	content:"";
	position: absolute;
	bottom: 10px;
	left: 0;
	width: 100%;
	height: 2px;
	-webkit-transform: scaleX(0);
	-moz-transform: scaleX(0);
	-ms-transform: scaleX(0);
	-transform: scaleX(0);
	background-color: #FFF;
	-webkit-transition: all 200ms ease;
	transition: all 200ms ease
}

#top_menuNavi li a:hover::after {
	-webkit-transform: scaleX(1);
	-moz-transform: scaleX(1);
	-ms-transform: scaleX(1);
	transform: scaleX(1);
}

#top_menuNavi ul li a.home        { background: url(../images/header/menuNavi01.png) no-repeat center; }
#top_menuNavi ul li a.function    { background: url(../images/header/menuNavi02.png) no-repeat center; }
#top_menuNavi ul li a.achievement { background: url(../images/header/menuNavi03.png) no-repeat center; }
#top_menuNavi ul li a.faq         { background: url(../images/header/menuNavi04.png) no-repeat center; }
#top_menuNavi ul li a.interview   { background: url(../images/header/menuNavi05.png) no-repeat center; }
#top_menuNavi ul li a.company     { background: url(../images/header/menuNavi06.png) no-repeat center; }
#top_menuNavi ul li a.inquiry     { background: url(../images/header/menuNavi07.png) no-repeat center; }
#top_menuNavi ul li a.demo_url    { background: url(../images/header/menuNavi08.png) no-repeat center; }


/**
 *   footer部
 *
 */

.footer_menu {
	margin: 0 auto;
	text-align: center;
}
.footer_menu:after {
	content: "";
	clear: both;
}
.footer_menu li {
    float: left;
    line-height: 2;
    width: 50%;
	box-sizing: border-box;
}
.footer_menu li a {
	display: block;
	color: #1d3994;
	padding: 5px 0;
}
.site-info p {
	margin: 5px auto;
	font-size: 12px;
	color: #000;
	text-align: center;
}
.site-info p.copyright {
	margin: 5px auto 15px;
}

/*
 *     pankuzu
 *
 */

ul.pankuzu {
	margin: 0;
	padding: 4px;
	line-height: 1.2;
	background: #FFF;
	font-size: 10px;
}

ul.pankuzu li {
	display: inline-block;
	overflow: hidden;
}

ul.pankuzu li:after {
	content: "＞";
	padding: 0 12px;
}

ul.pankuzu li.last:after {
	content: "";
	padding: 0 12px;
}

/*
 *     index
 *
 */

.top_img {
	margin-top: 0;
}

.label_box {
	margin: 15px 0 0 15px;
	padding: 4px;
	width: 100px;
	border-radius: 6px;
	font-weight: bold;
	background: #39F;
	color: #FFF;
	text-align: center;
	text-decoration: none;
}
.label_box:hover {
	background: #AACDEC;
}

.top_note {
	font-size: 14px;
	text-align: right;
}

.table_box {
	padding: 0 0 10px;
}

.table_box h3 {
	margin: 0 auto 15px;
	font-size: 26px;
	font-weight: bold;
	text-align: center;
}

table.price_box {
	display: block;
	border-collapse: collapse;
	width: 100%;
	margin: auto;
	font-size: 12px;
	border: 1px solid #ccc;
}

table.price_box strong {
	color: #F00;
	font-size:150%;
}
 
table.price_box th, table.price_box td {
    width: 155px;
	height: 60px;
	line-height: 60px;
	border-right: 1px solid #ccc;
}
table.price_box tr {
}
table.price_box th.jm_plan {
	line-height: 25px !important;
}
table.price_box th.jm_plan span{
	font-size: 60%;
}

table.price_box thead {
	display: inline-block;
	float: left;
}
table.price_box thead tr {
	color: #0D6EBB;
}
table.price_box thead tr th {
	display: block;
	width: auto;
	text-align: center;
	vertical-align: middle;
}
table.price_box thead tr th:nth-child(1) { background: #FFFFFF; }
table.price_box thead tr th:nth-child(2) { background: #C9C9C9; font-size: 150%; }
table.price_box thead tr th:nth-child(3) { background: #B2E0F8; font-size: 150%; }
table.price_box thead tr th:nth-child(4) { background: #C3D600; font-size: 150%; }

table.price_box tbody {
	display: block;
	width: auto;
	overflow-x: scroll;
	white-space: nowrap;
	left: 468px;
}
table.price_box tbody tr {
	display: inline-block;
	margin: 0 -1px;
}

table.price_box tbody tr td {
	display: block;
	background: #FFFFFF;
	color: #261B17;
	text-align: center;
}
table.price_box tbody tr td:nth-child(1) { background: #FFFFFF; color: #0D6EBB; font-size: 125%; }
table.price_box tbody tr td:nth-child(2) { background: #EFEFEF; }
table.price_box tbody tr td:nth-child(3) { background: #E9F6FE; }
table.price_box tbody tr td:nth-child(4) { background: #EBF4D9; }
table.price_box tbody tr:last-child { border: none; }

.jm_caution {
	font-size: 8px; font-weight: normal; color: #D75C2F;
}
.note {
	margin: 0 20px;
	font-size: 80%;
}


/*     特長項目     */
.feature_box {
	margin: 10px auto;
	width: 100%;
}

.feature_box li {
	margin: auto;
	width: 280px;
	text-align: center;
}

.feature_list {
	position: relative;
	margin: 12px auto;
	padding: 10px;
	border: 1px solid transparent;
	border-radius: 12px;
	text-align: left;
	box-sizing: border-box;
}
.feature_box li:nth-child(1) .feature_list { background: rgba(145, 195,   0, 0.5); }
.feature_box li:nth-child(2) .feature_list { background: rgba(234, 132,   0, 0.5); }
.feature_box li:nth-child(3) .feature_list { background: rgba(255,  18,  18, 0.5); }
.feature_box li:nth-child(4) .feature_list { background: rgba(207, 203,   4, 0.5); }
.feature_box li:nth-child(5) .feature_list { background: rgba(  0, 119, 191, 0.5); }
.feature_box li:nth-child(6) .feature_list { background: rgba(115, 115, 115, 0.5); }

.feature_title {
	margin: 5px 0 15px 0;
	font-size: 20px;
	font-weight: bold;
	color: #FFF;
	text-align: center;
}

.feature_title span{
	font-size: 30px;
	font-weight: bold;
	font-style: normal;
	color: #000;
}

.cost    { font-size:25px; color:#78A11B; }
.speedy  { font-size:25px; color:#C26F09; }
.eazy    { font-size:25px; color:#C81E19; }
.support { font-size:25px; color:#ABA915; }
.smart   { font-size:26px; color:#08619B; }
.package { font-size:25px; color:#636363; }

.feature_content {
	font-size: 12px;
	font-weight: normal;
	color: #000;
}

.feature_content p{
	margin: 0;
}

.feature_subtitle {
	font-size: 12px;
	font-weight: bold;
	color: #540202;
	letter-spacing: 2px;
}
.feature_subtitle:before {
	content: "☆";
}

.feature_cost {
	margin: 20px 0;
	text-align: right;
	font-size: 16px;
	font-weight: normal;
	color: #000;
}

.feature_cost p{
	margin: 0;
}

.feature_cost span{
	margin-left: .5em;
	font-size: 24px;
	font-weight: bold;
	color: #E42C2C;
}

.clr {
	clear: both;
}

.cost_link {
	position: absolute;
	margin: 0;
	right: 15px;
	bottom: 15px;
}

.icon01, .icon02, .icon03, .icon04, .icon05, .icon06 {
	margin: 0 auto;
	width: 80px;
}

.box {
	margin: 10px auto 25px;
	padding: 0;
	border: 1px solid #ccc;
	border-radius: 12px;
}

.intro {
	margin: 16px auto;
	padding: 12px;
	border: 1px solid #ccc;
	border-radius: 12px;
}

.contents_title {
	position: relative;
	margin: 15px 10px;
	padding-left: 1em;
	font-size: 20px;
	font-weight: bold;
	color: #0e9fd0;
}

.contents_title:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 0.5em;
	height: 1.5em;
	background-color: #0e9fd0;
}

.contents_box {
	margin: 0 auto;
}

.jirei_contents {
	overflow: hidden;
}
.jirei_contents li {
	float: left;
	width: 50%;
	text-align: center;
}
.jirei_contents li img{
	width: 100px;
	height: 120px;
	margin-bottom: 10px;
}
.jirei_detail {
	text-align: right;
	padding-right: 25px;
}

.news_contents {
	width: 100%;
	overflow: hidden;
}

.news_contents ul {
	margin: 5px 10px;
	padding: 0;
}

.news_contents li {
	padding: 10px 0;
	line-height: 1.5;
	font-size: 12px;
	border-bottom: #999 1px dotted;
}

.news_contents li div.news_date {
	display: block;
	margin: 0;
}

.fb_contents {
}

/*
 * 各ページ共通
 *
 */

#container {
	margin: 0 10px;
}

.contents {
	margin: 25px auto;
	padding: 0 20px;
}

.center {
	text-align: center;
}

h1.title {
	position: relative;
	margin: 0 0 1em 1em;
	background: none;
	font-size: 20px;
	font-weight: bold;
	line-height: 1.2;
	color: #26a1dc;
}

h1.title:before {
	content: "";
	position: absolute;
	background-color: #26a1dc;
	width: 0.5em;
	height: 1.2em;
	left: -1em;
	top: 0;
}


p.top_text {
	margin: 10px 12px;
	padding: 0;
}

h2.title {
	position: relative;
	margin: 0 0 1em 1em;
	background: none;
	font-size: 18px;
	font-weight: bold;
}

h2.title:before {
	content: "";
	position: absolute;
	background-color: #26a1dc;
	width: 0.5em;
	height: 1.2em;
	left: -1em;
	top: 0;
}

h2.title p {
	line-height: 1.2;
	color: #26a1dc;
}


/*
 * 機能一覧
 *
 */

.func_target {
	text-align: center;
	margin: 1em auto;
	font-size: 12px;
}

.func_box {
	margin: 20px auto;
}

.func_table {
	border-collapse: collapse;
}

.func_table th {
	padding: 0.5em;
	background: #646464;
	color: #FFF;
}
.func_table td {
	padding: 0.5em;
	background: #eaeaea;
	border: 1px dotted #e5e5e5;
}
.func_table th, .func_table td {
	display: block;
	width: auto;
}
/*
 * 制作実績
 *
 */
 
ul.archievement_box {
	text-align: center;
}

ul.archievement_box li {
	display: inline-block;
	position: relative;
	margin: 0 10px 50px;
	width: 100px;
	height: 120px;
	text-align: center;
}

ul.archievement_box img {
	width: 100px;
	height: 120px;
}

.jirei_ribon {
	position: absolute;
	margin: 0 auto 8px;
	top: 0;
	left: 0;
	width: 1.5em;
	height: 125%;
	line-height: 1.2;
	
	box-shadow: 4px 0px 8px 0px rgba(0,0,0,0.5);
	-webkit-box-shadow: 4px 0px 8px 0px rgba(0,0,0,0.5);
	
	background: goldenrod;
	background-color: #eab92d;
	background-image: -webkit-gradient(linear, left top, left bottom, from(#eab92d), to(#c79810));
	background-image: -webkit-linear-gradient(top, #eab92d, #c79810);
	background-image: -moz-linear-gradient(top, #eab92d, #c79810);
	background-image: -ms-linear-gradient(top, #eab92d, #c79810);
	background-image: -o-linear-gradient(top, #eab92d, #c79810);
	background-image: linear-gradient(to bottom, #eab92d, #c79810);filter:progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr=#eab92d, endColorstr=#c79810);
	
    -ms-writing-mode: tb-rl; /* for MS IE8+ */
    -webkit-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
}

.jirei_ribon p {
	margin: 0;
	padding: 5px;
	font-size: 7px;
	color: #FFF;
}

/*
 * よくある質問
 *
 */

.faq_target {
	text-align: center;
	margin: 1em auto;
	font-size: 12px;
}
.faq_box {
	margin: 20px auto;
	width: 100%;
}
.faq_str {
	padding: 24px 0 0 0;
	font-size: 14px;
}
.faq_str dt {
	position: relative;
	margin: 0 0 15px 0;
	padding-left: 2.5em;
	line-height: 26px;
	font-weight: bold;
}
.faq_str dt:before {
	content: "";
	position: absolute;
	background: url(../images/contents/qa_q.png) no-repeat;
	left: 0;
	width: 26px;
	height: 26px;
}
.faq_str dd {
	position: relative;
	margin: 0 0 30px 0;
	padding: 0 0 15px 2.5em;
	border-bottom: solid 1px #e5e5e5;
	line-height: 1.5;
}
.faq_str dd:before {
	content: "";
	position: absolute;
	background: url(../images/contents/qa_a.png) no-repeat;
	left: 0;
	width: 26px;
	height: 26px;
}


/*
 * 会社概要
 *
 */

.corp_outline {
	margin: 0 auto;
	width: 100%;
}
.corp_table {
	border-collapse: collapse;
	border-left: 1px solid #66a4dd;
	border-top: 1px solid #66a4dd;
	margin-bottom: 30px;
	width: 100%;
	font-size: 14px;
}
.corp_table th {
	display: block;
	padding: 12px;
	background: #e9f5f9;
	border-top: none;
	border-right: 1px solid #66a4dd !important;
	border-bottom: 1px solid #66a4dd !important;}
.corp_table td {
	display: block;
	padding: 12px;
	border-top: none;
	border-right: 1px solid #66a4dd !important;
	border-bottom: 1px solid #66a4dd !important;
}
.corp_table ol {
	margin: 0;
	padding: 0;
	list-style: none;
}

/*
 * page top
 *
 */

#pagetop {
	text-align: right;
}

#pagetop a{
	display: inline-block;
	margin: 10px;
	padding: 2px;
	font-size: 14px;
	border: 1px solid #a3a3a3;
	background-color: #fff;
	color: #333;
	text-decoration: none;
}

#pagetop a:hover {
	background: #ccc;
}


/*
 * お問い合わせ
 *
 */
.inq_text {
	margin: 24px 6px;
	font-size: 12px;
}

span.hissu {
	color: #F00;
}

.inq_table {
	margin: 0 auto;
	width: auto;
	border: 1px solid #ccc;
}

.inq_table th {
	display: block;
	width: 100%;
}

.inq_table td {
	display: block;
	width: auto;
	border-bottom: 1px dotted #ccc;
}
.inq_table td.address p {
	margin: 10px 0;
}

.inq_table input,
.inq_table textarea {
}
#zip1 {
	width: 80px;
	height: 24px;
}
#zip2 {
	width: 100px;
	height: 24px;
}

.inq_accept_box {
    margin: 0 auto;
    padding: 5px;
}

p.inq_accept {
	margin: 10px auto;
	text-align: center;
	font-size: 14px;
}

p.inq_submit {
	margin: 10px auto;
	text-align: center;
	font-size: 16px;
	border-radius: 8px;
}

p.inq_submit input{
    background-color: #000080;
    color: #FFF;
}
p.inq_submit input:hover{
    background-color: rgba(0, 0, 128, 0.5);
    color: #FFF;
}

p.email_box {
	margin: 6px 0;
}
p.email_box input {
	width: 210px;
}
a.inq_accept_link {
	font-size: 80%;
}
.inq_note {
	margin: 0 10px;
	font-size: 80%;
}

.wpcf7-form {
    width: auto;
}
.wpcf7-form input, 
.wpcf7-form textarea {
    width: auto;
}
.form_width input {
    width: auto;
}

/*
 * 過去のおしらせ一覧
 *
 */
.news_box {
	margin: 0 auto;
}

.news_box ul {
	margin: 0 20px;
}

.news_box li {
	padding: 10px 0;
	line-height: 1.5;
	font-size: 12px;
	border-bottom: #999 1px dotted;
}

div.news_date {
    display: block;
}


/**
 *  デモサイト
 *
 */

.demo_top {
	text-align: center;
}
.demo_top img {
	width: 100%;
}

.demo_cont {
}

.demo_cont p {
	margin: 12px 0;
	font-size: 14px;
}

.demo_cont small {
	font-size: 65%;
}

.demo_user_scr, .demo_manage_scr {
	margin: 25px auto 40px;
	text-align: center;
	
}

.demo_user_scr, .demo_manage_scr  a {
	display: block;
}

.demo_writing {
	margin: 60px auto;
}

/**
 *  プライバシーポリシー
 *
 */
.privacy_sm_table {
	width: 25%;
}
.privacy_sm_table02 {
	width: 6%;
}
.privacy dl {
    margin-top: 20px;
    padding: 0 3px 0 10px;
}
 