/* CSS Document */
@charset "utf-8";


/*===============================================
画面の横幅が640pxまで
===============================================*/
@media screen and (max-width:640px){
	body {
		width:100%;
	}

	img{
		max-width: 100%;
		height: auto;
		width /***/:auto;　
	}

	a ,
	a:hover ,
	a:visited {
		text-decoration:none;
	}


	/* info_area */

	.info_area {
		height:auto;
		background:none;
		border-top:5px solid #C8161F;
	}

	.info_box {
		width:100%;
		margin:0 auto;
	}

	.logo {
		width:40%;
		margin:0 auto;
		padding:15px 0;
		float:none;
		text-align:center;
	}

	.logo img {
	}

	.info_text {
		display:none;
	}

	.info_tel {
		display:none;
	}

	.info_contact {
		display:none;
	}


	/* tel */

	.sp_tel_box {
		display:block;
		padding:15px 20px 15px 20px;
	}

	.sp_tel_btn a {
		padding:5px 10px;
		background:#C8161F;
		border-radius:25px;
		display:block;
		text-align:center;
	}

	.sp_tel_number {
		display:block;
		font-size:16px;
		color:#FFF;
		line-height:140%;
	}

	.sp_tel_text {
		display:block;
		font-size:12px;
		color:#FFF;
		line-height:130%;
	}


	/* navi */

	.navi {
		width:100%;
		height:100%;
		position:fixed; top:0; right:0;
		z-index:90;
		text-align:right;
		pointer-events:none;
	}

	.navi_title a {
		padding:15px;
		background:#C8161F;
		display:inline-block;
		text-align:center;
		pointer-events:auto;
	}

	.navi_title_acc {
	}

	.navi_item_box {
		width:80%;
		height:100%;
		position:absolute; top:0; right:-80%;
		overflow-y:scroll;
		z-index:100;
		pointer-events:auto;
	}

	.navi_item a {
		padding:8px 0 8px 35px;
		border-bottom:1px solid #FFF;
		background:#C8161F url(../sp_images/navi/item_bg.png) no-repeat 15px 13px;
		background-size:7px;
		display:block;
		font-size:14px;
		color:#FFF;
		line-height:150%;
		text-align:left;
	}

	.navi_category {
		padding:8px 0 8px 35px;
		border-bottom:1px solid #FFF;
		background:#C8161F url(../sp_images/navi/item_bg.png) no-repeat 15px 13px;
		background-size:7px;
		display:block;
		font-size:14px;
		color:#FFF;
		line-height:150%;
		text-align:left;
	}

	.navi_under a {
		padding:8px 0 8px 35px;
		border-bottom:1px solid #FFF;
		background:#F2F2F2;
		display:block;
		font-size:14px;
		color:#333;
		line-height:150%;
		text-align:left;
	}

	.navi_back_btn a {
		padding:8px 0 8px 13px;
		border-bottom:1px solid #FFF;
		background:#C8161F;
		display:block;
		font-size:14px;
		color:#FFF;
		line-height:150%;
		text-align:left;
	}

	.navi_back_btn a img {
		vertical-align:top;	
	}

	.bottom_navi {
		padding:5px 0;
	}

	.bottom_navi_home {
		width:33%;
		float:left;
	}

	.bottom_navi_home a {
		padding:5px 0;
		border-right:1px solid #CCC;
		display:block;
		font-size:14px;
		color:#333;
		line-height:150%;
		text-align:center;
	}

	.bottom_navi_menu {
		width:34%;
		float:left;
	}

	.bottom_navi_menu a {
		padding:5px 0;
		border-right:1px solid #CCC;
		display:block;
		font-size:14px;
		color:#333;
		line-height:150%;
		text-align:center;
	}

	.bottom_navi_top {
		width:33%;
		float:left;
	}

	.bottom_navi_top a {
		padding:5px 0;
		display:block;
		font-size:14px;
		color:#333;
		line-height:150%;
		text-align:center;
	}


	/* wrapper */

	.wrapper {
		width:100%;
		margin:0 auto;
	}

	.main_image_area {
		display:none;
	}

	.sp_main_image {
	}

	.basic_text {
		padding:15px 15px 0 15px;
		font-size:13px;
		line-height:150%;
	}

	.contents_image {
		display:none;
	}

	.sp_title {
		margin:20px 10px 0 10px;
		padding:5px 10px;
		background:#C8161F;
		border-radius:10px;
		font-size:16px;
		color:#FFF;
		line-height:150%;
		text-align:center;
	}

	.sp_tv_box {
		margin:10px 10px 0 10px;
		padding:0 15px 15px 15px;
		background:url(../sp_images/tv/bg.png) repeat;
	}

	.sp_tv_image {
		padding-top:15px;
		text-align:center;
	}

	.three_line_box {
		padding:20px 15px 0 15px;
	}

	.three_line_item_1,
	.three_line_item_2,
	.three_line_item_3 {
		width:94%;
		height:auto;
		margin-top:15px;
		padding:15px 3%;
		margin-right:0;
		float:none;
		background:#FFF;
	}

	.three_line_item_1 {
		margin-top:0;
	}

	.three_line_text {
		padding:10px 0 0 0;
		font-size:13px;
		line-height:150%;
	}

	.three_line_sp_title {
		font-size:17px;
		color:#111;
		line-height:150%;
		font-weight:bold;
		text-align:center;
	}

	.three_line_sp_thum {
		padding-top:10px;
		text-align:center;
	}

	.contact_box {
		display:none;
	}

	.category_box {
		width:94%;
		margin:20px auto 0 auto;
		padding:0 3% 20px 3%;
		background:url(../images/category/bg.png) repeat-y;
	}

	.category_box_title {
		padding:20px 15px 0 15px;
		text-align:center;
	}

	.category_inner {
		padding:0;
		text-align:center;
	}

	.category_item {
		width:90%;
		height:auto;
		min-height:290px;
		padding:10px 2%  0 2%;
		margin:20px 3% 0 3%;
		float:left;
		background:url(../images/category/item_bg.png);
	}

	.category_image {
	}

	.category_title {
		padding-top:10px;
		font-size:16px;
		color:#28527A;
		line-height:150%;
		font-weight:bold;
		text-shadow:-1px -1px 2px #FFF, 1px -1px 2px #FFF, 1px 1px 2px #FFF, -1px 1px 2px #FFF;
		text-align:left;
	}

	.category_text {
		padding-top:10px;
		font-size:13px;
		line-height:150%;
		text-align:left;
	}

	.voice_sp_box {
		padding:15px;
		background:url(../sp_images/voice/bg.png) repeat;
	}

	.voice_sp_image {
		text-align:center;
	}

	.voice_sp_title {
		padding:15px 30% 0 30%;
		text-align:center;
	}

	.voice_sp_item {
		padding-top:10px;
		text-align:center;
	}

	.qa_sp_box {
		padding:5px 15px 0 15px;
	}

	.qa_sp_item {
		padding:15px 10px 10px 10px;
		border-bottom:1px dashed #E2DBC8;
	}

	.qa_sp_title {
		font-size:14px;
		color:#111;
		line-height:150%;
	}

	.qa_sp_text {
		padding-top:10px;
		font-size:13px;
		color:#BA181E;
		line-height:150%;
	}

	.system_sp_box {
		padding:5px 15px 0 15px;
	}

	.system_sp_item {
		padding:15px 10px 10px 10px;
		border-bottom:1px dashed #E2DBC8;
	}

	.system_sp_title {
		font-size:14px;
		color:#BA181E;
		line-height:150%;
	}

	.system_sp_text {
		padding-top:10px;
		font-size:13px;
		color:#111;
		line-height:150%;
	}

	.top_marker_in {
		display:none;
	}


	/* category */

	.category_link_box {
		padding:0 15px 30px 15px;
	}


	/* company */

	.company_image {
		display:none;
	}

	.company_box {
		padding:20px 15px 60px 15px;
		display:block;
	}

	.company_title {
		padding:1px 0 0 25px;
		background:url(../images/company/title_bg.gif) repeat;
		border-radius:5px;
		font-size:15px;
		color:#FFF;
		line-height:45px;
		font-weight:bold;
	}

	.company_table_box {
		padding:20px 0 0 0;
	}


	/* thanks */

	.thanks_text {
		padding:30px;
		font-size:14px;
		line-height:150%;
		text-align:center;
	}


	/* footer */

	.footer_navi {
		display:none;
	}

	.copyright {
		background:#E2DBC8;
		padding:3px 0;
		font-size:12px;
		color:#111;
		line-height:150%;
		text-align:center;
	}

	.bottom_btn_box {
		width:100%;
		background:rgba(0,0,0,0.8);
		position:fixed; bottom:0; right:0;
		z-index:80;
	}

	.bottom_btn {
		padding:10px 15px;
	}

	.bottom_btn a {
		padding:5px 10px;
		background:#008FF7;
		border-radius:20px;
		display:block;
		font-size:16px;
		color:#FFF;
		line-height:150%;
		text-align:center;
	}

	/* table */

	.company_table_box table {
		font-size:13px;
	}

	.company_table_box table th,
	.company_table_box table td {
		padding:8px 2%;
	}

	.company_table_box table th {
		text-align:left;
	}

	tbody tr{
		margin-bottom:5px;
        display:block !important;
        border:none !important;
    }
    tbody th,
    tbody td{
    	width:96% !important;
        display:list-item;
        list-style-type:none;
    }
    tbody td{
    	border-top:none !important;
    }


    #zasMailForm{
		padding:20px 15px 30px 15px !important;
	}

	#zasMailForm th,
	#zasMailForm td{
		padding:5px 2% !important;
	}
	#zasMailForm th{
		font-weight:normal !important;
	}

	#zasMailForm input[type='text'],
	#zasMailForm textarea{
		width:95% !important;
	}

	#zasMailForm input[type='button'],
	#zasMailForm input[type='reset'],
	#zasMailForm input[type='submit']{
		-webkit-appearance:none;
		margin:5px !important;
	}


	/* margin,padding */

	.sp_pb_30 { padding-bottom:30px;}
	
	.banner_link {
	clear:both;
	text-align:center;
	}
	.banner_link ul {
	list-style:none;
		margin:0px 10px;
		padding:0px;
	}
	.banner_link ul li {
		margin:0px 0px 0px 0px;
		padding:0px;
	}

ul#shuffle {
	display:none;
}

ul#shuffle_sp {
	display:block;
}
ul#shuffle_sp {
	font-size:1.4em;
}
ul#shuffle_sp li {
	margin-bottom:1em;
	display:block;
	border:5px solid #D80000;
	padding:0.6em 0.3em 0;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
}
ul#shuffle_sp li a {
	font-size:1.8em;
	font-weight:bold;
	line-height:1.6em;
	color:#ff6600;
}
ul#shuffle_sp li a span {
	color:#D80000;	
}
#catch {
	text-align:center;
	font-size:1.2em;
	margin:0px 0px 1em 0px;
	color:#D80000;
	text-shadow:1px 0 1px #333333;
	padding:0px;
	font-weight:bold;
}

a.maillink {
	font-size:14px !important;
}
a.maillink {
	display:block !important;
	color:#FFFFFF !important;
	background-color:#28527A;
	padding:7px 10px !important;
	margin:0px 0px 6px !important;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
}
}

