@import url(https://fonts.googleapis.com/css2?family=Marcellus&display=swap);

@font-face {
	font-weight: 300;
	font-family: "NotoSansJP";
	font-style: normal;
	src: url("../fonts/NotoSansJP/NotoSansCJKjp-DemiLight.woff") format("woff"), url("../fonts/NotoSansJP/NotoSansCJKjp-DemiLight.woff2") format("woff2"), url("../fonts/NotoSansJP/NotoSansCJKjp-DemiLight.ttf") format("truetype");
	font-display: swap
}

@font-face {
	font-weight: 100;
	font-family: "NotoSansCJKjp";
	font-style: light;
	src: url("../fonts/NotoSansJP/NotoSansCJKjp-Light.woff") format("woff"), url("../fonts/NotoSansJP/NotoSansCJKjp-Light.woff2") format("woff2"), url("../fonts/NotoSansJP/NotoSansCJKjp-Light.ttf") format("truetype");
	font-display: swap
}

@font-face {
	font-family: "NotoSerifJP";
	font-style: normal;
	src: url("../fonts/NotoSerifJP/NotoSerifCJKjp-Light.woff") format("woff"), url("../fonts/NotoSerifJP/NotoSerifCJKjp-Light.woff2") format("woff2"), url("../fonts/NotoSerifJP/NotoSerifCJKjp-Light.ttf") format("truetype");
	font-display: swap
}

html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	vertical-align: baseline
}

*,
::before,
::after {
	box-sizing: border-box;
	backface-visibility: inherit
}

html {
	position: relative;
	overflow-x: hidden;
	color: #242728;
	font-size: 16px;
	font-family: "NotoSansJP", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", Meiryo, メイリオ, sans-serif;
	line-height: 2;
	letter-spacing: 0.06em;
	word-wrap: break-word;
	overflow-wrap: break-word;
	background: #fff
}

@media screen and (max-width: 767px) {
	html {
		font-size: 4.27vw;
		line-height: 1.8
	}
}

body {
	position: relative;
	width: 100%;
	overflow: hidden
}

h1,
h2,
h3,
h4,
h5,
h6 {
	margin-top: 0;
	margin-bottom: 0
}

p {
	margin-top: 0;
	margin-bottom: 0
}

hr {
	margin-top: 0;
	margin-bottom: 0
}

pre {
	margin-top: 0;
	margin-bottom: 0
}

blockquote {
	margin: 0
}

ol,
ul {
	margin-top: 0;
	margin-bottom: 0;
	padding-left: 0
}

li {
	list-style-type: none
}

dl {
	margin-top: 0;
	margin-bottom: 0
}

dd {
	margin-left: 0
}

figure {
	margin: 0
}

address,
em,
cite,
dfn,
var,
i {
	font-style: inherit
}

img,
iframe,
embed,
object,
video,
audio,
svg,
canvas {
	vertical-align: bottom
}

img,
iframe,
video,
input,
select,
textarea {
	max-width: 100%;
	height: auto
}

input::placeholder,
textarea::placeholder,
input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
	color: #aaa
}

input,
button,
select,
textarea {
	padding: 0;
	color: inherit;
	font: inherit;
	background-color: transparent;
	border: 0
}

select {
	border-radius: 0;
	-moz-appearance: none;
	-webkit-appearance: none
}

::-ms-expand {
	display: none
}

fieldset {
	min-width: 0;
	margin: 0;
	padding: 0;
	border: 0
}

[hidden][hidden] {
	display: none !important
}

a {
	text-decoration: none;
	color: #242728
}

.wrap {
	visibility: hidden;
	opacity: 0
}

.l-store .store-trigger .icon:after,
.l-store .faq-trigger .icon:after,
.l-faq .store-trigger .icon:after,
.l-faq .faq-trigger .icon:after {
	width: 2px;
	height: 20px
}

.l-store .store-trigger .icon:before,
.l-store .faq-trigger .icon:before,
.l-faq .store-trigger .icon:before,
.l-faq .faq-trigger .icon:before {
	width: 20px;
	height: 2px
}

.icon .is-Pc {
	right: 1.5rem;
}

.icon .is-Sp {
	right: 1.5rem;
}

@media screen and (max-width: 767px) {
	.is-Pc {
		display: none !important;
	}
}

@media screen and (min-width: 768px) {
	.is-Sp {
		display: none !important;
	}
}

.c-scrollbar {
	display: none
}

.item-t {
	overflow: hidden;
	line-height: 1
}

.item-t span {
	display: inline-block
}

.item-t2 {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%
}

#l-header .sns .sns-inner,
.l-productKv .titleWrap {
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl
}

.is-contactContainer {
	width: 100%;
	position: relative;
	overflow: hidden
}

@media screen and (min-width: 768px) {
	.is-contactContainer {
		padding: 140px 0 0px
	}
}

@media screen and (max-width: 767px) {
	.is-contactContainer {
		padding: 32vw 0
	}
}

@media screen and (min-width: 768px) {
	.is-contactContainer .contact-content {
		margin-top: 78px
	}
}

@media screen and (max-width: 767px) {
	.is-contactContainer .contact-content {
		margin-top: 13.34vw
	}
}

.is-contactContainer .head {
	font-weight: 100;
	line-height: 1;
	left: 50%;
	transform: translateX(-50%)
}

@media screen and (min-width: 768px) {
	.is-contactContainer .head {
		font-size: 91px
	}
}

@media screen and (max-width: 767px) {
	.is-contactContainer .head {
		font-size: 13.34vw
	}
}

.is-contactContainer .btn.btn-back span {
	color: #242728
}

.is-contactContainer .btn.btn-submit span {
	color: #3b88d2
}

.is-contactContainer .btn span {
	padding-left: 2px
}

@media screen and (min-width: 768px) {
	.is-contactContainer .btn {
		width: 240px;
		margin: 0 auto 20px auto;
	}
}

.is-contactContainer .btn .text {
	overflow: hidden;
	position: relative
}

#l-header {
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 8888
}

#l-header.is-white .logo a .logo-b {
	opacity: 0
}

#l-header.is-white .logo a .logo-w {
	opacity: 1
}

#l-header .logo {
	position: fixed;
	top: 0;
	line-height: 1;
	z-index: 2
}

#l-header .logo .logo-img {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	transition: all 0.5s cubic-bezier(0.25, 0.25, 0.75, 0.75)
}

#l-header .logo .logo-b {
	background-image: url(../images/common/brand_logo.svg);
	opacity: 1
}

#l-header .logo .logo-w {
	background-image: url(../images/common/brand_logo_w.svg);
	opacity: 0
}

#l-header .logo a {
	width: 100%;
	display: block;
	position: relative;
	z-index: 4
}

@media screen and (min-width: 768px) {
	#l-header .logo a {
		width: 124px;
		height: 23px;
		margin: 25px 0 0 30px
	}
}

@media screen and (max-width: 767px) {
	#l-header .logo a {
		width: 92px;
		height: 17px;
		margin: 20px 0 0 20px
	}
}

#l-header .frame-item {
	position: absolute;
	background-size: cover;
	background-repeat: no-repeat;
	z-index: 0
}

#l-header .frame-rightTop {
	top: 0px;
	right: 0px;
	transform: translateX(20px) translateY(-30px);
	opacity: 0;
	background-image: url(../images/common/menu_bg.png);
	background-position: right top
}

@media screen and (min-width: 768px) {
	#l-header .frame-rightTop {
		width: 240px;
		height: 164px
	}
}

@media screen and (max-width: 767px) {
	#l-header .frame-rightTop {
		width: 170px;
		height: 118px
	}
}

#l-footer {
	width: 100%;
	position: relative;
	z-index: 100;
	-webkit-transform: translate3d(0, 0, 0);
	background: #fff;
	opacity: 0;
	visibility: hidden
}

#l-footer:before {
	content: "";
	width: 100%;
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
	z-index: 0;
	background-image: url(../images/common/footer_bg.png)
}

@media screen and (min-width: 768px) {
	#l-footer:before {
		height: 12.5vw;
		bottom: -1.46vw
	}
}

@media screen and (max-width: 767px) {
	#l-footer:before {
		height: 10.67vw;
		bottom: 0
	}
}

#l-footer .inner {
	position: relative;
	z-index: 1
}

@media screen and (min-width: 768px) {
	#l-footer .inner {
		padding: 120px 11.7vw
	}
}

@media screen and (max-width: 767px) {
	#l-footer .inner {
		padding: 17.34vw 13.34vw 19.2vw
	}
}

#l-footer a {
	display: block;
	position: relative
}

.footer__main {
	position: relative
}

@media screen and (min-width: 768px) {
	.footer__main .footer__list {
		display: flex
	}
}

@media screen and (max-width: 767px) {
	.footer__main .footer-listBorder {
		padding-bottom: 6.4vw;
		border-bottom: 1px solid #ebeef2
	}
}

@media screen and (min-width: 768px) {
	.footer__main .footer__prod {
		margin-right: 160px
	}
}

.footer__main .footer__prod dt {
	color: #3b88d2;
	line-height: 1
}

@media screen and (min-width: 768px) {
	.footer__main .footer__prod dt {
		font-size: 24px;
		margin-bottom: 30px
	}
}

@media screen and (max-width: 767px) {
	.footer__main .footer__prod dt {
		font-size: 6.4vw;
		margin-bottom: 8vw
	}
}

@media screen and (min-width: 768px) {
	.footer__main ul li {
		margin-bottom: 20px
	}
}

@media screen and (max-width: 767px) {
	.footer__main ul li {
		margin-bottom: 7vw
	}
}

.footer__main ul li:last-child {
	margin-bottom: 0
}

@media screen and (min-width: 768px) {
	.footer__main .footer__menu {
		margin-top: 49px
	}
}

@media screen and (max-width: 767px) {
	.footer__main .footer__menu {
		margin-top: 6.4vw
	}
}

.footer__main .footer__toTop {
	position: absolute;
	top: 0;
	right: 0
}

.footer__main .footer__toTop a {
	cursor: pointer
}

.footer__main .footer__toTop a::before {
	content: "";
	display: block;
	position: relative;
	left: 0;
	right: 0;
	background-position: center;
	background-repeat: no-repeat;
	background-image: url(../images/common/icon_arrow_toTop.svg)
}

@media screen and (min-width: 768px) {
	.footer__main .footer__toTop a::before {
		width: 61px;
		height: 61px;
		margin: 0 auto 24px
	}
}

@media screen and (max-width: 767px) {
	.footer__main .footer__toTop a::before {
		width: 12.8vw;
		height: 16vw;
		margin: 0 auto 3.74vw
	}
}

.footer__main .footer__toTop .footer__toTopTxt {
	line-height: 1;
	overflow: hidden;
	position: relative
}

@media screen and (max-width: 767px) {
	.footer__main .footer__toTop .footer__toTopTxt {
		font-size: 2.94vw
	}
}

@media screen and (min-width: 768px) {
	.footer__sub {
		display: flex;
		justify-content: space-between
	}
}

.footer__sub .footer__logo {
	width: 100%;
	display: inline-block;
	text-align: right
}

@media screen and (min-width: 768px) {
	.footer__sub .footer__logo {
		margin-top: 30px
	}
}

@media screen and (max-width: 767px) {
	.footer__sub .footer__logo {
		margin-top: 10.14vw
	}
}

.footer__sub .footer__logo img {
	vertical-align: bottom
}

@media screen and (min-width: 768px) {
	.footer__sub .footer__logo img {
		width: 334px
	}
}

@media screen and (max-width: 767px) {
	.footer__sub .footer__logo img {
		width: 50.67vw
	}
}

.footer__bottom {
	width: 100%
}

@media screen and (min-width: 768px) {
	.footer__bottom {
		display: flex;
		justify-content: flex-end;
		margin-top: 50px
	}
}

@media screen and (max-width: 767px) {
	.footer__bottom {
		margin-top: 6.94vw
	}
}

.footer__bottom .linkList {
	display: flex
}

@media screen and (max-width: 767px) {
	.footer__bottom .linkList {
		justify-content: flex-end
	}
}

.footer__bottom .linkList__item {
	line-height: 1
}

@media screen and (min-width: 768px) {
	.footer__bottom .linkList__item {
		padding: 0 32px 0 0
	}
}

@media screen and (max-width: 767px) {
	.footer__bottom .linkList__item {
		margin-right: 7.47vw
	}

	.footer__bottom .linkList__item:last-child {
		margin-right: 0
	}
}

.footer__bottom .linkList__item a {
	color: #888888
}

@media screen and (min-width: 768px) {
	.footer__bottom .linkList__item a {
		font-size: 12px
	}
}

@media screen and (max-width: 767px) {
	.footer__bottom .linkList__item a {
		font-size: 3.2vw
	}
}

.footer__bottom .copyright {
	line-height: 1
}

@media screen and (min-width: 768px) {
	.footer__bottom .copyright {
		margin-top: -2px
	}

	.footer__bottom .copyright small {
		font-size: 12px
	}
}

@media screen and (max-width: 767px) {
	.footer__bottom .copyright {
		text-align: right;
		margin-top: 3.74vw
	}

	.footer__bottom .copyright small {
		font-size: 3.2vw
	}
}

#l-lineModal {
	width: 100%;
	height: 100vh;
	position: fixed;
	top: 0;
	z-index: 9999;
	opacity: 0;
	visibility: hidden
}

#l-lineModal .lineModal-box {
	text-align: center;
	margin: auto;
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 1;
	transform: translate(-50%, -50%);
	background-color: #fff
}

@media screen and (min-width: 768px) {
	#l-lineModal .lineModal-box {
		width: 760px;
		padding: 120px 60px 60px;
	}
}

@media screen and (max-width: 767px) {
	#l-lineModal .lineModal-box {
		width: 100%;
		padding: 22.4vw 0px 17.34vw
	}
}

#l-lineModal .lineModal-box:before,
#l-lineModal .lineModal-box::after {
	content: "";
	position: absolute;
	z-index: 0;
	background-position: top left;
	background-repeat: no-repeat;
	background-size: cover
}

#l-lineModal .lineModal-box:before {
	top: 0;
	left: 0;
	background-image: url(../images/common/bg_lineModal_left.png)
}

@media screen and (min-width: 768px) {
	#l-lineModal .lineModal-box:before {
		width: 241px;
		height: 190px
	}
}

@media screen and (max-width: 767px) {
	#l-lineModal .lineModal-box:before {
		width: 32vw;
		height: 25.67vw
	}
}

#l-lineModal .lineModal-box::after {
	bottom: 0;
	right: 0;
	background-image: url(../images/common/bg_lineModal_right.png)
}

@media screen and (min-width: 768px) {
	#l-lineModal .lineModal-box::after {
		width: 269px;
		height: 135px
	}
}

@media screen and (max-width: 767px) {
	#l-lineModal .lineModal-box::after {
		width: 36vw;
		height: 18.14vw
	}
}

#l-lineModal .lineModal-box .title-box {
	color: #3b88d2;
	position: relative;
	z-index: 1
}

@media screen and (max-width: 767px) {
	#l-lineModal .lineModal-box .title-box {
		margin-bottom: 3.74vw
	}
}

#l-lineModal .lineModal-box .title {
	line-height: 1.2
}

@media screen and (min-width: 768px) {
	#l-lineModal .lineModal-box .title {
		font-size: 42px;
		padding-bottom: 0.15em;
	}
}

@media screen and (max-width: 767px) {
	#l-lineModal .lineModal-box .title {
		font-size: 10.14vw
	}
}

@media screen and (min-width: 768px) {
	#l-lineModal .lineModal-box .titleSub {
		font-size: 14px
	}
}

@media screen and (max-width: 767px) {
	#l-lineModal .lineModal-box .titleSub {
		font-size: 3.2vw
	}
}

#l-lineModal .lineModal-box .body {
	line-height: 1.8
}

@media screen and (max-width: 767px) {
	#l-lineModal .lineModal-box .body {
		font-size: 3.74vw
	}
}

#l-lineModal .lineModal-box .icons {
	height: 100%;
	margin: auto;
	position: absolute;
	top: 0;
	left: 0;
	right: 0
}

@media screen and (min-width: 768px) {
	#l-lineModal .lineModal-box .icons {
		width: 620px
	}
}

@media screen and (max-width: 767px) {
	#l-lineModal .lineModal-box .icons {
		width: 88vw
	}
}

#l-lineModal .lineModal-box .icons .icon-item {
	position: absolute
}

#l-lineModal .lineModal-box .icons .icon-item01 {
	background-image: url(../images/common/icon_item01.png)
}

@media screen and (min-width: 768px) {
	#l-lineModal .lineModal-box .icons .icon-item01 {
		width: 43px;
		height: 32px;
		top: 40px;
		left: 300px
	}
}

@media screen and (max-width: 767px) {
	#l-lineModal .lineModal-box .icons .icon-item01 {
		width: 6.4vw;
		height: 4.8vw;
		top: 10.67vw;
		left: 42.14vw
	}
}

#l-lineModal .lineModal-box .icons .icon-item02 {
	background-image: url(../images/common/icon_item02.png)
}

@media screen and (min-width: 768px) {
	#l-lineModal .lineModal-box .icons .icon-item02 {
		width: 39px;
		height: 33px;
		top: 60px;
		left: 475px
	}
}

@media screen and (max-width: 767px) {
	#l-lineModal .lineModal-box .icons .icon-item02 {
		width: 5.87vw;
		height: 5.07vw;
		top: 26.67vw;
		left: 72vw
	}
}

#l-lineModal .lineModal-box .icons .icon-item03 {
	background-image: url(../images/common/icon_item03.png)
}

@media screen and (min-width: 768px) {
	#l-lineModal .lineModal-box .icons .icon-item03 {
		width: 25px;
		height: 55px;
		top: 124px;
		left: 575px
	}
}

@media screen and (max-width: 767px) {
	#l-lineModal .lineModal-box .icons .icon-item03 {
		width: 3.74vw;
		height: 8.27vw;
		top: 45.34vw;
		left: 83.74vw
	}
}

#l-lineModal .lineModal-box .icons .icon-item04 {
	background-image: url(../images/common/icon_item04.png)
}

@media screen and (min-width: 768px) {
	#l-lineModal .lineModal-box .icons .icon-item04 {
		width: 29px;
		height: 24px;
		top: 260px;
		left: 592px
	}
}

@media screen and (max-width: 767px) {
	#l-lineModal .lineModal-box .icons .icon-item04 {
		width: 4.27vw;
		height: 3.47vw;
		top: 77.34vw;
		left: 81.6vw
	}
}

#l-lineModal .lineModal-box .icons .icon-item05 {
	background-image: url(../images/common/icon_item05.png)
}

@media screen and (min-width: 768px) {
	#l-lineModal .lineModal-box .icons .icon-item05 {
		width: 73px;
		height: 50px;
		top: 352px;
		left: 523px
	}
}

@media screen and (max-width: 767px) {
	#l-lineModal .lineModal-box .icons .icon-item05 {
		display: none
	}
}

#l-lineModal .lineModal-box .icons .icon-item06 {
	background-image: url(../images/common/icon_item06.png)
}

@media screen and (min-width: 768px) {
	#l-lineModal .lineModal-box .icons .icon-item06 {
		width: 54px;
		height: 29px;
		top: 370px;
		left: 72px
	}
}

@media screen and (max-width: 767px) {
	#l-lineModal .lineModal-box .icons .icon-item06 {
		display: none
	}
}

#l-lineModal .lineModal-box .icons .icon-item07 {
	background-image: url(../images/common/icon_item07.png)
}

@media screen and (min-width: 768px) {
	#l-lineModal .lineModal-box .icons .icon-item07 {
		width: 32px;
		height: 95px;
		top: 235px;
		left: 0px;
	}
}

@media screen and (max-width: 767px) {
	#l-lineModal .lineModal-box .icons .icon-item07 {
		background-image: url(../images/common/icon_item07.png);
		width: 4.8vw;
		height: 14.14vw;
		top: 69.34vw;
		left: 0;
	}
}

#l-lineModal .lineModal-box .icons .icon-item08 {
	background-image: url(../images/common/icon_item08.png)
}

@media screen and (min-width: 768px) {
	#l-lineModal .lineModal-box .icons .icon-item08 {
		width: 37px;
		height: 49px;
		top: 135px;
		left: 40px;
	}
}

@media screen and (max-width: 767px) {
	#l-lineModal .lineModal-box .icons .icon-item08 {
		background-image: url(../images/common/icon_item08.png);
		width: 5.6vw;
		height: 7.47vw;
		top: 47.47vw;
		left: -2.66vw
	}
}

#l-lineModal .lineModal-box .icons .icon-item09 {
	background-image: url(../images/common/icon_item09.png)
}

@media screen and (min-width: 768px) {
	#l-lineModal .lineModal-box .icons .icon-item09 {
		width: 46px;
		height: 32px;
		top: 55px;
		left: 145px
	}
}

@media screen and (max-width: 767px) {
	#l-lineModal .lineModal-box .icons .icon-item09 {
		width: 6.94vw;
		height: 4.8vw;
		top: 16vw;
		left: 9.34vw
	}
}

#l-lineModal .lineModal-box .btn {
	margin: auto;
	display: flex;
	position: relative;
	z-index: 1
}

@media screen and (min-width: 768px) {
	#l-lineModal .lineModal-box .btn {
		width: 240px;
		/*margin-top: 60px;*/　/*小窓のLINEボタンを終了時に位置変更のためコメントアウト2025/4/1*/
	}
}

@media screen and (max-width: 767px) {
	#l-lineModal .lineModal-box .btn {
		width: 58.67vw;
		margin-top: 6.67vw
	}
}

@media screen and (min-width: 768px) {

	#l-lineModal .lineModal-box .btn .c-btn--white,
	#l-lineModal .lineModal-box .btn .c-btn--blue,
	#l-lineModal .lineModal-box .btn .c-btn--black {
		padding-left: 20px
	}
}

@media screen and (max-width: 767px) {

	#l-lineModal .lineModal-box .btn .c-btn--white,
	#l-lineModal .lineModal-box .btn .c-btn--blue,
	#l-lineModal .lineModal-box .btn .c-btn--black {
		padding-left: 6.4vw
	}
}

#l-lineModal .lineModal-box .btn .text {
	overflow: hidden;
	position: relative
}

#l-lineModal .lineModal-box .btn .text span {
	padding-left: 0
}

#l-lineModal .lineModal-box .close {
	position: absolute;
	top: 0;
	right: 0;
	background-color: #3b88d2;
	cursor: pointer
}

@media screen and (min-width: 768px) {
	#l-lineModal .lineModal-box .close {
		width: 80px;
		height: 80px
	}
}

@media screen and (max-width: 767px) {
	#l-lineModal .lineModal-box .close {
		width: 21.34vw;
		height: 21.34vw
	}
}

#l-lineModal .lineModal-box .close .close-icon {
	background-image: url(../images/common/icon_modal_close.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover
}

@media screen and (min-width: 768px) {
	#l-lineModal .lineModal-box .close .close-icon {
		width: 24px;
		height: 24px
	}
}

@media screen and (max-width: 767px) {
	#l-lineModal .lineModal-box .close .close-icon {
		width: 6.4vw;
		height: 6.4vw
	}
}

#l-lineModal .lineModal-bg {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	background-color: #fff;
	opacity: 0.7
}

#l-promotionWrap {
	height: 100vh;
	pointer-events: none;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 1000
}

@media screen and (min-width: 768px) {
	#l-promotionWrap {
		width: 370px
	}
}

@media screen and (max-width: 767px) {
	#l-promotionWrap {
		width: 81.34vw
	}
}

#l-promotion {
	width: 100px;
	position: fixed;
	z-index: 7777;
	background-color: #193850;
	border-radius: 10px;
	pointer-events: auto;
	opacity: 0;
	visibility: hidden;
	-webkit-transform: translateY(10px);
	transform: translateY(10px)
}

@media screen and (min-width: 768px) {
	#l-promotion {
		width: 370px;
		right: 10px;
		bottom: 10px
	}
}

@media screen and (max-width: 767px) {
	#l-promotion {
		width: 81.34vw;
		right: 2.67vw;
		bottom: 2.67vw
	}
}

@media screen and (min-width: 768px) {
	#l-promotion:hover::before {
		opacity: 0.6
	}
}

#l-promotion::before {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	background-image: url(../images/common/bg_pattern.png);
	background-size: 287px 231px;
	transition: all 0.5s cubic-bezier(0.25, 0.1, 0.25, 1)
}

#l-promotion .banner-icon {
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto
}

@media screen and (min-width: 768px) {
	#l-promotion .banner-icon {
		width: 38px;
		height: 38px;
		right: 24px
	}
}

@media screen and (max-width: 767px) {
	#l-promotion .banner-icon {
		width: 10.14vw;
		height: 10.14vw;
		right: 2.67vw
	}
}

#l-promotion .banner-icon::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 10;
	margin: auto;
	background-image: url(../images/common/icon_arrow_btnArr.svg)
}

@media screen and (min-width: 768px) {
	#l-promotion .banner-icon::after {
		width: 20px;
		height: 17px
	}
}

@media screen and (max-width: 767px) {
	#l-promotion .banner-icon::after {
		width: 5.34vw;
		height: 4.54vw
	}
}

