@charset "utf-8";
/**
 *
 * 基本 CSS
 *
 **/


@media screen and (min-width: 880px) {
	/*  */
	
}
@media screen and (min-width: 768px) {
	/* PC向け */
	.sp_only {
		display: none;
	}
	.btn_menu_sp {
		display: none;
	}
	.g_navi_sp {
		display:none;
	}
	.headline {
		text-align: center;
		padding-top:17px;
	}
	.snavi_sp {
		display: none;
	}
	.banner_slider_sp {
		display: none;
	}
	.dcm_community_sp {
		display: none;
	}
	.sp_banner_link,
	.sp_banner_link2 {
		display: none;
	}
	.company_info_sp {
		display: none;
	}
	#topics h3 img,
	.dcm_community_sp h3 img,
	.company_info_sp h3 img {
		display: none;
	}
	.pagetop_sp {
		display: none;
	}
	
	.bg_snavi {
		background-color:#ffffff;
		padding: 0 15px 10px 15px;
		width:850px;
		text-align:center;
	}
	
	/* 店舗 */
	.map_btn_pc select {
		/* width: 100%; */
		min-width: 300px;
		-webkit-appearance: button;
		-moz-appearance: button;
		appearance: button;
		background:#EEE url(/files/user/images/shop/bg_select_sp.jpg) repeat-x;
		background-position: left top;
		background-size:100% auto;
		min-height: 28px;
		line-height: 28px;
		font-size: 14px;
		text-indent: 1em;
	}
	@-moz-document url-prefix() { /* for firefox */
		.map_btn_pc select {
			background:none;
			background-color: #FFF;
		}
	}
	
	/* 店舗一覧 */
	.district .desc {
		font-weight: normal;
	}
	.sp_desc {
		display: none;
	}
	.google_map iframe{
		display :inline-block;
		width: 700px;
		height: 500px;
		margin: 40px auto;
	}
	.btm_shop {
		border-bottom: dotted 1px #acacac;
		padding-bottom: 30px;
		margin-left: 10px;
	}
	.btm_shop_sp {
		display: none;
	}
	.shop_details {
		margin: 0;
	}
}
@media screen and (max-width: 767px) {
	/* スマートフォン向け */
	.pc_only {
		display: none;
	}
	body {
		color: #3C3C3C;
		font-size: 14px;
		/* font-family: "ＭＳ Ｐゴシック", Osaka, "小塚ゴシック Pro R"; */
		font-family: 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
		
		background: #1D2788;
		line-height: 1.5em;
		margin: 0;
		padding: 0;
		text-align: center;
		background-color: #FFFFFF;
	}
	img {
		max-width: 100%!important;
	}
	
	#container {
		width: 100%;
		margin: 0;
		text-align: left;
	}
	
	/* メニュー */
	
	
	/* ヘッダー */
	#header {
		width: 100%;
		height: auto;
		margin: 0;
		padding: 0;
		background-image: none;
	}
	#header ul {
		width: 100%;
		margin: 0 auto;
		padding: 0;
		background: none;
	}
	#header_body {
		text-align: left;
		color: #9a9da0;
		background-color: #FFFFFF;
		background-image: none;
		width: 100%;
		height: auto;
		padding: 0;
		margin: 0;
	}
	#headertop {
		width: auto;
		height: auto;
		margin: 0 0 0 0;
		padding: 17px 10px 12px 18px;
		position: relative;
		overflow: visible;
		z-index:10001;
	background-color: #fdda72;
	border-radius: 0;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    -ms-border-radius: 0;
	}
	
