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

body{
	font-family: 'Zen Kaku Gothic Antique', sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 14px;
	color: #000000;
	letter-spacing: 0.06em;
	line-height: 1.5;
	margin: 0;
	padding: 0;
}
.font_en{
	font-family: "Gill Sans", "Gill Sans MT", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}
a{
	color: #000000;
	transition: .4s ease all;
	text-decoration: none;
}
a:hover{
	color: #666;
}
.pc_only {
	display: block !important;
}
.sp_only {
	display: none !important;
}
.header_banner li{
	text-align: center;
	padding: 10px 0;
}
.header_banner li a{
	color: #000;
	line-height: 1.5;
	font-weight: 500;
}
.header_banner li:nth-child(odd){
	background: #98CFD9;
}
.header_banner li:nth-child(even){
	background: #98CFD9;
}
.fixed_pad_gfe{
	height: 0px;
}
.fixed_pad_gfe.header_pad_gfe{
	height: 71px;
	transition: .4s ease all;
}
.header_gfe{
	width: 100%;
	border-bottom: 1px solid #000000;
	background-color: #fff;
	z-index: 100;
    position: relative;
}
.header_gfe_inner{
	width: 1200px;
	margin: 0 auto;
	padding: 11px 0;
	display: flex;
	font-weight: 400;
}
.header_gfe.header_fixed{
	position: fixed;
	top: 0;
	left: 0;
}

.header_gfe h1{
	width: 214px;
	margin: 0 77px 0 0;
}
.header_gfe h1 a{
	line-height: 1px;
}
.header_gfe .gnav{
	width: 689px;
	padding: 15px 78px 10px 0;
	position: relative;
	font-weight: 500;
}
.accordion-menu {
	display: flex;
	justify-content: flex-start;
	column-gap: 60px;
	position: absolute;
}
.accordion-menu li {
    position: relative;
}
.accordion-menu a {
}
.accordion-menu a:hover {
}
.accordion-menu li:hover .sub-menu {
	max-height: calc(100vh - 110px);
	overflow: auto;
}
.sub-menu {
    list-style: none;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease-out;
	margin: 0 0 0 -25px;
	padding: 0 0 0 0;
	position: absolute;
	width: 200px;
	top: 18px;
	left: 0;
}
.sub-menu li {
	font-size: 11px;
	font-weight: 500;
	background-color: #fff;
	padding: 15px 25px 0 25px;
}
.sub-menu li a{
	line-height: 1.2;
}
.sub-menu li p{
	font-size: 11px;
	font-weight: 200;
	padding: 10px 0px 0 15px;
	font-family: "Gill Sans", "Gill Sans MT", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}
.sub-menu li:last-child{
	padding: 15px 25px 25px 25px;
}
.sub-menu a {
}
.sub-menu a:hover {
}
.gnav_accordion {
    width: 100%;
}
.gnav_accordion-item {
}
.gnav_accordion-item .gnav_accordion-title {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 8px 0 0;
    cursor: pointer;
}
.gnav_accordion-item:first-child .gnav_accordion-title {
    padding: 0 0 0;
}
.gnav_accordion-item .gnav_accordion-title:hover {
}

.gnav_accordion-content {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.5s ease;
    padding: 0 0 0 0px;
}
.gnav_accordion-content:first-child a{
	margin: 30px 0 0 0;
}
.gnav_accordion-content:last-child a{
	margin: 0 0 15px 0;
}

.gnav_accordion-content p {
    margin: 0px 0;
}

.gnav_accordion-icon {
    display: inline-block;
    transition: transform 0.5s ease;
}

.gnav_accordion-icon::before {
    content: '+';
    font-size: 14px;
    display: inline-block;
    transition: transform 0.5s ease;
}

.gnav_accordion input[type="checkbox"] {
    display: none;
}

.gnav_accordion input[type="checkbox"]:checked ~ .gnav_accordion-title .gnav_accordion-icon::before {
    content: '−';
}

.gnav_accordion input[type="checkbox"]:checked ~ .gnav_accordion-title .gnav_accordion-icon {
    transform: rotate(180deg);
}

.gnav_accordion input[type="checkbox"]:checked ~ .gnav_accordion-content {
    max-height: 200px; /* コンテンツの高さに合わせて調整 */
}