#l-promotion .banner {
	display: flex;
	align-items: center;
	position: relative;
	z-index: 1
}

@media screen and (min-width: 768px) {
	#l-promotion .banner {
		padding: 35px 28px
	}
}

@media screen and (max-width: 767px) {
	#l-promotion .banner {
		padding: 8vw 5.34vw
	}
}

#l-promotion .banner .thumb {
	position: relative;
	overflow: hidden
}

@media screen and (min-width: 768px) {
	#l-promotion .banner .thumb {
		min-width: 62px;
		width: 70px
	}
}

@media screen and (max-width: 767px) {
	#l-promotion .banner .thumb {
		width: 18.67vw
	}
}

#l-promotion .banner .text {
	color: #fff
}

@media screen and (min-width: 768px) {
	#l-promotion .banner .text {
		padding: 0 0 0 20px;
		margin-top: -12px
	}
}

@media screen and (max-width: 767px) {
	#l-promotion .banner .text {
		padding: 0 4vw;
		margin-top: -3.2vw
	}
}

@media screen and (min-width: 768px) {
	#l-promotion .banner .text .title {
		font-size: 18px;
		padding-bottom: 0.3em;
	}
}

@media screen and (max-width: 767px) {
	#l-promotion .banner .text .title {
		font-size: 4.8vw
	}
}

#l-promotion .banner .text .body {
	line-height: 1.6
}

@media screen and (min-width: 768px) {
	#l-promotion .banner .text .body {
		font-size: 12px
	}
}

@media screen and (max-width: 767px) {
	#l-promotion .banner .text .body {
		font-size: 3.2vw
	}
}

#l-promotion .close {
	position: absolute;
	background-color: #3b88d2;
	cursor: pointer;
	border-radius: 50%;
	z-index: 1
}

@media screen and (min-width: 768px) {
	#l-promotion .close {
		width: 40px;
		height: 40px;
		top: -10px;
		right: -5px
	}
}

@media screen and (max-width: 767px) {
	#l-promotion .close {
		width: 10.67vw;
		height: 10.67vw;
		top: -2.66vw;
		right: -1.33vw
	}
}

#l-promotion .close .close-icon {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	background-image: url(../images/common/icon_modal_close.svg)
}

@media screen and (min-width: 768px) {
	#l-promotion .close .close-icon {
		width: 12px;
		height: 12px
	}
}

@media screen and (max-width: 767px) {
	#l-promotion .close .close-icon {
		width: 3.2vw;
		height: 3.2vw
	}
}

.l-register {
	position: relative;
	background-color: #4d8b58
}

@media screen and (max-width: 767px) {
	.l-register {
		padding: 0 6.67vw
	}
}

.l-register .block {
	width: 100%;
	position: relative
}

@media screen and (min-width: 768px) {
	.l-register .block--bottom {
		display: flex;
		padding: 110px 0
	}
}

@media screen and (min-width: 1024px) {
	.l-register .block--bottom {
		display: flex;
		padding: 100px 0
	}
}

@media screen and (max-width: 767px) {
	.l-register .block--bottom {
		padding: 17.07vw 0
	}
}

@media screen and (min-width: 768px) {
	.l-register .block--bottom .thumb {
		min-width: 334px;
		width: 45%;
		/* kato */
		max-width: 800px;
		/* kato */
		margin-right: 5%;
		/* kato */
	}
}
}

@media screen and (min-width: 768px) {
	.l-register .block--bottom .text-box {
		padding-left: 5.12vw
	}
}

@media screen and (max-width: 767px) {
	.l-register .block--bottom .text-box {
		padding-left: 0
	}
}

@media screen and (min-width: 768px) {
	.l-register .block--bottom .btn {
		/*position: absolute; */
		/* kato */
		margin-top: 10vw;
	}
}

.l-register .thumb {
	position: relative
}

.l-register .thumb:before {
	content: "";
	display: block;
	padding-top: 71%
}

.l-register .title {
	line-height: 1.4;
	font-weight: 100;
	color: #fff
}

@media screen and (min-width: 1024px) {
	.l-register .title br {
		/* display: none 2025/4/1  */
	}
}

@media screen and (min-width: 768px) {
	.l-register .title {
		font-size: 24px;
		margin-bottom: 20px;
		width: 100%;
	}
}

@media screen and (min-width: 1024px) {
	.l-register .title {
		font-size: 30px
	}
}

@media screen and (max-width: 767px) {
	.l-register .title {
		font-size: 6.94vw;
		margin-top: 7.47vw;
		margin-bottom: 4.8vw
	}
}

.l-register .body {
	color: #fff;
	font-weight: 100
}

@media screen and (min-width: 768px) {
	.l-register .body {
		font-size: 14px
	}
}

@media screen and (max-width: 767px) {
	.l-register .body {
		font-size: 3.74vw;
		margin-bottom: 8vw
	}
}

.l-lineup {
	position: relative
}

.l-lineup.main--lineup {
	background-color: #3b88d2;
	position: relative
}

@media screen and (min-width: 768px) {
	.l-lineup.main--lineup {
		padding: 190px 0 200px 0
	}
}

@media screen and (max-width: 767px) {
	.l-lineup.main--lineup {
		padding: 20.27vw 0 32vw
	}
}

.l-lineup .head {
	line-height: 1
}

@media screen and (min-width: 768px) {
	.l-lineup .head {
		margin-left: 12.43vw
	}
}

@media screen and (max-width: 767px) {
	.l-lineup .head {
		transform: translateX(-50%);
		left: 50%
	}
}

.l-lineup .head__main {
	display: block;
	font-weight: 500;
	color: #fff
}

@media screen and (min-width: 768px) {
	.l-lineup .head__main {
		text-align: left;
		font-size: 120px
	}
}

@media screen and (max-width: 767px) {
	.l-lineup .head__main {
		font-size: 14.94vw
	}
}

.l-lineup .title__sub {
	display: block
}

@media screen and (max-width: 767px) {
	.l-lineup .title__sub {
		margin: 3.2vw 0 0;
		font-size: 3.2vw
	}
}

.l-lineup .carousel {
	width: 100%;
	position: relative
}

@media screen and (min-width: 768px) {
	.l-lineup .carousel .swiper-container {
		padding-top: 155px;
		margin-left: -40.2vw
	}
}

@media screen and (max-width: 767px) {
	.l-lineup .carousel {
		margin-top: 13.34vw
	}
}

@media screen and (min-width: 768px) {
	.l-lineup .swp-button {
		top: 0
	}
}

@media screen and (max-width: 767px) {
	.l-lineup .swp-button {
		top: 26.67vw
	}
}

@media screen and (min-width: 768px) {
	.l-lineup .swiper-button-prev {
		right: 266px;
		left: auto
	}
}

@media screen and (min-width: 768px) {
	.l-lineup .swiper-button-next {
		right: 170px
	}
}

.l-lineup .lineupBg {
	position: absolute
}

@media screen and (min-width: 768px) {
	.l-lineup .lineupBg-right {
		top: 140px;
		right: 0
	}
}

@media screen and (max-width: 1023px) {
	.l-lineup .lineupBg-right {
		top: 280px;
		right: -8.77vw
	}
}

@media screen and (max-width: 767px) {
	.l-lineup .lineupBg-right {
		top: 29.34vw;
		right: -13.33vw
	}
}

.l-lineup .lineupBg-left {
	left: 0
}

@media screen and (min-width: 768px) {
	.l-lineup .lineupBg-left {
		bottom: 0
	}
}

@media screen and (max-width: 767px) {
	.l-lineup .lineupBg-left {
		bottom: -37.33vw
	}
}

.l-news {
	position: relative;
	background-color: #242728;
	overflow: hidden
}

.l-news::before,
.l-news::after {
	content: "";
	position: absolute;
	bottom: 0;
	background-repeat: no-repeat;
	background-size: cover
}

.l-news::before {
	left: 0;
	background-image: url(../images/news/news_tree_left.png)
}

@media screen and (min-width: 768px) {
	.l-news::before {
		width: 148px;
		height: 563px
	}
}

@media screen and (max-width: 767px) {
	.l-news::before {
		width: 19.74vw;
		height: 61.87vw
	}
}

.l-news::after {
	right: 0;
	background-image: url(../images/news/news_tree_right.png)
}

@media screen and (min-width: 768px) {
	.l-news::after {
		width: 245px;
		height: 413px
	}
}

@media screen and (max-width: 767px) {
	.l-news::after {
		width: 34.67vw;
		height: 54.67vw
	}
}

.l-news .inner {
	width: 100%;
	position: relative;
	z-index: 1
}

@media screen and (min-width: 768px) {
	.l-news.p-news--all {
		padding: 140px 0 260px 0
	}
}

@media screen and (max-width: 767px) {
	.l-news.p-news--all {
		padding: 140px 0 160px 0
	}
}

@media screen and (min-width: 768px) {
	.l-news.p-news--part {
		padding: 140px 0 200px 0
	}
}

@media screen and (max-width: 767px) {
	.l-news.p-news--part {
		padding: 26.67vw 0 20vw 0
	}
}

.l-news .head {
	line-height: 1
}

@media screen and (max-width: 767px) {
	.l-news .head {
		transform: translateX(-50%);
		left: 50%
	}
}

.l-news .head .head__main {
	display: block;
	font-weight: 400;
	color: #fff;
	position: relative;
	z-index: 1
}

@media screen and (min-width: 768px) {
	.l-news .head .head__main {
		font-size: 91px;
		text-align: left
	}
}

@media screen and (max-width: 767px) {
	.l-news .head .head__main {
		font-size: 13.34vw
	}
}

.l-news .head .head__moon {
	position: absolute;
	z-index: 0;
	transition: all 2.8s cubic-bezier(0.165, 0.84, 0.44, 1);
	/* */
	transform: translate(30px, -10px)
}

.l-news .head .head__moon.is-active {
	-webkit-transform: translate(0px, 0px);
	transform: translate(0px, 0px)
}

@media screen and (min-width: 768px) {
	.l-news .head .head__moon.is-active::before {
		-webkit-transform: translate(-108px, 30px);
		transform: translate(-108px, 30px)
	}
}

@media screen and (max-width: 767px) {
	.l-news .head .head__moon.is-active::before {
		-webkit-transform: translate(-19.2vw, 8vw);
		transform: translate(-19.2vw, 8vw)
	}
}

.l-news .head .head__moon::before {
	content: "";
	position: absolute;
	background-color: #242728;
	border-radius: 50%;
	z-index: 1;
	transition: all 2.5s cubic-bezier(0.77, 0, 0.175, 1)
}

@media screen and (min-width: 768px) {
	.l-news .head .head__moon::before {
		width: 108px;
		height: 108px;
		top: -4px;
		left: -28px
	}
}

@media screen and (max-width: 767px) {
	.l-news .head .head__moon::before {
		width: 19.2vw;
		height: 21.34vw;
		top: -1.86vw;
		left: -2.66vw
	}
}

.l-news .head .head__moon span {
	width: 100%;
	height: 100%;
	display: block;
	background-image: url(../images/news/news_moon.png)
}

@media screen and (min-width: 768px) {
	.l-news .head .head__moon {
		width: 78px;
		height: 104px;
		top: -35px;
		left: -58px
	}
}

@media screen and (max-width: 767px) {
	.l-news .head .head__moon {
		width: 14.4vw;
		height: 19.2vw;
		top: -11.2vw;
		left: -42.66vw;
		right: 0;
		margin: auto
	}
}

@media screen and (min-width: 768px) {
	.l-news .head .btn-head {
		position: absolute;
		right: 0;
		bottom: -18px;
		z-index: 1
	}
}

@media screen and (max-width: 767px) {
	.l-news .head .btn-head {
		display: none
	}
}

@media screen and (min-width: 768px) {
	.l-news .list {
		margin-top: 68px
	}
}

@media screen and (max-width: 767px) {
	.l-news .list {
		margin-top: 12.8vw;
		margin-bottom: 10.67vw
	}
}

@media screen and (min-width: 768px) {
	.l-news .btn-bottom {
		margin: 60px auto 0;
		width: 220px
	}
}

@media screen and (max-width: 767px) {
	.l-news .btn-bottom {
		margin: 10.67vw auto 0;
		width: 58.67vw;
		display: grid;
		justify-content: center;
	}
}

.l-news .news-pagerWrap {
	display: flex
}

@media screen and (min-width: 768px) {
	.l-news .news-pagerWrap {
		margin-top: 64px
	}
}

@media screen and (max-width: 767px) {
	.l-news .news-pagerWrap {
		margin-top: 10.67vw
	}
}

.l-news .news-pager {
	display: flex;
	align-items: center;
	margin: auto
}

.l-news .news-pager a {
	width: 100%;
	height: 100%;
	display: block;
	text-align: center;
	position: relative
}

@media screen and (min-width: 768px) {
	.l-news .news-pager .news-pagerBtn {
		width: 48px;
		height: 48px
	}
}

@media screen and (max-width: 767px) {
	.l-news .news-pager .news-pagerBtn {
		width: 12.8vw;
		height: 12.8vw
	}
}

.l-news .news-pager .news-pagerBtn a:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto
}

@media screen and (min-width: 768px) {
	.l-news .news-pager .news-pagerBtn a:before {
		width: 10px;
		height: 18px
	}
}

@media screen and (max-width: 767px) {
	.l-news .news-pager .news-pagerBtn a:before {
		width: 2.67vw;
		height: 4.8vw
	}
}

.l-news .news-pager .news-prev a:before {
	background-image: url(../images/common/icon_pager_left.svg)
}

.l-news .news-pager .news-next a:before {
	background-image: url(../images/common/icon_pager_right.svg)
}

.l-news .news-pager .news-listNumber {
	display: flex;
	align-items: center
}

@media screen and (max-width: 767px) {
	.l-news .news-pager .news-listNumber {
		width: 100%;
		justify-content: space-between;
		padding: 0 4.27vw
	}
}

.l-news .news-pager .news-listNumber .news-item {
	position: relative
}

@media screen and (min-width: 768px) {
	.l-news .news-pager .news-listNumber .news-item {
		width: 48px;
		height: 48px
	}
}

@media screen and (max-width: 767px) {
	.l-news .news-pager .news-listNumber .news-item {
		width: 12.8vw;
		height: 12.8vw
	}
}

.l-news .news-pager .news-listNumber .news-item span {
	color: #fff;
	line-height: 1;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%)
}

@media screen and (min-width: 768px) {
	.l-news .news-pager .news-listNumber .news-item span {
		font-size: 18px
	}
}

@media screen and (max-width: 767px) {
	.l-news .news-pager .news-listNumber .news-item span {
		font-size: 1.28571rem
	}
}

.l-news .news-pager .news-listNumber .news-item:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	border-radius: 50%;
	background-color: #fff;
	transform: scale(0);
	transform-origin: center;
	backface-visibility: hidden
}

@media screen and (min-width: 768px) {
	.l-news .news-pager .news-listNumber .news-item:before {
		width: 48px;
		height: 48px
	}
}

@media screen and (max-width: 767px) {
	.l-news .news-pager .news-listNumber .news-item:before {
		width: 12.8vw;
		height: 12.8vw
	}
}

.l-news .news-pager .news-listNumber .news-item.is-active span {
	color: #242728
}

.l-news .news-pager .news-listNumber .news-item.is-active:before {
	transform: scale(1)
}

.l-store {
	position: relative;
	overflow: hidden;
	background-color: #ebeef2
}

@media screen and (min-width: 768px) {
	.l-store {
		padding: 196px 0 160px 0
	}
}

.l-store .inner {
	position: relative;
	z-index: 1
}

.l-store .storeBox {
	position: relative;
	z-index: 1
}

.l-store .snow-shape {
	position: absolute;
	z-index: 0
}

.l-store .snow-shape span {
	width: 100%;
	height: 100%;
	position: absolute
}

@media screen and (min-width: 768px) {
	.l-store .snow-topL {
		width: 630px;
		height: 998px;
		top: -70px;
		left: 0px
	}
}

@media screen and (max-width: 767px) {
	.l-store .snow-topL {
		width: 109.34vw;
		height: 165.34vw;
		top: -18.66vw;
		left: -26.66vw
	}
}

.l-store .snow-topL span {
	background-image: url(../images/store/snow_shape01.png)
}

.l-store .snow-bottomR {
	right: 0
}

@media screen and (min-width: 768px) {
	.l-store .snow-bottomR {
		width: 362px;
		height: 492px;
		bottom: -130px
	}
}

@media screen and (max-width: 767px) {
	.l-store .snow-bottomR {
		width: 96.54vw;
		height: 131.2vw;
		bottom: -53.33vw
	}
}

.l-store .snow-bottomR span {
	background-image: url(../images/store/snow_shape02.png)
}

@media screen and (max-width: 767px) {
	.l-store.p-store--all {
		padding: 30.4vw 0 32vw 0
	}
}

@media screen and (min-width: 768px) {
	.l-store.p-store--part::before {
		bottom: 0px
	}
}

@media screen and (max-width: 767px) {
	.l-store.p-store--part {
		padding: 26.67vw 0 20vw 0
	}
}

.l-store .head {
	line-height: 1
}

@media screen and (max-width: 767px) {
	.l-store .head {
		transform: translateX(-50%);
		left: 50%
	}
}

.l-store .head .head__main {
	display: block;
	font-weight: 400;
	position: relative;
	z-index: 1
}

@media screen and (min-width: 768px) {
	.l-store .head .head__main {
		font-size: 110px;
		text-align: left
	}
}

@media screen and (max-width: 767px) {
	.l-store .head .head__main {
		font-size: 13.34vw
	}
}

@media screen and (min-width: 768px) {
	.l-store .list {
		margin-top: 34px
	}

	.store-x {
		padding-top: 34px !important;
	}
}

@media screen and (max-width: 767px) {
	.l-store .list {
		margin-top: 4.84vw;
		margin-bottom: 10.67vw
	}
}

#l-opening {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 20;
	visibility: hidden;
	opacity: 0
}

#l-opening .block {
	width: 100%;
	height: 100%;
	position: relative;
	z-index: 1
}

#l-opening .opening-bg {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	background-color: #fff;
	z-index: 0
}

#l-opening .logo-box {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto
}

@media screen and (min-width: 768px) {
	#l-opening .logo-box {
		width: 588px;
		height: 114px
	}
}

@media screen and (max-width: 767px) {
	#l-opening .logo-box {
		width: 70.67vw;
		height: 16vw
	}
}

@media screen and (min-width: 768px) {
	#l-opening .brand-logo {
		width: 588px
	}
}

@media screen and (max-width: 767px) {
	#l-opening .brand-logo {
		width: 70.67vw
	}
}

#l-opening .logo-black {
	z-index: 10;
	visibility: hidden;
	opacity: 0
}

#l-opening .logo-white {
	z-index: 5
}

#l-opening .logo-svgMask {
	width: 100%;
	height: 100%;
	position: absolute;
	z-index: 15
}

#l-opening .logo-svgMask svg {
	height: 100%
}

#l-opening .snow {
	width: 100%;
	height: 100%;
	position: absolute;
	z-index: 0
}

#l-opening .snow .snow-item {
	position: absolute;
	right: 0;
	margin: auto;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%)
}

@media screen and (min-width: 768px) {
	#l-opening .snow .snow-item {
		width: 100%
	}
}

@media screen and (max-width: 767px) {
	#l-opening .snow .snow-item {
		min-width: 1024px;
		height: 100vh
	}
}

@media screen and (min-width: 768px) {
	.contentBox {
		width: 100%
	}
}

/*画像にラベル載せる方
.stories_new_label{
	position: absolute;
	top: 10px;
	right: -1rem;
	background-color: #438f8b;
	color: #fff;
	border-radius: 20px;
	width: auto;
	font-size: 0.8rem;
	padding-left: 1rem;
	padding-right: 1.5rem;
}

@media screen and (max-width: 767px) {
	.stories_new_label{
		border-radius: 10px;
		width: 60px;
		font-size: 0.7rem;
		padding-left: 0.7rem;
	}
}
*/
.stories_new_label {
	color: #242728;
	font-size: 0.8rem;
	margin-top: 1em;
}

.new_tag {
	border-radius: 20px;
	color: #fff;
	background-color: #438f8b;
	font-size: 0.8rem;
	display: initial;
	padding: 0 1em;
}

@media screen and (max-width: 767px) {
	.stories_new_label {
		border-radius: 10px;
		font-size: 0.65rem;
	}

	.new_tag {
		font-size: 0.65rem;
	}
}

.contentBox-inner {
	margin: 0 auto
}

@media screen and (min-width: 768px) {
	.contentBox-inner {
		padding: 0px 8.78vw
	}
}

@media screen and (min-width: 1024px) {
	.contentBox-inner {
		padding: 0px 12.43vw
	}
}

@media screen and (max-width: 767px) {
	.contentBox-inner {
		padding: 0 6.14vw
	}
}

.contentBox-inner02 {
	margin: 0 auto
}

@media screen and (min-width: 768px) {
	.contentBox-inner02 {
		width: 560px
	}
}

@media screen and (max-width: 767px) {
	.contentBox-inner02 {
		padding: 0 11.74vw
	}
}

@media screen and (max-width: 767px) {
	.contentBox-inner02.contentBox-contact {
		padding: 0 6.14vw
	}
}

@media screen and (max-width: 767px) {

	.l-lineup .carousel .item,
	.l-products .item {
		padding: 0 14.67vw
	}
}

.l-lineup .carousel .link,
.l-products .link {
	width: 100%;
	display: block
}

.l-lineup .carousel .thumb-wrap,
.l-products .thumb-wrap {
	overflow: hidden;
	position: relative
}

.l-lineup .carousel .thumb-mask,
.l-products .thumb-mask {
	position: absolute;
	top: 0;
	display: block;
	z-index: 2;
	width: 100%
}

.l-lineup .carousel .thumb,
.l-products .thumb {
	position: relative;
	width: 100%
}

@media screen and (min-width: 768px) {

	.l-lineup .carousel .thumb,
	.l-products .thumb {
		overflow: hidden
	}
}

.l-lineup .carousel .title,
.l-products .title {
	color: #fff;
	font-weight: 100;
	line-height: 1
}

@media screen and (min-width: 768px) {

	.l-lineup .carousel .title,
	.l-products .title {
		margin: 20px 0;
		font-size: 24px
	}
}

@media screen and (max-width: 767px) {

	.l-lineup .carousel .title,
	.l-products .title {
		width: 100%;
		font-size: 5.34vw;
		margin: 4.27vw 0 2.67vw
	}
}

.l-lineup .carousel .body,
.l-products .body {
	color: #fff;
	line-height: 2
}

@media screen and (min-width: 768px) {

	.l-lineup .carousel .body,
	.l-products .body {
		font-size: 12px;
		margin-bottom: 27px
	}
}

@media screen and (max-width: 767px) {

	.l-lineup .carousel .body,
	.l-products .body {
		font-size: 3.2vw;
		margin-bottom: 5.87vw
	}
	.l-store .itemBox {
		margin-bottom: 1em;
	}
}

.l-news .item:last-child {
	margin-bottom: 0
}

@media screen and (min-width: 768px) {
	.l-news .item {
		margin-bottom: 38px
	}
}

@media screen and (max-width: 767px) {
	.l-news .item {
		margin-bottom: 12.8vw
	}
}

.l-news .link {
	width: 100%
}

@media screen and (min-width: 768px) {
	.l-news .link {
		display: flex;
		align-items: flex-end
	}
}

.l-news .thumb {
	position: relative;
	width: 100%
}

@media screen and (min-width: 768px) {
	.l-news .thumb {
		width: 100%;
		max-width: 215px;
		min-width: 198px;
		overflow: hidden
	}
}

@media screen and (max-width: 767px) {
	.l-news .thumb {
		width: 52.27vw;
		margin: auto
	}
}

.l-news .text {
	width: 100%
}

@media screen and (min-width: 768px) {
	.l-news .text {
		padding-left: 5.41vw
	}
}

@media screen and (max-width: 767px) {
	.l-news .text {
		padding: 0 6.67vw
	}
}

.l-news .text .text__inner {
	border-bottom: 1px solid #414344;
	position: relative
}

@media screen and (min-width: 768px) {
	.l-news .text .text__inner {
		padding-bottom: 28px
	}
}

@media screen and (max-width: 767px) {
	.l-news .text .text__inner {
		padding-bottom: 5.34vw
	}
}

.l-news .text .text__inner::before {
	content: "";
	width: 100%;
	height: 1px;
	position: absolute;
	bottom: -1px;
	left: 0;
	background-color: #fff;
	transform: scaleX(0);
	transform-origin: center
}

.l-news .body {
	color: #fff;
	line-height: 1.8
}

@media screen and (min-width: 768px) {
	.l-news .body {
		min-height: 83px
	}
}

@media screen and (max-width: 767px) {
	.l-news .body {
		font-size: 1rem;
		margin: 5.34vw 0
	}
}

.l-store .item:last-child,
.l-faq .item:last-child {
	margin-bottom: 0
}

@media screen and (min-width: 768px) {

	.l-store .item,
	.l-faq .item {
		margin-bottom: 24px
	}
}

@media screen and (max-width: 767px) {

	.l-store .item,
	.l-faq .item {
		margin-bottom: 4.27vw
	}
}

