* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box !important;
	padding:0;
	margin:0;
	scroll-behavior:smooth;
}
/* 初期化 */
body, header, main, footer, section, div, nav, p, a, h1, h2, h3, h4, ul, ol, li, form, input, span{
  padding: 0;
  margin: 0;
  border: none;
}
a, a:visited, a:hover{
  text-decoration: none;
  color: inherit;
  font-size: inherit;
  font-family: inherit;
  color: #1c1c1c;
}
a:hover {
  color: #4d4d4d;
  text-decoration: none;
}

a:active {
  color: #4d4d4d;
}

select[multiple="multiple"] {
  height: auto;
	line-height: 1;
	vertical-align: top !important;
}
select option {
	font-size:1em;
	vertical-align: middle !important;
	margin-bottom: 5px !important;
}
ul, ol{
  list-style: none;
}

.sp {display:none;}
.pc {display:block;}

/* ----------------------------------------------

	IE注意表記

-----------------------------------------------*/

@media all and (-ms-high-contrast: none) {
	body:before {
		content:"";
		width:100%;
		height:100%;
		display:block;
		background:#000;
		color:#fff;
		opacity:0.7;
		position:fixed;
		top:0;
		right:0;
		left:0;
		bottom:0;
		z-index:999998;
		text-align:center;
		vertical-align:middle;
	}
	.fs-l-page:after {
		content:"お使いのブラウザは閲覧推奨環境ではありません。畏れ入りますがchrome、Edge、Firefoxなど他のブラウザをご利用の上アクセスください。";
		box-sizing:border-box;
		padding:5%;
		width:60%;
		height:20%;
		display:block;
		background:#fff;
		color:#000;
		font-size:16px !important;
		text-align:left;
		vertical-align:middle;
		opacity:0.8;
		position:fixed;
		top:0;
		z-index:9999999;
		top: 50%;
		left: 50%;
		-webkit-transform: translate(-50%, -50%);
		-ms-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
	}
}

/* -----------------------------------------*/


@media only screen and (max-width: 767px) {
	.sp {display:block;}
	.pc {display:none;}
}

body {
	width:100%;
	height:100%;
	height:100vh;
/*	font-size: 62.5%; */
	font-size:15px;
	writing-mode:horizontal-tb !important;
	-ms-writing-mode:lr-tb !important;
	font-family: 'Overpass','游ゴシック Medium', 'Yu Gothic Medium','游ゴシック', 'Yu Gothic','游ゴシック体', YuGothic, sans-serif !important;
	font-weight:middium;
	color:#4d4d4d !important;
    position: relative;
  	z-index:0 !important;
}

img { max-width:100%; height:auto; }

p {line-height:180%;}

.wrapper{
	width:100%;
    min-height: 100%;
    padding-top: 210px;
    padding-bottom: 103px;
    display: flex;
    flex-direction: column;
    margin:0 auto;
    overflow:hidden;
    position: relative;
  	z-index:0 !important;
}
#brandpage{
	width:100%;
    min-height: 100%;
    position: relative;
    padding-top: 200px;
    padding-bottom: 103px;
    display: flex;
    flex-direction: column;
    margin:0 auto;
    overflow:hidden;
}
.fs-body-top .wrapper{ margin:0; }
.fs-body-top .fs-l-page{ margin:0; }


@media only screen and (max-width: 767px) {
.wrapper{
	width:100%;
    min-height: 100%;
    position: relative;
    padding-top: 110px;
    padding-bottom: 200px;
    display: flex;
  flex-direction: column;
  margin:0;
}
#brandpage{
	width:100%;
    min-height: 100%;
    position: relative;
    padding-top: 60px;
    padding-bottom: 150px;
    display: flex;
  flex-direction: column;
  margin:0 auto;
}
}



.pc {display:block;}
.sp {display:none;}
/* .fs-body-custom .pc {display:block !important;}
.fs-body-custom .sp {display:none !important;} */

@media screen and (max-width:767px) {
.pc {display:none !important;}
.sp {display:block;}
/* .fs-body-custom .pc {display:none !important;}
.fs-body-custom .sp {display:block !important;} */
}



/*--------------------------------------------
	loading
--------------------------------------------*/

/* ie用設定 */
/* @media all and (-ms-high-contrast: none) {
  #loader-bg {
    display:none;
  }
} */

#loader-bg {
    background: #fff;
    height: 100%;
    width: 100%;
    position: fixed;
    top: 0px;
    left: 0px;
    z-index: 10;
}
#loader-bg img {	
    background: #fff;
    position: fixed;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    z-index: 10;
}


/*--------------------------------------------
	movie
--------------------------------------------*/

