/**
 * Minified by jsDelivr using clean-css v5.3.2.
 * Original file: /npm/ress@5.0.2/ress.css
 *
 * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files
 */
html{box-sizing:border-box;-webkit-text-size-adjust:100%;word-break:normal;-moz-tab-size:4;tab-size:4}*,::after,::before{background-repeat:no-repeat;box-sizing:inherit}::after,::before{text-decoration:inherit;vertical-align:inherit}*{padding:0;margin:0}hr{overflow:visible;height:0;color:inherit}details,main{display:block}summary{display:list-item}small{font-size:80%}[hidden]{display:none}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}a{background-color:transparent}a:active,a:hover{outline-width:0}code,kbd,pre,samp{font-family:monospace,monospace}pre{font-size:1em}b,strong{font-weight:bolder}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-color:inherit;text-indent:0}iframe{border-style:none}input{border-radius:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}textarea{overflow:auto;resize:vertical}button,input,optgroup,select,textarea{font:inherit}optgroup{font-weight:700}button{overflow:visible}button,select{text-transform:none}[role=button],[type=button],[type=reset],[type=submit],button{cursor:pointer}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button:-moz-focusring{outline:1px dotted ButtonText}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}button,input,select,textarea{background-color:transparent;border-style:none}a:focus,button:focus,input:focus,select:focus,textarea:focus{outline-width:0}select{-moz-appearance:none;-webkit-appearance:none}select::-ms-expand{display:none}select::-ms-value{color:currentColor}legend{border:0;color:inherit;display:table;max-width:100%;white-space:normal;}::-webkit-file-upload-button{-webkit-appearance:button;color:inherit;font:inherit}[disabled]{cursor:default}img{border-style:none}progress{vertical-align:baseline}[aria-busy=true]{cursor:progress}[aria-controls]{cursor:pointer}[aria-disabled=true]{cursor:default}


html {
	font-size: 62.5%;
	background: #f0eee0;
}
body {
	margin: 0;
	padding: 20px;
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-size: 1.0rem;
	font-weight: 500;
	line-height: 1.6;
	color: #555;
}
.scroll-prevent {
	overflow: hidden;
}
@media screen and (max-width: 767px) {
	body {
		padding: 0;
	}
}
h1,
h2,
h3,
h4,
h5,
h6 {
	font-weight: 700;
	line-height: 1.3;
}
ul,
ol {
	list-style: none;
}
a {
	text-decoration: underline;
	color: #555;
}
a:hover {
	text-decoration: none;
	color: #a6d620;
}
img {
	max-width: 100%;
	height: auto;
	vertical-align: middle;
}
@media (min-width: 768px) {
	.spOnly { display: none !important; }
	#page-top { bottom: 30px; position: fixed; right: 30px; z-index: 10; }
	#page-top a { background: url("../image/icon_pagetop.svg") no-repeat 50% 50%; display: block; height: 50px; text-align: center; text-indent: -9999px; width: 50px; }
}
@media (max-width: 767px) {
	.pcOnly { display: none !important; }
	#page-top { bottom: 3vw; position: fixed; right: 3vw; z-index: 10; }
	#page-top a { background: url("../image/icon_pagetop.svg") no-repeat 50% 50% / contain; display: block; height: 8vw; text-align: center; text-indent: -9999px; width: 8vw; }
}


.l-cont {
	display: flex;
	width: 750px;
	margin: 0 auto;
	font-size: 1.2rem;
	grid-gap: 10px;
}
@media screen and (max-width: 767px) {
	.l-cont {
		display: block;
		width: auto;
		font-size: 3.4vw;
		grid-gap: 3vw;
	}
}
.l-main {
	width: 560px;
	padding: 30px 20px 40px;
	border: 1px solid #dfdfdf;
	border-radius: 10px;
	background: #fff;
}
.l-main hr {
	height: 1px;
	margin: 20px 0;
	border: none;
	border-top: 1px dashed #c2c2c2;
}
@media screen and (max-width: 767px) {
	.l-main {
		display: block;
		width: auto;
		margin: 5vw;
	}
	.l-main hr {
		margin: 2vw 0;
	}
}