.l-store .item.is-active .store-trigger .icon,
.l-store .item.is-active .faq-trigger .icon,
.l-faq .item.is-active .store-trigger .icon,
.l-faq .item.is-active .faq-trigger .icon {
	transform: rotate(180deg)
}

.l-store .item.is-active .store-trigger .icon::after,
.l-store .item.is-active .faq-trigger .icon::after,
.l-faq .item.is-active .store-trigger .icon::after,
.l-faq .item.is-active .faq-trigger .icon::after {
	transform: rotate(-90deg)
}

.l-store .itemBox,
.l-faq .itemBox {
	position: relative;
	background-color: #fff
}

.l-store .store-trigger,
.l-store .faq-trigger,
.l-faq .store-trigger,
.l-faq .faq-trigger {
	cursor: pointer;
	box-sizing: border-box;
	position: relative
}

/* プロダクトページのオンライン限定商品に必要 */
.onlineonly {
	cursor: inherit !important;
}


@media screen and (min-width: 768px) {

	.l-store .store-trigger,
	.l-store .faq-trigger,
	.l-faq .store-trigger,
	.l-faq .faq-trigger {
		padding: 40px 62px
	}
}

@media screen and (max-width: 767px) {

	.l-store .store-trigger,
	.l-store .faq-trigger,
	.l-faq .store-trigger,
	.l-faq .faq-trigger {
		padding: 8vw 6.4vw
	}
}

.l-store .store-trigger .store,
.l-store .faq-trigger .store,
.l-faq .store-trigger .store,
.l-faq .faq-trigger .store {
	line-height: 1.4;
	font-weight: 100;
	position: relative;
	overflow: hidden
}

@media screen and (min-width: 768px) {

	.l-store .store-trigger .store,
	.l-store .faq-trigger .store,
	.l-faq .store-trigger .store,
	.l-faq .faq-trigger .store {
		font-size: 24px;
		margin-bottom: 6px;
		padding-right: 40px
	}
}

@media screen and (max-width: 767px) {

	.l-store .store-trigger .store,
	.l-store .faq-trigger .store,
	.l-faq .store-trigger .store,
	.l-faq .faq-trigger .store {
		font-size: 5.34vw;
		margin-bottom: 1.6vw;
		padding-right: 10.67vw
	}
}

@media screen and (min-width: 768px) {

	.l-store .store-trigger .period,
	.l-store .faq-trigger .period,
	.l-faq .store-trigger .period,
	.l-faq .faq-trigger .period {
		font-size: 14px;
		padding-right: 40px
	}
}

@media screen and (max-width: 767px) {

	.l-store .faq-trigger .period,
	.l-faq .store-trigger .period,
	.l-faq .faq-trigger .period {
		font-size: 3.2vw;
		padding-right: 5vw
	}
}

.l-store .store-trigger .icon,
.l-store .faq-trigger .icon {
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
	transform-origin: center
}

.l-faq .store-trigger .icon,
.l-faq .faq-trigger .icon {
	width: 58px;
	height: 58px;
	right: 62px;
}

/* 
@media screen and (min-width: 768px) {
	.l-store .store-trigger .icon, .l-store .faq-trigger .icon, .l-faq .store-trigger .icon, .l-faq .faq-trigger .icon {
		width: 58px;
		right: 62px;
	}
}
*/

@media screen and (max-width: 767px) {

	.l-store .store-trigger .icon,
	.l-store .faq-trigger .icon,
	.l-faq .store-trigger .icon,
	.l-faq .faq-trigger .icon {
		width: 20px;
		right: 1.5rem;
	}
}

.l-store .store-trigger .icon::after,
.l-store .faq-trigger .icon::after,
.l-faq .store-trigger .icon::after,
.l-faq .faq-trigger .icon::after {
	transform-origin: center;
	transition: all 0.6s cubic-bezier(0.165, 0.84, 0.44, 1)
}

.l-store .store-trigger .icon:before,
.l-store .store-trigger .icon:after,
.l-store .faq-trigger .icon:before,
.l-store .faq-trigger .icon:after,
.l-faq .store-trigger .icon:before,
.l-faq .store-trigger .icon:after,
.l-faq .faq-trigger .icon:before,
.l-faq .faq-trigger .icon:after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
	margin: auto;
	background-color: #3b88d2
}

.l-store .detail,
.l-faq .detail {
	width: 100%;
	height: 0;
	overflow: hidden;
	position: relative
}

.l-store .detail:before,
.l-faq .detail:before {
	content: "";
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	margin: auto;
	z-index: 0;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	background-image: url(../images/common/store_bg.png)
}

@media screen and (min-width: 768px) {

	.l-store .detail:before,
	.l-faq .detail:before {
		height: 71px
	}
}

@media screen and (max-width: 767px) {

	.l-store .detail:before,
	.l-faq .detail:before {
		height: 18.94vw
	}
}

.l-store .detail .detail-inner,
.l-faq .detail .detail-inner {
	position: relative;
	z-index: 1
}

@media screen and (min-width: 768px) {

	.l-store .detail .detail-inner,
	.l-faq .detail .detail-inner {
		padding: 20px 62px 60px
	}
}

@media screen and (max-width: 767px) {

	.l-store .detail .detail-inner,
	.l-faq .detail .detail-inner {
		padding: 9.34vw 6.4vw 10.14vw
	}
}

@media screen and (min-width: 768px) {

	.l-store .detail .info,
	.l-faq .detail .info {
		margin-top: 25px
	}
}

@media screen and (max-width: 767px) {

	.l-store .detail .info,
	.l-faq .detail .info {
		margin-top: 8vw
	}
}

@media screen and (min-width: 768px) {

	.l-store .detail .info .info-box,
	.l-faq .detail .info .info-box,
	.st_f {
		display: flex;
		font-size: 14px;
		margin-bottom: 20px
	}
}

@media screen and (max-width: 767px) {

	.l-store .detail .info .info-box,
	.l-faq .detail .info .info-box {
		font-size: 3.74vw
	}
}

.l-store .detail .info .info-box .info-head,
.l-faq .detail .info .info-box .info-head,
.st_f {
	font-weight: 500
}

/* 見出し：販売商品 */
.buyitem {
	font-size: 1.1em;
	margin-bottom: 0px !important;
	display: inline-block;
	width: 100%;
	padding: 0 0 10px 0 !important;
}

@media screen and (max-width: 767px) {
	.buyitem {
		font-size: 0.9em;
		margin-top: 2em;
		font-weight: bolder;
	}
}

/* 見出し：会場、住所、営業時間 */
@media screen and (max-width: 767px) {
	.info-head {
		font-size: 1em;
		font-weight: bold !important;
	}
}

@media screen and (min-width: 768px) {

	.l-store .detail .info .info-box .info-head,
	.l-faq .detail .info .info-box .info-head {
		width: 15%
	}
}

@media screen and (max-width: 767px) {

	.l-store .detail .info .info-box .info-head,
	.l-faq .detail .info .info-box .info-head {
		margin-bottom: 2.14vw
	}
}

.l-store .detail .info .info-box .info-link,
.l-faq .detail .info .info-box .info-link {
	display: inline-block;
	text-decoration: underline
}

@media screen and (min-width: 768px) {

	.l-store .detail .info .info-box .info-link,
	.l-faq .detail .info .info-box .info-link {
		transition: all 0.4s cubic-bezier(0.25, 0.25, 0.75, 0.75)
	}

	.l-store .detail .info .info-box .info-link:hover,
	.l-faq .detail .info .info-box .info-link:hover {
		opacity: 0.5
	}
}

.l-store .detail .info .info-box .info-body,
.l-faq .detail .info .info-box .info-body {
	font-weight: 100
}

@media screen and (min-width: 768px) {

	.l-store .detail .info .info-box .info-body,
	.l-faq .detail .info .info-box .info-body {
		width: 84%
	}
}

@media screen and (max-width: 767px) {

	.l-store .detail .info .info-box .info-body,
	.l-faq .detail .info .info-box .info-body {
		margin-bottom: 5.34vw
	}
}

.l-store .detail .info .info-box .info-body span,
.l-faq .detail .info .info-box .info-body span {
	display: block
}

@media screen and (min-width: 768px) {

	.l-store .detail .info .info-box .info-body .info-note,
	.l-faq .detail .info .info-box .info-body .info-note {
		font-size: 12px
	}
}

@media screen and (max-width: 767px) {

	.l-store .detail .info .info-box .info-body .info-note,
	.l-faq .detail .info .info-box .info-body .info-note,
	.st_f {
		font-size: 3.2vw
	}
}

.l-store .prods {
	width: 100%
}

@media screen and (min-width: 768px) {
	.l-store .prods {
		display: flex;
		flex-wrap: wrap;
		align-items: baseline;
		margin-top: 50px
	}
}

@media screen and (max-width: 767px) {
	.l-store .prods {
		display: flex;
		flex-wrap: wrap
	}
}

@media screen and (min-width: 768px) {
	.l-store .prods-item {
		width: calc(100% / 2);
		margin-bottom: 2em;
	}
}

@media screen and (max-width: 767px) {
	.l-store .prods-item {
		width: 100%;
		margin-bottom: 2.67vw
	}
}

.l-store .prods-item a {
	/*	display: block */
}

@media screen and (min-width: 768px) {
	.l-store .prods-item a {
		/* width: 90%; */
	}
}

@media screen and (max-width: 767px) {
	.l-store .prods-item a {
		width: 100%;
		display: contents;
	}
}

.l-store .prods-item .prods-itemMain {
	display: flex;
	align-items: start;
	display: inline-flex;
}

@media screen and (max-width: 767px) {
	.l-store .prods-item .prods-itemMain {
		width: 100%;
	}
}

.l-store .prods-item .prods-thumb {
	position: relative;
	overflow: hidden
}

@media screen and (min-width: 768px) {
	.l-store .prods-item .prods-thumb {
		min-width: 100px;
		display: inline-block;

	}
}

@media screen and (max-width: 767px) {
	.l-store .prods-item .prods-thumb {
		width: 50%
	}
}

@media screen and (min-width: 768px) {
	.l-store .prods-item .prods-name {
		font-size: 18px;
		padding-left: 22px
	}
}

@media screen and (max-width: 767px) {
	.l-store .prods-item .prods-name {
		width: 100%;
	}
}

@media screen and (max-width: 767px) {
	.prods-name {
		margin-left: -1px;
	}
}

@media screen and (min-width: 768px) {
	.prods-name br {
		display: none;
	}
}

@media screen and (min-width: 768px) {
	.l-store .prods-item .prods-itemSub_pc {
		margin-top: 0;
		font-size: 0.9em;
		width: 90%;
		line-height: 1.5em;
	}
}

@media screen and (max-width: 767px) {
	.l-store .prods-item .prods-itemSub_sp {
		font-size: 3.2vw;
	}
}

.prods-itemSub_sp {
	display: none;
}

@media screen and (max-width: 767px) {
	.prods-itemSub_sp {
		display: block;
		clear: both;
		padding: 0.5em 0 0 0;
		font-size: 70% !important;
		float: left;
		line-height: 1.5;
		letter-spacing: 0.05em;
	}
}

@media screen and (max-width: 767px) {
	.prods-itemSub_pc {
		display: none;
	}
}

.prods-name {
	padding-top: 1.5em;
}

@media screen and (max-width: 767px) {
	.prods-name {
		padding-top: 0;
		letter-spacing: -0.03em;
	}
}

@media screen and (max-width: 767px) {
	.prods-name-itemSub {
		float: left;
		width: 50%;
		padding: 0 0.7em 0 0;
		order: 1;
	}

	.prods-thumb {
		order: 2;
	}
}

.l-productList .item {
	text-align: center
}



@media screen and (min-width: 768px) {
	.l-productList .item {
		width: 50%;
		margin-bottom: 110px
	}

	.l-productList .item:nth-child(odd) {
		padding-right: 35px
	}

	.l-productList .item:nth-child(even) {
		padding-left: 35px
	}
}

@media screen and (max-width: 767px) {
	.l-productList .item {
		margin-bottom: 8vw
	}
}

.l-productList .thumb {
	position: relative;
	overflow: hidden
}

.l-productList .thumb:before {
	content: "";
	padding-top: 71%;
	display: block
}

@media screen and (min-width: 768px) {
	.l-productList .text .title {
		font-size: 24px
	}
}

@media screen and (max-width: 767px) {
	.l-productList .text .title {
		margin-top: 2.67vw
	}
}

@media screen and (min-width: 768px) {
	.l-productList .quantity {
		font-size: 15px
	}
}

@media screen and (max-width: 767px) {
	.l-productList .quantity {
		font-size: 2.94vw
	}
}

.l-productList .quantity p,
.l-productList .quantity span {
	display: inline-block
}

.l-productList .priceBox p {
	color: #367cb2;
	display: inline-block
}

@media screen and (min-width: 768px) {
	.l-productList .priceBox p {
		font-size: 24px
	}
}

@media screen and (max-width: 767px) {
	.l-productList .priceBox p {
		font-size: 4.8vw
	}
}

.l-productList .priceBox span {
	display: inline-block
}

@media screen and (min-width: 768px) {
	.l-productList .priceBox span {
		font-size: 13px
	}
}

@media screen and (max-width: 767px) {
	.l-productList .priceBox span {
		font-size: 2.67vw
	}
}

.prodBg-right {
	background-image: url(../images/common/prod_bg01.png)
}

@media screen and (min-width: 768px) {
	.prodBg-right {
		width: 472px;
		height: 626px
	}
}

@media screen and (max-width: 767px) {
	.prodBg-right {
		width: 62.94vw;
		height: 83.47vw
	}
}

.prodBg-left {
	background-image: url(../images/common/prod_bg02.png)
}

@media screen and (min-width: 768px) {
	.prodBg-left {
		width: 472px;
		height: 656px
	}
}

@media screen and (max-width: 767px) {
	.prodBg-left {
		width: 62.94vw;
		height: 87.47vw
	}
}

.canvas-container {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0%;
	left: 0
}

#l-lineModal .lineModal-box .close .close-icon,
#l-opening .brand-logo,
.l-galleryKv .title {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%)
}

.c-btn {
	display: block;
	cursor: pointer;
	line-height: 1;
	font-weight: 100;
	text-align: center;
	position: relative
}

.c-btn a,
.c-btn button {
	width: 100%;
	height: 100%;
	display: block
}

@media screen and (min-width: 768px) {
	.c-btn {
		width: 240px;
		/* kato 220*/
		border-radius: 39px
	}
}

@media screen and (max-width: 767px) {
	.c-btn {
		width: 58.67vw;
		margin: auto;
		border-radius: 100px
	}
}

.c-btn--arrow:before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 98%
}

@media screen and (min-width: 768px) {
	.c-btn--arrow:before {
		width: 15px;
		height: 12px;
		left: 30px
	}

	.c-btn-area {
		display: block;
	}
}

@media screen and (max-width: 767px) {
	.c-btn--arrow:before {
		width: 4vw;
		height: 3.2vw;
		left: 8vw
	}
}

@media screen and (max-width: 767px) {
	.line-btn--arrow:before {
		width: 4vw !important;
		height: 3.2vw !important;
		left: 5vw !important;
	}
}

.c-btn--arrow span {
	padding-left: 14px
}

.c-btn--arrow-w:before {
	background-image: url(../images/common/icon_arrow_btnArr.svg)
}

.c-btn--arrow-b:before {
	background-image: url(../images/common/icon_arrow_btnArr_black.svg)
}

.c-btn--arrow-blue:before {
	background-image: url(../images/common/icon_arrow_btnArr_blue.svg)
}

@media screen and (min-width: 768px) {

	.c-btn--white,
	.c-btn--blue,
	.c-btn--black {
		padding: 22px 0;
		font-size: 18px
	}
}

@media screen and (max-width: 767px) {

	.c-btn--white,
	.c-btn--blue,
	.c-btn--black,
	.line-btn {
		padding: 5.87vw 0;
		font-size: 4.8vw;
		margin: 1em;
	}
}

@media screen and (max-width: 767px) {
	.line-btn {
		margin-top: 0 !important;
		margin-bottom: 0 !important;
		margin-left: inherit;
		margin-right: inherit;
	}
}

@media screen and (min-width: 768px) {

	.c-btn--narrowWhite,
	.c-btn--narrowBlack {
		padding: 14px 0
	}
}

@media screen and (max-width: 767px) {

	.c-btn--narrowWhite,
	.c-btn--narrowBlack {
		padding: 3.74vw 0
	}
}

.c-btn--white {
	border: 2px solid #fff;
	color: #fff
}

.c-btn--narrowWhite {
	border: 2px solid #fff;
	color: #fff
}

.c-btn--blue {
	border: 2px solid #3b88d2
}

@media screen and (min-width: 768px) {
	.c-btn--blue {
		width: 240px
	}
}

.c-btn--blue a {
	color: #3b88d2
}

.c-btn--black {
	border: 2px solid #242728
}

.c-btn--narrowBlack {
	border: 2px solid #193850
}

.c-btnText {
	overflow: hidden;
	position: relative;
	display: inline-block
}

.c-btnText span {
	padding-left: 0
}

.c-btnRegister {
	display: block;
	cursor: pointer;
	position: relative;
	background-color: #396c42
}

@media screen and (min-width: 768px) {
	.c-btnRegister {
		width: 100%vw;
		/* 34.51vw kato */
		padding: 32px 0
	}

	.c-btnRegister:before {
		/* left: 5.85vw; kato */
		left: 26%;
		/*  kato */
		z-index: 1;
	}

	.c-btnRegister::after {
		content: "";
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0;
		left: 0;
		z-index: 0;
		transform-origin: left;
		background-color: #234a29;
		transform: scaleX(0)
	}
}

@media screen and (max-width: 767px) {
	.c-btnRegister {
		width: 100%;
		padding: 10.14vw 0
	}

	.c-btnRegister:before {
		left: 10.67vw
	}
}

.c-btnRegister .text {
	color: #fff;
	line-height: 1;
	position: relative;
	z-index: 1;
	overflow: hidden
}

@media screen and (min-width: 916px) {
	.c-btnRegister .text {
		/* margin-left: 8.05vw;  kato */
		/* margin-left: 32%; kato */
		font-size: 18px;
		margin:0 auto;
		text-align: center;
	}
}

@media screen and (min-width: 850px) and (max-width: 915px) {
	.c-btnRegister:before {
		left: 22%;
		/*  kato */
	}

	.c-btnRegister .text {
		margin-left: 32%;
		/*  kato */
	}
}

@media screen and (min-width: 769px) and (max-width: 849px) {
	.c-btnRegister:before {
		left: 15%;
		/*  kato */
	}

	.c-btnRegister .text {
		margin-left: 25%;
		/*  kato */
	}
}

@media screen and (min-width: 769px) and (max-width: 910px) {
	.c-btnRegister:before {
		left: 20%;
		/*  kato */
	}

	.c-btnRegister .text {
		margin-left: 30%%;
		/*  kato */
	}
}


@media screen and (max-width: 767px) {
	.c-btnRegister .text {
		text-align: center;
		margin-left: 4.39vw;
		font-size: 4.8vw
	}
}

.c-btnRegister .text span {
	padding-left: 3px !important
}

.swp-button {
	margin-top: 0
}

.swp-button:after {
	content: none
}

@media screen and (min-width: 768px) {
	.swp-button {
		width: 72px;
		height: 72px
	}
}

@media screen and (max-width: 767px) {
	.swp-button {
		width: 16vw;
		height: 16vw
	}
}

.nav__btn {
	z-index: 1;
	cursor: pointer;
	backface-visibility: hidden
}

@media screen and (min-width: 768px) {
	.nav__btn {
		width: 72px;
		height: 72px
	}

	.nav__btn::before {
		width: 16px;
		height: 13px
	}

	.nav__btn:after {
		border: 1px solid #fff
	}
}

@media screen and (max-width: 767px) {
	.nav__btn {
		width: 16vw;
		height: 16vw
	}

	.nav__btn::before {
		width: 3.47vw;
		height: 2.67vw
	}

	.nav__btn:after {
		border: 2px solid #fff
	}
}

.nav__btn::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 1;
	margin: auto;
	background-image: url(../images/common/icon_arrow_btnArr.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: 98%;
	backface-visibility: hidden
}

.nav__btn:after {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	border-radius: 50%;
	backface-visibility: hidden
}

.nav__prev::before {
	transform: rotate(180deg)
}

@media screen and (max-width: 767px) {
	.nav__prev {
		left: 2.67vw
	}
}

@media screen and (max-width: 767px) {
	.nav__next {
		right: 2.67vw
	}
}

.m-thumb {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover
}

.m-bg,
#l-header .logo .logo-img,
#l-footer:before,
#l-lineModal .lineModal-box .icons .icon-item,
#l-promotion::before,
#l-promotion .banner-icon::after,
#l-promotion .close .close-icon,
.l-news .head .head__moon span,
.l-news .news-pager .news-pagerBtn a:before,
.l-store .snow-shape span,
.m-newsDate .cate .icon,
.trigger a .trigger-lines .trigger-line,
#l-header .sns .sns-list .sns-item a .sns-icons .sns-icon::before,
#l-header .sns .sns-list .sns-item a .sns-icons .sns-icon::after,
.l-mainVisual .frame-item,
.l-mainVisual .logo-item .logo-mask,
.l-mainVisual .bg-item,
.l-importantNews .title:before,
.l-lead .lead-item,
.l-lead .icons-box .icons .lead-icon span,
.l-products .product-bgList .product-bgitem span,
.l-productKv .frame-bottom,
.l-inputContainer form dl dt .req::before,
.l-inputContainer form dl .sel::before,
.l-thanksContainer .thanks-icons .icon-item {
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover
}

.l-news .thumb:after,
.l-company .about .thumb::before,
.l-post .thumb-common:before {
	content: "";
	display: block;
	padding-top: 65%
}

#l-promotion .banner .thumb::before,
.l-lineup .carousel .thumb:after,
.l-products .thumb:after,
.l-store .prods-item .prods-thumb::before,
.l-story .lead .thumb:before,
.l-story .about .main .thumb:before {
	content: "";
	display: block;
	padding-top: 100%
}

.m-newsDate {
	display: flex
}

.m-newsDate .date {
	color: #dbdbdb
}

@media screen and (min-width: 768px) {
	.m-newsDate .date {
		font-size: 14px
	}
}

@media screen and (max-width: 767px) {
	.m-newsDate .date {
		font-size: 1rem
	}
}

.m-newsDate .cate {
	position: relative;
	display: flex
}

.m-newsDate .cate p {
	color: #3b88d2
}

.m-newsDate .cate .icon {
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	background-image: url(../images/common/icon_snow.svg)
}

@media screen and (min-width: 768px) {
	.m-newsDate .cate {
		margin-left: 40px
	}

	.m-newsDate .cate p {
		font-size: 14px
	}

	.m-newsDate .cate .icon {
		width: 10px;
		height: 11px;
		left: -17px
	}
}

@media screen and (max-width: 767px) {
	.m-newsDate .cate {
		margin-left: 10.67vw
	}

	.m-newsDate .cate p {
		font-size: 1rem
	}

	.m-newsDate .cate .icon {
		width: 2.67vw;
		height: 2.94vw;
		left: -4.8vw
	}
}

#l-header.is-active .menu .menu-inner .list .item .item-pageWrap {
	transform: translateY(0)
}

.menu {
	width: 100%;
	height: 100vh;
	position: fixed;
	top: 0;
	background-color: #fff;
	z-index: 1;
	visibility: hidden;
	opacity: 0
}

.menu .menu-inner {
	height: 100%;
	margin: auto;
	position: relative;
	overflow: scroll;
	-ms-overflow-style: none;
	scrollbar-width: none
}

.menu .menu-inner::-webkit-scrollbar {
	display: none
}

@media screen and (min-width: 768px) {
	.menu .menu-inner {
		padding: 8.78vw 15.36vw 4.39vw
	}
}

@media screen and (max-width: 767px) {
	.menu .menu-inner {
		padding: 17.34vw 6.14vw 21.34vw
	}
}

.menu .menu-inner .list {
	display: flex;
	flex-wrap: wrap
}

@media screen and (max-width: 767px) {
	.menu .menu-inner .list {
		flex-direction: column
	}
}

@media screen and (max-width: 767px) {
	.menu .menu-inner .list .-Top {
		order: 0
	}

	.menu .menu-inner .list .-Gallery {
		order: 2
	}

	.menu .menu-inner .list .-Stores {
		order: 3
	}

	.menu .menu-inner .list .-News {
		order: 4
	}

	.menu .menu-inner .list .-Contact {
		order: 8
	}

	.menu .menu-inner .list .-Story {
		order: 5
	}

	.menu .menu-inner .list .-Faq {
		order: 6
	}
}

.menu .menu-inner .list .-ProdList {
	width: 100%;
	margin-right: 0 !important
}

@media screen and (max-width: 767px) {
	.menu .menu-inner .list .-ProdList {
		order: 1
	}
}

@media screen and (min-width: 768px) {
	.menu .menu-inner .list .item {
		margin-right: 4.39vw;
		margin-bottom: 1.47vw
	}
}

@media screen and (max-width: 767px) {
	.menu .menu-inner .list .item {
		margin-bottom: 5.87vw
	}
}

