body {
	background-color: #fff;
	position: relative;
}
html {
	scroll-behavior: smooth;
}
main, .serif {
	font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
}
.sans-serif {
	font-family: YakuHanMP, "Noto Sans JP", sans-serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
}
.shower {
	pointer-events: none;
}
.deco {
	width: 100vw;
	pointer-events: none;
}
.deco img {
	width: 100%;
}
a {
	color: #000;
	text-decoration: none;
}
/* Animation settings */

@media (prefers-reduced-motion: reduce) {
  .animate__animated {
    animation-duration: var(--animate-duration) !important;
    animation-delay: var(--animate-delay) !important;
    animation-iteration-count: var(--animate-repeat) !important;
  }
}

.animate__fadeInUpSmall {
  animation-name: fadeInUpSmall;
}
.animate__fadeInLeftSmall {
  animation-name: fadeInLeftSmall;
}
.animate__revealUp {
  animation: revealUp 1s ease forwards;
}
.animate__revealDown {
  animation: revealDown 1s ease forwards;
}
.animate__revealLeft {
  animation: revealLeft 1s ease forwards;
}
.animate__revealRight {
  animation: revealRight 1s ease forwards;
}
.animate__fadeInZoomOut {
  animation: fadeInZoomOut 0.5s ease forwards;
}

@keyframes fadeInUpSmall {
  from {
    opacity: 0;
    transform: translate3d(0, 40px, 0);
  }

  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fadeInLeftSmall {
  from {
    opacity: 0;
    transform: translate3d(-40px, 0, 0);
  }

  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}
@keyframes revealUp {
  from {
	opacity: 1;
    clip-path: inset(100% 0 0 0);
  }
  to {
	opacity: 1;
    clip-path: inset(0 0 0 0);
  }
}
@keyframes revealDown {
  from {
	opacity: 1;
    clip-path: inset(0 0 100% 0);
  }
  to {
	opacity: 1;
    clip-path: inset(0 0 0 0);
  }
}
@keyframes revealLeft {
  from {
	opacity: 1;
    clip-path: inset(0 0 0 100%);
  }
  to {
	opacity: 1;
    clip-path: inset(0 0 0 0);
  }
}
@keyframes revealRight {
  from {
	opacity: 1;
    clip-path: inset(0 100% 0 0);
  }
  to {
	opacity: 1;
    clip-path: inset(0 0 0 0);
  }
}
@keyframes fadeInZoomOut {
  from {
	opacity: 0;
    transform: scale(1.2);
  }
  to {
	opacity: 1;
    transform: scale(1.0);
  }
}

.slide01 .slick-track,
.slide02 .slick-track,
.slide03 .slick-track,
.slide04 .slick-track,
.slide05 .slick-track,
.slide06 .slick-track,
.slide11 .slick-track,
.slide12 .slick-track,
.slide13 .slick-track,
.slide14 .slick-track,
.slide15 .slick-track,
.slide16 .slick-track,
.slide17 .slick-track {
    transform: translate3d(0, 0, 0) !important;
    transition: none !important;
    width: 100% !important;
}

.slide01 .slick-slide,
.slide02 .slick-slide,
.slide03 .slick-slide,
.slide04 .slick-slide,
.slide05 .slick-slide,
.slide06 .slick-slide,
.slide11 .slick-slide,
.slide12 .slick-slide,
.slide13 .slick-slide,
.slide14 .slick-slide,
.slide15 .slick-slide,
.slide16 .slick-slide,
.slide17 .slick-slide {
    position: absolute !important;
    top: 0;
    left: 0;
    z-index: 1;
}

.slide01 .slick-slide.slick-current,
.slide02 .slick-slide.slick-current,
.slide03 .slick-slide.slick-current,
.slide04 .slick-slide.slick-current,
.slide05 .slick-slide.slick-current,
.slide06 .slick-slide.slick-current,
.slide11 .slick-slide.slick-current,
.slide12 .slick-slide.slick-current,
.slide13 .slick-slide.slick-current,
.slide14 .slick-slide.slick-current,
.slide15 .slick-slide.slick-current,
.slide16 .slick-slide.slick-current,
.slide17 .slick-slide.slick-current {
    position: relative !important;
    z-index: 2;
}

.wipe-top {
    animation: wipeFromTop 600ms ease-out forwards;
}
@keyframes wipeFromTop {
    from { clip-path: inset(0 0 100% 0); }
    to   { clip-path: inset(0 0 0 0); }
}

.wipe-bottom {
    animation: wipeFromBottom 600ms ease-out forwards;
}
@keyframes wipeFromBottom {
    from { clip-path: inset(100% 0 0 0); }
    to   { clip-path: inset(0 0 0 0); }
}

.wipe-left {
    animation: wipeFromLeft 600ms ease-out forwards;
}
@keyframes wipeFromLeft {
    from { clip-path: inset(0 100% 0 0); }
    to   { clip-path: inset(0 0 0 0); }
}

.wipe-right {
    animation: wipeFromRight 600ms ease-out forwards;
}
@keyframes wipeFromRight {
    from { clip-path: inset(0 0 0 100%); }
    to   { clip-path: inset(0 0 0 0); }
}

#atf .main-visual {
	opacity: 0;
}
#atf .main-visual .main {
	opacity: 0;
	animation-delay: 1s;
}
#atf .main-visual .sub {
	opacity: 0;
	animation-delay: 1.5s;
}
#atf .main-visual .season {
	opacity: 0;
	animation-delay: 2.0s;
}