.header_gfe .subnav{
	width: 220px;
	font-size: 10px;
}
.header_gfe .subnav dl{
	display: flex;
	justify-content: flex-end;
	align-items: flex-end;
	column-gap: 13px;
}
.header_gfe .subnav dt{
	width: 114px;
	padding: 0 0 5px 0;
}
.header_gfe .subnav dd{
	width: 40px;
	text-align: center;
	position: relative;
}
.header_gfe .subnav dd img{
	width: 28px;
}
.header_gfe .subnav dd:last-child img{
	width: 31px;
}
.header_gfe .subnav dd span{
	letter-spacing: 0;
}
.header_gfe .subnav dd small{
	position: absolute;
	top: 2px;
    right: 17px;
	background-color: #ee3147;
    color: #fff;
    width: 15px;
    height: 15px;
}
.header_gfe .subnav form{
    border:none;
	position: relative;
}
.header_gfe .subnav input[type="text"]{
    border: none;
    border-bottom: 1px solid #000;
    padding: 0;
    margin: 0;
    min-height: unset;
    line-height: 1;
	border-radius: 0;
	width: 100%;
	height: 40px;
	outline: none;
	font-size: 14px;
}
.header_gfe .subnav button{
    background: none;
    border: none;
    position: absolute;
    bottom: 5px;
    right: 0;
    padding: 0;
    margin: 0;
	cursor: pointer;
}



