@charset "utf-8";
/* CSS Document */
* {
	box-sizing: border-box;
}
html {
    background: #ffffff;
    line-height: 1.4;
    font-family: "a-otf-jun-pro", sans-serif;
    font-weight: 500;
    font-style: normal;
}
img {
    width: 100%;
    vertical-align: bottom;
}
h1 {
    text-align: center;
    margin: 30px auto;
}
h2 {
    text-align: center;
    color: #ec9bad;
    font-size: 28px;
    font-weight: bold;
    background: #ffffff;
    padding: 8px;
    margin: 30px auto;
}
p {
    text-align: center;
    color: #ec9bad;
    font-size: 22px;
    margin: 30px auto;
}
figure {
    margin: 30px auto;
}
.small {
    font-size: 18px!important;
    font-weight: 300;
}
.copy {
    font-size: 18px!important;
    font-weight: 300;
    padding: 0 0 50px 0;
    margin: 0;
}
.br_769 {
    display: none;
}
.btn_manual a {
    position: relative;
	display: inline-block;
	background: url("../images/icon_pdf.svg") #a6d3eb no-repeat right 20px center;
	background-size: 25px;
	color: #ffffff;
	font-weight: 300;
	font-size: 20px;
	padding: 10px 50px 10px 30px;
	margin: 0 auto;
	text-align: center;
}
.btn_marche a {
	display: inline-block;
	background: url("../images/icon_cart.svg") #ec9bad no-repeat right 20px center;
	background-size: 25px;
	color: #ffffff;
    border-radius: 50px;
	font-weight: 300;
	font-size: 18px;
	padding: 10px 50px 10px 30px;
	margin: 0 auto;
	text-align: center;
}
.btn_rakuten a {
	display: inline-block;
	background: url("../images/icon_cart.svg") #ec9bad no-repeat right 20px center;
	background-size: 25px;
	color: #ffffff;
    border-radius: 50px;
	font-weight: 300;
	font-size: 18px;
	padding: 10px 50px 10px 30px;
	margin: 0 auto;
	text-align: center;
}
.btn_amazon a {
	display: inline-block;
	background: url("../images/icon_cart.svg") #ec9bad no-repeat right 20px center;
	background-size: 18px;
	color: #ffffff;
    border-radius: 50px;
	font-weight: 300;
	font-size: 20px;
	padding: 10px 50px 10px 30px;
	margin: 0 auto;
	text-align: center;
}
.bg_kumo {
    position: relative;
    background: #ffffff;
}
.bg_kumo::before {
    position: absolute;
    content: "";
    background: url("../images/bg_kumo.webp") no-repeat;
    background-size: 100%;
    top: -80px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 5;
    max-width: 480px;
    width: 100%;
    height: 100px;
}
.bg_kumo::after {
    position: absolute;
    content: "";
    background: url("../images/bg_kumo.webp") no-repeat;
    background-size: 100%;
    bottom: -80px;
    left: 50%;
    transform: translateX(-50%) rotate(180deg);
    z-index: 5;
    max-width: 480px;
    width: 100%;
    height: 100px;
}

.bg_kumo figure,.bg_kumo p {
    position: relative;
    z-index: 999;
}