.l-nav {
	width: 180px;
	padding: 30px 10px;
	border: 1px solid #dfdfdf;
	border-radius: 10px;
	background: #fff;
	font-size: 1.3rem;
}
.l-nav h1 {
	margin-bottom: 20px;
	text-align: center;
}
.l-nav h2 {
	margin-bottom: 5px;
	text-align: center;
	font-family: "Goldman", sans-serif;
	font-size: 1.2rem;
	font-weight: 400;
	color: #a6d620;
}
.l-nav ul {
	border-top: 1px solid #c2c2c2;
}
.l-nav li {
	border-bottom: 1px dashed #c2c2c2;
}
.l-nav li.is-active {
	background: #f2f2f2;
}
.l-nav li a {
	position: relative;
	display: block;
	padding: 1em 0 1em 1.8em;
	text-decoration: none;
	line-height: 1.2;
}
.l-nav li a::before {
	position: absolute;
	top: 1.2em;
	left: 3px;
	width: 0.8em;
	height: 2em;
	content: "";
	background: url("../image/icon_nav_arrow.svg") no-repeat 0 0 / contain;
}
.l-nav li a.smile::before {
	background: url("../image/icon_nav_smile.svg") no-repeat 0 0 / contain;
}
.l-nav li a.download::before {
	background: url("../image/icon_nav_download.svg") no-repeat 0 0 / contain;
}
.l-nav span {
	display: block;
	font-family: "Goldman", sans-serif;
	font-size: 1rem;
	font-weight: 400;
}
@media screen and (max-width: 767px) {
	.l-nav {
		padding: 3vw;
		width: 100%;
		border: none;
		border-radius: 0;
		font-size: 4vw;
	}
  .l-nav h1 {
    margin: 1vw 0;
		width: 20vw;
  }
  .l-nav h2 {
    margin-bottom: 0;
		text-align: left;
    font-size: 2.5vw;
		width: fit-content;
  }
	.l-nav span {
		font-size: 3.125vw;
	}
	#gnav { position: absolute; top: 0; right: 0; z-index: 1000; }
	#panel-btn { position: relative; z-index: 1100; float: right; display: inline-block; width: 20vw; height: 20vw; text-indent: -9999px; } 
	#panel-btn-icon { position: absolute; top: 50%; left: 50%; display: block; margin: -0.15vw 0 0 -3.125vw; width: 6.25vw; height: 0.4vw; background: #a6d620; transition: .2s; }
	#panel-btn-icon:before,
	#panel-btn-icon:after { position: absolute; top: 50%; left: 0; display: block; width: 6.25vw; height: 0.4vw; background: #a6d620; content: ""; transition: .3s; } 
	#panel-btn-icon:before { margin-top: -2.6vw; }
	#panel-btn-icon:after { margin-top: 2.4vw; } 
	#panel-btn .close { background: transparent; }
	#panel-btn .close:before,
	#panel-btn .close:after { margin-top: 0; } 
	#panel-btn .close:before { -webkit-transform: rotate(-135deg); transform: rotate(-135deg); }
	#panel-btn .close:after { -webkit-transform: rotate(-45deg); transform: rotate(-45deg); } 
	.gnav { position: absolute; z-index: 1000; display: none; padding: 25vw 5vw 10vw; width: 100vw; height: 100vh; background: #fff; left: -80vw; top: 0; }
}

.l-footer {
	display: flex;
	flex-direction: row-reverse;
	justify-content: space-between;
	width: 750px;
	margin: 10px auto 0;
	font-size: 1rem;
	color: #787878;
}
.l-footer__copyright {
	font-family: "Goldman", sans-serif;
	font-weight: 400;
}
.l-footer__nav {
	display: flex;
	column-gap: 20px;
}
.l-footer__nav a {
	position: relative;
	padding-left: 1em;
	text-decoration: none;
}
.l-footer__nav a::before {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: .8em;
	height: .8em;
	margin: auto;
	content: "";
	background: url("../image/icon_nav_arrow.svg") no-repeat 0 0 / contain;
}
@media screen and (max-width: 767px) {
	.l-footer {
		display: block;
		width: 100%;
		font-size: 2.6vw;
		margin: 2vw 0;
		padding: 5vw;
	}
	.l-footer__copyright {
		text-align: center;
		margin-top: 2vw;
	}
	.l-footer__nav {
		column-gap: 4vw;
		flex-wrap: wrap;
		font-size: 3.125vw;
	}
}





/*--------
top page
--------*/
.l-main.p-top {
	display: grid;
	padding: 0;
	border: none;
	background: none;
	gap: 10px;
	grid-template-rows: auto 165px;
	grid-template-columns: 400px 150px;
}
.p-top__photo {
	grid-area: 1 / 1 / 2 / 3;
}
.p-top__info {
	padding: 10px;
	border: 1px solid #dfdfdf;
	border-radius: 10px;
	background: #fff;
	grid-area: 2 / 1 / 3 / 2;
}
.p-top__recommend {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 1px solid #dfdfdf;
	border-radius: 10px;
	background: #fff;
	grid-area: 2 / 2 / 3 / 3;
}
.p-top__recommend img {
  width: 140px;
}
@media screen and (max-width: 767px) {
	.l-main.p-top {
		display: block;
	}
	.p-top__photo {
		grid-area: auto;
		margin-bottom: 4vw;
	}
	.p-top__info {
		grid-area: auto;
		margin-bottom: 4vw;
		padding: 3vw;
	}
	.p-top__recommend {
		grid-area: auto;
		display: block;
		padding: 3vw;
		text-align: center;
	}
	.p-top__recommend img {
		width: 40vw;
	}
}


.p-about__info {
	display: flex;
	justify-content: space-between;
	margin-top: 25px;
}
.p-about__info-title {
	width: 100px;
	padding: 0 25px;
	text-align-last: justify;
	font-size: 2rem;
	font-weight: 700;
	color: #15306a;
	border-right: 1px solid #c2c2c2;
}
.p-about__info-text {
	width: 400px;
}
@media screen and (max-width: 767px) {
	.p-about__info {
		margin-top: 4vw;
		display: block;
	}
	.p-about__info-title {
		width: auto;
		padding: 0 0 2vw;
		margin-bottom: 3vw;
		text-align-last: left;
		font-size: 4vw;
		border-right: none;
		border-bottom: 1px solid #c2c2c2;
	}
	.p-about__info-text {
		width: auto;
	}
}


.p-memory p {
	margin-top: 1.5em;
}


.p-product {
	display: grid;
	grid-column-gap: 20px;
	grid-template-columns: 350px 150px;
	grid-template-rows: auto;
}
.p-product h1 {
	grid-area: 1 / 1 / 2 / 3;
}
.p-product h2 {
	margin-bottom: 15px;
	grid-area: 2 / 1 / 3 / 3;
}
.p-product__text p {
	margin: 1em 0 1.5em;
}
.p-product__text figure {
	margin: 1em 0 1.5em;
}
.p-product__sub-box {
	overflow: hidden;
	margin-bottom: 20px;
	border: 1px solid #c2c2c2;
	border-radius: 10px;
}
.p-product__sub-title {
	padding: 5px;
	font-size: 1.2rem;
	border-bottom: 1px solid #c2c2c2;
	background: #f2f2f2;
}
.p-product__sub-cont {
	padding: 5px;
	font-size: 1.2rem;
}
.p-product__sub-cont li a {
	position: relative;
	padding-left: 1.2em;
}
.p-product__sub-cont li a::before {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 1em;
	height: 1em;
	margin: auto;
	content: "";
	background: url("../image/icon_blank.svg") no-repeat 0 0 / contain;
}
@media screen and (max-width: 767px) {
	.p-product {
		display: block;
	}
	.p-product__sub-box {
		margin-bottom: 3vw;
		border-radius: 2vw;
	}
	.p-product__sub-title {
		padding: 2vw;
		font-size: 3.125vw;
	}
	.p-product__sub-cont {
		padding: 2vw;
	}
	.p-product__sub-cont img {
		width: 40vw;
	}
}


.p-store__info {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	margin-top: 25px;
}
.p-store__info-title {
	width: 100px;
	padding: 0 16px;
	text-align-last: justify;
	font-size: 1.6rem;
	font-weight: 700;
	color: #15306a;
	border-right: 1px solid #c2c2c2;
}
.p-store__info-text {
	width: 400px;
}
@media screen and (max-width: 767px) {
	.p-store__info {
		margin-top: 4vw;
		display: block;
	}
	.p-store__info-title {
		width: auto;
		padding: 0 0 2vw;
		margin-bottom: 3vw;
		text-align-last: left;
		font-size: 4vw;
		border-right: none;
		border-bottom: 1px solid #c2c2c2;
	}
	.p-store__info-text {
		width: auto;
	}
}


.p-contact p {
	margin: 1em 0 1.5em;
}


.p-item__list {
	display: flex;
	flex-wrap: wrap;
	margin-top: 20px;
	gap: 30px 17px;
}
.p-item__box {
	width: 160px;
}
.p-item__box-img {
	margin-bottom: 10px;
}
.p-item__box li a {
	position: relative;
	padding-left: 1.2em;
}
.p-item__box li a::before {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 1em;
	height: 1em;
	margin: auto;
	content: "";
	background: url("../image/icon_blank.svg") no-repeat 0 0 / contain;
}
@media screen and (max-width: 767px) {
	.p-item__list {
		margin-top: 3vw;
		gap: 6vw 4vw;
	}
	.p-item__box {
		width: 37vw;
	}
	.p-item__box-img {
		margin-bottom: 2vw;
	}
}


.p-sitemap h2 {
	margin-bottom: 20px;
	text-align: center;
	font-family: "Goldman", sans-serif;
	font-size: 5.6rem;
	font-weight: 400;
}
.p-sitemap h2 a {
	text-decoration: none;
	color: #a6d620;
}
.p-sitemap p {
	margin: .5em 0 0;
}
.p-sitemap__wrap {
	display: flex;
	flex-wrap: wrap;
	gap: 30px;
}
.p-sitemap__box {
	width: 240px;
}
.p-sitemap__box a {
	position: relative;
	padding-left: 1em;
}
.p-sitemap__box a::before {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: .8em;
	height: .8em;
	margin: auto;
	content: "";
	background: url("../image/icon_arrow.svg") no-repeat 0 0 / contain;
}
@media screen and (max-width: 767px) {
	.p-sitemap h2 {
		font-size: 7vw;
		margin-bottom: 3vw;
	}
	.p-sitemap__wrap {
		gap: 4vw;
	}
	.p-sitemap__box {
		width: 100%;
	}
}


.p-usage p {
	margin: 1em 0 1.5em;
}


.p-privacy p {
	margin: 1em 0 1.5em;
}




/* === Title === */
.c-title01 {
	position: relative;
	margin-bottom: 20px;
	padding: 0 0 3px 10px;
	font-size: 1.8rem;
	line-height: 1;
	border-bottom: 1px solid #c2c2c2;
}
.c-title01::before {
	position: absolute;
	top: 1px;
	left: 0;
	width: 5px;
	height: 18px;
	content: "";
	border-radius: 2px;
	background: #a6d620;
}
.c-title01 span {
	margin-left: 8px;
	font-family: "Goldman", sans-serif;
	font-size: 1.2rem;
	font-weight: 400;
}
@media screen and (max-width: 767px) {
	.c-title01 {
		font-size: 4.375vw;
		padding: 0 0 1vw 3vw;
	}
	.c-title01::before {
    width: 1vw;
    height: 4vw;
    border-radius: 0.4vw;
	}
	.c-title01 span {
		margin-left: 2vw;
		font-size: 3.125vw;
	}
}
.c-title02 {
	position: relative;
	margin-bottom: 10px;
	padding: 0 0 3px 10px;
	font-size: 1.6rem;
	line-height: 1;
	border-bottom: 1px solid #c2c2c2;
}
.c-title02::before {
	position: absolute;
	top: 0;
	left: 0;
	width: 4px;
	height: 11px;
	content: "";
	border-radius: 2px;
	background: #a6d620;
}
.c-title02 span {
	margin-left: 5px;
	font-family: "Goldman", sans-serif;
	font-size: 1.1rem;
	font-weight: 400;
}
@media screen and (max-width: 767px) {
	.c-title02 {
		font-size: 4.375vw;
		padding: 0 0 1vw 3vw;
	}
	.c-title02::before {
    width: 1vw;
    height: 4vw;
    border-radius: 0.4vw;
	}
	.c-title02 span {
		margin-left: 2vw;
		font-size: 3.125vw;
	}
}
.c-title03 {
	margin-bottom: 10px;
	font-size: 1.8rem;
	font-weight: 600;
	line-height: 1.4;
}
@media screen and (max-width: 767px) {
	.c-title03 {
		margin-bottom: 2vw;
		font-size: 4vw;
	}
}
.c-title04 {
	margin-bottom: 10px;
	font-size: 1.6rem;
	font-weight: 600;
	line-height: 1.4;
}
.c-title04.border {
	padding-bottom: 5px;
	border-bottom: 1px solid #c2c2c2;
}
@media screen and (max-width: 767px) {
	.c-title04 {
		margin-bottom: 2vw;
		font-size: 4vw;
	}
  .c-title04.border {
    padding-bottom: 1vw;
    border-bottom: 1px solid #c2c2c2;
  }
}


.c-kome-list > *,
.c-kome-text {
	position: relative;
	padding-left: 1em;
	text-indent: -1em;
}



/* === Layout === */
.u-tac { text-align: center; }
.u-tar { text-align: right; }
.u-tal { text-align: left; }
.u-break { word-break: break-word; }
.u-nowrap { white-space: nowrap; }
.u-hidden { display: none !important; }
.u-block { display: block !important; }
.u-inline { display: inline !important; }
.u-inline-block { display: inline-block !important; }
.u-visible { visibility: visible; }
.u-invisible { visibility: hidden; }
.u-flex { display: flex; }
.u-inline-flex { display: inline-flex; }
.u-flex-wrap { flex-wrap: wrap; }
.u-ai-center { align-items: center; }
.u-jc-center { justify-content: center; }
.u-jc-between { justify-content: space-between; }

/* === Typography === */
.u-fw-100 { font-weight: 100; } /* Thin */
.u-fw-200 { font-weight: 200; } /* Extra Light */
.u-fw-300 { font-weight: 300; } /* Light */
.u-fw-400 { font-weight: 400; } /* Normal (Regular) */
.u-fw-500 { font-weight: 500; } /* Medium */
.u-fw-600 { font-weight: 600; } /* Semi Bold */
.u-fw-700 { font-weight: 700; } /* Bold */
.u-fw-800 { font-weight: 800; } /* Extra Bold */
.u-fw-900 { font-weight: 900; } /* Black */
.u-fz-18 { font-size: 1.8rem; }
.u-fz-20 { font-size: 2rem; }
.u-fc-blue { color: #15306a; }


@media screen and (max-width: 767px) {
	.u-fz-18 { font-size: 4.375vw; }
	.u-fz-20 { font-size: 4.6875vw; }
}