.cpmark {
		float: none;
		width: 100%;
	}

	.cpmark a {
		display :inline;
	}
	.cpmark img {
/*		max-width: 63.97694% !important;
		max-width: 70% !important;*/
      width: 222px;
	}
    .cpmark img.pc{display:none;}
	.cpmark img.sp{display:block;}
	.slogan {
		display: none;
	}
	
	.btn_menu_sp {
		position: absolute;
		top: 10px;
		right: 10px;
		cursor: pointer;
		/* width: 10%; */
		width: 32px;
	}
	.btn_menu_sp img {
		width: 100%;
	}
	#overlay{
		z-index:10000;
		display:none;
		position:fixed;
		top:0;
		left:0;
		width:100%;
		height:120%;
		background-color:rgba(0,0,0,0.75);
	}
	.g_navi_sp {
		display : none;
		position: absolute;
		left: 0;
		top: 100%;
		width: 100%;
	}
	.g_navi_sp ul {
		list-style: none;
		background:none;
		margin: 0;
		padding: 0;
		width: 100%;
	}
	.g_navi_sp ul li {
		float: none !important;
		list-style: none;
		padding: 15px 0;
		display :block;
	}
	.g_navi_sp ul li a:before {
		/* content: "　?　"; */
	}
	.g_navi_sp ul li div,
	.g_navi_sp ul li a,
	.g_navi_sp ul li a:link,
	.g_navi_sp ul li a:hover{
		color: #FFFFFF !important;
		font-weight: bold;
		font-size: 1.5em;
		line-height: 1.5em;
		cursor: pointer;
		padding-left: 0.5em;
	}
	.g_navi_sp ul li a:hover {
		text-decoration: none;
	}
	
	.g_navi_sp ul li ul {
		display: none;
	}
	.g_navi_sp ul li ul li {
		cursor: pointer;
		padding-left: 1.5em;
		border-bottom: dashed 1px #FFFFFF;
	}
	/*
	.g_navi_sp ul li ul li:first-child {
		border-top: dashed 1px #FFFFFF;
	}
	*/
	.g_navi_sp ul li ul li a,
	.g_navi_sp ul li ul li a:link,
	.g_navi_sp ul li ul li a:hover {
		font-weight: normal;
		font-size: 1.2em;
		line-height: 1.5em;
	}
	
	
	#g_navi {
		display: none;
	}
	.headline {
		display: block;
		padding: 17px 0 17px;
		text-align: center;
		font-size: 1.2em;
		line-height: 2em;
	}
	
	
	.bg_mainvisual {
		width: 100%;
		height: auto;
		text-align: center;
	}
	
	.snavi_sp {
		background: url(/files/user/images/body/bg_snavi_sp.jpg) repeat-x left top;
		color: white;
	}
	.snavi_sp table {
		width: 100%;
		border-collapse: collapse;
	}
	.snavi_sp table tr td {
		width: 50%;
		text-align: center;
		font-size: 1.2em;
		line-height: 1.5em;
		font-weight: bold;
		padding: 10px 0;
		vertical-align: middle;
	}
	.snavi_sp table tr td:first-child {
		border-right: solid 1px #FFFFFF;
	}
	.snavi_sp table tr td a,
	.snavi_sp table tr td a:link{
		color:#FFFFFF;
	}
	.snavi_sp table tr td a:hover {
		text-decoration: none;
	}
	/*
	.snavi_sp ul {
		list-style:none;
		color: white;
	}
	.snavi_sp ul li {
		display :inline-block;
		width: 49%;
		text-align: center;
		font-size: 1.2em;
		line-height: 1.5em;
		font-weight: bold;
		padding: 15px 0;
		color: white;
	}
	.snavi_sp ul li:first-child {
		border-right: solid 1px #FFFFFF;
	}
	.snavi_sp ul li a,
	.snavi_sp ul li a:link {
		color: white;
	}
	.snavi_sp ul li a:hover {
		text-decoration: none;
	}
	*/
	.navi_space {
		width: 100%;
		height: 0;
	}
	.white_arrow {
		color: white;
		font-size: 0.4em;
		line-height: 1.5em;
		vertical-align: middle;
		padding-right: 1.5px;
	}	
	.banner_slider_pc {
		display: none;
	}
	.banner_slider_sp {
		padding: 10px 15%; /* prev nextのため */
	}
	.bx-wrapper .bx-viewport {
		padding-top:1.2%;
	}
	.banner_slider_sp .slide img{
		margin: 0 auto;
		width: 100%;
	}
	.pc_banner_link {
		display: none;
	}
	.sp_banner_link2 {
		width: 72%;
		margin: 0 auto;
	}
	.sp_banner_link2 img {
		width: 100%;
	}
	.sp_banner_link2 a{
		display: block;
		margin: 10px 0;
	}
	
	
	#contents {
		width: 100%;
		margin: 0;
		padding: 0;
	}
	#contents_top {
		background-color: #FFFFFF;
		background-image: none;
		width: 100%;
		height: 0;
	}
	#top_contents {
		width: 100%;
		margin: 0;
	}
	#top_mainbj {
		width: 100%;
	}
	
	#snavi {
		display:none;
	}
	
	#main_contents {
		float: none;
		clear: both;
		width: 100%;
		margin: 0;
		padding: 0;
	}
	
	#main_module, #sub_module2, #sub_module7 {
		margin-right: 0;
	}
	
	#news_topcs {
		width: 95%;
		text-align: left;
		border: 1px solid #E10008;
		margin: 15px auto;
		padding: 0;
		height: 140px;
		overflow: auto;
		font-size: 14px;
		line-height: 30px;
	}
	#news_topcs .title {
		text-align: center;
		font-weight: bold;
		margin: 7px 0;
		font-size: 1em;
	}
	.news_box_pc {
		overflow: visible;
	}
	#news_topcs dl {
		width: 95%;
		margin: 0 auto 5px;
    	line-height: 1.3;
	}
  
	#news_topcs dt {
        float: none;
	width: auto;
		text-align: left;
	}
	#news_topcs .date {
		font-size: 14px;
	}
	#news_topcs dd {
	float: none;
	width: auto;
	}
	
	#topics h3 div:before,
	.dcm_community_sp h3 div:before,
	.company_info_sp h3 div:before {
		content: "　";
	}
	#topics h3,
	.dcm_community_sp h3,
	.company_info_sp h3 {
		position: relative;
		width: 100%;
		height: auto;
		/*
		padding: 15px 0;
		font-size: 20px;
		line-height: 30px;
		font-weight: bold;
		text-align: left;
		*/
		margin:0;
		padding: 0;
		cursor: pointer;
	}
	#topics h3 img,
	.dcm_community_sp h3 img,
	.company_info_sp h3 img{
		width: 100%;
	}
	#topics h3 div,
	.dcm_community_sp h3 div,
	.company_info_sp h3 div {
		position: absolute;
		width: 100%;
		height: 30px;
		font-size: 17px;
		line-height: 30px;
		top: 50%;
		margin-top: -15px;
		font-weight: bold;
		text-align: left;
	}
	#topics h3 {
		color: #FFFFFF;
		/* background-color: #f40015; */
	}
	.dcm_community_sp h3{
		color: #FFFFFF;
		/* background-color: #245692; */
		
	}
	.company_info_sp h3 {
		color: #000000;
		/*
		background-color: #FAFAFA;
		border-top: solid 1px #CCCCCC;
		border-bottom: solid 1px #CCCCCC;
		*/
	}
	
	#topics {
		width: 100%;
		height: auto !important;
		padding-bottom: 0;
		margin: 15px auto;
		text-align: left;
	}
	#topics ul {
		width: 100%;
		/* height: 150px !important; */
		height: 375px !important;
		margin-top: 7px;
		overflow: hidden;
		list-style: none;
		padding: 0;
		padding-bottom: 7px;
		overflow: scroll;
		overflow-x: hidden;
	}
	#topics li {
		width: 95%;
		height: auto;
		min-height: 65px;
		display: block;
		margin: 6px auto;
		padding: 0 0 6px;
		border-bottom: dashed 1px #acacac;
		clear:both;
	}
	#topics li .img_ {
		/*
		float: left;
		display: block;
		*/
		float: none;
		display: inline-block;
		margin: 5px 5px 5px 0;
		width: 15%;
		height: auto;
		min-height: 55px;
	}
	#topics li .img_ img {
		width: auto;
	}
	#topics li .text_ {
		/*
		float: left;
		display: block;
		*/
		float: none;
		display: inline-block;
		margin: 3px 0 0 5px;
		/* line-height: 14px; */
		line-height: 12px;
		font-size: 12px;
		width: 65%;
		height: auto;
		min-height: 55px;
	}
	#topics li .arrow_ {
		/*
		float: right;
		display: block;
		*/
		float: none;
		display: inline-block;
		width: 10%;
		height: 55px;
		overflow: hidden;
		text-align: right;
	}
	#topics li .arrow_ img {
    	width: auto;
	}
	.topics_links_box {
		display: none;
	}
	
	#side_contents_right {
		display:none;
	}
	
	#top_tokusen {
		width: auto;
		margin: 15px 0;
	}
	#top_tokusen h3 {
		display :none;
	}
	
	.sp_banner_link ul {
		width: 95%;
		margin: 0 auto;
	}
	.sp_banner_link ul li {
		list-style: none;
		margin-bottom: 15px;
	}
	.sp_banner_link ul li.left {
		float: left;
		width: 48%;
	}
	.sp_banner_link ul li.right {
		float: right;
		width: 48%;
	}
	.sp_banner_link ul li.left2 {
		float: left;
		width: 48%
	}
	.sp_banner_link ul li.right2 {
		float: right;
		width: 48%;
	}
	.sp_banner_link ul li.one {
		width: 100%;
		margin: 0 auto 15px;
	}
	.sp_banner_link ul li img {
		width: 100%;
	}
	
	#links {
		width: 100%;
		margin: 8px 0 8px 0;
		padding: 0;
		padding-top: 7px;
		text-align: center;
		list-style: none;
	}
	.fb_sp {
		margin: 0 auto 10px;
	}
	#facebook_sp {
    	width: 178px;
    	border-bottom: 1px solid #245693;
    	border-left: 1px solid #245693;
    	border-right: 1px solid #245693;
    	padding: 0 0 10px 20px;
    	margin: 0 auto 10px;
    	text-align: left;
	}
	.fb_btn_sp {
		width: 72%;
		margin: 7px auto;
	}
	.fb_btn_sp img {
		width: 100%;
	}
	.fb_btn_header {
		width: 72%;
		margin: 0 auto;
	}
	.fb_btn_header img {
		width: 100%;
	}
	#facebook_sp {
		width: 72%;
		margin: 0 auto;
		padding: 0;
	}
	.fb_iframe_widget {
		width: 100%;
		text-align: center;
	}
	.fb_iframe_widget span{
		margin: 10px auto;
		text-align: left;
	}
	.twt_sp {
		width: 72%;
		margin: 0 auto;
	}
	.twt_sp img {
		width: 100%;
	}
	.topics ul {
		display: none;
	}
	.dcm_community_sp_in {
		display: none;
	}
	
	.pagetop_sp {
		text-align: center;
		padding: 15px 0;
	}
	.pagetop_sp img {
		width: 11.5%;
	}
	.company_info_sp_in {
		display: none;
	}
	.company_info_sp_in table {
		width: 100%;
	}
	.company_info_sp_in table td {
		background-color: #E5E5E5;
		color: #000000;
		text-align: center;
		vertical-align: middle;
		padding: 15px 0;
		width: 50%;
		border-right: solid 1px #FFFFFF;
		border-bottom: solid 1px #FFFFFF;
	}
	.company_info_sp_in table td a{
		color: #000000;
		font-size: 1.2em;
		font-weight: bold;
	}
	#footer {
		margin: 0;
		padding: 15px 0;
		width: 100%;
		height: auto;
		background-image: none;
		text-align: center;
		color: #000000;
		font-size: 1.2em;
	}
	
	/* チラシ／店舗情報 */
	.map_image_sp {
		margin: 15px 0 0px;
		padding: 0;
		text-align: center;
	}
	.map_image_sp img {
		width: 100%;
	}
	.map_btn_sp {
		margin-bottom: 60px;
	}
	.map_btn_sp ul li {
		width: 95%;
		margin: 30px auto;
	}
	.map_btn_sp select {
		width: 100%;
		-webkit-appearance: button;
		-moz-appearance: button;
		appearance: button;
		background:#EEE url(/files/user/images/shop/bg_select_sp.jpg) repeat-x;
		background-position: left top;
		background-size:100% auto;
		min-height: 50px;
		line-height: 50px;
		font-size: 24px;
		text-indent: 1em;
	}
	@-moz-document url-prefix() { /* for firefox */
		.map_btn_sp select {
			background:none;
			background-color: #FFF;
		}
	}
	.red_arrow {
		color: red;
		font-size: 0.8em;
		padding: 0 5px;
	}
	.map_navi {
		margin-bottom: 30px;
	}
	.map_navi table {
		width: 100%;
		border-collapse: collapse;
		border-top: dotted 1px #CCCCCC;
	}
	.map_navi table td {
		text-align: left;
		vertical-align: middle;
		font-size: 1.2em;
		line-height: 30px;
		padding: 15px 0;
		border-bottom: dotted 1px #CCCCCC;
	}
	.map_navi table .last {
		border-left: dotted 1px #CCCCCC;
	}
	.map_navi table td a,
	.map_navi table td a:hover {
		color: #000000;
		text-decoration: none;
	}
	
	/* 店舗一覧 */
	.district {
		width: auto;
    	height: 40px;
    	line-height: 40px;
    	text-align: left;
    	display: block;
    	background: url(/files/user/images/shop/district_sp.gif) left top;
    	margin: 0 0 15px;
    	padding: 0;
    	padding-left: 2.5%;
    	font-weight: bold;
    	font-size: 14px;
	}
	.district .number {
    	font-weight: normal;
    	font-size: 13px;
	}
	.district .desc {
		display: none;
	}
	.sp_desc {
		width: 95%;
		margin: 0 auto;
		text-align: left;
	}
	.google_map iframe{
		display :inline-block;
		width: 100%;
		/* height: 400px; */
		height: 250px;
		margin: 15px auto;
	}
	.btm_shop {
		display: none;
	}
	.btm_shop_sp {
		text-align: left;
		padding-bottom: 30px;
		border-bottom: solid 1px #000000;
	}
	.btm_shop_sp h4 {
		text-align: center;
		font-size: 1.5em;
		font-weight: bold;
		color: #000000;
		margin: 30px 0;
	}
	.btm_shop_sp h5 {
		text-align: center;
		font-size: 1.3em;
		font-weight: bold;
		color: #000000;
		margin: 20px 0;
	}
	.table_shop_list {
		margin: 0;
		width: 100%;
		display:block;
	}
	.table_shop_list tbody{
		width: 100%;
		display: block;
	}
	.shop_details {
		width: 100%;
		height: auto;
		list-style: none;
		margin: 0;
		padding: 0 0 10px;
		text-align: left;
		clear: both;
		overflow: hidden;
		display: block;
		border-bottom: solid 1px #000000;
	}
	.shop_details td {
		width: 100%;
		display: block;
		border-bottom: none;
	}
	.shop_details .name {
		display: block;
		width: 95%;
		margin: 0 auto;
		height: auto/*110px*/;
		/* padding: 10px 0 10px 8px; */
		padding: 10px 0;
		border-right: none;
		font-size: 1.4em;
		margin-bottom: 0;
		border-bottom: dotted 1px #CCCCCC;
		line-height: 1.6em;
	}
	.shop_details .name a {
    	padding: 0 0 0 15px;
    	background: url(../../../files/user/images/body/link_arrow_sp.gif) left center no-repeat;
    	background-size: auto 90%;
    	font-weight: bold;
    	color: #3C3C3C;
	}
	.shop_details .name p{
		font-size: 1em;
		padding-left: 15px;
	}
	.shop_details .address {
		display: block;
		width: 95%;
		margin: 0 auto;
		height: inherit;
		/* padding: 7px 10px 10px 10px; */
		padding: 10px 0;
		border-right: none;
		font-size: 1.2em;
		border-bottom: dotted 1px #CCCCCC;
		line-height: 1.6em;
	}
	.shop_details .address p {
		padding-left: 0;
	}
	.shop_details .time {
		display: block;
		width: 95%;
		margin: 0 auto;
		text-align: left;
		padding: 7px 0;
		border-right: none;
		line-height: 40px;
		font-size: 1.2em;
		vertical-align: middle;
	}
	.shop_details .time img {
		width: 20%;
		padding : 0;
		vertical-align: middle;
	}
	.shop_details .time p {
		display: inline;
		width: 80%;
		margin-bottom: 5px;
		line-height: 40px;
		vertical-align: middle;
		text-indent: 20%;
	}
	.btm_shop_sp .service_group {
		width: 95%;
		margin: 15px auto;
	}
	.btm_shop_sp .service_group img {
		float: left;
		width: 24.5%;
		margin: 0 0.5% 8px 0;
	}
	.btm_shop_sp .service_group .service_icon_list img:nth-child(4n) {
		margin-right: 0;
	}
	.shop_details .service {
		width: 95%;
		margin: 0 auto;
		height: auto;
	}
	.shop_details .service img {
		float: left;
		width: 24.5%;
		padding: 0;
		margin: 0 0.5% 8px 0;
	}
	.shop_details .service img:nth-child(4n) {
		margin-right: 0;
	}
	
	/* 採用情報 */
	#page-contents-area {
		width: 95%;
		margin: 0 auto;
		background: #ffffff;
	}
	#recruit .ttl {
		padding: 0 0 25px 0;
	}
	#recruit .recruit_wrap {
		margin: 0 auto;
		padding: 0;
	}
	#recruit .recruit_left {
		position: relative;
		float: none;
		width: 100%;
	}
  	#recruit .recruit_left img {
      width: 100%;
	}
	#recruit .recruit_left .btn {
		position: static;
		margin: 15px auto;
		text-align: center;
	}
	#recruit .recruit_left ul.recruit_nav {
		overflow: hidden;
		margin: 17px 0;
		padding: 0;
		width: 100%;
		text-align: center;
	}
	#recruit .recruit_left ul.recruit_nav li {
		float: none;
		display: inline-block;
		width: 32.0%;
		padding: 5px 0;
		margin: 0;
	}
	#recruit .recruit_left ul.recruit_nav li img{
		vertical-align: bottom;
		padding: 0;
	}
	
	#recruit .recruit_right {
		float: none;
		width: 100%;
	}
	#recruit .recruit_news {
    	width: 100%;
    	height: 126px;
    	overflow-y: scroll;
    	border: solid 1px #cccccc;
    	padding: 20px 0;
    	margin: 0 auto;
	}
	#recruit .recruit_news p {
		padding-left: 10px;
	}
	#recruit .recruit_btm .recruit_guide {
		padding: 0 0 0 14px;
	}
	#recruit .recruit_btm .recruit_contact {
		margin: 12px 0 15px;
	}
	#recruit .recruit_btm .info {
      float: none;
      width: auto;
    }
	#recruit .recruit_btm .bnr {
      float: none;
      width: auto;
    }
    #recruit .recruit_middle {
      margin-top: 5px;
    }
  	#recruit .recruit_middle ul {
      overflow: hidden;
      width: 100%;
    }
  	#recruit .recruit_middle li {
      float: left;
      width: 49%;
    }
    #recruit .recruit_middle li:nth-child(odd) {
      margin-right: 1%;
    }
    #recruit .recruit_middle li:nth-child(even) {
      margin-left: 1%;
    }
    #recruit .recruit_middle p,
    #recruit .recruit_middle img,
    #recruit .recruit_btm p,
    #recruit .recruit_btm img {
      width: 100%;
    }
    #recruit .recruit_right .nav-area {
      overflow: hidden;
      margin-top: 7px;
    }
    #recruit .recruit_right .nav-area li {
      float: left;
      width: 31.848184%;
  }
    #recruit .recruit_right .nav-area li:first-child {
      margin-right: 2.310231%;
    }
    #recruit .recruit_right .nav-area li img {
      width: 100%;
    }
    #recruit .recruit_right .nav-area li:last-child {
      margin-left: 2.145214%;
    }
    #recruit .shop {
      margin-top: 25px;
    }
	
}






