/*============ 共通項目 ==============*/

@media only screen and (min-width:840px){*.sp{display:none !important;}}
@media only screen and (mas-width:840px){*.pc{display:none !important;}}

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&display=swap');

header *,
.fs-body-top main .fs-l-pageMain *,
.fs-body-top main .fs-l-pageMain *:hover,
.fs-body-top main .fs-l-pageMain *:link,
footer * {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: min(3.5vw , 18px);
	font-weight: 400;
	line-height: 1.7;
	color: #4e484b;
}


a img{
	opacity:1;
	transition: .6s ease-out;
	}
	
a:hover img{
	opacity:.6;
	}

/*============ header 調整用　==============*/

.fs-l-page header {
	width: 100%;
	height: 35vw;
	max-height: 220px;
}

.fs-l-page header .hWrap{
	display: flex;
	justify-content: center;
	width: 100%;
	padding: min(1vw , 7px) 0 min(18vw , 70px);
	position: fixed;
	top: 0;
	left: 0;
	z-index: 5;
	background: #fff;
	}

.fs-l-page header h1 {
	width: 30vw;
	max-width: 300px;
}
.fs-l-page header nav:not(.gNav){
	position: absolute;
	right: 0;
	}
.fs-l-page header nav ul {
	width: 30vw;
	max-width: 280px;
	display: flex;
	justify-content: space-evenly;
	max-height: 80px;
	height: 15vw;
}
.fs-l-page header nav:not(.gNav) ul li {
	width: 50%;
	position: relative;
}
.fs-l-page header nav:not(.gNav) ul li{}
.fs-l-page header nav:not(.gNav) ul li + li{margin-top:0;}
.fs-l-page header nav:not(.gNav) ul li a {
	padding-top: min(9vw , 50px);
	display: block;
	text-align: center;
	color: #4e484b;
	font-size: min(3vw , 18px);
}
.fs-l-page header nav:not(.gNav) ul li a::before {
	content: "";
	background: no-repeat center top / 100%;
	width: 8vw;
	max-width: 50px;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	margin: auto;
	max-height: 8vw;
	height: 50px;
}
.fs-l-page header nav:not(.gNav) ul li:nth-of-type(1) a::before {background-image: url(https://kenbido.itembox.design/item/img/common/h-icon_01.png);}
.fs-l-page header nav:not(.gNav) ul li:nth-of-type(2) a::before {background-image: url(https://kenbido.itembox.design/item/img/common/h-icon_02.png);}

.fs-l-page header nav.gNav {
	background: #b4bf5f;
	position: absolute;
	right: 0;
	bottom: 0;
	width: 100%;
	padding: min(1vw , 7px) 0;
}
.fs-l-page header nav.gNav ul {
	width: 100%;
	max-width: 1000px;
	margin: auto;
	display: flex;
	justify-content: space-evenly;
	height: 13vw;
	max-height: 70px;
}
.fs-l-page header nav.gNav ul li {
	position: relative;
	width: calc(100% / 5);
}
.fs-l-page header nav.gNav ul li + li {
	margin-top: 0;
	border-left: 1px #fff solid;
}
.fs-l-page header nav.gNav ul li a {
	color: #fff;
	font-weight: 400;
	font-size: min(3vw , 16px);
	line-height: 1;
	padding-top: min(9vw , 50px);
	display: block;
	text-align: center;
}
.fs-l-page header nav.gNav ul li a::before {
	content: "";
	background: no-repeat center top / 100%;
	width: 8vw;
	max-width: 45px;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	margin: auto;
	height: 8vw;
	max-height: 45px;
}
.fs-l-page header nav.gNav ul li:nth-of-type(1) a::before {background-image: url(https://kenbido.itembox.design/item/img/common/h-icon_03.png);}
.fs-l-page header nav.gNav ul li:nth-of-type(2) a::before {background-image: url(https://kenbido.itembox.design/item/img/common/h-icon_04.png);}
.fs-l-page header nav.gNav ul li:nth-of-type(3) a::before {background-image: url(https://kenbido.itembox.design/item/img/common/h-icon_05.png);}
.fs-l-page header nav.gNav ul li:nth-of-type(4) a::before {background-image: url(https://kenbido.itembox.design/item/img/common/h-icon_06.png);}
.fs-l-page header nav.gNav ul li:nth-of-type(5) a::before {background-image: url(https://kenbido.itembox.design/item/img/common/h-icon_07.png);}

.fs-l-page header nav.gNav ul li a::after {content:""; width:1px background:#fff; height:40%;}
.fs-l-page header nav.gNav ul li:nth-of-type(5) .fs-p-searchForm {
	display: none;
	position: relative;
	z-index: 5;
	bottom: max(-1vw , -10px);
}

.fs-l-page header.fixed {}
.fs-l-page header.fixed .hWrap {
	display: flex;
	justify-content: center;
	width: 100%;
	padding: min(1vw , 7px) 0 min(10vw , 40px);
	position: fixed;
	top: 0;
	left: 0;
	z-index: 5;
	background: rgba(255,255,255 , .7);
}

.fs-l-page header.fixed h1 {
	width: 15vw;
	max-width: 150px;
	margin-bottom: 0;
}
.fs-l-page header.fixed nav ul {
	width: 35vw;
	max-width: 280px;
	display: flex;
	justify-content: space-evenly;
	max-height: 40px;
	height: 15vw;
	margin-top: 0;
}

.fs-l-page header.fixed nav:not(.gNav) ul li a::before {
	content: "";
	width: 5vw;
	max-width: 35px;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	right: initial;
	margin: auto;
	max-height: 8vw;
	height: 35px;
}

.fs-l-page header.fixed nav:not(.gNav) ul li a {
	padding-top: min(1vw , 5px);
	display: block;
	text-align: center;
	color: #4e484b;
	font-size: min(3vw , 14px);
}

.fs-l-page header.fixed nav:not(.gNav) ul li a::before {
	content: "";
	width: 5vw;
	max-width: 35px;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	right: initial;
	margin: auto;
	max-height: 8vw;
	height: 35px;
}

.fs-l-page header.fixed nav.gNav ul {
	width: 100%;
	max-width: 1000px;
	margin: auto;
	display: flex;
	justify-content: space-evenly;
	height: 10vw;
	max-height: 28px;
}
.fs-l-page header.fixed nav.gNav ul li a {
	color: #fff;
	font-weight: 400;
	font-size: min(3vw , 16px);
	line-height: 1;
	padding-top: min(1vw , 4px);
	display: block;
	text-align: center;
}
.fs-l-page header.fixed nav.gNav ul li a::before {
	content: "";
	width: 4vw;
	max-width: 25px;
	display: block;
	position: absolute;
	top: 0;
	left: min(1vw , 10px);
	right: initial;
	margin: auto;
	height: 4vw;
	max-height: 25px;
}

.fs-l-page header div.menu {
	width: calc(100% - 41.09375vw - 45.540540540540vw);
	height: 14vw;
	left: min(4vw , 150px);
	padding: min(1vw , 7px);
	max-width: 100px;
	max-height: 100px;
	position: fixed;
	top: 2vw;
	z-index: 6;
	background: rgba(255,255,255,.8);
}

.fs-l-page header div.menu #menuButton {
	overflow: hidden;
	display: block;
	position: relative;
	z-index: 0;
	width: 100%;
	height: 12vw;
	cursor: pointer;
	max-height: 100px;
}

.fs-l-page header div.menu #menuButton span,
.fs-l-page header div.menu #menuButton:before,
.fs-l-page header div.menu #menuButton:after{
	display: block;
	position: absolute;
	top:0;
	bottom: 0;
	left:0;
	right: 0;
	width: 100%;
	height: 2px;
	margin: auto;
	background: #000;
	-webkit-transition: .5s ease-in-out;
	 transition: all .5s  ease-in;
}

.fs-l-page header div.menu #menuButton span{
	overflow: hidden;
	z-index: 1;
	color: #fff;
}

.fs-l-page header div.menu #menuButton::before {
	z-index: 2;
	transform: rotate(0deg);
	top: min(7vw , 50px);
	content: "";
}

.fs-l-page header div.menu #menuButton::after {
	z-index: 2;
	transform: rotate(0deg);
	top: max(-7vw , -50px);
	content: "";
}

.fs-l-page header div.menu #menuButton span{
	transform:rotate(0deg) translateX(0px);
}

.fs-l-page header div.menu #menuButton:before,
.fs-l-page header div.menu #menuButton:after{
	transition: transform 500ms;
}

.fs-l-page header div.menu.active #menuButton span{
	transform:translateX(-100px);
	top:0;
}

.fs-l-page header div.menu.active #menuButton:before,
.fs-l-page header.fixed div.menu.active #menuButton:before{
	transform:rotate(135deg);
	top:0;
}

.fs-l-page header div.menu.active #menuButton::after,
.fs-l-page header.fixed div.menu.active #menuButton::after {
	transform: rotate(-135deg);
	top: 0;
}

.fs-p-drawer__buttonContainer {
	display: none;
}


/*============ footer 調整用　==============*/

.fs-l-page footer {
	width: 100%;
	margin: auto;
	text-align: center;
	background-color: initial;
}
.fs-l-page footer h2 {
	color: #648c69;
	font-size: min(5vw , 36px);
	font-weight: bold;
	position: relative;
	padding-bottom: min(3vw , 30px);
}
.fs-l-page footer h2:before {
	content: "SHOPPING GUIDE";
	color: #bfd7c1;
	font-size: min(3vw , 18px);
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
	bottom: 0;
}
.fs-l-page footer h2:after {
	content: "";
	height: 2px;
	width: 7%;
	background-color: #bfd7c1;
	display: block;
	position: absolute;
	left: 0;
	right: 0;
	bottom: max(-1.5vw , -20px);
	margin: auto;
}
.fs-l-page footer > ul:not(.sns) {
	max-width: 1000px;
	padding: min(3vw , 30px) 0 0;
	margin: auto;
	border-bottom: #f3f3f3 solid 2px;
	margin-bottom: min(3vw , 30px);
}
.fs-l-page footer > ul:not(.sns) > li {
	padding: min(2vw , 10px) min(5vw , 50px);
	position: relative;
	margin-top:min(2vw , 20px);
	padding-top:min(2vw , 20px);
	border-top:#f3f3f3 solid 2px;
}

.fs-l-page footer > ul:not(.sns) > li::after {
	content: "";
	background: #d9cdc1;
	width: 15vw;
	height: 15vw;
	display: block;
	max-width: 40px;
	max-height: 40px;
	border-radius: 100%;
	position: absolute;
	right: min(3.3vw , 43px);
	top: min(4.8vw , 46px);
	z-index: -1;
}

.fs-l-page footer > ul:not(.sns) > li h3 {
	font-size: min(4vw , 25px);
	font-weight: 700;
	text-align: left;
	padding-left: min(10vw , 60px);
	background: url(https://kenbido.itembox.design/item/img/top/t-icon_01.png) no-repeat left center/auto 100%;
	position: relative;
	cursor: pointer;
}

.fs-l-page footer > ul:not(.sns) > li h3::before {
	content: "";
	transition: .7s ease-in;
	position: absolute;
	top: min(2vw , 20px);
	bottom: 0;
	right: 0;
	transform: rotate(90deg);
	height: 2px;
	background: #fff;
	width: 25px;
	top: 0;
	margin: auto;
}
.fs-l-page footer > ul:not(.sns) > li h3::after {
	content: "";
	transition: .4s ease-out;
	position: absolute;
	top: min(2vw , 20px);
	bottom: 0;
	right: 0;
	transform: rotate(0deg);
	height: 2px;
	background: #fff;
	width: 25px;
	top: 0;
	margin: auto;
}
.fs-l-page footer > ul:not(.sns) > li h3.active::before {transform: rotate(-180deg);}
.fs-l-page footer > ul:not(.sns) > li h3.active::after {width:0;}

.fs-l-page footer > ul:not(.sns) > li div.textWrap{display:none;}
.fs-l-page footer > ul:not(.sns) > li div.textWrap h4 {
	color: #648c69;
	font-size: min(3.5vw , 22px);
	font-weight: 700;
	text-align: left;
	margin: min(3vw, 30px) auto auto;
}
.fs-l-page footer > ul:not(.sns) > li div.textWrap p {
	font-size: min(3.5vw , 21px);
	color: #848183;
	text-align: left;
}
.fs-l-page footer > ul:not(.sns) > li div.textWrap p.line {
	border-left: #648c69 2px solid;
	margin-left: min(2vw , 20px);
	padding: min(1vw , 10px) min(2vw , 20px);
	color: #848183;
}

.fs-l-page footer > ul:not(.sns) > li div.textWrap p strong {
	color: #e4751a;
	font-weight: 700;
	font-size: min(3.5vw , 21px);
}
.fs-l-page footer > ul:not(.sns) > li div.textWrap p + h4{}
.fs-l-page footer > ul:not(.sns) > li div.textWrap p a,
.fs-l-page footer > ul:not(.sns) > li div.textWrap ul li a{font-size: min(3.5vw , 21px); color: #848183; text-decoration: underline;}
.fs-l-page footer > ul:not(.sns) > li div.textWrap p span {
	font-size: min(3.5vw , 21px);
	color: #848183;
	text-align: left;
	display: inline-block;
	width: 15vw;
	max-width: 100px;
}
.fs-l-page footer > ul:not(.sns) > li div.textWrap > ul:not(.info){
	list-style: none;
	margin: 0;
	padding: 0;
	width: 100%;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	flex-wrap: wrap;
}
.fs-l-page footer > ul:not(.sns) > li div.textWrap ul:not(.info) > li {
	border: #ededed solid 4px;
	width: 30%;
	margin: 1.5%;
}
.fs-l-page footer > ul:not(.sns) > li div.textWrap ul:not(.info) > li a {
	color: #848183;
	font-size: min(3.5vw , 21px);
	position: relative;
	text-align: left;
	padding: min(2vw , 20px) min(5vw , 50px) min(2vw , 20px) min(2vw , 20px);
	height: 15vw;
	max-height: 110px;
	display: flex;
	align-items: center;
}
.fs-l-page footer > ul:not(.sns) > li div.textWrap ul:not(.info) > li a::after {
	content: "";
	background: url(https://kenbido.itembox.design/item/img/top/t-arrow_01.png) no-repeat center;
	width: 40px;
	height: 15px;
	display: block;
	position: absolute;
	right: min(2vw , 20px);
	bottom: 0;
	top: 0;
	margin: auto;
}

.fs-l-page footer > ul:not(.sns) > li div.textWrap > address {
	color: #848183;
	font-style: normal;
	text-align: left;
}
.fs-l-page footer > ul:not(.sns) > li div.textWrap > ul.info {
	padding: 0;
	list-style: none;
	margin: min(2vw , 20px) auto;
}
.fs-l-page footer > ul:not(.sns) > li div.textWrap > ul.info li {
	text-align: left;
	margin: min(1vw , 7px);
}
.fs-l-page footer > ul:not(.sns) > li div.textWrap > ul.info li a{}
.fs-l-page footer > ul:not(.sns) > li div.textWrap > ul.info li span{
	font-size: min(3.5vw , 21px);
	color: #848183;
	text-align: left;
	display: inline-block;
	width: 15vw;
	max-width: 100px;
	font-weight:700;
}

.fs-l-page footer > nav.fNav {
	background: #f9f9f4;
	padding: min(2vw , 20px) 0;
}
.fs-l-page footer > nav.fNav ul {
	max-width: 1000px;
	margin: auto;
	width: 90%;
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
}
.fs-l-page footer > nav.fNav ul li {
	width: calc(100% / 4);
}
.fs-l-page footer > nav.fNav ul li + li {
	border-left: #e9e9d4 solid 1px;
	margin: 0;
}
.fs-l-page footer > nav.fNav ul li a{
	color: #848183;
	font-size: min(3.5vw , 21px);
	position: relative;
	text-align: left;
	padding: min(2vw , 20px) min(5vw , 50px) min(2vw , 20px) min(2vw , 20px);
	height: 15vw;
	max-height: 110px;
	display: flex;
	align-items: center;
	}
.fs-l-page footer > nav.fNav ul li a:before{
	content: "";
	background: url(https://kenbido.itembox.design/item/img/top/t-arrow_01.png) no-repeat center;
	width: 40px;
	height: 15px;
	display: block;
	position: absolute;
	right: min(2vw , 20px);
	bottom: 0;
	top: 0;
	margin: auto;
}
.fs-l-page footer > ul.sns {
	background: #4e484b;
	margin: auto;
	padding: min(3vw , 30px) 30%;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.fs-l-page footer > ul.sns li {
	width: calc(100% / 3);
}
.fs-l-page footer > ul.sns li + li{border-left:1px #fff solid; margin-top:0;}
.fs-l-page footer > ul.sns li a {
	color: #fff;
	font-size: min(3.5vw , 21px);
	position: relative;
	text-align: left;
	padding: 0 min(1vw , 10px) 0 min(8vw , 70px);
	height: 15vw;
	max-height: 60px;
	display: flex;
	align-items: center;
}
.fs-l-page footer > ul.sns li a::before {
	content: "";
	width: 5vw;
	height: 5vw;
	max-width: 40px;
	max-height: 40px;
	position: absolute;
	background: no-repeat center / 100%;
	left: min(2vw , 20px );
	top: 0;
	bottom: 0;
	margin: auto;
}
.fs-l-page footer > ul.sns li:nth-of-type(1) a::before {background-image:url(https://kenbido.itembox.design/item/img/common/f-icon_03.png);}
.fs-l-page footer > ul.sns li:nth-of-type(2) a::before {background-image:url(https://kenbido.itembox.design/item/img/common/f-icon_04.png);}
.fs-l-page footer > ul.sns li:nth-of-type(3) a::before {background-image:url(https://kenbido.itembox.design/item/img/common/f-icon_02.png);}
.fs-l-page footer > small {
	background: #4e484b;
	display: block;
	color: #fff;
	padding: 0 0 min(1.5vw , 17px);
}
.fs-l-page footer > small a{color: #fff;}
.fs-l-page footer > p.toTop {
	position: fixed;
	right: min(1vw , 10px);
	bottom: 0;
	width: 10vw;
	max-width: 120px;
}
.fs-l-page footer > p.toTop a{}
.fs-l-page footer > p.toTop a img{}


@media only screen and (max-width:840px){

/*============ header 調整用　==============*/
.fs-l-page header h1 {
	width: 35vw;
	max-width: 300px;
	margin: 4vw auto 0;
}

.fs-l-page header nav ul {
	margin: min(1vw , 5px) auto;
}
.fs-l-page header.fixed h1 {
	width: 25vw;
	max-width: 150px;
	margin-bottom: 0;
	margin: 1vw auto;
}
.fs-l-page header.fixed div.menu {
	width: 9vw;
	height: 7vw;
	left: min(4vw , 150px);
	padding: min(1vw , 7px);
	max-width: 100px;
	max-height: 100px;
	position: fixed;
	top: 2vw;
	z-index: 6;
	background: rgba(255,255,255,.8);
}

.fs-l-page header.fixed div.menu #menuButton {
	overflow: hidden;
	display: block;
	position: relative;
	z-index: 0;
	width: 100%;
	height: 5vw;
	cursor: pointer;
	max-height: 100px;
}

.fs-l-page header.fixed div.menu #menuButton::before {
	z-index: 2;
	transform: rotate(0deg);
	top: 4vw;
	content: "";
}

.fs-l-page header.fixed div.menu #menuButton::after {
	z-index: 2;
	transform: rotate(0deg);
	top: -4vw;
	content: "";
}

.fs-l-page header.fixed nav:not(.gNav) ul li a {
	padding-top: 4vw;
	display: block;
	text-align: center;
	color: #4e484b;
	font-size: min(2.5vw , 14px);
}
.fs-l-page header.fixed nav:not(.gNav) ul li a::before {
	content: "";
	width: 5vw;
	max-width: 35px;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	margin: auto;
	max-height: 8vw;
	height: 35px;
}

.fs-l-page header.fixed nav.gNav ul {
	width: 100%;
	max-width: 1000px;
	margin: auto;
	display: flex;
	justify-content: space-evenly;
	height: 10vw;
	max-height: 35px;
}

.fs-l-page header.fixed nav.gNav ul li a {
	color: #fff;
	font-weight: 400;
	font-size: min(3vw , 16px);
	line-height: 1;
	padding-top: 5vw;
	display: block;
	text-align: center;
}
.fs-l-page header.fixed nav.gNav ul li a {
	color: #fff;
	font-weight: 400;
	font-size: min(2.5vw , 16px);
	line-height: 1;
	padding-top: 5vw;
	display: block;
	text-align: center;
}

.fs-l-page header.fixed nav.gNav ul li a::before {
	content: "";
	width: 4vw;
	max-width: 25px;
	display: block;
	position: absolute;
	top: 0;
	left: min(1vw , 10px);
	right: 0;
	margin: auto;
	height: 4vw;
	max-height: 25px;
}

.fs-l-page header nav.gNav ul li:nth-of-type(5) .fs-p-searchForm {
	display: none;
	position: relative;
	z-index: 5;
	bottom: max(-2vw , -10px);
	width: 100vw;
	right: 80vw;
}
.fs-p-drawer {
	transform: translateX(-101%) !important;
	padding-top: 20vw;
	z-index: 5;
}

.open .fs-p-drawer{transform: translateX(0%) !important;}


/*============ footer 調整用　==============*/

.fs-l-page footer > ul:not(.sns) > li div.textWrap ul:not(.info) > li {
	border: #ededed solid 4px;
	width: 48%;
	margin: 1%;
}

.fs-l-page footer > nav.fNav ul li {
	width: calc(100% / 2);
}
.fs-l-page footer > nav.fNav ul li + li {
	border-left:none;
}
.fs-l-page footer > nav.fNav ul li:nth-of-type(odd) {
	border-right: #e9e9d4 solid 1px;
	}

.fs-l-page footer > nav.fNav ul li:nth-of-type(n+3) {
	border-top: #e9e9d4 solid 1px;
	}

.fs-l-page footer > ul.sns {
	background: #4e484b;
	margin: auto;
	padding: min(3vw , 30px);
	display: flex;
	justify-content: space-between;
	align-items: center;
}


}