.menu .menu-inner .list .item>a {
	line-height: 1;
	backface-visibility: hidden;
	display: inline-block;
	position: relative;
	overflow: hidden
}

.menu .menu-inner .list .item .item-pageWrap {
	display: block;
	transition: transform 1.4s cubic-bezier(0.165, 0.84, 0.44, 1);
	transition-delay: 0.2s;
	transform: translateY(105%)
}

.menu .menu-inner .list .item .item-page {
	position: relative
}

@media screen and (min-width: 768px) {
	.menu .menu-inner .list .item .item-page {
		margin-bottom: 5px
	}
}

@media screen and (max-width: 767px) {
	.menu .menu-inner .list .item .item-page {
		margin-bottom: 1.34vw
	}
}

.menu .menu-inner .list .item .item-page .item-t {
	overflow: hidden
}

.menu .menu-inner .list .item .item-page .item-t span {
	display: inline-block
}

@media screen and (min-width: 768px) {
	.menu .menu-inner .list .item .item-page .item-t {
		font-size: 30px
	}
}

@media screen and (max-width: 767px) {
	.menu .menu-inner .list .item .item-page .item-t {
		font-size: 6.4vw
	}
}

.menu .menu-inner .list .item .item-pageSub {
	display: block
}

@media screen and (min-width: 768px) {
	.menu .menu-inner .list .item .item-pageSub {
		font-size: 12px
	}
}

@media screen and (max-width: 767px) {
	.menu .menu-inner .list .item .item-pageSub {
		font-size: 3.2vw
	}
}

.menu .menu-inner .list .prod-list {
	display: flex;
	flex-wrap: wrap
}

@media screen and (min-width: 768px) {
	.menu .menu-inner .list .prod-list {
		margin-top: 55px
	}
}

.menu .menu-inner .list .prod-list .prod-item {
	opacity: 0;
	transform: translateY(20px)
}

@media screen and (min-width: 768px) {
	.menu .menu-inner .list .prod-list .prod-item {
		width: 33.3333333%;
		padding-right: 2.93vw;
		margin-bottom: 35px
	}
}

@media screen and (max-width: 767px) {
	.menu .menu-inner .list .prod-list .prod-item {
		width: 50%;
		margin-bottom: 8vw
	}

	.menu .menu-inner .list .prod-list .prod-item:nth-child(even) {
		padding-left: 1.34vw
	}

	.menu .menu-inner .list .prod-list .prod-item:nth-child(odd) {
		padding-right: 1.34vw
	}
}

.menu .menu-inner .list .prod-list .prod-item .thumb {
	position: relative;
	overflow: hidden
}

.menu .menu-inner .list .prod-list .prod-item .thumb::before {
	content: "";
	padding-top: 50%;
	display: block
}

@media screen and (max-width: 767px) {
	.menu .menu-inner .list .prod-list .prod-item .name {
		margin-top: 1.6vw;
		font-size: 3.74vw
	}

	.name {
		line-height: 1.3;
	}
}

#l-header.is-active .trigger a .trigger-lines .trigger-lineTop {
	transform: translateY(5px)
}

#l-header.is-active .trigger a .trigger-lines .trigger-lineBottom {
	transform: translateY(-6px)
}

#l-header.is-active .trigger a .trigger-texts .trigger-menuOff .trigger-menuTxt {
	transform: translateY(-100%)
}

#l-header.is-active .trigger a .trigger-texts .trigger-menuOn .trigger-menuTxt {
	transform: translateY(0%) !important
}

.trigger {
	position: fixed;
	top: 0;
	right: 0px;
	z-index: 10
}

.trigger .trigger-inner {
	display: block;
	position: relative;
	z-index: 1
}

.trigger a {
	display: block
}

@media screen and (min-width: 768px) {
	.trigger a {
		width: 130px;
		height: 130px;
		padding-top: 40px
	}
}

@media screen and (max-width: 767px) {
	.trigger a {
		width: 82px;
		height: 82px;
		padding-top: 28px
	}
}

.trigger a .trigger-lines {
	position: relative;
	margin: auto;
	left: 0;
	right: 0
}

@media screen and (min-width: 768px) {
	.trigger a .trigger-lines {
		width: 44px;
		height: 16px
	}
}

@media screen and (max-width: 767px) {
	.trigger a .trigger-lines {
		width: 36px;
		height: 14px
	}
}

.trigger a .trigger-lines .trigger-line {
	width: 100%;
	position: absolute;
	background-image: url(../images/common/trigger_line.svg);
	transition: all 0.5s cubic-bezier(0.77, 0, 0.175, 1)
}

@media screen and (min-width: 768px) {
	.trigger a .trigger-lines .trigger-line {
		height: 5px
	}
}

@media screen and (max-width: 767px) {
	.trigger a .trigger-lines .trigger-line {
		height: 4px
	}
}

.trigger a .trigger-lines .trigger-lineTop {
	top: 0
}

.trigger a .trigger-lines .trigger-lineBottom {
	bottom: 0
}

.trigger a .trigger-texts {
	position: relative;
	text-align: center;
	margin-top: 10px
}

@media screen and (min-width: 768px) {
	.trigger a .trigger-texts {
		font-size: 14px
	}
}

@media screen and (max-width: 767px) {
	.trigger a .trigger-texts {
		font-size: 11px
	}
}

.trigger a .trigger-texts .trigger-text {
	display: block;
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
	overflow: hidden
}

.trigger a .trigger-texts .trigger-text.trigger-menuOff {
	top: 0
}

.trigger a .trigger-texts .trigger-text.trigger-menuOn .trigger-menuTxt {
	transform: translateY(100%)
}

.trigger a .trigger-texts .trigger-text .trigger-menuTxt {
	display: block;
	transition: all 0.5s cubic-bezier(0.77, 0, 0.175, 1)
}

.trigger a .trigger-texts .trigger-text .trigger-menuTxt .menuTxt-item {
	color: #367cb2;
	line-height: 1;
	overflow: hidden
}

.trigger a .trigger-texts .trigger-text .trigger-menuTxt .menuTxt-item .item-span {
	display: inline-block
}

.trigger a .trigger-texts .trigger-text .trigger-menuTxt .menuTxt-item02 {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%
}

.trigger a .trigger-texts .trigger-text .trigger-menuTxt .menuTxt-item02 .item-span {
	transform: translateY(100%)
}

@media screen and (min-width: 768px) {
	.trigger a:hover .trigger-lines .trigger-lineTop {
		transform: translateY(2px)
	}

	.trigger a:hover .trigger-lines .trigger-lineBottom {
		transform: translateY(-2px)
	}

	.trigger a:hover .trigger-texts .trigger-text .trigger-menuTxt .menuTxt-item .item-span {
		transition: all 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
		transform: translateY(0)
	}

	.trigger a:hover .trigger-texts .trigger-text .trigger-menuTxt .menuTxt-item .item-span02 {
		-webkit-transition-delay: 0.1s;
		transition-delay: 0.1s
	}

	.trigger a:hover .trigger-texts .trigger-text .trigger-menuTxt .menuTxt-item .item-span03 {
		-webkit-transition-delay: 0.2s;
		transition-delay: 0.2s
	}

	.trigger a:hover .trigger-texts .trigger-text .trigger-menuTxt .menuTxt-item .item-span04 {
		-webkit-transition-delay: 0.3s;
		transition-delay: 0.3s
	}

	.trigger a:hover .trigger-texts .trigger-text .trigger-menuTxt .menuTxt-item .item-span05 {
		-webkit-transition-delay: 0.4s;
		transition-delay: 0.4s
	}

	.trigger a:hover .trigger-texts .trigger-text .trigger-menuTxt .menuTxt-item01 .item-span {
		transform: translateY(-100%)
	}

	.trigger a:hover .trigger-texts .trigger-text .trigger-menuTxt .menuTxt-item02 .item-span {
		transform: translateY(0)
	}
}

@media screen and (max-width: 767px) {
	#l-header.is-active .sns .sns-inner {
		opacity: 1;
		visibility: visible;
		transition-delay: 0.4s
	}
}

@media screen and (min-width: 768px) {
	#l-header.is-white .sns .sns-follow {
		color: #fff !important
	}
}

@media screen and (min-width: 768px) {
	#l-header.is-white .sns .sns-follow::before {
		background-color: #fff !important
	}
}

#l-header.is-white .sns .sns-item {
	pointer-events: auto !important
}

@media screen and (min-width: 768px) {
	#l-header.is-white .sns .sns-list .sns-tw a .sns-icons .sns-icon::before {
		opacity: 0
	}
}

@media screen and (max-width: 767px) {
	#l-header.is-white .sns .sns-list .sns-tw a .sns-icons .sns-icon::before {
		opacity: 1
	}
}

@media screen and (min-width: 768px) {
	#l-header.is-white .sns .sns-list .sns-tw a .sns-icons .sns-icon::after {
		opacity: 1
	}
}

@media screen and (max-width: 767px) {
	#l-header.is-white .sns .sns-list .sns-tw a .sns-icons .sns-icon::after {
		opacity: 0
	}
}

@media screen and (min-width: 768px) {
	#l-header.is-white .sns .sns-list .sns-insta a .sns-icons .sns-icon::before {
		opacity: 0
	}
}

@media screen and (max-width: 767px) {
	#l-header.is-white .sns .sns-list .sns-insta a .sns-icons .sns-icon::before {
		opacity: 1
	}
}

@media screen and (min-width: 768px) {
	#l-header.is-white .sns .sns-list .sns-insta a .sns-icons .sns-icon::after {
		opacity: 1
	}
}

@media screen and (max-width: 767px) {
	#l-header.is-white .sns .sns-list .sns-insta a .sns-icons .sns-icon::after {
		opacity: 0
	}
}

#l-header .sns {
	position: fixed;
	z-index: 2
}

#l-header .sns .sns-follow,
#l-header .sns .sns-follow::before,
#l-header .sns .sns-list .sns-item a .sns-icons .sns-icon::before,
#l-header .sns .sns-list .sns-item a .sns-icons .sns-icon::after {
	transition: all 0.5s cubic-bezier(0.25, 0.25, 0.75, 0.75)
}

@media screen and (min-width: 768px) {
	#l-header .sns {
		bottom: 30px;
		left: 30px
	}
}

@media screen and (max-width: 767px) {
	#l-header .sns {
		bottom: 8vw;
		right: 8vw
	}
}

#l-header .sns .sns-inner {
	display: flex;
	align-items: center
}

@media screen and (max-width: 767px) {
	#l-header .sns .sns-inner {
		transition: all 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
		opacity: 0;
		visibility: hidden
	}
}

#l-header .sns .sns-follow {
	position: relative
}

#l-header .sns .sns-follow::before {
	content: "";
	background-color: #242728;
	position: absolute;
	left: 0;
	right: 0;
	margin: auto
}

@media screen and (min-width: 768px) {
	#l-header .sns .sns-follow {
		font-size: 12px
	}

	#l-header .sns .sns-follow::before {
		width: 1px;
		height: 40px;
		bottom: -58px
	}
}

@media screen and (max-width: 767px) {
	#l-header .sns .sns-follow {
		font-size: 3.2vw
	}

	#l-header .sns .sns-follow::before {
		width: 1px;
		height: 10.67vw;
		bottom: -15.46vw
	}
}

#l-header .sns .sns-list {
	display: flex
}

@media screen and (min-width: 768px) {
	#l-header .sns .sns-list {
		margin-top: 74px
	}
}

@media screen and (max-width: 767px) {
	#l-header .sns .sns-list {
		margin-top: 19.74vw
	}
}

#l-header .sns .sns-list .sns-item {
	position: relative
}

@media screen and (min-width: 768px) {
	#l-header .sns .sns-list .sns-item {
		width: 38px;
		height: 38px
	}

	#l-header .sns .sns-list .sns-item:first-child {
		margin-bottom: 6px
	}
}

@media screen and (max-width: 767px) {
	#l-header .sns .sns-list .sns-item {
		width: 5.34vw;
		height: 5.34vw
	}

	#l-header .sns .sns-list .sns-item:first-child {
		margin-bottom: 4.8vw
	}
}

#l-header .sns .sns-list .sns-item a {
	display: block;
	width: 100%;
	height: 100%;
	position: relative;
	z-index: 1
}

#l-header .sns .sns-list .sns-item a .sns-icons {
	width: 100%;
	height: 100%;
	overflow: hidden;
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto
}

#l-header .sns .sns-list .sns-item a .sns-icons .sns-icon {
	width: 100%;
	height: 100%;
	display: block;
	position: absolute
}

#l-header .sns .sns-list .sns-item a .sns-icons .sns-icon::before,
#l-header .sns .sns-list .sns-item a .sns-icons .sns-icon::after {
	width: 100%;
	height: 100%;
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto
}

#l-header .sns .sns-list .sns-item a .sns-icons .sns-icon::before {
	opacity: 1
}

#l-header .sns .sns-list .sns-item a .sns-icons .sns-icon::after {
	opacity: 0
}

#l-header .sns .sns-list .sns-item a .sns-icons .sns-icon02 {
	transform: translateY(100%)
}

@media screen and (min-width: 768px) {
	#l-header .sns .sns-list .sns-tw a .sns-icons {
		width: 20px;
		height: 16px
	}
}

@media screen and (max-width: 767px) {
	#l-header .sns .sns-list .sns-tw a .sns-icons {
		width: 5.34vw;
		height: 4.27vw
	}
}

#l-header .sns .sns-list .sns-tw a .sns-icons .sns-icon::before {
	background-image: url(../images/common/icon_twitter_fixed.svg)
}

#l-header .sns .sns-list .sns-tw a .sns-icons .sns-icon::after {
	background-image: url(../images/common/icon_twitter_fixed_w.svg)
}

@media screen and (min-width: 768px) {
	#l-header .sns .sns-list .sns-insta a .sns-icons {
		width: 20px;
		height: 20px
	}
}

@media screen and (max-width: 767px) {
	#l-header .sns .sns-list .sns-insta a .sns-icons {
		width: 5.34vw;
		height: 5.34vw
	}
}

#l-header .sns .sns-list .sns-insta a .sns-icons .sns-icon::before {
	background-image: url(../images/common/icon_insta_fixed.svg)
}

#l-header .sns .sns-list .sns-insta a .sns-icons .sns-icon::after {
	background-image: url(../images/common/icon_insta_fixed_w.svg)
}

.js-fadeInToTop {
	transition: all 1.2s cubic-bezier(0, 0, 0.58, 1);
	transform: translateY(15px);
	opacity: 0
}

.js-fadeInToTop.is-inview {
	transform: translateY(0);
	opacity: 1
}

.js-scale-Center,
.js-scale-LT,
.js-scale-RB {
	transition: transform 1.6s cubic-bezier(0.165, 0.84, 0.44, 1);
	opacity: 0;
	backface-visibility: hidden;
	transform: scale(0.85)
}

.is-inview.js-scale-Center,
.is-inview.js-scale-LT,
.is-inview.js-scale-RB {
	transform: scale(1);
	opacity: 1
}

.is-inview.js-scaleStore-LT span {
	transform: scale(1);
	opacity: 1
}

.js-scaleStore-LT span {
	transition: transform 1.6s cubic-bezier(0.165, 0.84, 0.44, 1);
	opacity: 0;
	transform-origin: left top;
	backface-visibility: hidden;
	transform: scale(0.85)
}

.js-scale-Center {
	transform-origin: center
}

.js-scale-LT {
	transform-origin: left top
}

.js-scale-RB {
	transform-origin: right bottom
}

.is-headContainer {
	display: inline-block;
	position: relative
}

.is-headContainer span {
	opacity: 0
}

.js-headCnvBox {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	z-index: 1
}


/*! locomotive-scroll v4.1.1 | MIT License | https://github.com/locomotivemtl/locomotive-scroll */

html.has-scroll-smooth {
	height: auto;
	overflow: hidden;
}

html.has-scroll-dragging {
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none
}

.has-scroll-smooth body {
	overflow: hidden
}

.has-scroll-smooth [data-scroll-container] {
	min-height: 100vh
}

[data-scroll-direction="horizontal"] [data-scroll-container] {
	height: 100vh;
	display: inline-block;
	white-space: nowrap
}

[data-scroll-direction="horizontal"] [data-scroll-section] {
	display: inline-block;
	vertical-align: top;
	white-space: nowrap;
	height: 100%
}

.c-scrollbar {
	position: absolute;
	right: 0;
	top: 0;
	width: 11px;
	height: 100%;
	transform-origin: center right;
	transition: transform 0.3s, opacity 0.3s;
	opacity: 0
}

.c-scrollbar:hover {
	transform: scaleX(1.45)
}

.c-scrollbar:hover,
.has-scroll-scrolling .c-scrollbar,
.has-scroll-dragging .c-scrollbar {
	opacity: 1
}

[data-scroll-direction="horizontal"] .c-scrollbar {
	width: 100%;
	height: 10px;
	top: auto;
	bottom: 0;
	transform: scaleY(1)
}

[data-scroll-direction="horizontal"] .c-scrollbar:hover {
	transform: scaleY(1.3)
}

.c-scrollbar_thumb {
	position: absolute;
	top: 0;
	right: 0;
	background-color: black;
	opacity: 0.5;
	width: 7px;
	border-radius: 10px;
	margin: 2px;
	cursor: -webkit-grab;
	cursor: grab
}

.has-scroll-dragging .c-scrollbar_thumb {
	cursor: -webkit-grabbing;
	cursor: grabbing
}

[data-scroll-direction="horizontal"] .c-scrollbar_thumb {
	right: auto;
	bottom: 0
}

.l-products .item.is-inview .thumb-mask {
	-webkit-mask-position: 0 -230%;
	-moz-mask-position: 0 -230%;
	mask-position: 0 -230%
}

.l-products .item .thumb-mask {
	-webkit-mask-image: url(../images/common/snow_mask.png);
	-moz-mask-image: url(../images/common/snow_mask.png);
	mask-image: url(../images/common/snow_mask.png);
	-webkit-mask-position: 0 110%;
	-moz-mask-position: 0 110%;
	mask-position: 0 110%;
	-webkit-mask-size: 100% auto;
	-moz-mask-size: 100% auto;
	mask-size: 100% auto;
	-webkit-mask-repeat: no-repeat;
	-moz-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	transition: all 2s cubic-bezier(0.42, 0, 0.58, 1)
}

.js-fadeInToBottom {
	opacity: 0;
	visibility: hidden;
	transform: translateY(-10px);
	-webkit-transform: translateY(-10px)
}

@media screen and (min-width: 768px) {
	.js-fadeInToRight {
		transform: translateX(-75px);
		-webkit-transform: translateX(-75px)
	}
}

.is-hover:hover .is-hoverSnsSide,
.is-hover:hover .is-hoverStoreTrigger,
.is-hover:hover .is-hoverBannerTrigger,
.is-white .is-hover:hover .is-hoverSnsSide {
	opacity: 1;
	-webkit-stroke-dashoffset: 0 !important;
	stroke-dashoffset: 0 !important;
	-webkit-transform: rotate(360deg);
	-ms-transform: rotate(360deg);
	transform: rotate(360deg)
}

@media screen and (min-width: 768px) {
	.is-hover:hover .is-hoverThumb {
		transform: scale(1.05)
	}
}

@media screen and (min-width: 768px) {
	.is-hover:hover .is-hoverBtnBlue {
		background-color: #fff
	}

	.is-hover:hover .is-hoverBtnBlue span {
		color: #3b88d2
	}

	.is-hover:hover .is-hoverBtnBlue::before {
		background-image: url(../images/common/icon_arrow_btnArr_blue.svg)
	}
}

@media screen and (min-width: 768px) {
	.is-hover:hover .is-hoverBtnBlack {
		background-color: #242728
	}

	.is-hover:hover .is-hoverBtnBlack span {
		color: #fff
	}

	.is-hover:hover .is-hoverBtnBlack::before {
		background-image: url(../images/common/icon_arrow_btnArr.svg)
	}
}

@media screen and (min-width: 768px) {
	.is-hover:hover .is-hoverBtnWhite {
		background-color: #3b88d2
	}

	.is-hover:hover .is-hoverBtnWhite span {
		color: #fff
	}

	.is-hover:hover .is-hoverBtnWhite::before {
		background-image: url(../images/common/icon_arrow_btnArr.svg)
	}
}

@media screen and (min-width: 768px) {
	.is-hoverline:hover .is-hoverBtnline {
		background-color: #fff;
		border: 2px solid #06C755;
	}

	.is-hoverline:hover .is-hoverBtnline span {
		color: #06C755;
	}
}



@media screen and (min-width: 768px) {
	.is-hover:hover .is-hoverBtnNews {
		background-color: #fff
	}

	.is-hover:hover .is-hoverBtnNews span {
		color: #242728
	}

	.is-hover:hover .is-hoverBtnNews::before {
		background-image: url(../images/common/icon_arrow_btnArr_black.svg)
	}
}

@media screen and (min-width: 768px) {
	.is-hover:hover .is-hoverBtnRegister::after {
		transform: scaleX(1)
	}
}

@media screen and (min-width: 768px) {
	.is-hover:hover .is-hoverNewsLine::before {
		transform: scaleX(1) !important
	}
}

@media screen and (min-width: 768px) {
	.is-hover:hover .is-hoverBtnCarousel::after {
		background-color: #fff
	}

	.is-hover:hover .is-hoverBtnCarousel::before {
		background-image: url(../images/common/icon_arrow_btnArr_blue.svg)
	}
}

@media screen and (min-width: 768px) {
	.is-hover:hover .is-hoverSnsIcon .sns-icons .sns-icon01 {
		transform: translateY(-100%) !important
	}
}

@media screen and (min-width: 768px) {
	.is-hover:hover .is-hoverSnsIcon .sns-icons .sns-icon02 {
		transform: translateY(0) !important
	}
}

.is-hover .is-hoverBtnBlue,
.is-hover .is-hoverBtnWhite,
.is-hover .is-hoverBtnBlack,
.is-hover .is-hoverBtnNews,
.is-hover .is-hoverBtnCarousel::after {
	transition: all 0.3s cubic-bezier(0.25, 0.1, 0.25, 1)
}

.is-hover .is-hoverThumb {
	transition: all 1s cubic-bezier(0.165, 0.84, 0.44, 1);
	backface-visibility: hidden
}

.is-hover .is-hoverBtnRegister::after {
	transition: all 0.8s cubic-bezier(0.77, 0, 0.175, 1)
}

.is-hover .is-hoverNewsLine::before {
	transition: all 0.6s cubic-bezier(0.165, 0.84, 0.44, 1)
}

.is-hover .is-hoverSnsSide,
.is-hover .is-hoverStoreTrigger,
.is-hover .is-hoverBannerTrigger {
	transition: all 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
	-webkit-transform: rotate(90deg);
	-ms-transform: rotate(90deg);
	transform: rotate(90deg)
}

.is-hover .is-hoverSnsSide {
	stroke: #242728
}

.is-hover .is-hoverStoreTrigger {
	/* stroke: #3b88d2; */
}

.is-hover .is-hoverBannerTrigger {
	stroke: #fff
}

.is-hover .is-hoverSnsIcon .sns-icons .sns-icon {
	transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1)
}

.is-white .is-hoverSnsSide {
	stroke: #fff !important
}

@media screen and (min-width: 768px) {
	.js-hover-letter:hover::before {
		transform: translateY(-6px)
	}
}

.js-hover-letter::before {
	transition: all 0.6s cubic-bezier(0.165, 0.84, 0.44, 1)
}

@media screen and (min-width: 768px) {
	.js-hover-letter .emp {
		margin-right: 8px
	}
}

@media screen and (max-width: 767px) {
	.js-hover-letter .emp {
		margin-right: 1.07vw
	}
}

.circle {
	position: absolute;
	z-index: 0;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
	fill: none;
	-webkit-stroke-dasharray: 880;
	stroke-dasharray: 880;
	-webkit-stroke-dashoffset: 440;
	stroke-dashoffset: 440;
	stroke-width: 4px
}

@media screen and (max-width: 767px) {
	.circle {
		display: none
	}
}

h3.header_sub,
.is-contactContainer .head,
.footer__main .footer__prod dt,
.footer__main .footer__toTop a,
.footer__bottom .copyright,
#l-lineModal .lineModal-box .title,
.l-lineup .head__main,
.l-news .head .head__main,
.l-store .head .head__main,
.l-productList .priceBox p,
.menu .menu-inner .list .item .item-page,
.trigger a .trigger-texts,
#l-header .sns .sns-follow,
.l-mainVisual .scroll .text,
.l-products .head,
.l-company .head,
.l-galleryKv .title,
.l-feature .feature-list .text .num,
.l-productList .head,
.l-privacy .head,
.l-faq .head .head__main {
	font-weight: 100;
	font-family: "Marcellus", sans-serif
}

h3.header_sub {
	font-size: 2.4em;
}

.menu .menu-inner .list .prod-list {
	margin-top: 0px;
}

#l-promotion .banner .text .title,
.l-register .title,
.l-lineup .carousel .title,
.l-products .title,
.l-store .store-trigger .store,
.l-store .faq-trigger .store,
.l-faq .store-trigger .store,
.l-faq .faq-trigger .store,
.l-productList .text .title,
.l-lead .head,
.l-lead .body,
.l-company .about .text .title,
.l-aboutArtist .intro .head,
.l-aboutArtist .about .name-box .name,
.l-productKv .titleWrap .sub,
.l-feature .feature-list .text .text-box .title,
.l-post .headBox .head,
.l-post .head-sub,
.l-faq .listBlock .list-head {
	font-weight: 100;
	font-family: "NotoSerifJP", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", Meiryo, メイリオ, sans-serif
}