.common_ttl{
	text-align: center;
	font-family: "Gill Sans", "Gill Sans MT", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	font-size: 22px;
	padding: 65px 0 40px 0;
	display: flex;
	justify-content: center;
	align-items: center;
}
#item_group #fs-recommend--flick .common_ttl,
#item_page #fs-recommend--flick .common_ttl{
		padding: 30px 0 0px 0;
}
.common_ttl p{
	padding: 0 10px 0 0;
	font-weight: 400;
	letter-spacing: 0.12em;
}
.common_ttl span{
	font-family: 'Zen Kaku Gothic Antique', sans-serif;
	font-weight: 400;
}
.common_btn{
    width: 380px;
    height: 60px;
	margin: 40px auto ;
    position: relative;
    box-sizing: border-box;
    overflow: hidden;
	background-color: #5E5E5E;
	border-radius: 10px;
}
.common_btn a{
	width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    transition: all .5s ease;
    z-index: 2;
	color: #fff;
}
.common_btn_anime {
	width: 100%;
    height: 100%;
    background: #717171;
    position: absolute;
    top: 0;
    left: -100%;
    transition: all .5s ease;
    z-index: 1;
}
.common_btn:hover .common_btn_anime{
	left:0 !important;
	opacity: 1;
}
.common_btn a:hover{
	opacity: 1;
}
.footer_gfe{
	border-top: 1px solid #5E5E5E;
	padding: 55px 0 100px 0;
}
.footer_gfe img{
	width: 100%;
}
.footer_gfe .footer_gfe_inner{
	width: 670px;
	margin: 0 auto;
}
.footer_gfe .footer_nav_gfe{
	display: flex;
	column-gap: 126px;
	padding: 0 0 78px 0;
}
.footer_gfe .footer_nav_gfe li a{
	font-size: 14px;
	line-height: 2.4;
	font-weight: 400;
}
.footer_gfe .footer_logo_gfe{
	width: 515px;
	margin: 0 auto;
	display: flex;
	column-gap: 80px;
	align-items: center;
}
.footer_gfe .footer_logo_gfe li:first-child{
	width: 324px;
}
.footer_gfe .footer_logo_gfe li:last-child{
	width: 111px;
	padding: 0 0 18px 0;
}
.fs-c-productMark{
	padding: 6px 0 0 0;
	column-gap: 3px;
}
.fs-c-productMark{
	padding: 6px 0 0 0;
}
.fs-c-productMarks .mark-chips{
	width: 15px;
	height: 15px;
	border-radius: 50%;
}
#item_page .mark-chips{
	display: none;
}
.fs-c-productListItem__outOfStock.fs-c-productListItem__notice.fs-c-productStock{
	font-size: 10px;
	font-weight: 700;
	color: #fff;
	background-color: #707070;
	display: inline-block;
	padding: 1px 4px 2px;
	margin: 0 0 3px 0;
}
.sub_page.content.w_short{
    width: 700px;
}
@media screen and (max-width: 780px) {
	.pc_only {
		display: none !important;
	}
	.sp_only {
		display: block !important;
	}
	.fixed_pad_gfe.header_pad_gfe{
		height: 58px;
	}
	#menuButton_formenu {
		display: block;
		all: unset;
		display: inline-block;
		box-sizing: border-box;
		cursor: pointer;
		padding: 0 0 4px 0;
	}
	#menuButton_formenu img{
		width: auto;
	}
	#menuButton_formenu span{
		display: block;
		font-size: 10px;
		font-weight: 500;
	}
	#megaMenu_formenu {
		position: fixed;
		top: 150%;
		left: 0;
		width: 100%;
		background-color: #fff;
		box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
		transition: top 0.3s ease;
		height: 100vh;
		z-index: 100;
	}
	#megaMenu_formenu .common_btn{
		margin: 20px auto 20px;
	}
	#megaMenu_formenu .sub-menu {
		list-style: none;
		max-height: calc(100dvh - 190px);
		overflow: auto;
		transition: max-height 0.3s ease-out;
		margin: 0 0 0 -25px;
		padding: 0 0 0 0;
		position: absolute;
		width: 100%;
		top: auto;
		left: auto;
	}
	#megaMenu_formenu .sub-menu li{
		font-size: 16px;
		font-weight: 400;
		padding: 18px 25px 0 25px;
	}
	#megaMenu_formenu .gnav_accordion-item .gnav_accordion-title {
		padding: 14px 0 0;
	}
	#megaMenu_formenu .gnav_accordion-item:first-child .gnav_accordion-title {
		padding: 0 0 0;
	}
	#megaMenu_formenu .gnav_accordion-content {
		padding: 0 0 0 0px;
	}
	#megaMenu_formenu .gnav_accordion-content:first-child a{
		margin: 30px 0 0 0;
	}
	#megaMenu_formenu .gnav_accordion-content:last-child a{
		margin: 0 0 15px 0;
	}
		
	.sub-menu li p {
		font-size: 13px;
		font-weight: 300;
	}
	#megaMenu_formenu .menu-content_formenu {
		padding: 20px;
		position: relative;
	}
	#megaMenu_formenu .close-button_formenu {
		position: absolute;
		top: 20px;
		left: 15px;
		width: 23px;
		padding: 0;
		background: none;
		border: none;
		cursor: pointer;
	}
	#megaMenu_formenu .close-button_formenu img{
		width: 100%;
	}
	#menuButton_forsearch {
		display: block;
		all: unset;
		display: inline-block;
		box-sizing: border-box;
		cursor: pointer;
	}
	#menuButton_forsearch span{
		display: block;
		font-size: 10px;
		font-weight: 500;
	}
	#megaMenu_forsearch {
		position: fixed;
		top: -150%;
		left: 0;
		width: 100%;
		background-color: #fff;
		box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
		transition: top 0.3s ease;
		height: 100vh;
		z-index: 100;
	}
	#megaMenu_forsearch .menu-content_forsearch {
		padding: 20px;
		position: relative;
	}
	#megaMenu_forsearch .close-button_forsearch {
		position: absolute;
		top: 20px;
		left: 15px;
		width: 23px;
		padding: 0;
		background: none;
		border: none;
		cursor: pointer;
	}
	#megaMenu_forsearch .close-button_forsearch img{
		width: 100%;
	}
	#megaMenu_forsearch .megasearch_ttl{
		padding: 10px 0 20px 0;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	#megaMenu_forsearch .megasearch_ttl img{
		width: 100%;
	}
	#megaMenu_forsearch .megasearch_ttl p{
		padding: 0 7px 0 0;
		width: 25px;
	}
	#megaMenu_forsearch .megasearch_ttl span{
		display: block;
		font-size: 16px;
		font-weight: 400;
		padding: 0 0 5px 0;
	}
	#megaMenu_forsearch .fs-p-productSearch {
		border-bottom: 0px solid #4d4d4d;
	}
	#megaMenu_forsearch .accordion-content{
		display: block;
		padding: 0px 0 10px 0;
	}
	#megaMenu_forsearch .fs-c-checkboxGroup {
		flex-direction: row;
		flex-wrap: wrap;
	}
	#megaMenu_forsearch .fs-c-checkboxGroup > * {
        flex-basis: unset;
        width: 43%;
    }
	#megaMenu_forsearch td.fs-c-inputTable__dataCell{
		margin-bottom: 38px;
	}
	#megaMenu_forsearch button.fs-p-productSearch__searchButton.fs-c-button--secondary {
		width: 60vw;
		height: 50px;
		border-radius: 10px;
	}
	.mega_cart{
		width: 28px;
		position: absolute;
		top: 18px;
		right: 12px;
	}
	.mega_cart p{
	}
	.mega_cart small{
		position: absolute;
		top: 0px;
		right: 10px;
		width: 15px;
		height: 15px;
		background-color: #ee3147;
		color: #fff;
		display: flex !important;
		justify-content: center;
		align-items: center;
		border-radius: 50%;
	}
	.mega_cart img{
		width: 100%;
	}
	



	.header_banner .fs-pt-list__item{
		color:#fff;
	}
	.header_banner .fs-pt-list__item:nth-child(n + 2){
		margin-top:0;
	}
	.header_gfe{
	}
	.header_gfe_inner{
		width: 96%;
		padding: 8px 0;
	}
	.header_gfe.header_fixed{
	}
	.header_gfe h1{
		width: 50vw;
		margin: 0 0 0 0;
	}
	.header_gfe h1 img{
		width: 100%;
	}
	.header_gfe .gnav{
		display: none;
	}
	.header_gfe .subnav{
		width: 50vw;
	}
	.header_gfe .subnav img{
		width: 100%;
	}
	.header_gfe .subnav dl{
		column-gap: 6vw;
		padding: 7px 0 0 0;
	}
	.header_gfe .subnav dt{
		width: 6vw;
		padding: 0 0 0 0;
	}
	.header_gfe .subnav dd{
		width: 6vw;
	}
	.header_gfe .subnav dd img{
		width: 28px;
	}
	.header_gfe .subnav dd:last-child img{
		width: 31px;
	}
	.header_gfe .subnav dd span{
		display: none;
	}
	.header_gfe .subnav dd small{
		top: -3px;
		right: 11px;
		width: 15px;
		height: 15px;
	}
	.header_gfe .subnav form{
		border:none;
		position: relative;
	}
	.header_gfe .subnav input[type="text"]{
		border: none;
		border-bottom: 1px solid #000;
		padding: 0;
		margin: 0;
		min-height: unset;
		line-height: 1;
		border-radius: 0;
		width: 100%;
		height: 40px;
		outline: none;
		font-size: 12px;
	}
	.header_gfe .subnav button{
		background: none;
		border: none;
		position: absolute;
		bottom: 5px;
		right: 0;
		padding: 0;
		margin: 0;
		cursor: pointer;
	}
	
	
	
	.common_ttl{
		font-size: 16px;
		padding: 45px 0 28px 0;
	}
	#item_group #fs-recommend--flick .common_ttl,
	#item_page #fs-recommend--flick .common_ttl{
		font-size: 1.6rem !important;
		padding: 20px 0 5px 0;
		margin-bottom: 0 !important;
		justify-content: flex-start;
	}
	.common_ttl p{
		padding: 0 10px 0 0;
		letter-spacing: 0.12em;
	}
	.common_ttl span{
	}
	.common_btn{
		width: 60vw;
		height: 50px;
		margin: 40px auto 50px;
	}
	.footer_gfe{
		padding: 55px 0 80px 0;
	}
	.footer_gfe .footer_gfe_inner{
		width: 80vw;
	}
	.footer_gfe .footer_nav_gfe{
		flex-wrap: wrap;
		column-gap: 0px;
		padding: 0 0 40px 0;
	}
	.footer_gfe .footer_nav_gfe ul{
		width: 100%;
		padding: 0 0 24px 0;
	}
	.footer_gfe .footer_nav_gfe li a{
		font-size: 12px;
		line-height: 2.1;
	}
	.footer_gfe .footer_logo_gfe{
		width: 80vw;
		flex-wrap: wrap;
		column-gap: 0px;
	}
	.footer_gfe .footer_logo_gfe li:first-child{
		width: 100%;
		padding: 0 0 12px 0;
	}
	.footer_gfe .footer_logo_gfe li:first-child a{
		width: 60%;
		display: block;
	}
	.footer_gfe .footer_logo_gfe li:last-child{
		width: 100%;
	}
	.footer_gfe .footer_logo_gfe li:last-child a{
		width: 24%;
		display: block;
	}
	.sp_nav{
		width: 100vw;
		position: relative;
		z-index: 200;
	}
	.sp_nav ul{
		width: 100%;
		padding: 16px 0 6px 0;
		display: flex;
		position: fixed;
		bottom: 0px;
		left: 0;
		justify-content: space-around;
		align-items: center;
		background-color: #98CFD9;
	}
	.sp_nav li{
		text-align: center;
		width: 20%;
	}
	.sp_nav li a{
		display: block;
	}
	.sp_nav li a span{
		display: block;
		font-size: 10px;
		font-weight: 500;
		line-height: 2;
	}
	.sp_nav li a img{
		width: auto;
	}
	.sub_page.content.w_short{
		width: 92%;
		overflow: hidden;
	}
}