#movie {
	width:100vw;
	padding:0;
	margin:0;
	margin:80px auto 0 auto;
	margin-left:calc(((100vw - 1000px) / 2) * -1) !important;
	margin-right:calc(((100vw - 1000px) / 2) * -1) !important;
	background:url(https://sonne.itembox.design/item/images/asset/movie_back.jpg?t=20210310175500) no-repeat 50% 50%;
	padding-top:20px;
	padding-bottom:400px;
	text-align:center !important;
	overflow-x:hidden;
	background-size: 120%;
}
	@media only screen and (max-width: 1000px) {
	#movie {
		width:100vw;
		padding:0;
		margin:0;
		margin:50px auto 0 auto;
		margin-left:calc(((100vw - 100%) / 2) * -1) !important;
		margin-right:calc(((100vw - 100%) / 2) * -1) !important;
		background:url(https://sonne.itembox.design/item/images/asset/movie_back.jpg?t=20210310175500) no-repeat 50% 50%;
		padding-top:250px;
		padding-bottom:250px;
		text-align:center !important;
	}
	}
	#movie .movie_wrap {
		width:100%;
		max-width:800px;
		margin:0 auto;
	}
.yt_video{
  position:relative;
  width:100%;
  padding-top:56.25%;
}
.yt_video iframe{
  position:absolute;
  top:0;
  right:0;
  width:100%;
  height:100%;
}


	@media only screen and (max-width: 767px) {
	#movie {
		width:100%;
		padding:0;
		margin:0;
		margin:50px auto 80px auto;
		margin-left:calc(((100vw - 100%) / 2) * -1) !important;
		margin-right:calc(((100vw - 100%) / 2) * -1) !important;
		background:url(https://sonne.itembox.design/item/images/asset/movie_back.jpg?t=20210310175500) no-repeat 50% 50%;
		background-size:100%;
		padding-top:80px;
		padding-bottom:80px;
		text-align:center !important;
	}
	#movie .movie_wrap {
		width:80%;
		margin:0 auto;
	}
	}
	

/*--------------------------------------------
	brand
--------------------------------------------*/

#brand_news {
	width:100%;
	margin:20px auto;
}
#brand_news .news_list_wrap {
	width:100%;
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	align-items:flex-start;
}
	#brand_news .news_list_wrap > .news_list {
		width:32%;
	}
	#brand_news .news_list_wrap > .news_list > .text > h2 {
		font-size:16px;
		font-weight:bold;
		margin-top:15px;
	}
	#brand_news .news_list_wrap > .news_list > .text > p {
		font-size:14px;
		font-weight:normal;
		line-height:150%;
	}
	#brand_news .news_list_wrap > .news_list > .text > p > span {
		font-size:12px;
		font-weight:normal;
		display:block;
		margin-top:15px;
	}

	@media only screen and (max-width: 767px) {
	
		#brand_news .news_list_wrap > .news_list {
			width:95%;
			display:flex;
			flex-wrap:wrap;
			justify-content:space-between;
			align-items:flex-start;
			margin:10px auto;
		}
		#brand_news .news_list_wrap > .news_list > .banner {
			width:45%;
		}
		#brand_news .news_list_wrap > .news_list > .text {
			width:50%;
		}
		#brand_news .news_list_wrap > .news_list > .text > h2 {
			font-size:14px;
			font-weight:bold;
			margin-top:10px;
		}
		#brand_news .news_list_wrap > .news_list > .text > p {
			font-size:12px;
			font-weight:normal;
			line-height:150%;
			margin-top:10px;
		}
	}

