@charset "UTF-8";

/*-----------------------------------

	reset, common

-----------------------------------*/

.fsc_gfooter__breadcrumb { margin-top: 0; }

#wrapper_fc .pc_fc { display: block; }
#wrapper_fc .pc_il_fc { display: inline-block; }
#wrapper_fc .sp_fc { display: none !important; }

#wrapper_fc a:hover { text-decoration: none; }
#wrapper_fc h2 { margin: 0; }
#wrapper_fc ul { padding: 0; margin: 0; }
#wrapper_fc li { list-style: none; }
#wrapper_fc .deco_fc { position: absolute; pointer-events: none; }
#wrapper_fc a { display: block; text-decoration: none !important; }
#wrapper_fc a { transition: .3s; }
#wrapper_fc img { width: 100%; height: auto; display: block; }
#wrapper_fc .sp_fc { display: none !important; }

#wrapper_fc {
	letter-spacing: .05em;
	overflow: hidden;
	position: relative;	
	-webkit-font-smoothing: antialiased;
	background: url("../images/bg.webp") 0 0 / 362px auto repeat #3f508d;
	opacity: 0;
	transition: opacity .3s ease;
}
#wrapper_fc.is-loaded { opacity: 1; }

#wrapper_fc,
#detail_fc .ttl_fc,
.countermeasure_fc .point_fc .txt_fc .pointTtl_fc,
.itemInfo_fc .txt_fc .price_fc small {
	font-family: "秀英丸ゴシック B", "Shuei MaruGo B";
	font-weight: bold;
}
#wrapper_fc .inner_fc { width: 1170px; margin: 0 auto; position: relative; z-index: 1; }
#wrapper_fc .ttl_fc { width: 36%; margin: 0 auto; }
#wrapper_fc .flexWrap_fc { display: flex; }
#wrapper_fc .presentWrap_fc { display: flex; justify-content: center; align-items: center; }
#wrapper_fc .hidden_fc {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
}

.fadeLeft_fc,
.fadeRight_fc { opacity: 0; transition: opacity .6s ease, transform .6s ease; }
.fadeLeft_fc { transform: translateX(-30px); }
.fadeRight_fc { transform: translateX(30px); transition-delay: .3s; }
.fadeLeft_fc.is-active,
.fadeRight_fc.is-active { opacity: 1; transform: translateX(0); }

@media (max-width: 1270px) {
	#wrapper_fc .inner_fc { width: 80%; }
}
@media (max-width: 767px) {
	#wrapper_fc .inner_fc { width: 90%; }
	#wrapper_fc .pc_fc,
	#wrapper_fc .pc_il_fc { display: none !important; }
	#wrapper_fc .sp_fc { display: block !important; }
	#wrapper_fc .head_fc { width: 104%; margin: 0 auto -1% -2%; }
}

/*----------------------
	itemInfo_fc
-----------------------*/