.l-news .body,
.l-store .store-trigger .period,
.l-store .faq-trigger .period,
.l-faq .store-trigger .period,
.l-faq .faq-trigger .period,
.l-productList .quantity,
.l-productList .priceBox span,
.menu .menu-inner .list .item .item-pageSub,
.l-importantNews .news,
.l-products .sub,
.l-aboutArtist .intro .text,
.l-aboutArtist .about .name-box .history,
.l-aboutArtist .about .detail,
.l-infomation .inner .text .title,
.l-story .about .main .body,
.l-feature .head,
.l-productList .bottom .info-body,
.l-post .text,
.l-privacy .text,
.l-inputContainer form input,
.l-inputContainer form textarea,
.l-inputContainer form select,
.l-confirmContainer #confirm dl dd,
.l-confirmContainer form dl dd,
.l-thanksContainer .thanks-text,
.l-faq .list .detail .info {
	font-family: "NotoSansCJKjp", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", Meiryo, メイリオ, sans-serif
}

.IE .is-headContainer span {
	opacity: 1 !important
}

.IE .l-mainVisual .mv-logo {
	display: none !important
}

.IE .l-mainVisual .bg-item {
	transition: all 0.6s cubic-bezier(0.25, 0.25, 0.75, 0.75)
}

.IE .l-products .item .thumb-mask {
	opacity: 0 !important
}

.IE .l-news .head .head__moon {
	-webkit-transform: translate(0px, 0px) !important;
	transform: translate(0px, 0px) !important
}

.IE .l-news .head .head__moon span {
	opacity: 1 !important;
	visibility: inherit !important
}

.IE .l-news .head .head__moon::before {
	display: none !important
}

.IE #l-header .logo a {
	width: 166px !important;
	height: 31px !important
}

.IE .l-feature .guide-list .guide-pos {
	margin-bottom: 5vh !important
}

.IE .l-feature .guide-list .guide-pos:nth-child(1) {
	padding-top: 0 !important;
	padding-bottom: 0 !important
}

.IE .l-feature .feature-list .item {
	position: relative !important
}

.IE .l-feature .feature-list .item .thumb .thumb-box {
	opacity: 1 !important;
	transform: rotate(0deg) translateY(0) !important
}

.IE .l-feature .feature-list .item .text .num {
	opacity: 1 !important;
	transform: translateY(0) !important
}

.IE .l-feature .feature-list .item .text .text-box .title,
.IE .l-feature .feature-list .item .text .text-box .body {
	opacity: 1 !important;
	transform: translateY(0) !important
}

.MOBILE .l-feature {
	padding-top: 100px
}

.MOBILE .l-feature .guide-list .guide-pos {
	margin-bottom: 5vh !important
}

.MOBILE .l-feature .guide-list .guide-pos:nth-child(1) {
	padding-top: 0 !important;
	padding-bottom: 0 !important
}

.MOBILE .l-feature .feature-list .item {
	position: relative !important
}

.MOBILE .l-feature .feature-list .item .thumb .thumb-box {
	opacity: 1 !important;
	transform: rotate(0deg) translateY(0) !important
}

.MOBILE .l-feature .feature-list .item .text .num {
	opacity: 1 !important;
	transform: translateY(0) !important
}

.MOBILE .l-feature .feature-list .item .text .text-box .title,
.MOBILE .l-feature .feature-list .item .text .text-box .body {
	opacity: 1 !important;
	transform: translateY(0) !important
}

.l-mainVisual {
	width: 100%;
	height: 100vh;
	position: relative
}

.l-mainVisual .mv {
	width: 100%;
	height: 100vh;
	position: relative;
	z-index: 0
}

.l-mainVisual .logo-item .logo-mask,
.l-mainVisual .bg-item {
	transform-origin: center;
	backface-visibility: hidden
}

.l-mainVisual .frame,
.l-mainVisual .frame-nonBlur,
.l-mainVisual .logo-item .logo-mask,
.l-mainVisual .mv-bg,
.l-mainVisual .bg-item {
	width: 100%;
	height: 100vh;
	position: absolute;
	top: 0;
	left: 0
}

.l-mainVisual .scroll {
	position: absolute;
	bottom: 0;
	margin: auto;
	text-align: center;
	z-index: 100
}

@media screen and (min-width: 768px) {
	.l-mainVisual .scroll {
		left: 0;
		right: 0
	}
}

@media screen and (max-width: 767px) {
	.l-mainVisual .scroll {
		left: 4vw;
		bottom: 4.69vh
	}
}

.l-mainVisual .scroll .scroll-inner {
	opacity: 0;
	visibility: hidden;
	transform: translateY(20px)
}

.l-mainVisual .scroll .text {
	line-height: 1
}

@media screen and (min-width: 768px) {
	.l-mainVisual .scroll .text {
		font-size: 14px;
		margin-bottom: 10px
	}
}

@media screen and (max-width: 767px) {
	.l-mainVisual .scroll .text {
		font-size: 3.74vw;
		margin-bottom: .8vw;
		-webkit-writing-mode: vertical-rl;
		-ms-writing-mode: tb-rl;
		writing-mode: vertical-rl
	}
}

.l-mainVisual .scroll .dot {
	position: relative;
	display: inline-block
}

/* TOPメイン画像下の「scroll」文字下のドット */
.l-mainVisual .scroll .dot .dot-item {
	background-color: #3b88d2;
	border-radius: 50%;
	opacity: 0;
	animation-name: fade;
	animation-iteration-count: infinite;
	animation-duration: 2s;
	/* 2s */
}

@-webkit-keyframes fade {
	0% {
		opacity: 0
	}

	50% {
		opacity: 1
	}

	100% {
		opacity: 0
	}
}

@-moz-keyframes fade {
	0% {
		opacity: 0
	}

	50% {
		opacity: 1
	}

	100% {
		opacity: 0
	}
}

@-ms-keyframes fade {
	.l-mainVisual .scroll .dot .dot-item 0% {
		opacity: 0
	}

	.l-mainVisual .scroll .dot .dot-item 50% {
		opacity: 1
	}

	.l-mainVisual .scroll .dot .dot-item 100% {
		opacity: 0
	}
}

@keyframes fade {
	0% {
		opacity: 0
	}

	50% {
		opacity: 1
	}

	100% {
		opacity: 0
	}
}

.l-mainVisual .scroll .dot .dot-item:nth-child(2) {
	animation-delay: 0.2s
}

.l-mainVisual .scroll .dot .dot-item:last-child {
	animation-delay: 0.4s;
	margin-bottom: 0px
}

@media screen and (min-width: 768px) {
	.l-mainVisual .scroll .dot .dot-item {
		width: 6px;
		height: 6px;
		margin-bottom: 6px
	}
}

@media screen and (max-width: 767px) {
	.l-mainVisual .scroll .dot .dot-item {
		width: 1.6vw;
		height: 1.6vw;
		margin-bottom: 1.6vw
	}
}

.l-mainVisual .frame {
	z-index: 10
}

.l-mainVisual .frame-nonBlur {
	z-index: 9
}

.l-mainVisual .frame-inner {
	position: relative;
	height: 100vh;
	z-index: 1;
	opacity: 0;
	transition: all 0.4s cubic-bezier(0.25, 0.25, 0.75, 0.75);
	/* 0.4s */
}

.l-mainVisual .frame-inner.is-active {
	opacity: 1
}

.l-mainVisual .frame-item {
	position: absolute
}

.l-mainVisual .frame-top {
	left: 0;
	right: 0;
	z-index: 0;
	margin: auto;
	background-image: url(../images/home/mv_snow_top.png)
}

@media screen and (min-width: 768px) {
	.l-mainVisual .frame-top {
		width: 99.86vw;
		height: 8.34vw;
		top: 0;
		background-position: center top
	}
}

@media screen and (max-width: 767px) {
	.l-mainVisual .frame-top {
		width: 100%;
		height: 18.67vw;
		top: -1.33vw;
		background-position: right top
	}
}

.l-mainVisual .frame-leftTop {
	transform: translateX(-20px) translateY(-50px);
	opacity: 0;
	z-index: 2;
	background-position: left top
}

@media screen and (min-width: 768px) {
	.l-mainVisual .frame-leftTop {
		width: 337px;
		height: 189px;
		top: -10px;
		left: -20px;
		background-image: url(../images/home/mv_snow_leftTop.png)
	}
}

@media screen and (max-width: 767px) {
	.l-mainVisual .frame-leftTop {
		width: 220px;
		height: 90px;
		top: 0px;
		left: 0px;
		background-image: url(../images/home/mv_snow_leftTop_sp.png)
	}
}

.l-mainVisual .frame-left {
	top: -1px;
	left: -1px;
	z-index: 2;
	transform: translateX(-50px);
	opacity: 0;
	background-position: left top
}

@media screen and (min-width: 768px) {
	.l-mainVisual .frame-left {
		width: 33.86vh;
		height: 110.03vh;
		background-image: url(../images/home/mv_snow_left.png)
	}
}

@media screen and (max-width: 767px) {
	.l-mainVisual .frame-left {
		width: 24.74vh;
		height: 93.75vh;
		background-image: url(../images/home/mv_snow_left_sp2.png)
	}
}

.l-mainVisual .frame-left-nonBlur {
	top: -1px;
	left: -1px;
	z-index: 1;
	background-position: left top
}

@media screen and (min-width: 768px) {
	.l-mainVisual .frame-left-nonBlur {
		width: 33.86vh;
		height: 110.03vh;
		background-image: url(../images/home/mv_snow_left_nograd.png)
	}
}

@media screen and (max-width: 767px) {
	.l-mainVisual .frame-left-nonBlur {
		width: 24.74vh;
		height: 93.75vh;
		background-image: url(../images/home/mv_snow_left_nograd_sp.png)
	}
}

.l-mainVisual .frame-right {
	top: -1px;
	right: -1px;
	z-index: 2;
	transform: translateX(50px);
	opacity: 0;
	background-position: right top
}

@media screen and (min-width: 768px) {
	.l-mainVisual .frame-right {
		width: 27.87vh;
		height: 97.01vh;
		background-image: url(../images/home/mv_snow_right.png)
	}
}

@media screen and (max-width: 767px) {
	.l-mainVisual .frame-right {
		width: 13.03vh;
		height: 91.41vh;
		background-image: url(../images/home/mv_snow_right_sp2.png)
	}
}

.l-mainVisual .frame-right-nonBlur {
	top: -1px;
	right: -1px;
	z-index: 1;
	background-position: right top
}

@media screen and (min-width: 768px) {
	.l-mainVisual .frame-right-nonBlur {
		width: 27.87vh;
		height: 97.01vh;
		background-image: url(../images/home/mv_snow_right_nograd.png)
	}
}

@media screen and (max-width: 767px) {
	.l-mainVisual .frame-right-nonBlur {
		width: 13.03vh;
		height: 91.41vh;
		background-image: url(../images/home/mv_snow_right_nograd_sp.png)
	}
}

.l-mainVisual .frame-bottom {
	width: 101%;
	bottom: -1px;
	left: -2px;
	right: 0;
	z-index: 0;
	margin: auto;
	background-position: bottom
}

@media screen and (min-width: 768px) {
	.l-mainVisual .frame-bottom {
		height: 20.11vw;
		background-image: url(../images/home/mv_snow_bottom.png)
	}
}

@media screen and (max-width: 767px) {
	.l-mainVisual .frame-bottom {
		height: 44.27vw;
		background-image: url(../images/home/mv_snow_bottom_sp.png)
	}
}

.l-mainVisual .list {
	width: 100%;
	height: 100%;
	position: relative;
	overflow: hidden
}

.l-mainVisual .mv-logo {
	width: 100%;
	height: 100%;
	position: relative;
	z-index: 300;
	opacity: 0
}

.l-mainVisual .logo-item {
	width: 100%;
	height: 100%;
	position: absolute;
	overflow: hidden;
	-webkit-mask-image: url("../images/common/brand_logo.svg");
	-moz-mask-image: url("../images/common/brand_logo.svg");
	mask-image: url("../images/common/brand_logo.svg");
	-webkit-mask-repeat: no-repeat;
	-moz-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	-moz-mask-position: center;
	mask-position: center;
	-webkit-clip: rect(0 15vw 100vh 0);
	-ms-clip: rect(0 15vw 100vh 0);
	-moz-clip: rect(0 15vw 100vh 0);
	clip: rect(0 15vw 100vh 0);
	opacity: 0;
	visibility: hidden
}

@media screen and (min-width: 768px) {
	.l-mainVisual .logo-item {
		-webkit-mask-size: 588px auto;
		-moz-mask-size: 588px auto;
		mask-size: 588px auto
	}
}

@media screen and (max-width: 767px) {
	.l-mainVisual .logo-item {
		-webkit-mask-size: 70.67vw auto;
		-moz-mask-size: 70.67vw auto;
		mask-size: 70.67vw auto
	}
}

.l-mainVisual .logo-item.is-active {
	transition: all 0.01s cubic-bezier(0.25, 0.25, 0.75, 0.75);
	/* 1.15s*/
	opacity: 1;
	z-index: 3;
	visibility: visible;
	-webkit-clip: rect(0 90vw 100vh 0);
	-moz-clip: rect(0 90vw 100vh 0);
	clip: rect(0 90vw 100vh 0)
}

.l-mainVisual #mv-effect {
	z-index: 200
}

.l-mainVisual .mv-bg {
	z-index: 100
}

.l-mainVisual .bg-item {
	opacity: 0;
	visibility: hidden
}

.l-mainVisual .bg-item.is-active {
	opacity: 1;
	visibility: visible
}

.l-importantNews {
	position: relative;
	z-index: 1
}

@media screen and (min-width: 768px) {
	.l-importantNews {
		margin-top: 50px;
		padding: 0 20px
	}
}

@media screen and (max-width: 767px) {
	.l-importantNews {
		margin-top: 5.34vw
	}
}

.l-importantNews .inner {
	margin: auto
}

@media screen and (min-width: 768px) {
	.l-importantNews .inner {
		max-width: 748px
	}
}

@media screen and (max-width: 767px) {
	.l-importantNews .inner {
		width: 100%;
		padding: 0 13.34vw
	}
}

.l-importantNews .news-content {
	border-bottom: 1px solid #ebeef2;
	line-height: 1.5
}

@media screen and (min-width: 768px) {
	.l-importantNews .news-content {
		padding-bottom: 22px;
		margin-bottom: 20px;
		display: flex
	}
}

@media screen and (max-width: 767px) {
	.l-importantNews .news-content {
		margin-bottom: 5.34vw;
		padding-bottom: 4.8vw
	}
}

.l-importantNews .date {
	color: #dbdbdb
}

@media screen and (min-width: 768px) {
	.l-importantNews .date {
		width: 130px;
		font-size: 14px
	}
}

@media screen and (max-width: 767px) {
	.l-importantNews .date {
		display: inline-block;
		padding-right: 5.87vw;
		font-size: 3.74vw
	}
}

.l-importantNews .title {
	color: #3b88d2;
	position: relative
}

.l-importantNews .title:before {
	content: "";
	position: absolute;
	left: 0;
	background-image: url(../images/common/icon_snow.svg)
}

@media screen and (min-width: 768px) {
	.l-importantNews .title:before {
		width: 10px;
		height: 11px;
		top: 4px
	}
}

@media screen and (max-width: 767px) {
	.l-importantNews .title:before {
		width: 2.67vw;
		height: 2.94vw;
		top: 1.07vw
	}
}

@media screen and (min-width: 768px) {
	.l-importantNews .title {
		width: 170px;
		font-size: 12px;
		padding-left: 17px
	}
}

@media screen and (max-width: 767px) {
	.l-importantNews .title {
		display: inline-block;
		font-size: 3.2vw;
		padding-left: 4.54vw
	}
}

@media screen and (min-width: 768px) {
	.l-importantNews .news {
		font-size: 13px
	}
}

@media screen and (max-width: 767px) {
	.l-importantNews .news {
		display: block;
		font-size: 3.47vw;
		margin-top: 1.34vw
	}
}

.l-lead {
	width: 100%;
	position: relative;
	overflow: hidden
}

@media screen and (min-width: 768px) {
	.l-lead .lead-box {
		margin: auto;
		max-width: 1420px
	}
}

.l-lead .leadBox {
	position: relative;
	z-index: 1
}

@media screen and (min-width: 768px) {
	.l-lead .leadBox {
		display: flex;
		justify-content: space-between;
		padding: 180px 0 190px
	}
}

@media screen and (max-width: 767px) {
	.l-lead .leadBox {
		padding: 32vw 4.8vw 32vw
	}
}

.l-lead .lead-item {
	position: absolute;
	z-index: 0;
	display: block
}

.l-lead .lead-item01 {
	background-image: url(../images/home/lead_snow01.png)
}

@media screen and (min-width: 768px) {
	.l-lead .lead-item01 {
		width: 603px;
		height: 566px;
		top: -150px;
		left: -160px
	}
}

@media screen and (max-width: 767px) {
	.l-lead .lead-item01 {
		width: 88vw;
		height: 82.67vw;
		top: -20.26vw;
		left: -4vw
	}
}

.l-lead .lead-item02 {
	right: 0px;
	background-image: url(../images/home/lead_snow02.png)
}

@media screen and (min-width: 768px) {
	.l-lead .lead-item02 {
		width: 370px;
		height: 490px;
		bottom: -80px
	}
}

@media screen and (max-width: 767px) {
	.l-lead .lead-item02 {
		width: 72vw;
		height: 96vw;
		bottom: -13.33vw
	}
}

.l-lead .icons-box {
	position: relative;
	z-index: 0
}

.l-lead .icons-box.is-inview .lead-icon {
	animation-iteration-count: infinite
}

.l-lead .icons-box.is-inview .lead-icon span {
	opacity: 1 !important;
	transform: scale(1) !important
}

.l-lead .icons-box.is-inview .lead-icon-ani01 {
	animation-name: floating01;
	animation-duration: 4.5s
}

@-webkit-keyframes floating01 {
	0% {
		transform: translateY(0)
	}

	50% {
		transform: translateY(6px)
	}

	100% {
		transform: translateY(0)
	}
}

@-moz-keyframes floating01 {
	0% {
		transform: translateY(0)
	}

	50% {
		transform: translateY(6px)
	}

	100% {
		transform: translateY(0)
	}
}

@-ms-keyframes floating01 {
	.l-lead .icons-box.is-inview .lead-icon-ani01 0% {
		transform: translateY(0)
	}

	.l-lead .icons-box.is-inview .lead-icon-ani01 50% {
		transform: translateY(6px)
	}

	.l-lead .icons-box.is-inview .lead-icon-ani01 100% {
		transform: translateY(0)
	}
}

@keyframes floating01 {
	0% {
		transform: translateY(0)
	}

	50% {
		transform: translateY(6px)
	}

	100% {
		transform: translateY(0)
	}
}

.l-lead .icons-box.is-inview .lead-icon-ani01 span {
	transition: all 1.2s cubic-bezier(0.165, 0.84, 0.44, 1);
	transition-delay: 0.4s
}

.l-lead .icons-box.is-inview .lead-icon-ani02 {
	animation-name: floating02;
	animation-duration: 4s
}

@-webkit-keyframes floating02 {
	0% {
		transform: translate(0, 0)
	}

	50% {
		transform: translate(-4px, 8px)
	}

	100% {
		transform: translate(0, 0)
	}
}

@-moz-keyframes floating02 {
	0% {
		transform: translate(0, 0)
	}

	50% {
		transform: translate(-4px, 8px)
	}

	100% {
		transform: translate(0, 0)
	}
}

@-ms-keyframes floating02 {
	.l-lead .icons-box.is-inview .lead-icon-ani02 0% {
		transform: translate(0, 0)
	}

	.l-lead .icons-box.is-inview .lead-icon-ani02 50% {
		transform: translate(-4px, 8px)
	}

	.l-lead .icons-box.is-inview .lead-icon-ani02 100% {
		transform: translate(0, 0)
	}
}

@keyframes floating02 {
	0% {
		transform: translate(0, 0)
	}

	50% {
		transform: translate(-4px, 8px)
	}

	100% {
		transform: translate(0, 0)
	}
}

.l-lead .icons-box.is-inview .lead-icon-ani02 span {
	transition: all 1.5s cubic-bezier(0.165, 0.84, 0.44, 1);
	transition-delay: 0.3s
}

.l-lead .icons-box.is-inview .lead-icon-ani03 {
	animation-name: floating03;
	animation-duration: 3.5s
}

@-webkit-keyframes floating03 {
	0% {
		transform: translate(0, 0)
	}

	50% {
		transform: translate(4px, -5px)
	}

	100% {
		transform: translate(0, 0)
	}
}

@-moz-keyframes floating03 {
	0% {
		transform: translate(0, 0)
	}

	50% {
		transform: translate(4px, -5px)
	}

	100% {
		transform: translate(0, 0)
	}
}

@-ms-keyframes floating03 {
	.l-lead .icons-box.is-inview .lead-icon-ani03 0% {
		transform: translate(0, 0)
	}

	.l-lead .icons-box.is-inview .lead-icon-ani03 50% {
		transform: translate(4px, -5px)
	}

	.l-lead .icons-box.is-inview .lead-icon-ani03 100% {
		transform: translate(0, 0)
	}
}

@keyframes floating03 {
	0% {
		transform: translate(0, 0)
	}

	50% {
		transform: translate(4px, -5px)
	}

	100% {
		transform: translate(0, 0)
	}
}

.l-lead .icons-box.is-inview .lead-icon-ani03 span {
	transition: all 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
	transition-delay: 0.9s
}

.l-lead .icons-box.is-inview .lead-icon-ani04 {
	animation-name: floating04;
	animation-duration: 5s
}

@-webkit-keyframes floating04 {
	0% {
		transform: translate(0, 0)
	}

	50% {
		transform: translate(8px, 2px)
	}

	100% {
		transform: translate(0, 0)
	}
}

@-moz-keyframes floating04 {
	0% {
		transform: translate(0, 0)
	}

	50% {
		transform: translate(8px, 2px)
	}

	100% {
		transform: translate(0, 0)
	}
}

@-ms-keyframes floating04 {
	.l-lead .icons-box.is-inview .lead-icon-ani04 0% {
		transform: translate(0, 0)
	}

	.l-lead .icons-box.is-inview .lead-icon-ani04 50% {
		transform: translate(8px, 2px)
	}

	.l-lead .icons-box.is-inview .lead-icon-ani04 100% {
		transform: translate(0, 0)
	}
}

@keyframes floating04 {
	0% {
		transform: translate(0, 0)
	}

	50% {
		transform: translate(8px, 2px)
	}

	100% {
		transform: translate(0, 0)
	}
}

.l-lead .icons-box.is-inview .lead-icon-ani04 span {
	transition: all 1s cubic-bezier(0.165, 0.84, 0.44, 1);
	transition-delay: 0.6s
}

.l-lead .icons-box .icons {
	display: block;
	position: relative;
	z-index: 1
}

@media screen and (min-width: 768px) {
	.l-lead .icons-box .icons {
		width: 270px;
		height: 284px
	}
}

@media screen and (max-width: 767px) {
	.l-lead .icons-box .icons {
		width: 39.47vw;
		height: 41.6vw;
		margin: auto
	}
}

.l-lead .icons-box .icons .lead-icon {
	position: absolute
}

.l-lead .icons-box .icons .lead-icon span {
	width: 100%;
	height: 100%;
	display: block;
	opacity: 0;
	transform: scale(0.2);
	transform-origin: center;
	backface-visibility: hidden
}

.l-lead .icons-box .icons .lead-icon01 {
	top: 0;
	right: 0;
	margin: auto
}

.l-lead .icons-box .icons .lead-icon01 span {
	background-image: url(../images/home/lead_icon_01.png)
}

@media screen and (min-width: 768px) {
	.l-lead .icons-box .icons .lead-icon01 {
		width: 37px;
		height: 49px;
		left: 20px
	}
}

@media screen and (max-width: 767px) {
	.l-lead .icons-box .icons .lead-icon01 {
		width: 5.34vw;
		height: 7.2vw;
		left: 5.34vw
	}
}

.l-lead .icons-box .icons .lead-icon02 span {
	background-image: url(../images/home/lead_icon_02.png)
}

@media screen and (min-width: 768px) {
	.l-lead .icons-box .icons .lead-icon02 {
		width: 32px;
		height: 95px;
		top: 28px;
		left: 10px
	}
}

@media screen and (max-width: 767px) {
	.l-lead .icons-box .icons .lead-icon02 {
		width: 4.8vw;
		height: 13.87vw;
		top: 2.67vw;
		left: 1.34vw
	}
}

.l-lead .icons-box .icons .lead-icon03 span {
	background-image: url(../images/home/lead_icon_03.png)
}

@media screen and (min-width: 768px) {
	.l-lead .icons-box .icons .lead-icon03 {
		width: 68px;
		height: 99px;
		top: 74px;
		right: 4px
	}
}