#concept {
	width:100vw;
	padding:0;
	margin:0;
	margin:80px auto;
	margin-left:calc(((100vw - 1000px) / 2) * -1) !important;
	margin-right:calc(((100vw - 1000px) / 2) * -1) !important;
	background:url(https://sonne.itembox.design/item/images/asset/life_2.jpg) no-repeat 25% 50%;
	padding-top:100px;
	padding-bottom:100px;
	text-align:center !important;
	overflow-x:hidden;
	background-size: 120%;
}

	@media only screen and (max-width: 1000px) {
	#concept {
		width:100vw;
		padding:0;
		margin:0;
		margin:50px auto;
		margin-left:calc(((100vw - 100%) / 2) * -1) !important;
		margin-right:calc(((100vw - 100%) / 2) * -1) !important;
		background:url(https://sonne.itembox.design/item/images/asset/life_2.jpg) no-repeat 50% 50%;
		padding-top:250px;
		padding-bottom:250px;
		text-align:center !important;
	}
	}
	#concept .concept_wrap {
		width:100%;
		max-width:900px;
		margin:0 auto;
		background:rgba(0,0,0,0.6);
		color:#fff;
		padding:70px 0;
	}
		#concept .concept_wrap h2 {
			font-weight:bold;
		}
		#concept .concept_wrap p {
			width:80%;
			margin:40px auto 0 auto;
		}
		#concept .concept_wrap a {
			display:inline-block;
			text-align:center;
			margin-top:2.0em;
			box-sizing:border-box;
			padding:0.5em 1.0em 0.3em 1.0em;
			color:#fff;
			border: 1px solid #fff;
			border-radius:5px;
		}

	@media only screen and (max-width: 767px) {
		#concept {
			width:100%;
			background:none;
			padding:0;
		}
		#concept .concept_wrap {
			width:100%;
			background:#ccc;
			color:#000;
			padding:0 0 70px 0;
		}
		#concept .concept_wrap:before {
			content:"";
			display:block;
			width:100%;
			height:66%;
			padding-top:66%;
			background:url(https://sonne.itembox.design/item/images/asset/life_2.jpg) no-repeat 50% 50%;
			background-size:100%;
			margin-bottom:70px;
		}
		#concept .concept_wrap a {
			color:#000;
			border: 1px solid #000;
		}
	}

/*--------------------------------------------
	NEWSページ
--------------------------------------------*/

.all_news_page {
	width:100%;
	max-width:900px;
	margin:0 auto;
}
.all_news_page .template_head {
	font-size:30px;
	display:inline-block;
	text-align:center;
	margin:0 auto 10px auto;
	padding:0 20px 10px 20px;
	border-bottom: 1px solid #000;
}
.all_news_page .newsbox {
	display:block;
	width:95%;
	margin:30px auto;
	border-bottom: 1px solid #000;
}
.all_news_page .newsbox:nth-last-child {
	border-bottom: 0px solid #000;
}
	.all_news_page .newsbox img {
		max-width:750px;
		height:auto;
		display:block;
		margin:20px auto 0 auto;
	}
	.all_news_page .newsbox p.date {
		text-align:left;
		font-size:12px;
		margin:10px auto;
	}
	.all_news_page .newsbox h3 {
		text-align:left;
		font-size:16px;
		font-weight:bold;
	}
	.all_news_page .newsbox p.newstxt {
		margin:20px auto;
		text-align:left;
		font-size:14px;
		font-weight:normal;
		line-height:180%;
	}
	.all_news_page .newsbox p.newstxt span {
		display:block;
		margin:20px auto;
	}
	.all_news_page .newsbox p.newstxt span.red {
		display:inline-block;
		margin:0;
		font-weight:bold;
		color:#ff0000;
	}
	.all_news_page .newsbox p.newstxt span a {
		color:#589793;
		text-decoration:underline;
		/* margin-left:0.5em; */
	}
	

@media only screen and (max-width: 767px) {
.all_news_page {
	width:90%;
	max-width:900px;
	margin:0 auto;
}
}


/*--------------------------------------------
	ABOUTページ
--------------------------------------------*/

#about {
	width:90%;
	max-width:1000px;
	margin:5% auto;
	padding-bottom:10%;
}
#about .ttl_box {
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	align-items:center;
}
	#about .ttl_box > div:nth-of-type(1) {
		width:100%;
	}
	#about .ttl_box > div:nth-of-type(2) {
		width:100%;
		text-align:center;
		margin-top:5%;
	}

#about h1 {
	font-size:30px;
	text-align:center;
	font-weight:bold;
}
#about h1 > span {
	display:block;
	font-size:60%;
	font-weight:normal;
	margin-top:1.0em;
}
#about > p {
	width:80%;
	max-width:900px;
	text-align:left;
	margin:5% auto 0 auto;
}

@media only screen and (max-width: 799px) {
	#about h1 {
		font-size:5.0vw;
	}
	#about h1 > span {
		font-size:3.0vw;
	}
#about > p {
	width:90%;
}
}
@media only screen and (max-width: 498px) {
#about {
	width:100%;
	padding-bottom:20%;
}
#about .ttl_box {
	width:100%;
	position:static;
	height:auto;
}
	#about .ttl_box > div:nth-of-type(1) {
		width:100%;
		position:static;
	}
	#about .ttl_box > div:nth-of-type(2) {
		width:100%;
		position:static;
	}
	#about .ttl_box > div:nth-of-type(2) > img {
		display:block;
		position:static;
		margin:0 auto !important;
		z-index:-1;
		text-align:center;
	}
	#about h1 {
		font-size:5.5vw;
		margin-left:0;
	}
	#about h1 > span {
		font-size:3.5vw;
	}