#atf .intro .head_shoplink {
	opacity: 0;
}
@media screen and (max-width: 1023px) {
	#atf .intro .head_shoplink {
		animation-delay: 2s;
	}
}

#atf .intro .pic1 {
	opacity: 0;
	animation-delay: 0.5s;
}
#atf .intro .pic2 {
	opacity: 0;
	animation-delay: 0.8s;
}
#atf .intro .pic3 {
	opacity: 0;
	animation-delay: 1.2s;
}
#atf .intro .content {
	opacity: 0;
	animation-delay: 2s;
}

#atf .content-navi .navi_style {
	opacity: 0;
}
#atf .content-navi .navi_shirts {
	opacity: 0;
	animation-delay: 0.3s;
}
#atf .content-navi .navi_message {
	opacity: 0;
	animation-delay: 0.6s;
}

#newshop {
	opacity: 0;
}
#newshop .contents-title {
	opacity: 0;
	animation-delay: 0.5s;
	z-index: 1;
}
#newshop .content-body {
	opacity: 0;
	animation-delay: 1.0s;
}

#style {
	opacity: 0;
}
#style .contents-title {
	opacity: 0;
}
#style .style_intro1 {
	opacity: 0;
	animation-delay: 1.0s;
}
#style .style_intro2 {
	opacity: 0;
	animation-delay: 1.3s;
}
#style .style_intro3 {
	opacity: 0;
	animation-delay: 1.6s;
}
#style .article-lc {
	opacity: 0;
	animation-delay: 2.4s;
}

#style1 .image-block {
	opacity: 0;
}
#style1 .sub-image {
	opacity: 0;
	animation-delay: 0.5s;
}
#style1 h3 {
	opacity: 0;
	animation-delay: 1.0s;
}
#style1 .description {
	opacity: 0;
	animation-delay: 1.3s;
}

#style2 .image-block {
	opacity: 0;
}
#style2 .sub-image {
	opacity: 0;
	animation-delay: 0.5s;
}
#style2 h3 {
	opacity: 0;
	animation-delay: 1.0s;
}
#style2 .description {
	opacity: 0;
	animation-delay: 1.3s;
}

#style3 .image-block {
	opacity: 0;
}
#style3 .sub-image {
	opacity: 0;
	animation-delay: 0.5s;
}
#style3 h3 {
	opacity: 0;
	animation-delay: 1.0s;
}
#style3 .description {
	opacity: 0;
	animation-delay: 1.3s;
}

#shirts {
	opacity: 0;
}
#shirts .contents-title {
	opacity: 0;
	animation-delay: 0.5s;
}
#shirts .content-head .main-image {
	opacity: 0;
	animation-delay: 1.0s;
}
#shirts .content-head .sub-title {
	opacity: 0;
	animation-delay: 1.5s;
}
#shirts .content-head .description {
	opacity: 0;
	animation-delay: 2.0s;
}

#shirts1 .main-image {
	opacity: 0;
}
#shirts1 h3 {
	opacity: 0;
	animation-delay: 0.5s;
}
#shirts1 .description {
	opacity: 0;
	animation-delay: 0.8s;
}
#shirts1 .sub-image {
	opacity: 0;
	animation-delay: 1.1s;
}
#shirts1 .product-info {
	opacity: 0;
	animation-delay: 1.4s;
}

#shirts2 .main-image {
	opacity: 0;
}
#shirts2 h3 {
	opacity: 0;
	animation-delay: 0.5s;
}
#shirts2 .description {
	opacity: 0;
	animation-delay: 0.8s;
}
#shirts2 .sub-image {
	opacity: 0;
	animation-delay: 1.1s;
}
#shirts2 .sub-images .slide13 {
	opacity: 0;
	animation-delay: 1.4s;
}
#shirts2 .sub-images .slide14 {
	opacity: 0;
	animation-delay: 1.7s;
}

#shirts3 .main-image {
	opacity: 0;
}
#shirts3 h3 {
	opacity: 0;
	animation-delay: 0.5s;
}
#shirts3 .description {
	opacity: 0;
	animation-delay: 0.8s;
}
#shirts3 .sub-image {
	opacity: 0;
	animation-delay: 1.1s;
}
#shirts3 .product-info {
	opacity: 0;
	animation-delay: 1.4s;
}

#message {
	opacity: 0;
}
#message .content-head {
	opacity: 0;
	animation-delay: 0.5s;
}
#message .content-image {
	opacity: 0;
	animation-delay: 1.0s;
}
#message .content-body {
	opacity: 0;
}