@media screen and (max-width: 767px) {
	.l-lead .icons-box .icons .lead-icon03 {
		width: 10.14vw;
		height: 14.4vw;
		top: 8vw;
		right: .8vw
	}
}

.l-lead .icons-box .icons .lead-icon04 {
	margin: auto;
	left: 0
}

.l-lead .icons-box .icons .lead-icon04 span {
	background-image: url(../images/home/lead_icon_04.png)
}

@media screen and (min-width: 768px) {
	.l-lead .icons-box .icons .lead-icon04 {
		width: 48px;
		height: 41px;
		top: 110px;
		right: 50px
	}
}

@media screen and (max-width: 767px) {
	.l-lead .icons-box .icons .lead-icon04 {
		width: 6.94vw;
		height: 5.87vw;
		top: 13.34vw;
		right: 5.34vw
	}
}

.l-lead .icons-box .icons .lead-icon05 {
	margin: auto;
	right: 0
}

.l-lead .icons-box .icons .lead-icon05 span {
	background-image: url(../images/home/lead_icon_05.png)
}

@media screen and (min-width: 768px) {
	.l-lead .icons-box .icons .lead-icon05 {
		width: 46px;
		height: 32px;
		top: 190px;
		left: 20px
	}
}

@media screen and (max-width: 767px) {
	.l-lead .icons-box .icons .lead-icon05 {
		width: 6.67vw;
		height: 4.8vw;
		top: 32vw;
		left: 0
	}
}

.l-lead .icons-box .icons .lead-icon06 {
	left: 0
}

.l-lead .icons-box .icons .lead-icon06 span {
	background-image: url(../images/home/lead_icon_06.png)
}

@media screen and (min-width: 768px) {
	.l-lead .icons-box .icons .lead-icon06 {
		width: 80px;
		height: 42px;
		top: 212px
	}
}

@media screen and (max-width: 767px) {
	.l-lead .icons-box .icons .lead-icon06 {
		width: 11.2vw;
		height: 5.87vw;
		top: 33.07vw
	}
}

.l-lead .icons-box .icons .lead-icon07 {
	bottom: 0;
	right: 0
}

.l-lead .icons-box .icons .lead-icon07 span {
	background-image: url(../images/home/lead_icon_07.png)
}

@media screen and (min-width: 768px) {
	.l-lead .icons-box .icons .lead-icon07 {
		width: 29px;
		height: 65px
	}
}

@media screen and (max-width: 767px) {
	.l-lead .icons-box .icons .lead-icon07 {
		width: 4.27vw;
		height: 9.6vw
	}
}

@media screen and (min-width: 768px) {
	.l-lead .icons-box {
		padding-right: 30px
	}
}

@media screen and (max-width: 767px) {
	.l-lead .icons-box {
		padding-bottom: 29.34vw
	}
}

.l-lead .text-box {
	position: relative;
	z-index: 1;
	text-align: center
}

.l-lead .head {
	line-height: 1.4
}

@media screen and (min-width: 768px) {
	.l-lead .head {
		font-size: 30px;
		margin-bottom: 28px
	}
}

@media screen and (max-width: 767px) {
	.l-lead .head {
		font-size: 6.4vw;
		margin-bottom: 7.47vw
	}
}

@media screen and (min-width: 768px) {
	.l-lead .body p {
		font-size: 18px;
		margin-bottom: 15px
	}
}

@media screen and (max-width: 767px) {
	.l-lead .body p {
		margin-bottom: 5.34vw;
		font-size: 4.8vw
	}
}

.l-products {
	width: 100%;
	position: relative;
	overflow: hidden;
	background-color: #3b88d2
}

.l-products .products-box {
	position: relative;
	z-index: 1
}

@media screen and (min-width: 768px) {
	.l-products .products-box {
		padding: 170px 0 120px
	}
}

@media screen and (max-width: 767px) {
	.l-products .products-box {
		padding: 20.27vw 0 21.34vw
	}
}

.l-products .head {
	color: #fff;
	line-height: 1;
	left: 50%;
	transform: translateX(-50%)
}

@media screen and (min-width: 768px) {
	.l-products .head {
		font-size: 120px
	}
}

@media screen and (max-width: 767px) {
	.l-products .head {
		font-size: 14.94vw
	}
}

.l-products .sub {
	color: #fff;
	line-height: 2.2;
	/* word-break:break-all; 英単語途中で改行させない指示 */
}

@media screen and (min-width: 768px) {
	.l-products .sub {
		text-align: center;
		font-size: 14px;
		margin: 65px 0 80px
	}
}

@media screen and (max-width: 767px) {
	.l-products .sub {
		padding: 0 6.4vw;
		font-size: 3.74vw;
		margin: 6.94vw 0 10.67vw
	}
}

@media screen and (min-width: 768px) {
	.l-products .list {
		display: flex;
		flex-wrap: wrap;
		margin-top: 320px
	}
}

@media screen and (max-width: 767px) {
	.l-products .list {
		margin-top: 11.74vw
	}
}

@media screen and (min-width: 768px) {
	.l-products .list .item {
		width: 50%;
		margin-bottom: 114px
	}

	.l-products .list .item:nth-child(even) {
		padding-left: 40px
	}

	.l-products .list .item:nth-child(odd) {
		padding-right: 40px;
		margin-top: -220px
	}
}

@media screen and (max-width: 767px) {
	.l-products .list .item {
		width: 100%;
		padding: 0;
		margin-bottom: 17.07vw
	}
}

.l-products .product-bgList {
	position: absolute;
	width: 100%;
	z-index: 0;
	display: flex;
	flex-wrap: wrap
}

@media screen and (min-width: 768px) {
	.l-products .product-bgList {
		top: 280px
	}
}

@media screen and (max-width: 767px) {
	.l-products .product-bgList {
		top: 175.47vw
	}
}

.l-products .product-bgList .product-bgitem {
	width: 50%;
	position: relative
}

.l-products .product-bgList .product-bgitem span {
	display: block;
	position: absolute;
	top: 0
}

@media screen and (min-width: 768px) {
	.l-products .product-bgList .product-bgitem span {
		width: 34.51vw
	}
}

@media screen and (max-width: 767px) {
	.l-products .product-bgList .product-bgitem span {
		width: 100%
	}
}

@media screen and (min-width: 768px) {
	.l-products .product-bgList .product-bgitem {
		height: 47.96vw;
		margin-bottom: 36.55vw
	}

	.l-products .product-bgList .product-bgitem:nth-child(odd) span {
		height: 47.96vw;
		margin-top: 19.01vw
	}

	.l-products .product-bgList .product-bgitem:nth-child(even) span {
		height: 45.77vw
	}
}

@media screen and (max-width: 767px) {
	.l-products .product-bgList .product-bgitem {
		height: 69.34vw;
		margin-bottom: 266.67vw
	}

	.l-products .product-bgList .product-bgitem:nth-child(odd) span {
		height: 66.41vw;
		margin-top: 128vw
	}

	.l-products .product-bgList .product-bgitem:nth-child(even) span {
		height: 69.34vw
	}
}

.l-products .product-bgList .product-bgitem:nth-child(odd) span {
	left: 0;
	background-image: url(../images/common/prod_bg02.png)
}

.l-products .product-bgList .product-bgitem:nth-child(even) span {
	right: 0;
	background-image: url(../images/common/prod_bg01.png)
}

.l-company {
	width: 100%;
	position: relative;
	overflow: hidden
}

.l-company .company-box {
	z-index: 5;
	position: relative
}

.l-company .snow-item {
	position: absolute
}

.l-company .snow-right01 {
	background-image: url(../images/home/company_snow_right01.png);
	right: 0px;
	z-index: 1
}

@media screen and (min-width: 768px) {
	.l-company .snow-right01 {
		width: 352px;
		height: 624px;
		top: -250px
	}
}

@media screen and (max-width: 767px) {
	.l-company .snow-right01 {
		width: 42.67vw;
		height: 46.14vw;
		top: -16vw
	}
}

.l-company .snow-right02 {
	background-image: url(../images/home/company_snow_right02.png);
	right: 0px
}

@media screen and (min-width: 768px) {
	.l-company .snow-right02 {
		width: 488px;
		height: 577px;
		top: -290px
	}
}

@media screen and (max-width: 767px) {
	.l-company .snow-right02 {
		width: 81.07vw;
		height: 71.2vw;
		top: -40vw
	}
}

.l-company .snow-left01 {
	z-index: 1;
	left: 0px;
	background-image: url(../images/home/company_snow_left01.png)
}

@media screen and (min-width: 768px) {
	.l-company .snow-left01 {
		width: 240px;
		height: 398px;
		bottom: -60px
	}
}

@media screen and (max-width: 767px) {
	.l-company .snow-left01 {
		width: 37.34vw;
		height: 50.67vw;
		bottom: -8vw
	}
}

.l-company .snow-left02 {
	left: 0px;
	background-image: url(../images/home/company_snow_left02.png)
}

@media screen and (min-width: 768px) {
	.l-company .snow-left02 {
		width: 640px;
		height: 390px;
		bottom: -200px
	}
}

@media screen and (max-width: 767px) {
	.l-company .snow-left02 {
		width: 95.47vw;
		height: 74.67vw;
		bottom: -48vw
	}
}

@media screen and (min-width: 768px) {
	.l-company {
		padding: 170px 0 140px
	}
}

@media screen and (max-width: 767px) {
	.l-company {
		padding: 24vw 0 17.61vw
	}
}

.l-company .head {
	font-weight: 500;
	line-height: 1
}

@media screen and (min-width: 768px) {
	.l-company .head {
		font-size: 120px
	}
}

@media screen and (max-width: 767px) {
	.l-company .head {
		font-size: 14.94vw;
		text-align: center
	}
}

.l-company .about {
	display: flex
}

@media screen and (min-width: 768px) {
	.l-company .about {
		margin-top: 60px
	}
}

@media screen and (max-width: 767px) {
	.l-company .about {
		flex-direction: column
	}
}

@media screen and (min-width: 768px) {
	.l-company .about .text {
		width: 55%;
		padding-right: 30px
	}
}

@media screen and (min-width: 1024px) {
	.l-company .about .text {
		width: 55%;
		padding-right: 70px
	}
}

@media screen and (max-width: 767px) {
	.l-company .about .text {
		width: 100%;
		order: 1;
		padding: 0 6.4vw
	}
}

.l-company .about .text .title {
	line-height: 1.5
}

@media screen and (min-width: 768px) {
	.l-company .about .text .title {
		font-size: 24px;
		margin-bottom: 20px
	}
}

@media screen and (min-width: 1024px) {
	.l-company .about .text .title {
		font-size: 30px;
		margin-bottom: 20px
	}
}

@media screen and (max-width: 767px) {
	.l-company .about .text .title {
		font-size: 6.94vw;
		margin-bottom: 3.74vw
	}
}

@media screen and (min-width: 768px) {
	.l-company .about .text .body {
		font-size: 12px
	}
}

@media screen and (min-width: 1024px) {
	.l-company .about .text .body {
		font-size: 14px
	}
}

@media screen and (max-width: 767px) {
	.l-company .about .text .body {
		font-size: 3.74vw;
		/* word-break:break-all; 英単語を改行させない指示*/
	}
}

.l-company .about .text .btn {
	display: inline-block
}

@media screen and (min-width: 768px) {
	.l-company .about .text .btn {
		margin-top: 30px
	}
}

@media screen and (max-width: 767px) {
	.l-company .about .text .btn {
		margin-top: 8vw;
		display: grid;
		justify-content: center;
	}
}

@media screen and (min-width: 768px) {
	.l-company .about .text .btn>a {
		width: 240px;
		font-size: 15px
	}
}

@media screen and (max-width: 767px) {
	.l-company .about .text .btn>a {
		font-size: 3.5vw
	}
}

.l-company .about .text .btn>a .text-items {
	overflow: hidden;
	position: relative
}

.l-company .about .text .btn>a .text-items span {
	padding-left: 0px
}

@media screen and (min-width: 768px) {
	.l-company .about .text .btn>a .text-items span:first-child {
		padding-left: 30px
	}
}

@media screen and (max-width: 767px) {
	.l-company .about .text .btn>a .text-items span:first-child {
		padding-left: 8vw
	}
}

.l-company .about .thumb {
	position: relative
}

@media screen and (min-width: 768px) {
	.l-company .about .thumb {
		width: 45%
	}
}

@media screen and (min-width: 1024px) {
	.l-company .about .thumb {
		width: 45%;
		min-width: 350px
	}
}

@media screen and (max-width: 767px) {
	.l-company .about .thumb {
		width: 100%;
		order: 0;
		margin: 9.07vw 0 8vw
	}
}

.l-galleryKv {
	width: 100%;
	height: 100vh;
	position: relative
}

.l-galleryKv .title {
	color: #fff;
	font-weight: 100;
	z-index: 1
}

@media screen and (min-width: 768px) {
	.l-galleryKv .title {
		font-size: 120px
	}
}

@media screen and (max-width: 767px) {
	.l-galleryKv .title {
		font-size: 14.94vw
	}
}

.l-galleryKv .thumb {
	width: 100%;
	height: 100%;
	position: absolute;
	z-index: 0
}

.l-galleryKv .thumb span {
	width: 100%;
	height: 100%;
	display: block;
	background-image: url(../images/gallery/kv.png)
}

.l-aboutArtist {
	width: 100%;
	position: relative;
	background-color: #fff
}

.l-aboutArtist .inner {
	margin: auto;
	position: relative;
	z-index: 1
}

@media screen and (min-width: 768px) {
	.l-aboutArtist .inner {
		width: 472px
	}
}

@media screen and (max-width: 767px) {
	.l-aboutArtist .inner {
		width: 100%;
		padding: 0 10.67vw
	}
}

@media screen and (min-width: 768px) {
	.l-aboutArtist .intro {
		padding: 70px 0 140px
	}
}

@media screen and (max-width: 767px) {
	.l-aboutArtist .intro {
		padding: 16vw 0 29.34vw
	}
}

.l-aboutArtist .intro .head {
	font-weight: 100;
	line-height: 1.5
}

@media screen and (min-width: 768px) {
	.l-aboutArtist .intro .head {
		font-size: 30px;
		margin-bottom: 40px
	}
}

@media screen and (max-width: 767px) {
	.l-aboutArtist .intro .head {
		font-size: 7.47vw;
		margin-bottom: 8vw
	}
}

@media screen and (min-width: 768px) {
	.l-aboutArtist .intro .text {
		margin-bottom: 30px
	}
}

.l-aboutArtist .carousel {
	width: 100%;
	background-color: #37737c;
	position: relative
}

@media screen and (min-width: 768px) {
	.l-aboutArtist .carousel {
		padding: 174px 0 70px
	}
}

@media screen and (max-width: 767px) {
	.l-aboutArtist .carousel {
		padding: 21.34vw 0 32vw
	}
}

.l-aboutArtist .about {
	overflow: hidden;
	position: relative
}

@media screen and (min-width: 768px) {
	.l-aboutArtist .about {
		padding: 110px 0 150px
	}
}

@media screen and (max-width: 767px) {
	.l-aboutArtist .about {
		padding: 29.34vw 0
	}
}

.l-aboutArtist .about .name-box {
	font-weight: 100
}

@media screen and (min-width: 768px) {
	.l-aboutArtist .about .name-box {
		margin-bottom: 20px
	}
}

@media screen and (max-width: 767px) {
	.l-aboutArtist .about .name-box {
		margin-bottom: 8vw
	}
}

.l-aboutArtist .about .name-box span {
	display: inline-block
}

@media screen and (min-width: 768px) {
	.l-aboutArtist .about .name-box .name {
		font-size: 30px
	}
}

@media screen and (max-width: 767px) {
	.l-aboutArtist .about .name-box .name {
		font-size: 7.47vw
	}
}

.l-aboutArtist .about .snow {
	position: absolute;
	z-index: 0;
	background-image: url(../images/gallery/about_snow.png)
}

@media screen and (min-width: 768px) {
	.l-aboutArtist .about .snow {
		width: 770px;
		height: 763px
	}
}

@media screen and (max-width: 767px) {
	.l-aboutArtist .about .snow {
		width: 93.34vw;
		height: 93.34vw
	}
}

@media screen and (min-width: 768px) {
	.l-aboutArtist .about .snow-l {
		top: -390px;
		left: -450px
	}
}

@media screen and (max-width: 767px) {
	.l-aboutArtist .about .snow-l {
		top: -34.66vw;
		left: -58.66vw
	}
}

@media screen and (min-width: 768px) {
	.l-aboutArtist .about .snow-r {
		right: -300px;
		bottom: -450px
	}
}

@media screen and (max-width: 767px) {
	.l-aboutArtist .about .snow-r {
		bottom: -48vw;
		right: -53.33vw
	}
}

@media screen and (min-width: 768px) {
	.l-aboutArtist .carousel .gallery-container {
		padding: 30px 0
	}
}

@media screen and (min-width: 768px) {
	.l-aboutArtist .carousel .swiper-slide-active .item .thumb {
		transform: scale(1.06)
	}

	.l-aboutArtist .carousel .swiper-slide-active .item .thumb .thumb__main {
		transform: scale(0.86)
	}
}

.l-aboutArtist .carousel .swiper-slide-active .title {
	transition: all 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
	transition-delay: 0.5s;
	opacity: 1
}

@media screen and (max-width: 767px) {
	.l-aboutArtist .carousel .item {
		padding: 0 5.34vw
	}
}

.l-aboutArtist .carousel .thumb {
	position: relative;
	width: 100%;
	background-color: #fff;
	transform-origin: center;
	transition: all 0.5s cubic-bezier(0.165, 0.84, 0.44, 1)
}

@media screen and (min-width: 768px) {
	.l-aboutArtist .carousel .thumb {
		overflow: hidden
	}
}

.l-aboutArtist .carousel .thumb:after {
	content: "";
	display: block;
	padding-top: 120%
}

.l-aboutArtist .carousel .thumb span {
	transform: scale(0.93);
	transition: all 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
	transform-origin: center
}

.l-aboutArtist .carousel .title {
	text-align: center;
	color: #fff;
	opacity: 0;
	transition: all 0.2s cubic-bezier(0.25, 0.25, 0.75, 0.75)
}

@media screen and (min-width: 768px) {
	.l-aboutArtist .carousel .title {
		margin-top: 40px
	}
}

@media screen and (max-width: 767px) {
	.l-aboutArtist .carousel .title {
		margin-top: 16vw
	}
}

@media screen and (max-width: 767px) {
	.l-aboutArtist .carousel .swp-btn {
		display: flex;
		justify-content: space-between;
		padding: 0 3.2vw;
		margin-top: -10.66vw
	}
}

.l-aboutArtist .carousel .swiper-button-prev {
	left: 0
}

@media screen and (min-width: 768px) {
	.l-aboutArtist .carousel .swiper-button-prev {
		right: 45.33vw;
		top: 0;
		bottom: 0;
		margin: auto
	}
}

@media screen and (max-width: 767px) {
	.l-aboutArtist .carousel .swiper-button-prev {
		position: relative;
		right: 0
	}
}

.l-aboutArtist .carousel .swiper-button-next {
	right: 0
}

@media screen and (min-width: 768px) {
	.l-aboutArtist .carousel .swiper-button-next {
		right: 0;
		left: 45.33vw;
		top: 0;
		bottom: 0;
		margin: auto
	}
}

@media screen and (max-width: 767px) {
	.l-aboutArtist .carousel .swiper-button-next {
		position: relative;
		left: 0
	}
}

.l-productKv {
	width: 100%;
	height: 100vh;
	position: relative
}

.l-productKv .titleWrap {
	opacity: 0
}

.l-productKv .titleWrap.is-inview {
	transition: all 1s cubic-bezier(0.25, 0.25, 0.75, 0.75);
	transition-delay: 0.5s;
	opacity: 1
}

.l-productKv .thumb {
	width: 100%;
	height: 100vh;
	top: -2vh;
	position: relative
}

.l-productKv .titleWrap {
	position: absolute;
	z-index: 11
}

@media screen and (min-width: 768px) {
	.l-productKv .titleWrap {
		left: 18.23vh;
		top: 22%
	}
}

@media screen and (max-width: 767px) {
	.l-productKv .titleWrap {
		left: 20px;
		top: 18%
	}
}

@media screen and (min-width: 768px) {
	.l-productKv .titleWrap .title {
		margin-left: 10px
	}
}

@media screen and (max-width: 767px) {
	.l-productKv .titleWrap .title {
		width: 8.54vw;
		margin-left: 2.67vw;
		line-height: 1
	}
}

.l-productKv .titleWrap .title img {
	display: block
}

.l-productKv .titleWrap .sub {
	letter-spacing: 0.3em;
	font-weight: 100
}

@media screen and (max-width: 767px) {
	.l-productKv .titleWrap .sub {
		font-size: 3.74vw;
		line-height: 1.2
	}
}

.l-productKv .productKv-container .productKv-containerInner {
	position: relative;
	height: 100%
}

.l-productKv .productKv-container .productKv-containerInner .productKv-item {
	opacity: 0;
	transform-origin: center;
	-webkit-transform: scale(1.03);
	-moz-transform: scale(1.03);
	transform: scale(1.03)
}

.l-productKv .productKv-container .productKv-containerInner .productKv-item.is-active {
	transition: all 3s cubic-bezier(0.165, 0.84, 0.44, 1);
	-webkit-transform: scale(1);
	-moz-transform: scale(1);
	transform: scale(1);
	opacity: 1;
	position: absolute;
	z-index: 10
}

.l-productKv .productKv-container .productKv-containerInner .productKv-item.is-solo {
	opacity: 1;
	webkit-transform: scale(1);
	-moz-transform: scale(1);
	transform: scale(1)
}

.l-productKv .frame-bottom {
	width: 100%;
	position: absolute;
	bottom: -1px;
	z-index: 10;
	background-image: url(../images/home/mv_snow_bottom.png)
}

@media screen and (min-width: 768px) {
	.l-productKv .frame-bottom {
		height: 275px
	}
}

@media screen and (max-width: 767px) {
	.l-productKv .frame-bottom {
		height: 15.47vw
	}
}

.l-infomation {
	width: 100%;
	position: relative;
	overflow: hidden;
	background-color: #fff
}

@media screen and (max-width: 767px) {
	.l-infomation {
		padding: 10.67vw 0 18.67vw
	}
}

@media screen and (min-width: 768px) {
	.l-infomation .inner {
		display: flex;
		align-items: flex-end;
		margin: 50px 0 160px
	}
}

@media screen and (max-width: 767px) {
	.l-infomation .inner {
		display: block;
		margin: 0 6.94vw 21.34vw
	}
}

.l-infomation .inner .thumb {
	position: relative
}

.l-infomation .inner .thumb::before {
	content: "";
	padding-top: 71%;
	display: block
}

@media screen and (min-width: 768px) {
	.l-infomation .inner .thumb {
		min-width: 196px
	}
}

@media screen and (max-width: 767px) {
	.l-infomation .inner .thumb {
		width: 52.27vw;
		margin: auto
	}
}

.l-infomation .inner .text {
	width: 100%
}

@media screen and (min-width: 768px) {
	.l-infomation .inner .text {
		padding-left: 78px
	}
}

@media screen and (min-width: 768px) {
	.l-infomation .inner .text .title {
		min-height: 83px
	}
}

@media screen and (max-width: 767px) {
	.l-infomation .inner .text .title {
		margin: 2.67vw 0
	}
}

.l-infomation .inner .text .date {
	border-bottom: 1px solid #dbdbdb
}

@media screen and (min-width: 768px) {
	.l-infomation .inner .text .date {
		font-size: 14px;
		padding-bottom: 30px
	}
}

@media screen and (max-width: 767px) {
	.l-infomation .inner .text .date {
		font-size: 3.74vw;
		padding-bottom: 8vw
	}
}

.l-story {
	width: 100%;
	position: relative;
	overflow: hidden
}

@media screen and (min-width: 768px) {
	.l-story .lead {
		height: 100vh;
		display: flex;
		align-items: center
	}
}

.l-story .lead .thumb {
	position: relative
}

.l-story .lead .thumb span {
	display: block;
	height: 100%
}

@media screen and (min-width: 768px) {
	.l-story .lead .thumb {
		width: 42%;
		height: 100vh
	}

	.l-story .lead .thumb::before {
		display: none
	}
}

@media screen and (max-width: 767px) {
	.l-story .lead .thumb span {
		width: 100%;
		position: absolute;
		top: 0;
		left: 0
	}
}

.l-story .lead .text {
	position: relative;
	background-color: #37737c
}

@media screen and (min-width: 768px) {
	.l-story .lead .text {
		width: 58%;
		height: 100vh
	}
}

@media screen and (max-width: 767px) {
	.l-story .lead .text {
		padding: 14.4vw 12vw 18.67vw
	}
}

.l-story .lead .text-box {
	color: #fff;
	font-family: "NotoSerifJP", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", Meiryo, メイリオ, sans-serif;
	text-align: center
}

@media screen and (min-width: 768px) {
	.l-story .lead .text-box {
		position: absolute;
		width: 85%;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%)
	}
}

@media screen and (min-width: 1024px) {
	.l-story .lead .text-box {
		width: 62%;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%)
	}
}