#about > p {
	width:90%;
	font-size:3.5vw;
}
}


/*--------------------------------------------
	contact 問い合わせ
--------------------------------------------*/

#contact { width:100%; max-width:700px; margin:50px auto; padding-bottom:50px !important; }

#contact p {
	font-size:14px;
	line-height:180%;
	margin:20px auto;
}
#contact p > a {
	text-decoration:underline;
}
#contact form {
	margin:20px auto;
	padding:30px 0;
	border-top: 1px solid #eee;
	border-bottom: 1px solid #eee;
}

#contact dl {
	display:flex;
	flex-wrap:wrap;
	justify-content:flex-start;
	align-items:flex-start;
}
#contact dl > dt {
/*	width:8.0em; */
	width:100%;
	margin:20px 0 0 0;
	text-align:left;
}
	#contact dl > dt > label {
		position:relative;
		width:100%;
	}
	#contact dl > dt > label > span {
		width:100%;
		display:block;
		position:absolute;
		font-size:65%;
		bottom:-15px;
		right:0 !important;
		white-space: nowrap;
		text-align:right;
	}
	#contact dl > dt > label > span.rubim {
		right:2.0em !important;
	}
	#contact dl > dt > label.need:before {
		content:"*";
		display:inline-block;
		color:#ff0000;
		position:absolute;
		left:-0.5em;
	}
#contact dl > dd {
/*	width:calc(100% - 9.0em); */
	width:100%;
	box-sizing:border-box;
	padding-left:1.0em;
	margin:5px 0;
}

#contact input[type=text] {
	width:auto !important;
	border:1px solid #ccc;
	line-height:25px;
	display:inline-block;
}
#contact input.cellphone {
	width:4.0em !important;
}
#contact select {
	border:1px solid #ccc;
	height:30px;
	display:inline-block;
}
#contact textarea {
	border:1px solid #ccc;
	width:100%;
	height:150px;
	box-sizing:border-box;
	padding:10px;
}
#contact input[type=submit] {
	width:200px;
	padding:10px 0;
	display:block;
	margin:10px auto;
	background:#000;
	color:#fff;
	transition: ease .8s;
}
#contact input[type=submit]:hover {
	background:#ddd;
}
#contact .input_title {
	display:inline-block;
	margin-right:0.5em;
}
#contact .input_l {
	display:inline-block;
	margin-left:1.0em;
}
#contact .ex_txt {
	display:block;
	font-size:90%;
	margin-top:5px;
	color:#bbb;
}
#contact .check {
	font-size:90%;
	color:#bbb;
}
#contact ol {
	margin-top:5px;
}
#contact ol li {
	padding-left:1.0em;
	text-indent:-0.5em;
}
#contact ol li:before {
	content:"\203B";
	display:inline-block;
}
#contact ol li.red {
	color:#ff0000;
}
#contact span.red {
	color:#ff0000;
}

@media only screen and (max-width: 767px) {
	#contact { width:95%; margin:50px auto !important; }
	#contact input.m_txt {
		width:100% !important;
	}
	#contact .n_txt {
		display:inline-block;
		margin-top:5px;
	}
	#contact .input_l {
		display:inline-block;
		margin-left:0em;
	}
}

@media only screen and (max-width: 484px) {
	#contact { width:95%; margin:30px auto; }
	#contact dl > dt {
		width:100%;
		margin:10px 0 5px 0;
		text-align:left;
	}
		#contact dl > dt > label {
			position:relative;
			width:100%;
		}
		#contact dl > dt > label > span {
			width:100%;
			display:block;
			position:absolute;
			font-size:65%;
			bottom:-15px;
			left:0 !important;
			white-space: nowrap;
			text-align:left;
		}
		#contact dl > dt > label > span.rubim {
			left:0em !important;
		}
	#contact dl > dd {
		width:100%;
		box-sizing:border-box;
		padding-left:0;
		margin:10px 0;
	}
}


/*--------------------------------------------
	main
--------------------------------------------*/

#brandpage main { margin:50px auto 50px auto; }

.wrapper main {
	min-height:calc(100vh - 353px) !important;
}
#brandpage main {
	min-height:calc(100vh - 303px) !important;
}

main,
main.brand {
	width:100%;
	max-width:1000px;
	margin:0px auto 50px auto;
}

	@media only screen and (max-width: 767px) {
		main {
			width:95%;
			margin:0px auto 30px auto;
		}
		.fs-body-top main {
			width:100%;
			margin:0px auto 50px auto;
		}
	}