/* -- header -- */
header {
	position: fixed;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	display: flex;
	justify-content: space-between;
	align-items: center;
	background: #ffffff;
	width: 100%;
	height: auto;
    font-family: "Noto Sans JP", sans-serif;
	box-shadow: 0px 8px 15px -12px #777777;
	padding: 10px 1%;
	z-index: 99999;
}
header p {
    margin: 0;
}
header .logo {
	max-width: 107px;
	width: 60%;
}
header .logo a {
    display: inline-block;
	padding: 0;
}
header .home {
	width: 140px;
}
header .btn_header {
	max-width: 200px;
}
header .nav {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	gap: 2%;
	width: 70%;
}
header .openbtn {
	display: none;
}
header .nav a {
	display: block;
	color: #000000;
	font-size: clamp(12px, 2.5vw, 16px);
	font-weight: 300;
}
header .btn_header a {
	display: inline-block;
	background: url("../images/icon_cart.svg") #ec9bad no-repeat right 27px center;
	background-size: 25px;
	border-radius: 50px;
	color: #ffffff;
	font-size: clamp(12px, 2.5vw, 20px);
	padding: 10px 55px 10px 35px;
}
/* -- /header -- */
main {
    position: relative;
    width: 100%;
    max-width: 480px;
    background: #d6edfb;
    margin: 0 auto;
}
main::before {
    position: fixed;
    content: "";
    top: 0;
    left: 0;
    background: url("../images/main_image.webp") no-repeat center 100%;
    background-size: auto 100%;
    min-height: 100vh;
    width: 100%;
    height: 100vh;
    z-index: -1;
}
section {
    margin: 100px auto;
    padding: 0 40px;
}
#main_image {
    padding: 40px 40px 50px;
    margin: 50px auto 100px;
    border-bottom: 4px dashed pink;
}
#main_image .joypalette {
    text-align: right;
    margin: 0;
}
#main_image .joypalette img {
    width: 80px;
}
#function .spec_icon_slider {
    width: 90%;
    margin: 0 auto;
}
#function .spec_icon_slider .slick-track {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 3px;
}
#function .spec_icon_slider li {
    flex: 0 0 calc(33.333% - 3px);
	opacity: 0.3;
	margin: 0;
}
#function .spec_icon_slider li p {
    margin: 0;
}
#function .spec_icon_slider .slick-track {
	transform: unset !important;
}
#function .spec_icon_slider li.slick-current {
	opacity: 1;
}
#function .spec_icon_slider li:last-of-type {
	margin: 0;
}
#function .slider_function li img {
	transform: scale(0.8);
	opacity: 0.5;
	margin: 0 auto;
}
#function .slider_function li.slick-center img {
	transform: scale(1.1);
	opacity: 1;
}
footer {
    width: 100%;
    max-width: 480px;
    background: #131829;
    padding: 50px 0 0;
    margin: 0 auto;
}
footer p {
    color: #ffffff;
}
#buy_link {
    position: fixed;
    bottom: 5%;
    right: 5%;
    transform: translate(-5%,-5%);
    width: 98%;
    max-width: 380px;
    background: #ffffff;
    border-radius: 18px;
    border: 3px solid #ec9bad;
    padding: 20px 0;
    margin: 0 auto;
    visibility: hidden;
    opacity: 0;
    z-index: 666666;
    transition: opacity 0.8s ease, visibility 0.8s ease; 
}
#buy_link.scroll_view {
    visibility: visible;
    opacity: 1;
}
#buy_link p {
    font-weight: bold;
    margin: 0;
}
#buy_link .buy_link {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 3px;
    margin: 10px auto 0;
}
#buy_link .buy_link p {
    flex: 0 0 calc(50% - 3px);
	margin: 0;
}


@media screen and (max-width: 1500px) {
    #buy_link {
        bottom: 3%;
        right: auto;
        left: 50%;
        transform: translate(-50%,-3%);
    }
    footer {
        padding: 50px 0 150px;
    }
}


@media screen and (max-width: 769px) {
    /* -- header -- */
	header {
		display: block;
	}
	header .btn_header a {
		margin: 20px 0 0;
	}
	header .openbtn {
		display: block;
		position: absolute;
		top: 0;
		right: 0;
	}
	header .nav {
		display: none;
		opacity: 0;
		width: 100%;
		text-align: center;
		padding: 20px 0 30px;
		transition: 800ms;
	}
	header .nav.active {
		display: block;
		opacity: 1;
	}
	header a {
		padding: 20px 0 0;
	}
	header .home {
		width: 140px;
		margin: 0 auto;
	}
	header .btn_header {
		margin: 0 auto;
	}
    /* -- /header -- */
}

@media screen and (max-width: 480px) {
    .bg_kumo::before {
        top: -9%;
    }
    .bg_kumo::after {
        bottom: -9%;
    }
}