.l-story .lead .head {
	line-height: 1.5
}

@media screen and (min-width: 768px) {
	.l-story .lead .head {
		font-size: 20px;
		margin-bottom: 30px
	}
}

@media screen and (min-width: 1024px) {
	.l-story .lead .head {
		font-size: 30px;
		margin-bottom: 30px
	}
}

@media screen and (max-width: 767px) {
	.l-story .lead .head {
		font-size: 6.94vw;
		margin-bottom: 8vw
	}
}

@media screen and (min-width: 1024px) {
	.l-story .lead .body {
		font-size: 18px
	}
}

@media screen and (min-width: 768px) {
	.l-story .lead .body p {
		margin-bottom: 15px
	}
}

@media screen and (max-width: 767px) {
	.l-story .lead .body p {
		margin-bottom: 6.94vw
	}
}

.l-story .about {
	background-color: #fff;
	overflow: hidden;
	position: relative
}

.l-story .about .about-box {
	position: relative;
	z-index: 1
}

.l-story .about .main {
	display: flex
}

@media screen and (min-width: 768px) {
	.l-story .about .main {
		padding: 160px 0 130px
	}
}

@media screen and (max-width: 767px) {
	.l-story .about .main {
		flex-direction: column;
		padding: 16vw 6.94vw 8vw
	}
}

@media screen and (min-width: 768px) {
	.l-story .about .main .text {
		width: 55%;
		padding-right: 40px
	}
}

@media screen and (min-width: 1024px) {
	.l-story .about .main .text {
		width: 55%;
		padding-right: 80px
	}
}

@media screen and (max-width: 767px) {
	.l-story .about .main .text {
		order: 1
	}
}

.l-story .about .main .head {
	font-family: "NotoSerifJP", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", Meiryo, メイリオ, sans-serif
}

@media screen and (min-width: 768px) {
	.l-story .about .main .head {
		font-size: 20px;
		margin-bottom: 25px
	}
}

@media screen and (min-width: 1024px) {
	.l-story .about .main .head {
		font-size: 30px;
		margin-bottom: 25px
	}
}

@media screen and (max-width: 767px) {
	.l-story .about .main .head {
		font-size: 4.54vw;
		margin: 4.8vw 0
	}
}

.l-story .about .main .body {
	font-weight: 100
}

@media screen and (min-width: 768px) {
	.l-story .about .main .body {
		font-size: 14px
	}
}

@media screen and (min-width: 1024px) {
	.l-story .about .main .body {
		font-size: 16px
	}
}

@media screen and (max-width: 767px) {
	.l-story .about .main .body {
		font-size: 3.74vw
	}
}

.l-story .about .main .thumb {
	position: relative
}

@media screen and (min-width: 768px) {
	.l-story .about .main .thumb {
		width: 45%
	}
}

@media screen and (max-width: 767px) {
	.l-story .about .main .thumb {
		order: 0
	}
}

.l-story .about .gallery {
	position: relative;
	overflow: hidden;
	z-index: 1
}

@media screen and (min-width: 768px) {
	.l-story .about .gallery {
		padding: 10vw 0 5vw;
		/* 50px 0 150px */
		/* kato */
	}
}

@media screen and (max-width: 767px) {
	.l-story .about .gallery {
		padding: 2.67vw 0 10.67vw
	}
}


.l-story .about .gallery .carousel-auto {
	display: flex
}

.l-story .about .gallery .story-container {
	width: 100%;
	display: flex;
	align-items: center
}

.l-story .about .gallery .story-container .item {
	position: relative;
	text-align: center
}

@media screen and (min-width: 768px) {
	.l-story .about .gallery .story-container .item {
		padding: 0 20px
	}

	.l-story .about {
		height: 78vw;
	}

	.l-story .about .gallery {
		padding: 0 !important;
	}
}

@media screen and (max-width: 767px) {
	.l-story .about .gallery .story-container .item {
		padding: 0 1.34vw
	}

	.story-container .item {
		height: 20vw !important;
		width: 41vw !important;
	}
}

.carousel-auto {
	height: 100px;
	height: 20vw;
}

.story-container .item {
	height: 20vw;
	width: 21vw;
}

.story-container .item img {
	display: block;
}

/* kato 
@keyframes loop {
	0% {
		transform: translateX(200%)
	}
	to {
		transform: translateX(-100%)
	}
}

@keyframes loop2 {
	0% {
		transform: translateX(100%)
	}
	to {
		transform: translateX(-200%)
	}
}

@keyframes loop3 {
	0% {
		transform: translateX(0%)
	}
	to {
		transform: translateX(-300%)
	}
}

.l-story .about .gallery .story-container:first-child {
	animation: loop 180s linear infinite;
}

.l-story .about .gallery .story-container:nth-child(2) {
	animation: loop2 180s -120s linear infinite;
}
.l-story .about .gallery .story-container:last-child {
	animation: loop3  180s -120s linear infinite; 
}
 */

@-webkit-keyframes loop {
	0% {
		-webkit-transform: translateX(100%);
		-ms-transform: translateX(100%);
		transform: translateX(100%);
	}

	to {
		-webkit-transform: translateX(-100%);
		-ms-transform: translateX(-100%);
		transform: translateX(-100%);
	}
}

@keyframes loop {
	0% {
		-webkit-transform: translateX(100%);
		-ms-transform: translateX(100%);
		transform: translateX(100%);
	}

	to {
		-webkit-transform: translateX(-100%);
		-ms-transform: translateX(-100%);
		transform: translateX(-100%);
	}
}

@-webkit-keyframes loop2 {
	0% {
		-webkit-transform: translateX(100%);
		-ms-transform: translateX(100%);
		transform: translateX(100%);
	}

	to {
		-webkit-transform: translateX(-100%);
		-ms-transform: translateX(-100%);
		transform: translateX(-100%);
	}
}

@keyframes loop2 {
	0% {
		-webkit-transform: translateX(0);
		-ms-transform: translateX(0);
		transform: translateX(0);
	}

	to {
		-webkit-transform: translateX(-200%);
		-ms-transform: translateX(-200%);
		transform: translateX(-200%);
	}
}

.l-story .about .gallery .story-container.loop1 {
	-webkit-animation: loop 50s -25s linear infinite;
	animation: loop 50s -25s linear infinite;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	will-change: transform;
}

.l-story .about .gallery .story-container.loop2 {
	-webkit-animation: loop2 50s linear infinite;
	animation: loop2 50s linear infinite;
}
}

.l-story .about .snow-item {
	position: absolute;
	z-index: 0
}

.l-story .about .snow-type01 {
	background-image: url(../images/product/product_snow01.png)
}

@media screen and (min-width: 768px) {
	.l-story .about .snow-type01 {
		width: 647px;
		height: 642px
	}
}

@media screen and (max-width: 767px) {
	.l-story .about .snow-type01 {
		width: 133.34vw;
		height: 133.34vw
	}

	.l-story .about {
		height: 210vw;
	}

	.carousel-auto {
		height: 50vw;

	}

	.story-container .item {
		height: 25.5vw !important;
		width: 36vw !important;
		display: flex;
		margin: 0 1vw;
	}

	.story-container .item img {
		display: block;
		width: 34vw !important;
		max-width: 34vw;
		height: auto;
		text-align: center;
	}

	.l-story .about .gallery .story-container {
		width: initial;
	}

	.l-story .about .gallery .carousel-auto {
		display: inline-flex;
	}
}




@media screen and (min-width: 768px) {
	.l-story .about .snow01 {
		top: -200px;
		left: -300px
	}
}

@media screen and (max-width: 767px) {
	.l-story .about .snow01 {
		top: -37.33vw;
		left: -74.66vw
	}
}

@media screen and (min-width: 768px) {
	.l-story .about .snow02 {
		top: 0;
		bottom: 0;
		right: -400px;
		margin: auto
	}
}

@media screen and (max-width: 767px) {
	.l-story .about .snow02 {
		bottom: -45.33vw;
		right: -85.33vw
	}
}

.l-feature {
	width: 100%;
	position: relative;
	overflow: hidden;
	background-color: #193850
}

@media screen and (max-width: 767px) {
	.l-feature {
		padding: 10.67vw 0 18.67vw
	}
}

@media screen and (min-width: 768px) {
	.l-feature.is-inview .feature-box {
		opacity: 1
	}
}

.l-feature .feature-box {
	position: relative
}

@media screen and (min-width: 768px) {
	.l-feature .feature-box {
		transition: all 0.3s cubic-bezier(0, 0, 0.58, 1);
		opacity: 0
	}
}

.l-feature .head {
	color: #fff
}

@media screen and (min-width: 768px) {
	.l-feature .head {
		font-size: 18px;
		padding: 0 170px;
		margin-top: 6.58vw;
		position: absolute
	}
}

@media screen and (max-width: 767px) {
	.l-feature .head {
		font-size: 4.8vw;
		text-align: center
	}
}

.l-feature .feature-container {
	position: relative
}

@media screen and (max-width: 767px) {
	.l-feature .feature-container {
		padding-top: 8vw
	}
}

.l-feature .guide-list {
	width: 100%;
	top: 0;
	left: 0;
	z-index: 0
}

@media screen and (min-width: 768px) {
	.l-feature .guide-list {
		position: relative
	}
}

@media screen and (max-width: 1023px) {
	.l-feature .guide-list {
		display: none
	}
}

@media screen and (max-width: 767px) {
	.l-feature .guide-list {
		display: none
	}
}

.l-feature .guide-list .guide-pos {
	width: 100%;
	height: 100vh;
	display: block;
	margin-bottom: 20vh
}

.l-feature .guide-list .guide-pos:nth-child(1) {
	padding-top: 200vh;
	padding-bottom: 20vh
}



.l-productList {
	width: 100%;
	position: relative;
	overflow: hidden
}

@media screen and (min-width: 768px) {
	.l-productList {
		padding: 150px 0 30px
	}
}

.l-productList .productsList-box {
	position: relative;
	z-index: 1
}

.l-productList .head {
	font-weight: 100;
	text-align: center;
	line-height: 1
}

@media screen and (min-width: 768px) {
	.l-productList .head {
		font-size: 120px
	}
}

@media screen and (max-width: 767px) {
	.l-productList .head {
		font-size: 14.94vw
	}
}

@media screen and (min-width: 768px) {
	.l-productList .list {
		display: flex;
		flex-wrap: wrap;
		margin-top: 120px
	}
}

@media screen and (max-width: 767px) {
	.l-productList .list {
		margin-top: 13.34vw
	}
}

@media screen and (min-width: 768px) {
	.l-productList .bottom {
		width: 560px;
		margin: 40px auto 130px
	}
}

@media screen and (max-width: 767px) {
	.l-productList .bottom {
		width: 73.87vw;
		margin: 16vw auto
	}
}

.l-productList .bottom .bottomItem {
	border-bottom: 1px solid #ebeef2
}

@media screen and (min-width: 768px) {
	.l-productList .bottom .bottomItem {
		margin-bottom: 20px;
		padding-bottom: 25px
	}
}

@media screen and (max-width: 767px) {
	.l-productList .bottom .bottomItem {
		margin-bottom: 5.34vw;
		padding-bottom: 5.34vw
	}
}

@media screen and (max-width: 767px) {
	.l-productList .bottom .info-head {
		margin-bottom: 1.34vw
	}
}

.l-productList .bottom .info-body {
	line-height: 1.8
}

@media screen and (min-width: 768px) {
	.l-productList .bottom .info-body {
		font-size: 14px
	}
}

.l-productList .snow-item {
	position: absolute;
	z-index: 0
}

.l-productList .snow01 {
	left: 0px;
	background-image: url(../images/product/product_snow02.png)
}

@media screen and (min-width: 768px) {
	.l-productList .snow01 {
		width: 242px;
		height: 695px;
		top: -200px
	}
}

@media screen and (max-width: 767px) {
	.l-productList .snow01 {
		width: 32.27vw;
		height: 85.34vw;
		top: -30.66vw
	}
}

.l-productList .snow02 {
	background-image: url(../images/product/product_snow01.png)
}

@media screen and (min-width: 768px) {
	.l-productList .snow02 {
		width: 647px;
		height: 642px;
		top: -370px;
		right: -330px
	}
}

@media screen and (max-width: 767px) {
	.l-productList .snow02 {
		width: 72vw;
		height: 72vw;
		top: -42.66vw;
		right: -37.33vw
	}
}

.l-post {
	width: 100%;
	position: relative;
	overflow: hidden
}

@media screen and (min-width: 768px) {
	.l-post {
		padding: 100px 0 130px
	}
}

@media screen and (max-width: 767px) {
	.l-post {
		padding: 30.4vw 0 32vw
	}
}

.l-post .headBox {
	margin: auto
}

@media screen and (min-width: 768px) {
	.l-post .headBox {
		width: 560px
	}
}

@media screen and (max-width: 767px) {
	.l-post .headBox {
		padding: 0 12.8vw
	}
}

@media screen and (min-width: 768px) {
	.l-post .headBox .head {
		font-size: 38px;
		margin-bottom: 10px
	}
}

@media screen and (max-width: 767px) {
	.l-post .headBox .head {
		font-size: 8vw;
		margin-bottom: 1.34vw
	}
}

@media screen and (min-width: 768px) {
	.l-post .headBox .sub {
		margin-bottom: 30px
	}
}

@media screen and (max-width: 767px) {
	.l-post .headBox .sub {
		margin-bottom: 4vw
	}
}

.l-post .thumb-common {
	position: relative
}

.l-post .thumb {
	margin: auto
}

@media screen and (min-width: 768px) {
	.l-post .thumb {
		max-width: 780px;
		margin-bottom: 70px
	}
}

@media screen and (max-width: 767px) {
	.l-post .thumb {
		margin-bottom: 8vw
	}
}

@media screen and (min-width: 768px) {
	.l-post .head-sub {
		font-size: 30px;
		margin-bottom: 40px
	}
}

@media screen and (max-width: 767px) {
	.l-post .head-sub {
		font-size: 5.87vw;
		margin-bottom: 5.34vw
	}
}

.l-post .btn {
	margin: auto
}

@media screen and (min-width: 768px) {
	.l-post .btn {
		width: 220px;
		margin-top: 80px;
	}
}

/*少なくとも、STORIES記事の「一覧を見る」ボタン*/
@media screen and (max-width: 767px) {
	.l-post .btn {
		width: 58.67vw;
		margin-top: 21.34vw;
		display: grid;
		justify-content: center;
	}
}

.l-post .btn .text-items {
	position: relative;
	overflow: hidden
}

.l-post .btn .text-items span {
	padding-left: 0
}

@media screen and (min-width: 768px) {
	.l-post .block {
		margin-bottom: 70px
	}
}

@media screen and (max-width: 767px) {
	.l-post .block {
		margin-bottom: 9.34vw
	}
}

.l-privacy {
	width: 100%;
	position: relative;
	overflow: hidden
}

@media screen and (min-width: 768px) {
	.l-privacy {
		padding: 140px 0 150px
	}
}

@media screen and (max-width: 767px) {
	.l-privacy {
		padding: 32vw 0
	}
}

.l-privacy .head {
	font-weight: 100;
	line-height: 1;
	left: 50%;
	transform: translateX(-50%)
}

@media screen and (min-width: 768px) {
	.l-privacy .head {
		font-size: 91px
	}
}

@media screen and (max-width: 767px) {
	.l-privacy .head {
		font-size: 9.34vw
	}
}

@media screen and (min-width: 768px) {
	.l-privacy .description {
		margin-top: 110px
	}
}

@media screen and (max-width: 767px) {
	.l-privacy .description {
		margin-top: 16vw
	}
}

@media screen and (min-width: 768px) {
	.l-privacy .body {
		margin-top: 60px
	}
}

@media screen and (max-width: 767px) {
	.l-privacy .body {
		margin-top: 9.34vw
	}
}

@media screen and (min-width: 768px) {
	.l-privacy .title {
		font-size: 20px;
		margin-bottom: 18px
	}
}

@media screen and (max-width: 767px) {
	.l-privacy .title {
		font-size: 5.34vw;
		margin-bottom: 4.8vw
	}
}

@media screen and (min-width: 768px) {
	.l-privacy .text {
		margin-bottom: 60px
	}
}

@media screen and (max-width: 767px) {
	.l-privacy .text {
		margin-bottom: 10.67vw
	}
}

@media screen and (min-width: 768px) {
	.l-inputContainer form dl {
		margin-bottom: 60px
	}
}

@media screen and (max-width: 767px) {
	.l-inputContainer form dl {
		margin-bottom: 16vw
	}
}

@media screen and (min-width: 768px) {
	.l-inputContainer form dl dt {
		margin-bottom: 20px
	}
}

@media screen and (max-width: 767px) {
	.l-inputContainer form dl dt {
		margin-bottom: 5.34vw
	}
}

.l-inputContainer form dl dt .item {
	position: relative;
	display: inline-block;
	line-height: 1
}

@media screen and (min-width: 768px) {
	.l-inputContainer form dl dt .item {
		font-size: 20px
	}
}

@media screen and (max-width: 767px) {
	.l-inputContainer form dl dt .item {
		font-size: 4.8vw
	}
}

@media screen and (min-width: 768px) {
	.l-inputContainer form dl dt .req {
		padding-right: 18px
	}
}

@media screen and (max-width: 767px) {
	.l-inputContainer form dl dt .req {
		padding-right: 4.8vw
	}
}

.l-inputContainer form dl dt .req::before {
	content: "";
	position: absolute;
	right: 0;
	bottom: 3px;
	background-image: url(../images/common/icon_snow.svg)
}

@media screen and (min-width: 768px) {
	.l-inputContainer form dl dt .req::before {
		width: 10px;
		height: 11px
	}
}

@media screen and (max-width: 767px) {
	.l-inputContainer form dl dt .req::before {
		width: 2.67vw;
		height: 2.94vw
	}
}

.l-inputContainer form dl dd {
	position: relative
}

@media screen and (min-width: 768px) {
	.l-inputContainer form dl dd {
		margin-bottom: 40px
	}
}

@media screen and (max-width: 767px) {
	.l-inputContainer form dl dd {
		margin-bottom: 12vw
	}
}

.l-inputContainer form dl dd .error {
	color: red;
	position: absolute;
	left: 0;
	line-height: 1.2
}

@media screen and (min-width: 768px) {
	.l-inputContainer form dl dd .error {
		bottom: -22px;
		font-size: 14px
	}
}

@media screen and (max-width: 767px) {
	.l-inputContainer form dl dd .error {
		font-size: 3.47vw;
		bottom: -10.13vw
	}
}

.l-inputContainer form dl .sel {
	position: relative
}

.l-inputContainer form dl .sel::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	background-image: url(../images/common/icon_arrow_select.svg);
}

@media screen and (min-width: 768px) {
	.l-inputContainer form dl .sel::before {
		width: 13px;
		height: 10px;
		right: 25px
	}
}

@media screen and (max-width: 767px) {
	.l-inputContainer form dl .sel::before {
		width: 3.47vw;
		height: 2.67vw;
		right: 5.34vw
	}
}

.l-inputContainer form input,
.l-inputContainer form textarea,
.l-inputContainer form select {
	width: 100%;
	background-color: #ebeef2;
	border: 1px solid #c6c6c6
}

@media screen and (min-width: 768px) {

	.l-inputContainer form input,
	.l-inputContainer form textarea,
	.l-inputContainer form select {
		padding: 20px 23px
	}
}

@media screen and (max-width: 767px) {

	.l-inputContainer form input,
	.l-inputContainer form textarea,
	.l-inputContainer form select {
		padding: 5.34vw 4.27vw
	}
}

.l-inputContainer .btn {
	color: #3b88d2
}

@media screen and (min-width: 768px) {

	.l-confirmContainer #confirm dl,
	.l-confirmContainer form dl {
		margin-bottom: 60px
	}
}

@media screen and (max-width: 767px) {

	.l-confirmContainer #confirm dl,
	.l-confirmContainer form dl {
		margin-bottom: 16vw
	}
}

@media screen and (min-width: 768px) {

	.l-confirmContainer #confirm dl dt,
	.l-confirmContainer form dl dt {
		font-size: 20px;
		margin-bottom: 20px;
		padding-top: 35px
	}
}

@media screen and (max-width: 767px) {

	.l-confirmContainer #confirm dl dt,
	.l-confirmContainer form dl dt {
		font-size: 5.34vw;
		margin-bottom: 5.34vw;
		padding-top: 9.34vw
	}
}

.l-confirmContainer #confirm dl dd,
.l-confirmContainer form dl dd {
	border-bottom: 1px solid #dbdbdb
}

@media screen and (min-width: 768px) {

	.l-confirmContainer #confirm dl dd,
	.l-confirmContainer form dl dd {
		padding-bottom: 30px
	}
}

@media screen and (max-width: 767px) {

	.l-confirmContainer #confirm dl dd,
	.l-confirmContainer form dl dd {
		padding-bottom: 8vw
	}
}

@media screen and (max-width: 767px) {
	.l-inputContainer .btnWrap {
		flex-flow: column
	}
}

@media screen and (max-width: 767px) {
	.l-inputContainer .btnWrap .btn-back {
		order: 1
	}
}

@media screen and (max-width: 767px) {
	.l-inputContainer .btnWrap .btn-submit {
		order: 0;
		margin-bottom: 6.67vw
	}
}

.l-inputContainer .btnWrap .btn-submit {
	order: 1;
}

.l-inputContainer .btnWrap .btn-back {
	order: 0;
}

.l-inputContainer .btnWrap {
	width: 100%;
	display: flex
}


.l-thanksContainer {
	min-height: 100vh
}

@media screen and (min-width: 768px) {
	.l-thanksContainer .thanks-box {
		padding: 91px 0 56px
	}
}

@media screen and (max-width: 767px) {
	.l-thanksContainer .thanks-box {
		padding: 9.6vw 0 17.34vw
	}
}

.l-thanksContainer .thanks-icons {
	display: flex;
	width: 100%;
	align-items: flex-end;
	justify-content: space-between
}

@media screen and (min-width: 768px) {
	.l-thanksContainer .thanks-icons {
		padding: 0 95px;
		margin-bottom: 40px
	}
}

@media screen and (max-width: 767px) {
	.l-thanksContainer .thanks-icons {
		margin-bottom: 10.67vw
	}
}

.l-thanksContainer .thanks-icons .icon-item {
	animation-iteration-count: infinite;
	animation-name: floating02;
	animation-duration: 4s
}

.l-thanksContainer .thanks-icons .icon-item:nth-child(1) {
	animation-delay: 0.4s;
	background-image: url(../images/common/icon_item09.png)
}

@media screen and (min-width: 768px) {
	.l-thanksContainer .thanks-icons .icon-item:nth-child(1) {
		width: 45px;
		height: 32px
	}
}

@media screen and (max-width: 767px) {
	.l-thanksContainer .thanks-icons .icon-item:nth-child(1) {
		width: 8.81vw;
		height: 6.14vw
	}
}

.l-thanksContainer .thanks-icons .icon-item:nth-child(2) {
	animation-delay: 0.8s;
	background-image: url(../images/common/icon_item02.png)
}

@media screen and (min-width: 768px) {
	.l-thanksContainer .thanks-icons .icon-item:nth-child(2) {
		width: 38px;
		height: 33px
	}
}

@media screen and (max-width: 767px) {
	.l-thanksContainer .thanks-icons .icon-item:nth-child(2) {
		width: 7.47vw;
		height: 6.14vw
	}
}

.l-thanksContainer .thanks-icons .icon-item:nth-child(3) {
	animation-delay: 1.2s;
	background-image: url(../images/common/icon_item07.png)
}

@media screen and (min-width: 768px) {
	.l-thanksContainer .thanks-icons .icon-item:nth-child(3) {
		width: 32px;
		height: 95px
	}
}

@media screen and (max-width: 767px) {
	.l-thanksContainer .thanks-icons .icon-item:nth-child(3) {
		width: 6.14vw;
		height: 18.4vw
	}
}

.l-thanksContainer .thanks-icons .icon-item:nth-child(4) {
	animation-delay: 1.6s;
	background-image: url(../images/common/icon_item04.png)
}

@media screen and (min-width: 768px) {
	.l-thanksContainer .thanks-icons .icon-item:nth-child(4) {
		width: 29px;
		height: 24px
	}
}

@media screen and (max-width: 767px) {
	.l-thanksContainer .thanks-icons .icon-item:nth-child(4) {
		width: 5.6vw;
		height: 4.54vw
	}
}

.l-thanksContainer .thanks-icons .icon-item:nth-child(5) {
	animation-delay: 2s;
	background-image: url(../images/common/icon_item01.png)
}

@media screen and (min-width: 768px) {
	.l-thanksContainer .thanks-icons .icon-item:nth-child(5) {
		width: 43px;
		height: 32px
	}
}

@media screen and (max-width: 767px) {
	.l-thanksContainer .thanks-icons .icon-item:nth-child(5) {
		width: 8.27vw;
		height: 5.87vw
	}
}

.l-thanksContainer .thanks-text {
	text-align: center
}

@media screen and (min-width: 768px) {
	.l-faq {
		padding: 205px 0 165px
	}
}

@media screen and (max-width: 767px) {
	.l-faq {
		padding: 25.07vw 0 26.14vw
	}
}