main.sp {
	width:95%;
	margin:0;
	padding:0;
	height:0;
}
main h3.main_title {
	font-weight:bold;
	font-size:120%;
	text-align:center;
	margin:40px auto 20px auto;
	position:relative;
}
main .pickup h3.main_title,
main .ranking h3.main_title,
main .checked h3.main_title {
	font-weight:bold;
	font-size:120%;
	text-align:center;
	margin:60px auto 20px auto;
	position:relative;
}
main h3.main_title span.more_btn {
	font-weight:bold;
	font-size:14px !important;
	position:absolute;
	right:50px;
	bottom:0;
}
main h3.main_title span.more_right {
	display:inline-block;
	vertical-align:bottom;
	position:relative;
	right:-45px;
	height:15px;
}
main h3.main_title span.more_right:before {
	content:"";
	width: 35px;
	height: 10px;
	border-right: 1px solid #000;
	border-bottom: 1px solid #000;
	position: absolute;
	right: 1px;
	bottom: 50% !important;
	transform: skewX(45deg);
}
  main .fs_reco {
  		width:100%;
  		max-width:1000px;
  		display:block;
  }
main h3.main_title span.more_btn:hover {
	transition: all 0.2s;
	transform: translate(3px,3px);
}

@media screen and (max-width:767px) {
main {
	padding-bottom:60px;
	margin:0px auto 0px auto !important;
}


.clearfix:before,
.clearfix:after {
    content: " ";
    display: table;
}

.clearfix:after {
    clear: both;
}

.clearfix {
    *zoom: 1;
}
	
/*スマホ用メインメニュー*/

/* #slide_menu {
	box-shadow: 0 0 5px rgba(0, 0, 0, 0.64);
   	position: fixed;
   	color: #000;
	z-index: 99999;
} */
#slide_menu a {
	color: #000;
}
#slide_menu.left {
	top: 0;
	left: 0;
	bottom: 61px;
	width: 100%;
	background: #FFF;
	z-index: 99999;
	overflow: auto;
}
	
#slide_menu {
  position: fixed;
  top: 0;
  left: -100%; /* メニューのwidth + padding */
  width: 95%; /* メニューのwidth */
  height: calc( 100% - 60px );
  transition: left .3s, right .3s; /* アニメーション */
  background-color: #fff;
		overflow: scroll;
		z-index: 99999;
		padding:50px 0 0 0;
	border: 1px solid #4d4d4d;
	font-size:13px;
	z-index:9999;
}
#slide_menu p.Top_close_btn {
	text-align: right !important;
	width:30px;
	height:30px;
	text-align:center;
	position:absolute;
	top:10px;
	right:10px;
	background:#ff;
	color:#fff;
	z-index: 999999 !important;
	border:0px solid #000;
}
#slide_menu p.Top_close_btn a {
	display: block;
	color:#fff;
}
#slide_menu p.Top_close_btn img {
	width:60% !important;
	max-width:40px !important;
	height:auto;
}
main #slide_menu .toggle {
  cursor: pointer;
}
main #slide_menu .toggle:hover {
}
main #open {
  display: none;
}

/* :checked 擬似クラスを使って、#openがチェック状態になった時に、#slide_menuが「right: 0;」になります。 */
main #open:checked + #slide_menu {
  left: 0;
}


main #slide_menu .accordion {
	border-bottom: 1px solid #efefef;
	width: 100% !important;
	margin: 0 auto 0 auto;
	padding: 0;
	color:#4d4d4d;
}
	main #slide_menu .accordion > li {
	padding:10px 20px;
	border-top:1px solid #efefef;
	position:relative;
	}
	main #slide_menu .accordion > li > p {
		width:100%;
		margin:0 auto;
		line-height:200%;
		text-align:left;
	}
	main #slide_menu .accordion > li > span.arrow:before {
		content:"";
		display:inline-block;
		width:20px;
		height:20px;
		color:#000;
		position:absolute;
		top:50%;
		right:10%;
		transform: translate(0%, -50%);
		-webkit-transform: translate(0%, -50%);
		-ms-transform: translate(0%, -50%);
	}
	main #slide_menu .accordion > li > span.arrow_right:before {
		/* content:"\25B6"; */
	}
	main #slide_menu .accordion > li > span.arrow_bottom:before {
		content:"\25BC";
	}
main #slide_menu .accordion a {
	width:100%;
	display:block;
}
main #slide_menu .accordion .title {
	width:100%;
	display:block;
	cursor:pointer;
}
main #slide_menu .accordion a,
main #slide_menu .accordion a:hover,
main #slide_menu .accordion a:link {
	color:#4d4d4d;
}
main #slide_menu .accordion .inner {
	display: none;
	margin: 0px;
	margin-bottom:0px;
	padding:0px 20px 0 40px;
}