@media screen and (max-width: 1023px) {
	a {
		text-decoration: underline;
	}
	.pc-content {
		display: none;
	}
	html, body {
		overflow-x: hidden;
	}
	.header {
		position: relative;
		width: min(100%, 768px);
		overflow: hidden;
		margin: 0 auto;
		padding-bottom: 8vw;
		background: url('/img/bg00_sp.jpg') no-repeat;
		background-size: cover;
	}
	.header-title {
		position: absolute;
		width: calc(100% - 32px);
		left: 16px;
		top: 8vw;
	}
	.header-title .main {
		position: absolute;
		width: 100%;
		top: 34vw;
		right: 0;
	}
	.header-title .sub {
		position: absolute;
		width: 48%;
		top: 84vw;
		left: 6.4vw;
	}
	.header-title .season {
		position: absolute;
		width: 25%;
		top: 20vw;
		right: 0;
	}
	.main-visual {
		width: 100%;
		margin-bottom: 4vw;
		position: relative;
	}
	.deco {
		width: min(100%, 768px);
	}
	.deco div {
		position: absolute;
	}
	.d01 {
		width: min(30vw, 172px);
		left: -2vw;
		top: 220vw;
	}
	.d02 {
		width: min(30vw, 172px);
		right: 4vw;
		top: 292vw;
	}
	.d11 {
		width: min(40vw, 230px);
		right: -3vw;
		top: 0vw;
	}
	.d12 {
		width: min(40vw, 230px);
		right: -3vw;
		bottom: 0vw;
	}
	.d21 {
		width: min(40vw, 230px);
		left: -8vw;
		top: 370vw;
	}
	.d22 {
		width: min(30vw, 172px);
		left: 12vw;
		top: 780vw;
	}
	.d23 {
		width: min(40vw, 230px);
		right: -4vw;
		top: 1090vw;
	}
	.d24 {
		width: min(24vw, 138px);
		left: 10vw;
		bottom: 60vw;
	}
	.intro {
		display: flex;
		flex-direction: column;
	}
	.head_shoplink {
		order: 1;
		width: calc(100% - 64px);
		display: flex;
		align-items: center;
		margin: 0 auto 6.4vw auto;
	}
	.head_shoplink img {
		width: 8vw;
		margin-right: 2.4vw;
	}
	.head_shoplink a {
		font-size: 3.2vw;
		line-height: 5.6vw;
	}
	.intro .content {
		order: 2;
		width: calc(100% - 64px);
		margin: 0 auto 6.4vw auto;
	}
	.intro .bodytext {
		width: 100%;
		margin: 0 auto;
		font-size: min(4.2vw, 32px);
		line-height: min(11vw, 84px);
		margin-bottom: min(11vw, 84px);
	}
	.intro .bodytext p {
		margin-bottom: inherit;
	}
	.intro .around {
		order: 3;
		width: calc(100% - 48px);
		margin: 0 16px 14.4vw 32px;
		display: flex;
		flex-wrap: wrap;
		align-items: flex-start;
		justify-content: center;
	}
	.intro .pic1 {
		order: 1;
		width: 50%;
	}
	.intro .pic3 {
		order: 2;
		width: 40%;
		margin:  22vw 0 4.8vw 10%;
	}
	.intro .pic2 {
		order: 3;
		width: 60%;
	}
	.header .content-navi {
		width: calc(100% - 64px);
		margin: 0 auto;
	}
	.header .content-navi ul li {
		margin-bottom: 4.8vw;
	}
	.header .content-navi ul a {
		display: block;
		background: url('/img/btn_bg.svg') no-repeat;
		background-size: 100%;
	}
	.header .content-navi ul li a img {
		transition: all 0.4s;
	}
	.header .content-navi ul li a:hover img {
		transform: rotateX(360deg);
	}
	#newshop {
		position: relative;
		background: url('/img/bg_newopen_sp.jpg') no-repeat;
		background-size: cover;
		padding: 9.6vw 0 3.2vw 0;
	}
	#newshop .contents-title {
		position: relative;
		width: calc(100% - 96px);
		margin: 0 auto;
	}
	#newshop .content-body ul {
		width: calc(100% - 64px);
		background: url('/img/bg_newopen-content_sp.jpg') no-repeat;
		background-size: cover;
		margin: -22vw auto 8vw auto;
		padding: 28vw 4vw 0.2vw 4vw;
	}
	#newshop .content-body li {
		padding: 3.2vw;
		background-color: #fff;
		border-top: 1px solid #000;
		margin-bottom: 4.8vw;
	}
	#newshop .content-body li .shop-image {
		margin-bottom: 3.2vw;
	}
	#newshop .content-body li .shop-text {
		text-align: center;
	}
	#newshop .content-body li .date {
		margin-bottom: 2.4vw;
	}
	#newshop .content-body li .date img {
		height: 12vw;
	}
	#newshop .content-body li .logo {
		margin-bottom: 2.4vw;
	}
	#newshop .content-body li .shopname {
		font-size: min(3.2vw, 25px);
		line-height: min(6.4vw, 49px);
	}
	#style {
		position: relative;
		background: url('/img/bg_style_sp.jpg') no-repeat;
		background-size: cover;
		padding: 12vw 0;
	}
	#style .contents-title {
		position: relative;
		width: 62vw;
		margin: 0 auto;
	}
	#style .content-body {
		position: relative;
		width: 100%;
		margin: 0 auto;
	}
	#style .content-body .style-head {
		width: 72vw;
		margin: 0 auto 8.0vw auto;
	}
	#style .content-body .style-head li a {
		display: block;
		position: relative;
	}
	#style .content-body .style-head li .main-image {
		padding-bottom: 9.6vw;
		margin-bottom: 6.4vw;
	}
	#style .content-body .style-head li .num {
		position: absolute;
		bottom: 0;
		left: 0;
		width: 100%;
		text-align: center;
	}
	#style .content-body .style-head li .num img {
		height: 14.4vw;
	}
	#style .content-body .article-lc {
		width: calc(100% - 64px);
		margin: 12vw auto 16vw auto;
	}
	#style .content-body .article-catch {
		text-align: center;
		font-size: min(7.2vw, 55px);
		line-height: min(9.6vw, 74px);
		letter-spacing: min(0.72vw, 5px);
		margin-bottom: 12vw;
	}
	#style .content-body .article-lead {
		font-size: min(4.0vw, 31px);
		line-height: min(10vw, 77px);
		margin-bottom: min(11vw, 84px);
	}
	#style .content-body .style-body {
		position: relative;
		width: 100%;
		margin: 0 auto 4.8vw auto;
	}
	#style .content-body .style-body li {
		margin-bottom: 16vw;
		position: relative;
		display: flex;
		flex-direction: column;
	}
	#style .content-body .style-body li:last-child {
		margin-bottom: 0;
	}
	#style .content-body .style-body li .image-block {
		order: 1;
		margin-bottom: 4.8vw;
	}
	#style .content-body .style-body li .image-block .main-image {
		width: calc(100% - 64px);
		margin: 0 auto;
	}
	#style .content-body .style-body li .num {
		position: absolute;
		top: 0;
		// right: -32px;
		right: 0;
		width: 30vw;
	}
	#style .content-body .style-body li:nth-child(even) .num {
		//left: -24px;
		left: 0;
		right: auto;
	}
	#style .content-body .style-body li .text-block {
		order: 2;
		display: flex;
		width: calc(100% - 64px);
		margin: 0 auto;
		flex-direction: column;
	}
	#style .content-body .style-body li .text-block h3 {
		order: 1;
	}
	#style .content-body .style-body li .text-block .description {
		order: 2;
	}
	#style .content-body .style-body li .text-block .sub-image {
		order: 3;
		width: 70%;
	}
	#style .content-body .style-body li:nth-child(odd) .text-block .sub-image {
		margin-left: 30%;
	}
	#style .content-body .style-body li .text-block h3 {
		font-size: min(5.6vw, 43px);
		line-height: min(9.6vw, 74px);
		letter-spacing: min(0.56vw, 4px);
		margin-bottom: 8.0vw;
	}
	#style .content-body .style-body li .text-block .description {
		font-size: min(3.2vw, 25px);
		line-height: min(6.4vw, 49px);
		margin-bottom: 4.8vw;
		text-align: justify;
		text-justify: inter-character;
	}
	#style .content-body .style-body li .text-block .description p {
		line-height: inherit;
		margin-bottom: 4.8vw;
	}
	#shirts {
		position: relative;
		background: url('/img/bg_shirts_sp.jpg') no-repeat;
		background-size: cover;
		padding: 12vw 0;
	}
	#shirts .contents-title {
		position: relative;
		width: 72vw;
		margin: 0 auto;
		z-index: 1;
	}
	#shirts .content-head {
		position: relative;
		width: calc(100% - 64px);
		margin: -5.6vw auto 8vw auto;
		z-index: 0;
	}
	.d31 {
		width: min(40vw, 230px);
		left: -30vw;
		top: -12vw;
	}
	.d41 {
		width: min(40vw, 230px);
		left: -8vw;
		bottom: 48vw;
	}
	.d42 {
		width: min(40vw, 230px);
		left: -20vw;
		bottom: -30vw;
	}
	.d43 {
		width: min(40vw, 230px);
		right: -16vw;
		bottom: 56vw;
	}
	.d51 {
		width: min(40vw, 230px);
		right: -4vw;
		top: 4vw;
	}
	#shirts .content-head .main-image {
		margin-bottom: 8vw;
	}
	#shirts .content-head .sub-title {
		position: absolute;
		width: 6.0vw;
		top: 12vw;
		left: -3.0vw;
	}
	#shirts .content-head .description {
		font-size: min(4.0vw, 31px);
		line-height: min(10vw, 77px);
		margin-bottom: 4.8vw;
	}
	#shirts .content-head .description p {
		line-height: inherit;
		margin-bottom: 4.8vw;
	}
	#shirts .content-head .description .remarks,  #shirts .content-head .description a, #shirts .content-head .description .buy, #shirts .content-head .shoplink {
		font-size: min(3.2vw, 25px);
		line-height: min(5.6vw, 43px);
	}
	#shirts .content-head .description span.buy, #style .content-body .style-body li .text-block span.buy {
		display: block;
	}
	#shirts .content-body {
		position: relative;
		width: calc(100% - 64px);
		margin: 0 auto;
	}
	#shirts .content-body li {
		position: relative;
		margin-bottom: 9.6vw;
		display: flex;
		flex-direction: column;
	}
	#shirts .content-body .main-image {
		order: 1;
		margin-bottom: 9.6vw;
	}
	#shirts .content-body li .text-block {
		order: 2;
	}
	#shirts .content-body li .text-block h3 {
		margin-bottom: 3.6rem;
		text-align: center;
	}
	#shirts .content-body li .text-block h3 img {
		height: 10.4vw;
	}
	#shirts .content-body li .text-block .description {
		font-size: min(4.0vw, 31px);
		line-height: min(10vw, 77px);
		margin-bottom: 4.8vw;
	}
	#shirts .content-body li .text-block .sub-image {
		width: 70%;
		margin-bottom: 6.4vw;
	}
	#shirts .content-body li .text-block .sub-image.sp-ar {
		margin-left: 30%;
	}
	#shirts .content-body li .text-block .product-info {
		font-size: min(3.2vw, 25px);
		line-height: min(5.6vw, 43px);
	}
	#shirts .content-body li .text-block .product-info p {
		line-height: inherit;
		margin-bottom: 6.4vw;
	}
	#shirts .content-body li .text-block .sub-images {
		width: 100%;
		display: flex;
		align-items: flex-start;
		justify-content: space-between;
	}
	#shirts .content-body li .text-block .sub-images .sub-image {
		width: 46%;
	}
	#message {
		background: url('/img/bg_message_sp.jpg') no-repeat;
		background-size: cover;
		padding: 0;
		position: relative;
	}
	#message .content-head {
		padding: 12vw 0 9.6vw 0;
		text-align: center;
	}
	#message .content-head img {
		height: 12vw;
	}
	#message .content-image {
		width: 100%;
		position: relative;
		text-align: center;
		margin-bottom: 16vw;
	}
	#message .content-image .main-image {
		width: calc(100% - 64px);
		margin: 0 auto;
	}
	#message .contents-title .title {
		position: absolute;
		width: 76%;
		top: 56vw;
		left: 2vw;
	}
	#message .contents-title .sub {
		position: absolute;
		width: calc(100% - 64px);
		left: 32px;
		bottom: 0;
	}
	#message .content-text {
		width: calc(100% - 32px);
		margin: 0 0 0 32px;
		font-size: min(3.2vw, 24px);
		line-height: min(9.6vw, 74px);
	}
	#message .content-text p {
		margin-bottom: 4.8vw;
	}
	#message .footer_logo {
		width: 40%;
		margin: 0 auto;
		padding: min(16vw, 123px) 0;
	}
	#message .linkbutton {
		margin-top: min(16vw, 123px);
	}
	#message .content-text .linkbutton {
		text-align: center;
		width: 80%;
		margin: 0 auto;
		margin-top: 12vw;
	}
	#message .content-text .linkbutton a {
		display: block;
		width: calc(100% - 32px);
		margin-right: 32px;
	}
	.footer-link {
		text-align: center;
		margin-bottom: min(8vw, 61px);
	}
	.footer-link a {
		font-size: min(2.8vw, 22px);
		padding: 0 min(1.2vw, 9px);
	}
	#footer-copy {
		text-align: center;
		font-size: min(2.8vw, 22px);
		padding-bottom: min(24vw, 184px);
	}
	.pagetopbutton {
		position: fixed;
		top: 0;
		width: calc(100% - 32px);
		left: 50%;
		transform: translateX(-50%);
		height: 100vh;
		height: 100dvh;
		visibility: visible;
		opacity: 1;
		transition: opacity 0.3s ease, visibility 0.3s ease;
		pointer-events: none; 
	}
	.pagetopbutton.is-hidden {
		visibility: hidden;
		opacity: 0;
		pointer-events: none; 
	}
	.pagetopbutton a {
		pointer-events: auto;
	}
	.pagetopbutton img {
		width: 4.0vw;
		position: absolute;
		right: 0;
		bottom: 6.4vw;
	}
}
@media screen and (min-width: 1024px) {
	.sp-content, .deco {
		display: none;
	}
	a.lineglow {
		position: relative;
		display: inline-block;
	}
	a.lineglow::after {
		position: absolute;
		bottom: 0;
		left: 0;
		content: '';
		width: 100%;
		height: 1px;
		background: #000;
		transform: scale(0, 1);
		transform-origin: left top;
		transition: transform .3s;
	}
	a.lineglow:hover::after {
		transform: scale(1, 1);
	}
	.header {
		position: relative;
		background: url('/img/bg00.jpg') no-repeat;
		background-size: cover;
		background-position: center;
	}
	.shower {
		position: absolute;
		top: 0;
		width: 100%;
		height: 100%;
	}
	.shower img {
		position: relative;
	}
	.shower .leaf1 {
		position: absolute;
		top: 40rem;
		right: 10%;
		width: 10vw;
	}
	.shower .leaf2 {
		position: absolute;
		top: 62rem;
		left: 12%;
		width: 12vw;
	}
	.shower .leaf3 {
		position: absolute;
		top: 157rem;
		left: 22%;
		width: 10vw;
	}
	.shower .leaf4 {
		position: absolute;
		top: 240rem;
		right: 2%;
		width: 20vw;
	}
	.shower .leaf5 {
		position: absolute;
		top: 275rem;
		left: -2%;
		width: 16vw;
	}
	.shower .leaf6 {
		position: absolute;
		top: 386rem;
		right: 2%;
		width: 24vw;
	}
	.shower .leaf7 {
		position: absolute;
		top: 496rem;
		left: 2%;
		width: 16vw;
	}
	.shower .leaf8 {
		position: absolute;
		top: 579rem;
		right: 2%;
		width: 12vw;
	}
	.shower .leaf9 {
		position: absolute;
		top: 745rem;
		right: 32%;
		width: 18vw;
	}
	.shower .leaf10 {
		position: absolute;
		top: 900rem;
		left: 4%;
		width: 22vw;
	}
	.shower .leaf11 {
		position: absolute;
		top: 1048rem;
		right: 4%;
		width: 22vw;
	}
	.shower .leaf12 {
		position: absolute;
		top: 1145rem;
		left: -4%;
		width: 22vw;
	}
	.shower .leaf13 {
		position: absolute;
		top: 1330rem;
		left: -3%;
		width: 16vw;
	}
	.shower .leaf14 {
		position: absolute;
		top: 1518rem;
		right: 14%;
		width: 20vw;
	}
	.shower .leaf00 {
		position: absolute;
		top: 1670rem;
		right: 8%;
		width: 20vw;
	}
	.shower .leaf15 {
		position: absolute;
		top: 1711rem;
		left: 4%;
		width: 20vw;
	}
	.shower .leaf16 {
		position: absolute;
		top: 1808rem;
		right: 16%;
		width: 12vw;
	}
	.main-visual {
		width: min(100%, 1984px);
		margin: 0 auto 24px auto;
		position: relative;
	}
	.main-visual img {
		width: 100%;
	}
	.header-title {
		position: absolute;
		width: 100%;
		top: 30%;
		left: 6%;
	}
	.header-title .main {
		position: absolute;
		width: 50%;
		top: 0;
	}
	.header-title .sub {
		position: absolute;
		width: 27.5%;
		top: 24vw;
		left: 8%;
	}
	.header-title .season {
		position: absolute;
		width: 10%;
		top: 0;
		right: 20%;
	}
	.head_shoplink {
		width: 960px;
		display: flex;
		align-items: center;
		margin: 0 auto 32px auto;
	}
	.head_shoplink img {
		width: 2.4rem;
		margin-right: 0.8rem;
	}
	.head_shoplink a {
		font-size: 1.2rem;
	}
	.intro {
		position: relative;
		left: 50%;
		transform: translateX(-50%);
		width: min(1120px, 100vw);
		padding-bottom: 17.2rem;
		margin-bottom: 7.2rem;
	}
	.intro h2 {
		font-weight: 400;
		font-size: 2.6rem;
		line-height : 5.6rem;
		letter-spacing: 0.26rem;
		margin-bottom: 4.0rem;
	}
	.intro .pic1 {
		position: absolute;
		width: 24%;
		left: 0;
		top: 27.2rem;
	}
	.intro .pic2 {
		position: absolute;
		width: 28%;
		top: 9.6rem;
		right: 0.8rem;
	}
	.intro .pic3 {
		position: absolute;
		width: 16%;
		bottom: 0;
		right: 32%;
	}
	.intro .content {
		width: 640px;
		margin: 0 auto 12rem auto;
	}
	.intro .bodytext {
		width: 400px;
		margin: 6.4rem auto 9.6rem auto;
		font-size: 1.6rem;
		line-height: 3.8rem;
		letter-spacing: 0.24rem;
	}
	.intro .bodytext p {
		margin-bottom: 4.0rem;
	}
	.header .content-navi {
		width: 1024px;
		padding-bottom: 9.6rem;
		margin: 0 auto;
	}
	.header .content-navi ul {
		width: 880px;
		margin: 0 auto;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
	}
	.header .content-navi ul a {
		display: block;
		background: url('/img/btn_bg.svg') no-repeat;
		background-size: 100%;
	}
	.header .content-navi ul li {
		width: 48%;
		margin-bottom: 3.2rem;
	}
	.header .content-navi ul li:first-child {
		text-align: center;
		margin-left: 10%;
		margin-right: 10%;
	}
	.header .content-navi ul li:nth-child(2) {
		margin-right: 2%;
	}
	.header .content-navi ul li:nth-child(3) {
		margin-left: 2%;
	}
	.header .content-navi ul li:first-child img {
	}
	.header .content-navi ul li img {
		margin: 0 8px 8px 0;
	}
	.header .content-navi ul li a {
		transition: 0.5s;
	}
	.header .content-navi ul li a:hover {
	}
	.header .content-navi ul li a img {
		transition: all 0.4s;
	}
	.header .content-navi ul li a:hover img {
		transform: rotateX(360deg);
	}
	#newshop {
		position: relative;
		background: url('/img/bg_newopen.jpg') no-repeat;
		background-size: cover;
		padding: 4rem 0 6.4rem 0;
	}
	#newshop .contents-title {
		position: relative;
		width: 60rem;
		margin: 0 auto;
	}
	#newshop .content-body ul {
		width: 900px;
		background: url('/img/bg_newopen-content.jpg') no-repeat;
		background-size: cover;
		margin: -18rem auto 6.4rem auto;
		padding: 22rem 3.2rem 0.2rem 3.2rem;
	}
	#newshop .content-body li {
		padding: 2.8rem;
		background-color: #fff;
		border-top: 1px solid #000;
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		margin-bottom: 3.2rem;
	}
	#newshop .content-body li .shop-image {
		width: 50%;
	}
	#newshop .content-body li .shop-text {
		width: 46%;
		text-align: center;
	}
	#newshop .content-body li .date {
		margin-bottom: 1.2rem;
	}
	#newshop .content-body li .date img {
		height: 4.8rem;
	}
	#newshop .content-body li .logo {
		margin-bottom: 1.2rem;
	}
	#newshop .content-body li .logo img {
		height: 12rem;
	}
	#newshop .content-body li .shopname {
		font-size: 1.4rem;
		line-height: 2.2rem;
	}
	#style {
		position: relative;
		background: url('/img/bg_style.jpg') no-repeat;
		background-size: cover;
		padding: 12rem 0;
	}
	#style .contents-title {
		position: relative;
		width: 40rem;
		margin: 0 auto;
	}
	#style .content-body {
		position: relative;
		width: 1024px;
		margin: 0 auto;
	}
	#style .content-body .style-head {
		display: flex;
		align-items: flex-start;
		justify-content: center;
		margin-bottom: 8.0rem;
	}
	#style .content-body .style-head li {
		position: relative;
		width: 30%;
		padding-bottom: 2.4rem;
		margin: 0 1.6%;
	}
	#style .content-body .style-head li .main-image {
		position: relative;
	}
	#style .content-body .style-head li .num {
		position: absolute;
		bottom: 0;
		left: 0;
		width: 100%;
		text-align: center;
	}
	#style .content-body .style-head li .num img {
		height: 4.8rem;
	}
	#style .content-body .article-lc {
		width: 880px;
		margin: 0 auto 12rem auto;
		display: flex;
		align-items: center;
		justify-content: space-between;
	}
	#style .content-body .article-catch {
		font-size: 3.2rem;
		width: 32rem;
		letter-spacing: 0.48rem;
	}
	#style .content-body .article-lead {
		flex: 1;
		font-size: 1.6rem;
		line-height: 3.2rem;
	}
	#style .content-body .style-body {
		position: relative;
		width: min(1120px, 100vw);
		margin: 0 auto;
	}
	#style .content-body .style-body li {
		display: flex;
		align-items: flex-start;
		justify-content: space-between;
		margin-bottom: 15.2rem;
	}
	#style .content-body .style-body li:last-child {
		margin-bottom: 0;
	}
	#style .content-body .style-body li .image-block {
		width: 50%;
		position: relative;
	}
	#style .content-body .style-body li .main-image {
		width: 88%;
	}
	#style .content-body .style-body li:nth-child(even) .main-image {
		margin-left: 12%;
	}
	#style .content-body .style-body li .num {
		position: absolute;
		top: 0;
		right: 0;
		width: 25%;
	}
	#style .content-body .style-body li:nth-child(even) .num {
		left: 0;
		right: auto;
	}
	#style .content-body .style-body li .text-block {
		width: 44%;
		position: relative;
	}
	#style .content-body .style-body li .text-block .sub-image {
		width: 44%;
		margin: 0 0 4.8rem 12rem;
	}
	#style .content-body .style-body li .text-block h3 {
		font-size: 2.4rem;
		line-height: 4.0rem;
		letter-spacing: 0.32rem;
		margin-bottom: 4.0rem;
	}
	#style .content-body .style-body li:nth-child(even) .text-block h3 {
		margin-left: 12rem;
	}
	#style .content-body .style-body li .text-block .description {
		font-size: 1.3rem;
		line-height: 2.2rem;
		text-align: justify;
		text-justify: inter-character;
	}
	#style .content-body .style-body li:nth-child(odd) .text-block .description {
		width: 74%;
	}
	#style .content-body .style-body li:nth-child(even) .text-block .description {
		margin-left: 12rem;
	}
	#style .content-body .style-body li .text-block .description p {
		line-height: inherit;
		margin-bottom: 3.2rem;
	}
	#style .content-body .style-body li .text-block .description .remarks {
		font-size: 1.1rem;
	}
	#shirts {
		position: relative;
		background: url('/img/bg_shirts.jpg') no-repeat;
		background-size: cover;
		padding: 12rem 0 6.4rem 0;
	}
	#shirts .contents-title {
		position: relative;
		width: 40rem;
		margin: 0 auto;
		z-index: 1;
	}
	#shirts .content-body {
		position: relative;
		width: 1024px;
		margin: 0 auto;
	}
	#shirts .content-head {
		position: relative;
		width: 800px;
		margin: -3.2rem auto 8rem auto;
		z-index: 0
	}
	#shirts .content-head .main-image {
		margin-bottom: 2.8rem;
	}
	#shirts .content-head .sub-title {
		position: absolute;
		width: 4.0rem;
		top: 20rem;
		left: -2.0rem;
	}
	#shirts .content-head .description {
		font-size: 1.6rem;
		line-height: 2.8rem;
	}
	#shirts .content-head .description p {
		line-height: inherit;
		margin-bottom: 3.2rem;
	}
	#shirts .content-head .description .remarks {
		font-size: 1.3rem;
	}
	#shirts .content-head .description .shoplink {
		font-size: 1.3rem;
		line-height: 2.2rem;
	}
	#shirts .content-body ul {
		position: relative;
		width: 960px;
		margin: 0 auto;
	}
	#shirts .content-body li {
		display: flex;
		align-items: flex-start;
		justify-content: space-between;
	}
	#shirts .content-body li:nth-child(even) {
		position: relative;
		margin-bottom: 24rem;
	}
	#shirts .content-body li .image-block {
		width: 58%;
		position: relative;
	}
	#shirts .content-body li:nth-child(odd) .image-block {
		margin-right: 8.0rem;
	}
	#shirts .content-body li:nth-child(even) .image-block {
		margin-left: 8.0rem;
	}
	#shirts .content-body li .image-block .product-info {
		margin: 3.2rem 0 6.4rem 0;
		font-size: 1.3rem;
		line-height: 2.2rem;
	}
	#shirts .content-body li .image-block .product-info p {
		line-height: inherit;
		margin-bottom: 3.2rem;
	}
	#shirts .content-body li .text-block {
		width: 42%;
	}
	#shirts .content-body li:nth-child(odd) .text-block {
		margin-top: 12rem;
	}
	#shirts .content-body li:nth-child(even) .text-block {
		margin-top: 2.8rem;
	}
	#shirts .content-body li .text-block h3 {
		margin-bottom: 4.8rem;
	}
	#shirts .content-body li .text-block h3 img {
		height: 5.32rem;
	}
	#shirts .content-body li .text-block .sub-image {
		width: 80%;
		margin: 0 auto;
	}
	#shirts .content-body li:nth-child(even) .text-block .sub-images {
		width: 46%;
		position: absolute;
		left: -6%;
		bottom: 0;
		display: flex;
		align-items: flex-start;
		justify-content: space-between;
	}
	#shirts .content-body li:nth-child(even) .text-block .sub-image {
		width: 42%;
	}
	#shirts .content-body li .text-block .description {
		font-size: 1.6rem;
		line-height: 2.8rem;
		margin-bottom: 5.6rem;
	}
	#message {
		background: url('/img/bg_message.jpg') no-repeat;
		background-size: cover;
		padding: 0;
		position: relative;
	}
	#message .content-head {
		padding: 12rem 0 10rem 0;
		text-align: center;
	}
	#message .content-head img {
		height: 4.8rem;
	}
	#message .content-image {
		width: 880px;
		margin: 0 auto;
		position: relative;
	}
	#message .content-image .main-image {
		width: 800px;
		margin-left: 40px;
	}
	#message .contents-title {
	}
	#message .contents-title .title {
		position: absolute;
		width: 70%;
		top: 36rem;
	}
	#message .contents-title .sub {
		position: absolute;
		width: 60%;
		left: 40px;
		bottom: 0;
	}
	#message .content-text {
		width: 400px;
		margin: 8rem auto 0 auto;
		font-size: 1.4rem;
		line-height: 3.2rem;
	}
	#message .content-text p {
		margin-bottom: 3.6rem;
	}
	#message .content-body {
		width: 1024px;
		margin: 0 auto;
		position: relative;
	}
	#message .content-text .linkbutton {
		text-align: center;
		width: 30rem;
		margin: 0 auto;
		margin-top: 9.6rem;
	}
	#message .footer {
	}
	#message .footer_logo {
		width: 12rem;
		margin: 0 auto;
		padding: 12rem 0 9.6rem 0;
	}
	#message .footer-link {
		text-align: center;
		margin-bottom: 1.8rem;
	}
	#message .footer-link  a {
		padding: 0 1.6rem;
		text-decoration: none;
	}
	#footer-copy {
		padding: 2.4rem 0;
		text-align: center;
	}
	.pagetopbutton {
		position: fixed;
		top: 0;
		width: max(1024px, 80%);
		left: 50%;
		transform: translateX(-50%);
		height: 100vh;
		height: 100dvh;
		visibility: visible;
		opacity: 1;
		transition: opacity 0.3s ease, visibility 0.3s ease;
		pointer-events: none; 
	}
	.pagetopbutton.is-hidden {
		visibility: hidden;
		opacity: 0;
		pointer-events: none; 
	}
	.pagetopbutton a {
		pointer-events: auto;
	}
	.pagetopbutton img {
		width: 2.4rem;
		position: absolute;
		right: 0;
		bottom: 4.8rem;
	}
}
@media screen and (min-width: 1024px) and (max-width: 1279px) {
	html {
		font-size: 9px;
	}
}
@media screen and (min-width: 1280px) {
}