.itemInfo_fc {
	display: flex;
	justify-content: space-between;
	max-width: 1088px;
	margin: 0 auto;
	position: relative;
	z-index: 1;
}
.itemInfo_fc .img_fc { width: 54%; }
.itemInfo_fc .img_fc img { border-radius: 20px; }
.itemInfo_fc .txt_fc { width: 39%; text-align: center; color: #fff; }
.itemInfo_fc .txt_fc .brand_fc {
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 3%;
	font-size: min(2.1vw, 25px);
}
.itemInfo_fc .txt_fc .brand_fc span { line-height: 1; display: flex; align-items: center; margin-right: 10px; }
.itemInfo_fc .txt_fc .brand_fc .new_fc { width: 18%; }
.itemInfo_fc .txt_fc .name_fc { font-size: min(3.2vw, 37px); line-height: 1.4; }
.itemInfo_fc .txt_fc .tag_fc { margin: .7vw 0 !important; display: flex; justify-content: center; }
.itemInfo_fc .txt_fc .tag_fc .kikin_fc { height: 2.4vw; }
.itemInfo_fc .txt_fc .tag_fc .kikin_fc img { width: auto !important; height: 100% !important; }
.itemInfo_fc .txt_fc .price_fc {
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: min(3.2vw, 37px);
}
.itemInfo_fc .txt_fc .price_fc span { margin-right: 5px; }
.itemInfo_fc .txt_fc .price_fc small { font-size: min(1.8vw, 20px); margin-right: 10px; }
.itemInfo_fc .txt_fc .price_fc .nosale_fc {	position: relative; font-size: min(2.6vw, 31px); }
.itemInfo_fc .txt_fc .price_fc .nosale_fc:before,
.itemInfo_fc .txt_fc .price_fc .nosale_fc:after {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	width: 100%;
	height: 2px;
	background: #ff4d3b;
}
.itemInfo_fc .txt_fc .price_fc .nosale_fc:before { margin-top: -4px; }
.itemInfo_fc .txt_fc .price_fc .nosale_fc:after { margin-top: 2px; }
.itemInfo_fc .txt_fc .price_fc.sale_fc span { color: #ff4d3b; }

.itemInfo_fc .txt_fc .memo_fc { font-size: min(1.3vw, 15px); color: #ff4d3b; line-height: 1.5; margin-top: 1vw; }
.itemInfo_fc .txt_fc .btn_fc {
    display: block;
    max-width: 420px;
    width: 100%;
    margin: 5% auto 0;
}
.itemInfo_fc .txt_fc .btn_fc a {
	position: relative;
    background-color: #00b0ab;
    text-align: center;
    border-radius: 15px;
    box-shadow: 2px 2px 8px 0px rgba(0, 0, 0, 0.2);
}
.itemInfo_fc .txt_fc .btn_fc a:hover { opacity: .8; }
.itemInfo_fc .txt_fc .btn_fc a span {
	position: relative;
	padding: 7% 12% 7% 3%;
    margin: 0 0 0 7vw;
    display: inline-block;
    font-size: min(2.2vw, 27px);
    letter-spacing: 0.03em;
    color: #fff;
    line-height: 1;
    background: url(../images/arrow.svg) right center / auto 40% no-repeat;
}
.itemInfo_fc .txt_fc .btn_fc a span:after {
	content: "";
    display: block;
	width: 68%;
	height: 110%;
    position: absolute;
    top: -20%;
    left: -71%;
    background: url(../images/item_deco.webp) 0 0 / auto 100% no-repeat;
	z-index: 0;
}

.itemInfoBtm_fc { position: relative; padding: 10vw 0 6vw; margin-top: -5vw; }
.itemInfoBtm_fc:after {
	content: "";
	width: 100%;
	height: 100%;
	background: rgba(165,152,165,1);
	mix-blend-mode: multiply;
	position: absolute;
	left: 0;
	top: 0;
}
.itemInfoBtm_fc #subTtl_fc { position: relative; z-index: 1; width: 40%; margin: 0 auto 4vw; }

@media (max-width: 1188px) {
	.itemInfo_fc { width: 90%; }
}
@media (max-width: 767px) {
	.itemInfo_fc { flex-direction: column; }
	.itemInfo_fc .img_fc,
	.itemInfo_fc .txt_fc { width: 100%; }
	.itemInfo_fc .txt_fc { margin-top: 5%; }
	.itemInfo_fc .txt_fc .brand_fc { font-size: 4.5vw; margin-bottom: 20px; }
	.itemInfo_fc .txt_fc .name_fc { font-size: 6.5vw; }
	.itemInfo_fc .txt_fc .tag_fc { margin: 10px auto !important; }
	.itemInfo_fc .txt_fc .tag_fc .kikin_fc { height: 7vw; }
	.itemInfo_fc .txt_fc .price_fc { font-size: 8vw; }
	.itemInfo_fc .txt_fc .price_fc small { font-size: 4vw; }
	.itemInfo_fc .txt_fc .price_fc .nosale_fc { font-size: 6vw; }
	.itemInfo_fc .txt_fc .memo_fc { font-size: 3.3vw; }
	.itemInfo_fc .txt_fc .btn_fc { max-width: 100%; }
	.itemInfo_fc .txt_fc .btn_fc a span { font-size: 6vw; margin-left: 22vw; }
}

/*-----------------------------------

	hero

-----------------------------------*/

#hero_fc .heroMain_fc { position: relative; }
#hero_fc .heroMain_fc .object_fc { position: absolute; z-index: 2; }
#hero_fc .heroBg_fc { position: absolute; width: 100%; top: 0; left: 0; z-index: 0; }
#hero_fc .heroBg_fc img { mix-blend-mode: multiply; }
#hero_fc #mainTtl_fc { width: 58vw; max-width: 767px; margin: 5vw auto 4vw; }

.baloon_fc {
	width: 31%;
	left: 5%;
	bottom: 5%;
	opacity: 0;
	animation: sizeUp linear .5s 1s 1 forwards;
}
.bed_fc {
	width: 38%;
	padding-top: 9.5vw;
	margin: 0 auto 0 42%;
	transform-origin: center bottom;
	animation: quake-bed 0.9s cubic-bezier(.36,.07,.19,.97) infinite;
	animation-delay: -0.2s;
	position: relative;
	z-index: 3;
}
.clock_fc {
	width: 6%;
	left: 49%;
	top: 33%;
	transform-origin: center top;
	animation: quake-clock 0.6s ease-in-out infinite;
	animation-delay: -0.35s;
}
.cat_fc {
	width: 9%;
	left: 37%;
	top: 43%;
	transform: scale(-1,1) rotate(30deg);
	animation: quake-cat 0.4s linear infinite;
	animation-delay: -0.1s;
}
.table_fc {
	width: 12%;
	right: 5%;
	bottom: 10%;
	transform-origin: center bottom;
	animation: quake-table 0.5s linear infinite;
	animation-delay: -0.28s;
}

@keyframes sizeUp {
	0% { transform: scale(0); opacity: 0; }
	100% { transform: scale(1); opacity: 1; }
}
@keyframes quake-bed {
	0%   { transform: translate(0, 0) rotate(0); }
	15%  { transform: translate(-2px, 1px) rotate(-0.4deg); }
	30%  { transform: translate(2px, -1px) rotate(0.4deg); }
	45%  { transform: translate(-3px, 2px) rotate(-0.6deg); }
	60%  { transform: translate(3px, -2px) rotate(0.6deg); }
	100% { transform: translate(0, 0) rotate(0); }
}
@keyframes quake-clock {
	0% { transform: rotate(0); }
	20% { transform: rotate(-3deg); }
	40% { transform: rotate(3deg); }
	60% { transform: rotate(-2deg); }
	80% { transform: rotate(2deg); }
	100% { transform: rotate(0); }
}
@keyframes quake-cat {
	0% { transform: translate(0, 0); }
	25% { transform: translate(-3px, 2px); }
	50% { transform: translate(3px, -2px); }
	75% { transform: translate(-2px, -1px); }
	100% { transform: translate(0, 0); }
}
@keyframes quake-table {
	0% { transform: translate(0, 0) rotate(0); }
	20% { transform: translate(-1px, 2px) rotate(-1deg); }
	40% { transform: translate(1px, -2px) rotate(1deg); }
	60% { transform: translate(-1px, 1px) rotate(-0.5deg); }
	100% { transform: translate(0, 0) rotate(0); }
}

@media (max-width: 1600px) {
	#hero_fc .heroBg_fc { width: 120vw; left: -10vw; }
}
@media (max-width: 1270px) {
}
@media (max-width: 1170px) {
	#hero_fc .heroMain_fc .inner_fc { width: 90%; padding-top: 3%; }
	#hero_fc .heroBg_fc { width: 140%; left: -20%; }
}
@media (max-width: 767px) {
	#hero_fc .heroMain_fc .inner_fc { width: 100%; padding-top: 0; }
	#hero_fc .heroBg_fc { width: 100%; left: 0; }
	.baloon_fc { width: 50%; left: 6%; bottom: auto; top: 6%; }
	.bed_fc { width: 70%; padding-top: 44%; margin: 0 21% 0 9%; }
	.clock_fc { width: 10%; left: 6%; top: 52%; }
	.cat_fc { width: 20%; left: 60%; top: 30%; }
	.table_fc { width: 17%; right: 9%; bottom: 26%; }
	#hero_fc #mainTtl_fc { width: 90%; margin: 10vw auto 7vw; }
}

/*-----------------------------------

	contents

-----------------------------------*/

.countermeasure_fc { padding-top: 3vw; position: relative; z-index: 1; }
.countermeasure_fc #mainsummary_fc {
	width: 90vw;
	background: url("../images/bg_bed.svg") 0 0 / 100% auto no-repeat;
	z-index: 0;
	text-align: center;
	padding: 6vw 0;
	margin: 0 auto -15vw;
}
.countermeasure_fc #mainsummary_fc p {
	font-size: min(1.9vw,30px);
	color: #fff;
	line-height: 1.9;
	margin-bottom: 3vw;
}
.countermeasure_fc #mainsummary_fc .img_fc { width: 60%; margin: 0 auto; }
.countermeasure_fc .inner_fc { position: relative; z-index: 1; }
.countermeasure_fc .sectTtl_fc {
	background: #c23280;
	border-radius: 20px 20px 0 0;
	text-align: center;
	padding: 1.5%;
}
.countermeasure_fc .sectTtl_fc .sectTtlInner_fc { height: 4vw; max-height: 65px; }
#no4_fc .sectTtl_fc .sectTtlInner_fc { height: 3.8vw; }
.countermeasure_fc .sectTtl_fc .sectTtlInner_fc picture { display: block; height: 100%; }
.countermeasure_fc .sectTtl_fc .sectTtlInner_fc img {
	width: auto !important;
	height: 100% !important;
	margin: 0 auto;
}
#no1_fc .swiper,
#no1_fc .sectInner_fc { background: #efefec; }
#no2_fc .swiper,
#no2_fc .sectInner_fc { background: #c8dfe8; }
#no3_fc .swiper,
#no3_fc .sectInner_fc { background: #efd3db; }
#no4_fc .swiper,
#no4_fc .sectInner_fc { background: #c1e5db; }
.countermeasure_fc .sectInner_fc {
	padding: 0 8% 6% 8%;
	border-radius: 0 0 20px 20px;
	position: relative;
    z-index: 1;
	margin-top: -2px;
}
.countermeasure_fc .mySwiper .swiper-slide { width: 60%; }
.countermeasure_fc .mySwiper .swiper-slide img { box-shadow: 0 1.7rem 2rem -2rem hsl(200 50% 20% / 50%); }
.countermeasure_fc .summary_fc {
	font-size: min(1.7vw,22px);
	line-height: 1.8;
	text-align: center;
	margin: 0 0 3vw;
}
.countermeasure_fc .point_fc { display: flex; justify-content: center; margin-right: -3% !important; }
.countermeasure_fc .point_fc li { width: calc(100%/3 - 3%); margin-right: 3%; position: relative; }
.countermeasure_fc .point_fc .flag_fc {
	position: absolute;
	width: 39% !important;
	left: -10px;
	top: -10px;
}
.countermeasure_fc .point_fc .img_fc {}
.countermeasure_fc .point_fc .txt_fc { margin-top: .8vw; }
.countermeasure_fc .point_fc .txt_fc .pointTtl_fc {
	background: url("../images/icon_moon.svg") 0 0 / 8% auto no-repeat;
	color: #3f508d;
	font-size: min(1.7vw,21px);
    padding-left: 11%;
	line-height: 1.5;
	margin-bottom: 2%;
}
.countermeasure_fc .point_fc .txt_fc .summary_fc {
	font-size: min(1.4vw, 16px);
	text-align: justify;
	line-height: 1.6;
	margin-bottom: 0;
	letter-spacing: 0.03em;
}
#no1_fc .deco01_fc { width: 15%; right: 3%; bottom: 2%; z-index: 2; animation: quake-cat 0.4s linear infinite; }
#no2_fc .deco01_fc { width: 21%; left: -10%; bottom: 50%; z-index: 2; animation: quake-table 0.5s linear infinite; }
#no3_fc .deco01_fc { width: 12%; right: -11.5%; top: 10%; }
#no3_fc .deco02_fc { width: 13%; left: -12.5%; bottom: 10%; }
#no4_fc .deco01_fc { width: 16%; right: -13%; bottom: 30%; }

.countermeasure_fc .swiper { padding-top: 7%; }
.countermeasure_fc .mySwiper .swiper-slide { padding-bottom: 3%; }
.swiper-slide-shadow-left,
.swiper-slide-shadow-right { background: none !important; }

@media (min-width: 1700px) {
	.countermeasure_fc #mainsummary_fc { width: 80vw; }
}
@media (max-width: 1270px) {
	#wrapper_fc .countermeasure_fc .inner_fc { width: 90%; }
	.countermeasure_fc #mainsummary_fc { width: 110vw; padding: 8vw 0 9vw; margin: 0 0 -20vw -5vw; }
	.countermeasure_fc #mainsummary_fc p { font-size: min(2.1vw,30px); margin-bottom: 4vw; }
	.countermeasure_fc .sectInner_fc { padding: 0 5vw 5vw 5vw; }
	.countermeasure_fc .sectTtl_fc .sectTtlInner_fc { height: 5vw; }
	#no4_fc .sectTtl_fc .sectTtlInner_fc { height: 4.8vw; }
	.countermeasure_fc .swiper { padding-top: 5vw; }
}
@media (max-width: 920px) {
	.countermeasure_fc #mainsummary_fc { text-align: justify; }
	.countermeasure_fc #mainsummary_fc p { width: 75%; margin-left: auto; margin-right: auto; font-size: 2.4vw; }
	.countermeasure_fc #mainsummary_fc p br { display: none; }
}
@media (max-width: 767px) {
	.countermeasure_fc { padding-top: 5vw; }
	#no1_fc { padding-top: 10vw; }
	.countermeasure_fc #mainsummary_fc {
		background-image: url("../images/bg_bed_sp.svg");
		padding: 15vw 0 80vw;
		text-align: center;
		margin-bottom: -98vw;
	}
	.countermeasure_fc #mainsummary_fc p { font-size: 4vw; width: 80%; }
	.countermeasure_fc #mainsummary_fc p br { display: block; }
	.countermeasure_fc #mainsummary_fc p .pc_fc { display: none; }
	.countermeasure_fc #mainsummary_fc .img_fc { width: 80%; }
	.countermeasure_fc .sectInner_fc { padding: 0 6vw 8vw 6vw; }
	.countermeasure_fc .sectTtl_fc { padding: 4%; }
	.countermeasure_fc .sectTtl_fc .sectTtlInner_fc { height: 14vw !important; }
	.countermeasure_fc .summary_fc {
		font-size: 3.4vw;
		text-align: justify;
		margin-bottom: 10vw;
		letter-spacing: 0.02em;
	}
	.countermeasure_fc .point_fc .txt_fc { margin-top: 2vw; }
	.countermeasure_fc .point_fc { flex-wrap: wrap; justify-content: flex-start; }
	.countermeasure_fc .point_fc li { width: calc(100% / 2 - 3%); margin-bottom: 6%; }
	.countermeasure_fc .point_fc li:nth-child(3) {
		display: flex;
		justify-content: space-between;
		width: 100%;
		margin-bottom: 0;
	}
	.countermeasure_fc .point_fc li:nth-child(3) .img_fc { width: 49%; }
	.countermeasure_fc .point_fc li:nth-child(3) .txt_fc { width: 46%; margin-top: 0; }
	.countermeasure_fc .point_fc .txt_fc .pointTtl_fc {
		font-size: 3vw;
		background-size: 10% auto;
		padding-left: 15%;
		margin-bottom: 1vw;
	}
	.countermeasure_fc .point_fc .txt_fc .summary_fc { font-size: 2.7vw; }
	.countermeasure_fc .point_fc .flag_fc { top: -5px; left: -5px; }
	#no1_fc .deco01_fc { width: 23%; right: 3%; bottom: -1%; z-index: 2; }
	#no2_fc .deco01_fc { left: 80%; bottom: -1%; }
	#no3_fc .deco01_fc { right: 100%; top: 5%; }
	#no3_fc .deco02_fc { width: 18%; left: 80%; bottom: -0.5%; z-index: 2; }
	#no4_fc .deco01_fc { width: 23%; right: -13%; bottom: -1%; z-index: 2; }
	.itemInfoBtm_fc { padding-top: 12vw; padding-bottom: 10vw; margin-top: -5vw; }
	.itemInfoBtm_fc #subTtl_fc { width: 89%; margin-bottom: 6vw; }
	
	.countermeasure_fc .swiper { padding-top: 9vw; }
	.countermeasure_fc .mySwiper .swiper-slide { width: 80%; padding-bottom: 8%; }
}