main #slide_menu .accordion .inner.open {
	display: block;
	width:100%;
	margin-bottom:20px;
}
	main #slide_menu .accordion .inner ul {
		width:100%;
	}
	main #slide_menu .accordion .inner ul li.innermenu {
		padding:5px 0;
		margin:5px 0;
	}
	main #slide_menu .accordion .inner ul li.lastmenu {
		margin:5px 0 20px 0;
	}
	main #slide_menu .accordion .inner ul.sns_list {
		width:90%;
		margin:0 auto 20px auto;
		display:flex;
		flex-wrap:nowrap;
		justify-content:center;
		align-items:center;
	}
	main #slide_menu .accordion .inner ul.sns_list li {
		width:50px;
		margin-right:5px;
	}


}

/*スマホ用検索メニュー*/

/* #search_menu {
	box-shadow: 0 0 5px rgba(0, 0, 0, 0.64);
   	position: fixed;
   	color: #000;
	z-index: 99999;
} */
#search_menu a {
	color: #000;
}
#search_menu.top {
	top: 0;
	left: 0;
/*	bottom: 61px; */
	width: 100%;
	background: #fff;
	z-index: 999999 !important;
	overflow: auto;
}
	
#search_menu {
  position: fixed;
  top: -100%;
  left: 1%; /* メニューのwidth + padding */
  width: 98%; /* メニューのwidth */
  height: calc( 100% - 60px );
  transition: top .3s, bottom .3s; /* アニメーション */
  background-color: #fff;
		overflow: scroll;
		z-index: 99999;
		padding:50px 0 0 0;
	border: 1px solid #4d4d4d;
	font-size:13px;
	z-index: 999999 !important;
}
#search_menu p.Top_close_btn {
	text-align: right !important;
	width:30px;
	height:30px;
	text-align:center;
	position:absolute;
	top:10px;
	right:10px;
	background:#ff;
	color:#fff;
	z-index:9999;
	border:0px solid #000;
}
#search_menu p.Top_close_btn a {
	display: block;
	color:#fff;
}
#search_menu p.Top_close_btn img {
	width:60% !important;
	max-width:40px !important;
	height:auto;
}
main #search_menu .search_toggle {
  cursor: pointer;
}
main #search_menu .search_toggle:hover {
}
main #search_open {
  display: none;
}

/* :checked 擬似クラスを使って、#openがチェック状態になった時に、#search_menuが「right: 0;」になります。 */
main #search_open:checked + #search_menu {
  top: 0;
}


/*--------------------------------------------
	News
--------------------------------------------*/

#online_news {
	display:block;
	width:100%;
	max-width:700px;
	margin:50px auto 20px auto !important;
}
#online_news ul {
	width:100%;
	list-style:none;
}
	#online_news ul li {
		box-sizing:border-box;
		padding:10px 1.5em;
	}
	#online_news ul li:nth-child(odd) {
		background:#eff0f1;
	}
	#online_news ul li:nth-child(even) {
		background:#fff;
	}
		#online_news ul li p {
			text-align:left;
			font-weight:bold;
		}
		#online_news ul li p span.update {
			margin-right:1.5em;
		}

@media screen and (max-width:767px) {
#online_news .main_news {
	display:block;
	width:95%;
	margin:20px auto 50px auto;
}
#online_news .main_news p {
	line-height:160%;
	text-align:left;
	margin:0.3em 0;
	padding:0;
}
}

/*--------------------------------------------
	News一覧
--------------------------------------------*/

#AllNews {
	width:100%;
	max-width:700px;
	box-sizing:border-box;
	padding:30px 0;
	margin:0 auto;
}
#AllNews .newsbox {
	width:100%;
	margin:50px auto;
	text-align:left;
}
	#AllNews .newsbox p.date {
		font-size:12px;
	}
	#AllNews .newsbox h3 {
		font-size:16px;
		font-weight:bold;
		margin:10px 0;
	}
	#AllNews .newsbox p.newstxt {
		font-size:14px;
		line-height:180%;
	}
		#AllNews .newsbox p.newstxt span {
			display:block;
			margin:10px auto;
		}

/*--------------------------------------------
	CHECKED ITEM
--------------------------------------------*/

.pickup,
.ranking {
	border-bottom: 1px solid #ccc;
}


.checked_wrap {
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	align-items:center;
	margin:0 auto;
}
.checked_wrap > div {
	width:24%;
	margin:0 0 1% 0;
}
.checked_wrap > div:nth-child(9) {
	display:none;
}

@media screen and (max-width:767px) {
.checked_wrap > div {
	width:32%;
	margin:0 0 1% 0;
}
.checked_wrap > div:nth-child(9) {
	display:block;
}
}


