.sp{ display:none; }

.cf:after {
	content: "";
	display: block;
	clear: both;
}

.section{
	padding:40px 0;
	overflow:hidden;
}

.section_inner{
	max-width:1020px;
	padding:0 10px;
	margin:0 auto;
	position:relative;
}

.flex_box{
	display:-ms-flexbox;
	display:flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-ms-flex-wrap: wrap;
	flex-wrap:wrap;
	margin:-30px 0 0;
}

.flex_box_item{
	width:49%;
	margin:30px 0 0;
}



.flex_box_5 .flex_box_item{
	width:19%;
}

.flex_box_6 .flex_box_item{
	width:15.5%;
}

.flex_box_4 .flex_box_item{
	width:24%;
}

.flex_box_3 .flex_box_item{
	width:32%;
}

.headline_lv2{
	padding:10px 0 10px 15px;
	margin:0 0 20px;
	position:relative;
	background:url("../images/common/title_bg.jpg")!important;
	background-size:200px auto;
	color:#fff;
}

.headline_lv2:before{
	content:"";
	display:block;
	width:5px;
	height:80%;
	background: linear-gradient(0deg, #4c8838, #65c249);
	position:absolute;
	top:10%;
	left:0;
}

.headline_lv2 span{
	font-size:20px;
	font-weight:bold;
}

.headline_lv2 span i{
	font-size:14px;
	font-style:normal;
}

.headline_lv3{
	padding:10px 0 8px 15px;
	margin:0 0 20px;
	position:relative;
	background:#008000;
	color:#fff;
	font-size:18px;
	font-weight:bold;
}

.headline_lv4{
	padding:10px 0 10px 15px;
	margin:0 0 20px;
	position:relative;
	background:#ff0000;
	background-size:200px auto;
	color:#fff;
}

.headline_lv4:before{
	content:"";
	display:block;
	width:5px;
	height:80%;
	background: linear-gradient(0deg, #4c8838, #65c249);
	position:absolute;
	top:10%;
	left:0;
}

.headline_lv4 span{
	font-size:20px;
	font-weight:bold;
}

.headline_lv4 span i{
	font-size:14px;
	font-style:normal;
}

.headline_desc{
	text-align:center;
	margin:0 0 30px;
}

.btn{
	display:inline-block;
	background:#0a2657;
	border:1px solid #0a2657;
	font-size:14px;
	padding:20px 20px 20px;
	line-height:1;
	color:#fff;
	font-weight:bold;
	min-width:280px;
	transition: all .3s;
}

.btn:hover{
	background: #0a2657;
	border-color: #0a2657;
	color:#fff;
}

/* *****  slick ***** */
.slick-slide{
	height:auto;
}

.slick-prev,
.slick-next{
	display: block;
	width: 50px;
	height: 50px;
	position: absolute;
	top:50%;
	transform: translate(0, -50%);
	z-index:500;
	border:0;
	outline:0;
	background:none;
	cursor: pointer;
	font-size:0;
	line-height:0;
}

.slick-prev {
	left: 10px;
}

.slick-next {
	right: 10px;
}

.slick-prev:before,
.slick-next:before {
	content:"＜";
	font-size: 40px;
	line-height: 1;
	opacity: .75;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	transform:scale(0.6, 1);
	display:inline-block;
	color: rgba(10, 38, 87, 1);
}

.slick-next:before{
	content:"＞";
}


/* *****  共通ヘッダー ***** */
header{
	position:relative;
	z-index:400;
	width:100%;
	background:#000;
	border-top:5px solid #008000;
	color:#fff;
	background:#000 url("../images/common/header_bg.jpg") no-repeat center -90px;
}

.header_inner{
	max-width:1020px;
	padding:0 10px;
	margin:0 auto;
	position:relative;
}

.header_logo{
	width:120px;
	padding:22px 0;
}

.header_inner h1{
	width:50%;
	position:absolute;
	top:15px;
	right:170px;
	font-size:14px;
	text-align:right;
}

.header_sns{
	width:150px;
	position:absolute;
	top:15px;
	right:10px;
}

.header_twitter{
	width:80px;
	float:left;
}

.header_facebook{
	width:70px;
	float:right;
}

.header_info{
	width:510px;
	position:absolute;
	top:52px;
	right:10px;
	font-size:0;
}

.header_info .header_sdgs{
	width:158px;
	float:left;
}

.header_info .header_mobile_member{
	width:170px;
	float:left;
	text-align:right;
}

.header_info .header_shop_search{
	width:170px;
	float:right;
}

/* *****  共通フッター ***** */
footer{
	background:#000 url("../images/common/footer_bg_logo.png") no-repeat 90% center;
	color:#fff;
	padding:0;
	position:relative;
	z-index:100;
}

.footer_inner{
	max-width:1020px;
	margin:0 auto;
	padding:60px 10px 0;
	position:relative;
}

.footer_menu{
	padding:0 0 40px;
}

.footer_menu .footer_menu_t{
	overflow:hidden;
}

.footer_menu ul{
	text-align:center;
}

.footer_menu li{
	display:inline-block;
	padding:0 0 20px 20px;
}

.footer_menu li a{
	color:#ffffff;
	line-height:1;
	font-weight:bold;
	display:inline-block;
}

.footer_attention p{
	font-size:12px;
}

.copyright{
	clear:both;
	padding:20px 0 50px;
	text-align:center;
}

/* ***** ページ共通 ***** */
/* サイトマップ */
.sitemap{
	background:#f3f3f3;
}

.sitemap_list_lv1 > li{
	margin:0 0 30px;
	position:relative;
}

.sitemap_list_lv2{
	margin:15px 0 0;
	padding:10px 0 0;
	border-top:1px solid #bdbdbd;
	display:none;
}

.sitemap_list_lv2 li{
	padding:0 0 0 25px;
	margin:10px 0 0;
	font-size:12px;
	background: url("../images/common/icon_arrow_green.svg") no-repeat 10px 5px;
	background-size: 5px,contain;
	position:relative;
}

.toggle-level{
	width:36px;
	height:36px;
	background:#dfdfdf;
	color:#008000;
	position:absolute;
	top:0;
	right:0;
	padding:8px 0;
	text-align:center;
}

/* 外部バナー */
.foreign_banner{
	background:#dfdfdf;
}

.foreign_banner .foreign_list{
	font-size:0;
	margin:0 -10px;
	text-align:center;
	overflow:hidden;
}

.foreign_banner .foreign_list li{
	display:block;
	float:left;
	margin:0 1.33333% 20px 0;
	width:24%;
}

.foreign_banner .foreign_list li:nth-child(4n){
	margin-right:0;
}

.foreign_banner .foreign_list li img{
	display:inline-block;
	max-height:168px;
}

.foreign_banner .group_list{
	font-size:0;
	margin:0 auto;
	text-align:center;
}

.foreign_banner .group_list li{
	display:inline-block;
	margin:20px 10px 0;
}

/* 下部バナー */
.bottom_banner .bottom_banner_recruit{
	background:url("../images/common/bnr_recruit.png") no-repeat center center;
	background-size:cover;
}

.bottom_banner .bottom_banner_service{
	background:url("../images/common/bnr_shop_service.png") no-repeat center center;
	background-size:cover;
}

.bottom_banner a{
	display:block;
	background:rgba(0, 0, 0, 0.2);
	color:#fff;
	padding:70px 20px 20px;
}

.bottom_banner a:hover{
	opacity:1;
	background:rgba(0, 0, 0, 0.4);
}

.bottom_banner .bottom_banner_title{
	font-weight:bold;
	font-size:28px;
	text-shadow:0 0 10px #000;
}

.bottom_banner .bottom_banner_sub{
	font-weight:bold;
	font-size:16px;
	text-shadow:0 0 10px #000;
}

/* 店舗検索バナー */
.search_banner{
	padding-bottom:0;
}

.search_banner a{
	display:block;
	background:rgba(64, 64, 64, 1) url("../images/common/col3_banner_1.png") no-repeat 80% center;
	background-size:contain;
	padding:19px 40px 12px 10px;
	color:#fff;
	position:relative;
	cursor:pointer;
}

.search_banner a:hover{
	opacity:1;
	background-color:rgba(64, 64, 64, 0.8);
}

.search_banner a:after{
	content:"";
	display:block;
	width:31px;
	height:31px;
	background:url("../images/common/icon_arrow.png") no-repeat center center;
	background-size:contain;
	position:absolute;
	top:50%;
	right:10px;
	margin-top:-15px;
}

.search_banner .search_banner_map a{
	background-image:url("../images/common/col3_banner_2.png");
}

.search_banner .search_banner_tax a{
	background-image:url("../images/common/col3_banner_3.png");
}

.search_banner .search_banner_sub{
	font-weight:bold;
	font-size:16px;
	text-shadow:0 0 10px #000;
}

.search_banner .search_banner_title{
	font-weight:bold;
	font-size:22px;
	text-shadow:0 0 10px #000;
}

.search_banner .search_banner_app a{
	background-image:none;
	padding:0;
}

.search_banner .search_banner_app a:after{
	display:none;
}

@media screen and (max-width: 767px){
	.pc{ display:none; }
	.sp{ display:block; }
	br.sp{ display:inline; }
	

	.section{
		min-width:initial;
		padding:30px 0;
	}

	.section_inner{
		width:auto;
		padding:0 10px;
	}

	.headline_lv2{
		font-size:18px;
		margin:0 0 20px;
	}

	.headline_lv2 span{
		font-size:18px;
	}

	.btn{
		font-size:13px;
		padding:20px 20px 20px;
	}
	
	.flex_box{
	}
	
	.flex_box_item{
		width:100%;
	}
	
	.flex_box_5 .flex_box_item{
		width:49%;
	}

	.flex_box_6 .flex_box_item{
		width:49%;
	}
	
	.flex_box_4 .flex_box_item{
		width:49%;
	}
	
	.flex_box_3 .flex_box_item{
		width:100%;
	}

	/* *****  共通ヘッダー ***** */
	.header_logo{
		width:80px;
		padding:10px 0;
	}

	.header_inner h1{
		display:none;
	}

	.header_sns{
		right:30px;
		top:5px;
	}

	/*  
	.header_info{
		width:220px;
		top:32px;
	}

	.header_info .header_mobile_member{
		width:120px;
		padding:5px 0 0;
	}
	
	.header_info .header_shop_search{
		width:100px;
	}
	*/
	.header_info{
		width:240px;
		top:32px;
	}

	.header_info .header_sdgs{
		width:80px;
	}

	.header_info .header_mobile_member{
		width:80px;
	}
	
	.header_info .header_shop_search{
		width:80px;
		padding:2px 0 0;
	}
	
	/* *****  共通フッター ***** */
	.footer_menu{
		padding:0 0 30px;
	}
	
	.footer_menu li{
		display:block;
		padding:0 0 30px;
	}

	.footer_attention p{
		font-size:10px;
	}

	.copyright{
		padding:20px 0 30px;
	}

	/* ***** ページ共通 ***** */
	/* サイトマップ */
	.sitemap{
		padding:0;
	}
	
	.sitemap .section_inner{
		padding:0;
	}
	
	.sitemap .flex_box,
	.sitemap .flex_box_item{
		margin:0;
		width:100%;
	}
	
	
	.sitemap_list_lv1 > li{
		margin:0;
	}
	
	.sitemap_list_lv1 > li a{
		margin:0;
		display:block;
		border-bottom:1px solid #fff;
		padding:15px 10px;
		position:relative;
		font-size:14px;
	}

	.sitemap_list_lv1 > li a:after{
		content:"";
		display:block;
		background: url("../images/common/icon_arrow_green.svg") no-repeat right top;
		background-size: 5px,contain;
		width:10px;
		height:10px;
		position:absolute;
		top:50%;
		right:10px;
		margin-top:-5px;
	}
	
	.sitemap_list_lv1 > li.has-level > a:after{
		right:62px;
	}
	
	.sitemap_list_lv2{
		margin:0;
		padding:0;
		border-top:none;
	}
	
	.sitemap_list_lv2 li{
		padding:0;
		margin:0;
		background: none;
		position:relative;
	}

	.sitemap_list_lv2 > li a{
		padding-left:24px;
	}

	.toggle-level{
		width:52px;
		height:51px;
		border-left:1px solid #fff;
		padding:15px 0;
	}
	
	/* 外部バナー */
	.foreign_banner .foreign_list{
		margin:0;
		overflow:hidden;
	}
	
	.foreign_banner .foreign_list li{
		width:49%;
		margin:0 0 20px;
	}

	.foreign_banner .foreign_list li:nth-child(2n){
		float:right;
	}
	
	.foreign_banner .group_list li{
		margin:10px 2% 0 0;
		width:49%;
	}

	.foreign_banner .group_list li:last-child{
		margin-right:0;
	}
	
	/* 下部バナー */
	.bottom_banner a{
		padding:50px 10px 20px;
	}

	.bottom_banner .bottom_banner_title{
		font-size:22px;
	}
	
	.bottom_banner .bottom_banner_sub{
		font-size:14px;
	}

	/* 店舗検索バナー */
	.search_banner a{
		padding:24px 40px 19px 10px;
	}
	
	.search_banner a:after{
		width:20px;
		height:20px;
		margin-top:-10px;
	}

	.search_banner .search_banner_sub{
		font-size:14px;
	}
	
	.search_banner .search_banner_title{
		font-size:22px;
	}

}


/* トップに戻る */
.go_pagetop {
	position: fixed;
	bottom: 20px;
	right: 20px;
	z-index: 10000;
	display:none;
}

.go_pagetop a {
	background: #008000;
	border-radius: 10px;
	color: #fff;
	display: block;
	height: 60px;
	text-align: center;
	text-decoration: none;
	width: 60px;
}

.go_pagetop a img{
	width:100%;
}
@media screen and (max-width: 768px) {
	.go_pagetop{
		bottom: 10px;
		right: 10px;
	}
	
	.go_pagetop a {
		height: 40px;
		width: 40px;
	}
}

@media screen and (max-width: 320px){
	.header_info{
		width:200px;
	}

	.header_info .header_sdgs,
	.header_info .header_mobile_member,
	.header_info .header_shop_search{
		width:65px;
	}
	
	.header_info .header_shop_search{
		padding:2px 0 0;
	}
}