.l-faq .head {
	line-height: 1
}

@media screen and (min-width: 768px) {
	.l-faq .head {
		padding: 20px 20px 20px 0
	}
}

@media screen and (max-width: 767px) {
	.l-faq .head {
		transform: translateX(-50%);
		left: 50%;
		padding: 5.34vw 5.34vw 5.34vw 0
	}
}

.l-faq .head .head__main {
	display: block;
	font-weight: 400;
	position: relative;
	z-index: 1
}

@media screen and (min-width: 768px) {
	.l-faq .head .head__main {
		font-size: 110px;
		text-align: left
	}
}

@media screen and (max-width: 767px) {
	.l-faq .head .head__main {
		font-size: 13.34vw
	}
}

@media screen and (min-width: 768px) {
	.l-faq .listBlock {
		margin-top: 60px;
		margin-bottom: 120px
	}
}

@media screen and (max-width: 767px) {
	.l-faq .listBlock {
		margin-top: 10.67vw;
		margin-bottom: 21.34vw
	}
}

@media screen and (min-width: 768px) {
	.l-faq .listBlock .list-head {
		font-size: 30px
	}
}

@media screen and (max-width: 767px) {
	.l-faq .listBlock .list-head {
		font-size: 7.47vw
	}
}

@media screen and (min-width: 768px) {
	.l-faq .list {
		margin-top: 60px
	}
}

@media screen and (max-width: 767px) {
	.l-faq .list {
		margin-top: 10.67vw
	}
}

.l-faq .list .item {
	margin-bottom: 0;
	border-top: 1px solid #e9e9e9
}

.l-faq .list .detail::before {
	content: none
}

.l-faq .list .detail .info {
	margin-top: 0
}

@media screen and (min-width: 768px) {
	.l-faq .list .detail .info {
		font-size: 16px;
		padding-right: 180px
	}
}

@media screen and (max-width: 767px) {
	.l-faq .list .detail .info {
		font-size: 4.27vw;
		padding-right: 12.8vw
	}
}

.l-faq .list .detail .detail-inner {
	padding-top: 0;
	padding-left: 0;
	padding-right: 0
}

.l-faq .faq-trigger {
	padding-left: 0;
	padding-right: 0
}

.youtube_outer iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important;
}

.youtube_outer {
	width: 100%;
	padding-top: 60%;
	position: relative;
	top: 0;
	left: 0;
}

.mw_wp_form_confirm .mw_wp_form_input_none {
	display: none;
}

.mw_wp_form_preview * .sel::before {
	background-image: inherit !important;
}

.mwform-file-delete {
	font-size: 80%;
	color: gray;
	visibility: visible;
	display: none !important;
	/* kato 1026_035 */
}

.mw-wp-form_image {
	margin-top: 1em;
	max-width: 100%;
}

/* 見出し：期間 */
.schedule {
	padding: 0 1em 0 0;
	margin: 0;
	font-weight: normal;
	font-size: 0.9em;
}

@media screen and (max-width: 767px) {
	.schedule {
		padding: 0 0.5em 0 0;
		font-weight: bolder;
	}
}

@media screen and (max-width: 767px) {
	.period {
		letter-spacing: -0.01em !important;
		font-size: 0.85em;
	}

	.l-inputContainer .btn {
		display: block ruby;
		text-align: center;
		margin: auto;
	}

	.l-inputContainer .btn button,
	.btn-submit button,
	.btn-back button,
	.c-btn--blue {
		margin: auto;
	}

	.btn-back button {
		margin-top: 40px;
		;
	}
}

.mw_wp_form_input * .mw-wp-form_image {
	display: none;
}

/* 開催期間はPC上だと改行しない。SP版だと改行OKとする */
.period br {
	display: none;
}

@media screen and (max-width: 767px) {
	.period br {
		display: inherit;
	}
}

.schedule::after {
	content: '\A';
	white-space: pre;
}

.schedule::before {
	content: '\A';
	white-space: pre;
}

/*LINEお友だち追加ポップアップ*/

@media screen and (min-width: 768px) {
	.line-btn--green {
		width: 240px;
	}
}

.line-btn--green {
	background-color: #06C755;
	border: 2px solid #06C755;
}

@media screen and (min-width: 768px) {
	.line-btn--green {
		padding: 22px 0;
		font-size: 18px;
	}
}

.line-btn--green a {
	text-decoration: none;
	color: #ffffff;
}

.is-hover:hover .is-hoverBtnline {
	background-color: #fff
}

.is-hover:hover .is-hoverBtnline span {
	color: #06C755
}


input[type="file"] {
	padding-bottom: 20px !important;
	float: left !important;
	/*	width: 90%!important; */
	/* kato 1026_035 */
	width: 100% !important;
	/* kato 1026_035 */
}

.mwform-file-delete {
	float: left !important;
	/* width: 5%!important;*/
	/* kato 1026_035 */
}

.file1_,
.file2_,
.file3_ {
	display: flex;
	margin-bottom: 40px;
}

.mwform-file-delete {
	font-size: 32px;
	margin: 10px 10px;
}

@media screen and (min-width: 768px) and (max-width: 1051px) {
	.l-story .about {
		height: 95vw;
	}
}

/* STORE＞新千歳空港ラベル */
.store_tag {
	display: inline-flex;
}

.store_airport {
	font-size: 13px !important;
	background-color: #3b88d2;
	color: #fff !important;
	padding: 3px;
	border-radius: 18px;
	width: 100px;
	text-align: center;
	margin: 0 0.5em 1em 0;
}

/* 会期終了ラベル */
.store_airport.salesend {
	background-color: #193850 !important;
}

/* 会期終了背景色 */
.itemBox.salesend {
	background-color: #e1e6e9;
}

/* 商品ページは会期終了ラベルついた店舗はまるごと非表示*/
.salesend-displaynone {
	display: none;
}

/* FAQ＞アレルゲンに関するご案内_PC用 */

.faq_item_container {
	display: inline-flex;
	justify-content: space-between;
	width: auto;
	padding: 2em 0 0 0;
}

.faq_item_container-item {
	padding: 0;
	margin: 0 auto;
	text-align: center;
	align-items: center;
	display: flex;
	flex-flow: column;
	width: 140px;
}

.faq_item_container-item p {
	font-size: 80%;
}

.faq_item_container-item-img img {
	display: block;
	height: 100px;
	width: 100px;
	object-fit: cover;
}

/* FAQ＞アレルゲンに関するご案内_SP用 */

@media screen and (max-width: 768px) {
	.faq_item_container {
		margin-right: 2em;
		flex-wrap: wrap;
		padding: 2em 20vw 0 0;
	}

	.faq_item_container-item {
		width: 50%;
		margin: 0;
		padding: 0 0 1em 0;
	}

	.faq_item_container-item p {
		font-size: 70%;
	}
}

/* FAQの冒頭のテキスト */
.contact_headertext {
	color: #5c6366;
	font-size: 1rem;
	margin: 5em auto 0 auto;
	width: 600px;
	padding: 1.5em;
	background: rgba(235, 238, 242, 0.5);
	font-weight: bold;
}

.contact_text {
	width: 600px;
	padding: 1.5em;
	margin: 1em auto 0 auto;
	text-align: left !important;
}

.mw_wp_form_input dt {
	margin-top: 25px;
}

.mw_wp_form_input input,
.mw_wp_form_input select,
.mw_wp_form_input textarea {
	border-radius: 0;
	width: 100%;
	background-color: #ebeef2;
	border: 1px solid #c6c6c6;
	padding: 23px 20px;
}


/* FAQの冒頭のテキスト内よくあるお問い合わせ一覧 */
.contact_header_faqlink {
	color: #242728;
	margin: 1em 1em 0 1em;
	padding: 1em;
	border: 1px solid #c6c6c6;
	background-color: #ffffff;
}

.contact_footertext {
	font-size: 0.9em;
	color: #555555;
	margin: 0 auto;
	width: 600px;
	padding-top: 3em;
}

.contact_headertext a,
.contact_header_faqlink a,
.contact_footertext a {
	text-decoration: underline;
}

.contact_footertext_mailaddress {
	color: #242728;
	padding: 2em;
	background: rgba(235, 238, 242, 0.5);
	margin-bottom: 5vw;
	;
}

.req:after {
	content: "必須";
	color: #fff;
	margin-left: 1em;
	padding: 0 1em 0.1em 1em;
	background-color: #3b88d2;
	font-size: 0.8rem;
	border-radius: 20px;
}


.contact_footermidashi {
	text-align: center;
	border-bottom: solid 1px #c6c6c6;
	margin-bottom: 1.5em;
}

@media screen and (max-width: 768px) {
	.contact_headertext {
		font-size: 0.8em;
		margin: 5em 2em 0 2em;
		width: auto;
		padding: 1.5em;
	}

	.contact_footertext {
		font-size: 1em;
		margin: 0em 2em;
		width: auto;
		padding-top: 1em;
	}

	.contact_footertext_mailaddress {
		font-size: 0.8em;
		margin-top: 1em;
	}

	.contact_footermidashi {
		padding-bottom: 1em;
	}

	.confirm_headertext {
		font-size: 0.8em;
		margin-top: 1em;
	}
}


@media screen and (max-width: 767px) {
	.l-story .about_donguriboushi {
		height: 230vw !important;
	}
}

@media screen and (min-width: 768px) {
	.l-story .lead .thumb {
		width: 50%;
	}

	.l-story .lead .text {
		width: 50%;
	}
}


/* 特徴部分 */

.l-feature .feature-list {
	width: 100%;
	top: 0;
	left: 0;
	z-index: 1
}

.feature_item_subtext {
	padding: 5em 1.8em 0 0.8em;
	font-size: 80%;
}

@media screen and (min-width: 768px) {
	.feature_item_subtext {
		font-size: 80%;
		padding: 5em 1.5em 5em 6.3em;
		margin-bottom: 10em;
	}

	.single_feature_title {
		float: left !important;
	}

	.l-feature .feature-list .item:first-child {
		margin-top: 45px !important;
	}

	.l-feature .feature-list .item:last-child {
		margin-bottom: 90px !important;
	}

	.l-feature .feature-list {
		position: absolute
	}

	.l-feature .feature-list .item {
		position: absolute;
		height: 100vh;
		margin-bottom: 0vw !important;
	}

	.l-feature .feature-list .inner {
		position: absolute;
		top: 50%;
		left: 50%;
		-webkit-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%)
	}

	.l-feature .feature-list .thumb .thumb-box {
		opacity: 0;
		transform: rotate(15deg) translateY(70px)
	}

	.l-feature .feature-list .text {
		width: 720px !important;
		/* display: flex!important; */
		padding: 24px 0 0 0 !important;
	}

	.l-feature .feature-list .text .num {
		font-size: 80px !important;
		padding-right: 20px !important;
		opacity: 0;
		transform: translateY(20px) !important;
		;
		margin-top: -0.2em !important;
		white-space: nowrap !important;
		width: 1em !important;
		float: left !important;
		;
	}

	.l-feature .feature-list .text .text-box .title {
		font-size: 30px !important;
		opacity: 0;
		transform: translateY(10px);
		margin: 0 !important;
		text-align: left !important;
		line-height: 1.4 !important;
	}

	.l-feature .feature-list .text .text-box .body {
		opacity: 0;
		transform: translateY(20px) !important;
		margin-left: 5em !important;
		margin-right: 1em !important;

	}

	.l-feature .feature-list .thumb .thumb-sole {
		width: 63.81vh !important;
	}

	.l-feature .feature-list .text .text-box .body {
		font-size: 16px !important;
	}

	.l-feature .feature-list .item.is-on .thumb .thumb-box {
		transform: rotate(-3deg) translateY(0);
	}
}

.l-feature .feature-list .item.is-on .thumb .thumb-box {
	transition: all 0.9s cubic-bezier(0.165, 0.84, 0.44, 1);
	opacity: 1;
}

.l-feature .feature-list {
	position: relative;
	padding: 0 6.14vw
}

.l-feature .feature-list .item {
	position: relative;
	margin-bottom: 16vw
}

.l-feature .feature-list .inner {
	opacity: 1
}

.l-feature .feature-list .text {
	padding: 0 8vw
}

.l-feature .feature-list .text .num {
	font-size: 10.67vw;
	text-align: center;
	margin-top: 2.14vw
}

.l-feature .feature-list .text .text-box .title {
	font-size: 5.87vw;
	text-align: center;
	margin: 3.2vw 0 4.27vw
}

.l-feature .feature-list .text .text-box .body {
	font-size: 3.74vw
}

.l-feature .feature-list .thumb .thumb-sole {
	width: 62.4vw
}

/*@media screen and (max-width: 767px) {} */

@media screen and (max-width: 1023px) {
	.l-feature .feature-list {
		position: relative;
		padding-top: 100px
	}

	.l-feature .feature-list .item {
		position: relative
	}

	.l-feature .feature-list .text .num {
		opacity: 1;
		transform: translateY(0px)
	}

	.l-feature .feature-list .text .text-box .title {
		opacity: 1;
		transform: translateY(0px)
	}

	.l-feature .feature-list .text .text-box .body {
		opacity: 1;
		transform: translateY(0px)
	}

	.l-feature .feature-list .thumb .thumb-box {
		opacity: 1;
		transform: rotate(0deg) translateY(0px)
	}

	.l-feature .feature-list .inner {
		opacity: 1
	}
}

.l-feature .feature-list .item {
	width: 100%;
	top: 0
}


.l-feature .feature-list .item.is-on .text .num {
	transition-delay: 0.2s;
	transition: all 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
	opacity: 1;
	transform: translateY(0)
}

.l-feature .feature-list .item.is-on .text .text-box .title,
.l-feature .feature-list .item.is-on .text .text-box .body {
	transition: all 0.7s cubic-bezier(0.165, 0.84, 0.44, 1);
	opacity: 1;
	transform: translateY(0)
}

.l-feature .feature-list .item.is-on .text .text-box .title {
	transition-delay: 0.2s;
	text-align: left;
}

.l-feature .feature-list .item.is-on .text .text-box .body {
	transition-delay: 0.3s
}

.l-feature .feature-list .thumb {
	position: relative;
	display: flex
}

.l-feature .feature-list .thumb .thumb-box {
	position: relative;
	margin: auto;
	transform-origin: left bottom;
	backface-visibility: hidden
}

.l-feature .feature-list .thumb .thumb-box img {
	width: 100%
}

.l-feature .feature-list .thumb .thumb-sole {
	z-index: 1
}


.l-feature .feature-list .text {
	color: #fff;
	margin: auto
}


.l-feature .feature-list .text .num {
	line-height: 1;
	display: block
}






/*
FAQ暫定対応
*/
.faq_btn_outer {
	padding: 3em 0 0 0;
	display: flex;
	justify-content: right;
}

.faq_btn_outer:after {
	content: "";
	clear: both;
	height: 0;
	display: block;
	visibility: hidden;
}

.faq_btn {
	display: inline-block;
	margin: auto 0.3em;
	padding: 0 2em;
	font-family: "NotoSerifJP", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", Meiryo, メイリオ, sans-serif;
	font-size: 0.9rem;
	border-radius: 20px;
	border: 1px solid #999;
	color: #999;
}

.faq_btn:hover {
	color: #3b88d2;
}

.faq_btn_menu {}

.info a {
	text-decoration: underline;
}

@media screen and (min-width: 768px) {
	.l-faq .list {
		margin-top: 1em !important;
	}

	.l-faq .list .item {
		margin-bottom: 0.5em !important;
		border-top: 1px solid #fff !important;
	}

	.l-faq .listBlock .list-head {
		font-size: 1.3rem !important;
	}

	.l-faq .faq-trigger {
		padding: 0.7em 0 0.7em 2em !important;
		background: rgba(171, 212, 235, 0.1);
	}

	.l-faq .faq-trigger .store {
		font-size: 1.1rem !important;
		margin-left: 1em !important;
		margin-bottom: 0 !important;
		padding-right: 40px !important;
	}

	.l-faq .listBlock {
		margin-top: 3em !important;
		margin-bottom: 0 !important;
	}

	.l-faq .faq-trigger .icon {
		margin: inherit;
		/*
        float:left;
        left:0;
        */
		height: 47px;
		right: 2em !important;
	}

	.circle {
		width: 100%;
    height: 100%;
	}

	.l-faq .faq-trigger .icon::before {
		width: 15px !important;
		height: 1px !important;
	}

	.l-faq .faq-trigger .icon::after {
		width: 1px !important;
		height: 15px !important;
	}

	.l-faq .list .detail .info {
		padding: 1em 1em 2em 3.5em;
		font-size: 0.9em;
	}

	.l-faq .detail .detail-inner {
		padding: inherit;
	}

	.faq_item_container {
		padding: inherit;
		padding-left: 3em;
		padding-bottom: 3em;
		box-sizing: border-box;
	}

	.faq_item_container {
		display: flex;
	}

	.faq_item_container-item {
		padding: 0 0 1em 0;
		width: 70px;
	}

	.faq_item_container-item-img img {
		height: 70px;
		width: 70px;
	}

	.faq_item_container-item p {
		line-height: 1;
		padding-top: 0.5em;
	}
}

@media screen and (max-width: 767px) {
	.l-feature .feature-list .text .num {
		text-align: left !important;
	}

	.l-feature .feature-list .thumb .thumb-sole {
		width: 80vw;
		padding-bottom: 1em;
	}

	.l-feature .feature-list {
		padding-top: 2em;
	}

	.l-feature .feature-list .text .text-box .title {
		line-height: 1.5em;
	}

	.l-feature .feature-list .text {
		padding: 0 7vw;
	}

	.l-faq .list .item {
		margin-bottom: 0.2em;
		border-top: 1px solid #fff;
	}

	.l-faq .listBlock .list-head {
		font-size: 1.1rem;
	}

	.l-faq .listBlock {
		margin-top: 1.5em;
		margin-bottom: 0;
	}

	.l-faq .faq-trigger .icon {
		margin: inherit;
		/*
        float:left;
        left:0.5em;
        */
		height: 35px;
		right: 0.8em !important;
	}

	.circle {
		width: 50%;
		height: 50%;
	}

	.l-faq .faq-trigger .icon::before {
		width: 10px;
		height: 1px;
	}

	.l-faq .faq-trigger .icon::after {
		width: 1px;
		height: 10px;
	}

	.l-faq .list {
		margin-top: 0.5em;
	}

	.l-faq .faq-trigger {
		padding: 0.3em 0.3em 0.3em 0;
		background: rgba(171, 212, 235, 0.1);
	}

	.l-faq .faq-trigger .store {
		font-size: 0.9rem;
		margin-left: 1em;
		margin-right: 2em;
		margin-bottom: inherit;
		padding-right: inherit;
		line-height: inherit;
	}

	.l-faq .list .detail .info {
		padding: 1em;
		font-size: 0.9em;
	}

	.l-faq .detail .detail-inner {
		padding: inherit;
	}

	.faq_item_container {
		padding: inherit;
		padding-left: 2em;
		padding-bottom: 3em;
	}
}

@media screen and (max-width:750px) {
	.faq_btn_outer {
		padding: 3em 0 0 0;
		display: flex;
		justify-content: center;
	}

	.faq_btn_menu {
		padding: 0 2em;
	}

	.faq_btn {
		padding: 0 1em;
		margin: inherit;
		font-size: 0.8rem;
		width: 100%;
		text-align: center;
	}

	a.anchor {
		display: block;
		padding-top: 100px;
		margin-top: -100px;
	}
}

@media screen and (max-width: 767px) {
	.about_morinoki_kuro {
		height: 230vw !important;
	}
}

/*news記事の改行*/
@media screen and (min-width: 900px) {
	.is-Pc-news {
		margin-bottom: 1em;
	}
}

/*news記事の一覧を見るボタン*/
@media screen and (max-width: 767px) {
	.ichiran_btn {
		margin: 0em !important;
	}
}

/*STORIES記事内の線を、hrで表現した場合に細くする*/
.contentBox-inner02.story>hr,
.contentBox-inner02.news>hr {
	border-top: 1px solid #c0c0c0;
	border-bottom: 0;
	border-left: 0;
	border-right: 0;
}

/*news記事内のリンクに下線を引く*/
.contentBox-inner02.news>p>a {
	text-decoration: underline;
}

.contentBox-inner02.news>p>a:hover {
	text-decoration: none;
}

.store-trigger_2 {
	padding: 40px 62px;
	box-sizing: border-box;
	position: relative;
}

.store-trigger_2>h3 {
	font-weight: 100;
	font-family: "NotoSerifJP", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", Meiryo, メイリオ, sans-serif;
	font-size: 24px;
	margin-bottom: 6px;
}

.period {
	font-size: 14px;
}

@media screen and (max-width: 767px) {
	.store-trigger_2 {
		padding: 8vw 6.4vw;
	}

	.store-trigger_2>h3 {
		font-size: 5.34vw;
		margin-bottom: 1.6vw;
	}

	.period {
		font-size: 0.85em;
	}
}

.alcohol_content {
	padding-top: 1em;
	font-size: 70%;
	color: #606060;
}

.wp-caption-text {
	font-size: 0.8em;
	color: #666;
	font-style: oblique;
	text-align: right;
	padding-bottom: 1em;
}

@media screen and (max-width: 767px) {
	.store-trigger_2 {
		padding: 8vw 6.4vw;
	}

	.store-trigger_2>h3 {
		font-size: 5.34vw;
		margin-bottom: 1.6vw;
	}

	.period {
		font-size: 0.85em;
	}
}

.alcohol_content {
	padding-top: 1em;
	font-size: 70%;
	color: #606060;
}

.wp-caption-text {
	font-size: 0.8em;
	color: #666;
	font-style: oblique;
	text-align: right;
	padding-bottom: 1em;
}

/*商品ページ追加文言へのリンクとその挙動*/
.item_news a:hover {
	text-decoration: none;
}

.item_news a {
	color: #ffffff;
	text-decoration: underline;
}

.snowchips_thumb_img {
	background-size: contain !important;
}

@media screen and (min-width: 768px) {
	.snowchips_item {
		width: 57% !important;
	}
}

@media screen and (max-width: 767px) {
	.item_news {
		margin-left: inherit;
	}

	.snowchips_thumb {
		width: 360px;
		height: 360px;
		display: contents;
	}

	.snowchips_thumb {
		width: 360px;
		height: 360px;
		display: contents;
	}

	.snowchips_text {
		padding-top: 330px !important;
	}

	.snowchips_m-thumb {
		width: 330px !important;
		height: 330px !important;
	}

	.snowchips_text {
		padding-top: 330px !important;
	}

	.l-productList .snowchips_thumb::before {
		padding-top: 1% !important;
	}

	.sale_detail_externallink {
		display: initial !important;
	}

	.salesend.discontinued {
		margin-top: 1.5em !important;
		font-size: 0.7rem !important;
	}

	.discontinued+h3 {
		margin-top: 0.3em !important;
	}

	.allclose {
		padding: 2em 1em 0 1em !important;
	}
}

.sale_detail_externallink,
.period>a {
	text-decoration: underline;
}

.sale_detail_externallink:hover,
.period>a:hover {
	text-decoration: none;
}

.hangyo_ake {
	margin-bottom: .9em;
	display: block;
	content: "";
}

/*商品ページ今季取扱終了ラベル*/

.salesend.discontinued {
	margin: 0 0 0 0.5em;
	padding: 0 0.8em 0.1em 0.8em !important;
	line-height: 1.8;
	background-color: #ebeef2 !important;
	color: #242728 !important;
	display: inline-block;
	width: inherit !important;
}

/*トップページ右下のポップアップを非表示にする（店じまい対応）
#l-promotion {
	display: none;
}*/

/*トップページポップアップ動画GIFの線隠し（店じまい対応）*/
.thankyoutop {
	border: 2px solid #fff;
	width: 100%;
	height: 100%;
	margin: -1px 0 0 -1px;
	padding: 0;
	position: absolute;
	top: 0;
	left: 0;
	box-sizing: content-box;
	-moz-box-sizing: content-box;
	-webkit-box-sizing: content-box;
}

/*
::-webkit-full-page-media, :future, :root .thankyoutop{
	display: -webkit-flex;
}
*/
.thankyouimg {
	width: 80%;
	height: 80%;
	margin: 0 auto;
	position: relative;
}

.allclose {
	padding: 2em 0 0 3em;
}

.contact_header_btn {
	display: flex;
	justify-content: space-around;
	padding-top: 1em;
	width: 600px;
	margin: 0 auto;
}

.faq_btn {
	border: 2px solid #3b88d2;
	border-radius: 39px;
	color: #3b88d2 !important;
	padding: 0.5em;
	font-size: 1rem;
	width: 240px;
	display: inline-block;
	text-align: center;
}

.faq_btn:hover {
	background-color: #3b88d2;
	color: #fff !important;
	text-decoration: none;
}

@media screen and (max-width: 768px) {
	.contact_text {
		font-size: 0.8em;
		margin: 1.5em 0.5em;
		width: auto;
		padding: 1.5em;
	}

	a.faq_btn {
		margin-bottom: 1em;
	}

	.contact_header_btn {
		display: inherit;
		padding-top: initial;
		text-align: center;
		width: auto;
	}

	.is-contactContainer {
		padding: 32vw 0 10vw;
	}
}