/*--------------------------------------------
	Instagram
--------------------------------------------*/

#insta_box {
	disaplay:block;
	width:100%;
	max-width:1000px;
	margin:50px auto 0px auto;
}
@media screen and (max-width:748px) {
#insta_box {
	disaplay:block;
	width:100%;
	margin:50px auto 100px auto;
}
}

/*--------------------------------------------
	footer
--------------------------------------------*/


footer {
	width:100%;
	height:103px;
	padding:40px 0 20px 0;
	background:#f0f0f0;
	position:absolute;
    bottom:0;
    left:0;
    right:0;
    top:auto;
}
#foot_menu {
	width:100%;
	max-width:1200px;
	display:flex;
	flex-wrap:nowrap;
	justify-content:space-between;
	align-items:center;
	margin:0 auto;
}
  .foot_menu_list {
  		width:70%;
  		max-width:1200px;
  }
  .cright {
  		width:30%;
      	font-size:80%;
      	text-align:right;
  }
    .foot_menu_list ul {
    		width:100%;
    		display:flex;
    		flex-wrap:nowrap;
    		justify-content:flex-start;
    }
      .foot_menu_list ul li {
      		font-size:80%;
      		margin:1% 1%;
      }

main { padding-bottom:50px; }

@media only screen and (max-width: 767px) {

.wrapper main {
	min-height:calc(100vh - 360px) !important;
}
#brandpage main {
	min-height:calc(100vh - 310px) !important;
}

footer {
	width:100%;
	height:250px;
	box-sizing:border-box;
	padding:40px 20px 60px 20px;
	background:#f0f0f0;
	margin-top: auto;
	position:absolute;
    bottom:0;
    left:0;
    right:0;
}
#foot_menu {
	width:100%;
	max-width:1200px;
	display:flex;
	flex-wrap:wrap !important;
	justify-content:space-between;
	align-items:center;
	margin:0 auto;
}
  .foot_menu_list {
  		width:100% !important;
  }
  .cright {
  		width:100% !important;
      	font-size:80%;
      	text-align:left;
  }
    .foot_menu_list ul {
    		width:100% !important;
    		display:flex;
    		flex-wrap:wrap;
    }
      .foot_menu_list ul li {
      		width:100%;
      		font-size:80%;
      		margin:1% 1%;
      }
}


.map_area {
position: relative;
padding-bottom: 56.25%;
padding-top: 30px;
height: 0;
overflow: hidden;
}
.map_area iframe,
.map_area object,
.map_area embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}



/*--------------------------------------------
	SHOP LIST
--------------------------------------------*/

h2.shop {
	font-size:30px;
	font-weight:bold;
	text-align:center;
}
h2.look {
	font-size:30px;
	font-weight:bold;
	text-align:center;
	margin-bottom:30px;
}
ul.arealist {
	display:flex;
	flex-wrap:nowrap;
	justify-content:center;
	align-items:center;
	margin-top:20px;
}
	ul.arealist > li {
		width:auto;
		padding:0 1.0em;
	}

.areablock {
	width:100%;
	margin:50px auto;
}
.areablock dl {
	width:100%;
	display:flex;
	flex-wrap:nowrap;
	justify-content:space-between;
	align-items:center;
}
.areablock dl.areatitle,
.areablock dl.areatitle dt {
	width:100%;
	background:#000;
	color:#fff;
}
.areablock dl.areatitle dt {
	padding:0.5em 1.0em;
	box-sizing:border-box;
}
.areablock dl.shoplist {
	padding:1.5em 0em 1.5em 1.0em;
	box-sizing:border-box;
	border-bottom: 1px solid #ccc;
}
	.areablock dl.shoplist dt {
		width:25%;
	}
	.areablock dl.shoplist dd.address {
		width:50%;
	}
	.areablock dl.shoplist dd.tell {
		width:11%;
	}


@media only screen and (max-width: 767px) {
ul.arealist {
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	align-items:center;
	margin-top:20px;
}
	ul.arealist > li {
		width:auto;
		padding:0 1.0em;
	}
.areablock dl.areatitle,
.areablock dl.areatitle dt {
}
.areablock dl.areatitle dt {
	padding:0.5em 1.0em;
	box-sizing:border-box;
}
.areablock dl.shoplist {
	padding:1.5em 1.0em 1.5em 1.0em;
	display:flex;
	flex-wrap:wrap;
	justify-content:space-beteen;
	align-items:flex-end;
}
	.areablock dl.shoplist dt {
		width:100%;
	}
	.areablock dl.shoplist dd.address {
		width:65%;
	}
	.areablock dl.shoplist dd.tell {
		width:30%;
		text-align:right;
	}

}


/*--------------------------------------------
	サイドメニュー有
--------------------------------------------*/

.list_wrap {
	width:100%;
	display:flex;
	flex-wrap:nowrap;
	justify-content:space-between;
	align-items:flex-start;
}
	.list_wrap .side_menu {
		width:28%;
	}
	.list_wrap .side_main {
		width:70%;
	}
	.list_wrap .side_menu .fs-c-listControl__status {
		margin-bottom:50px !important;
		color:#9f9f9f !important;
	}
@media only screen and (max-width: 767px) {
.list_wrap {
	width:100%;
	display:flex;
	flex-wrap:wrap;
}
	.list_wrap .side_menu {
		width:100%;
	}
	.list_wrap .side_main {
		width:100%;
	}
}

.fs-c-productList__controller {
	border-bottom:1px solid #000;
}
@media screen and (min-width: 768px) {
	.fs-c-productList__list {
		display:flex;
		flex-wrap:wrap;
		justify-content:flex-start;
		align-items:flex-start;
	}
	.fs-c-productList__list > article {
		width:calc(100% / 4);
		box-sizing:border-box;
		padding:5px;
		margin-bottom:30px;
	}
}
@media screen and (max-width: 767px) {
	.fs-c-productList__list {
		display:flex;
		flex-wrap:wrap;
		justify-content:flex-start;
		align-items:flex-start;
	}
	.fs-c-productList__list > article {
		width:calc(100% / 3);
		box-sizing:border-box;
		padding:10px;
		margin-bottom:30px;
	}
}
@media screen and (max-width: 467px) {
	.fs-c-productList__list {
		display:flex;
		flex-wrap:wrap;
		justify-content:flex-start;
		align-items:flex-start;
	}
	.fs-c-productList__list > article {
		width:calc(100% / 2);
		box-sizing:border-box;
		padding:10px;
		margin-bottom:30px;
	}
}




/*--------------------------------------------
	テキストニュース
--------------------------------------------*/
.main_news {
	display:block;
	width:100%;
	max-width:700px;
	margin:20px auto 80px auto;
}
.main_news p {
	line-height:180%;
	text-align:left;
	margin:0;
	padding:0;
}
.main_news p span {
	margin-right:0.5em;
}
.pc-none { display:none; }

@media screen and (max-width:768px) {
.main_news {
	display:block;
	width:95%;
	margin:20px auto 50px auto;
}
.main_news p {
	line-height:160%;
	text-align:left;
	margin:0.3em 0;
	padding:0;
}
.pc-none { display:block; }
}



/*--------------------------------------------
	▲page-top
--------------------------------------------*/

#page-top {
    position: fixed;
    bottom: 0;
    right: 0;
    font-size: 80%;
    z-index:99999;
}
#page-top a {
    background: #000;
    text-decoration: none;
    color: #fff;
    width: 20px;
    height:100px;
    padding: 15px;
    text-align: center;
    display: block;
}
#page-top a:hover {
    text-decoration: none;
    background: #999;
}
#page-top p {
	width: 10px;
	height: 60px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	position: absolute;
	left: 25% !important;
	top: 20% !important;
	transform: skewY(135deg);
}
/*	#page-top p:before {
		position: absolute;
		left: 50%;
	    top: 50%;
	    -webkit-transform: translate(-50%, -50%);
	    -ms-transform: translate(-50%, -50%);
	    transform: translate(-50%, -50%);
		display: block;
		content: "";
		width: 1px;
		height: 70px;
		background: #000;
	}
	#page-top p.more_right:after {
		position: absolute;
		right: 1px;
		top: 7px;
		display: block;
		content: "";
		width: 11px;
		height: 11px;
		border-right: 0px solid #000;
		border-top: 1px solid #000;
		transform: rotate(-45deg);
	} */

@media screen and (max-width:767px) {
#page-top {
    position: fixed;
    bottom: 0px !important;
    right: 0px !important;
    font-size: 80%;
    z-index:9999;
}
#page-top a {
    background: #000;
    text-decoration: none;
    color: #fff;
    width: 40px;
    padding: 15px 0;
    text-align: center;
    display: block;
}
#page-top a:hover {
    text-decoration: none;
    background: #999;
}
}

/*--------------------------------------------
	movie size【商品詳細ページ】
--------------------------------------------*/

.movie_res {
	position: relative;
	width: 100%;
	height: 0;
	padding-top: 57%;
}
.movie_res iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
/*--------------------------------------------
	リンク【商品詳細ページ】
--------------------------------------------*/
.sp_link a {
	color: #182fd6;
	text-decoration: underline;
}


