@import url("https://fonts.googleapis.com/css2?family=BIZ+UDMincho&display=swap");
.svg-sprite {
	display: none;
}
[data-object-fit="cover"] {
	-o-object-fit: cover;
	object-fit: cover;
}
[data-object-position="center center"] {
	-o-object-position: center center;
	object-position: center center;
}
.main .is-only-pc-block {
	display: block;
}
@media (max-width: 640px) {
	.main .is-only-pc-block {
		display: none;
	}
}
.main .is-only-pc-flex {
	display: -webkit-box;
	display: flex;
}
@media (max-width: 640px) {
	.main .is-only-pc-flex {
		display: none;
	}
}
.main .is-only-pc-inline {
	display: inline;
}
@media (max-width: 640px) {
	.main .is-only-pc-inline {
		display: none;
	}
}
.main .is-only-sp-block {
	display: none;
}
@media (max-width: 640px) {
	.main .is-only-sp-block {
		display: block;
	}
}
.main .is-only-sp-flex {
	display: none;
}
@media (max-width: 640px) {
	.main .is-only-sp-flex {
		display: -webkit-box;
		display: flex;
	}
}
.main .is-only-sp-inline {
	display: none;
}
@media (max-width: 640px) {
	.main .is-only-sp-inline {
		display: inline;
	}
}
.main *,
.main :after,
.main :before {
	box-sizing: border-box;
}
.main :after,
.main :before {
	text-decoration: inherit;
	vertical-align: inherit;
}
.main html {
	cursor: default;
	line-height: 1.5;
	-moz-tab-size: 4;
	-o-tab-size: 4;
	tab-size: 4;
	-webkit-tap-highlight-color: transparent;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	word-break: break-word;
}
.main body {
	margin: 0;
}
.main h1 {
	font-size: 2em;
	margin: 0.67em 0;
}
.main dl dl,
.main dl ol,
.main dl ul,
.main ol dl,
.main ol ol,
.main ol ul,
.main ul dl,
.main ul ol,
.main ul ul {
	margin: 0;
}
.main hr {
	height: 0;
	overflow: visible;
}
.main main {
	display: block;
}
.main nav ol,
.main nav ul {
	list-style: none;
	padding: 0;
}
.main pre {
	font-family: monospace, monospace;
	font-size: 1em;
}
.main a {
	background-color: transparent;
}
.main abbr[title] {
	text-decoration: underline;
	-webkit-text-decoration: underline dotted;
	text-decoration: underline dotted;
}
.main b,
.main strong {
	font-weight: bolder;
}
.main code,
.main kbd,
.main samp {
	font-family: monospace, monospace;
	font-size: 1em;
}
.main small {
	font-size: 80%;
}
.main audio,
.main canvas,
.main iframe,
.main img,
.main svg,
.main video {
	vertical-align: middle;
}
.main audio,
.main video {
	display: inline-block;
}
.main audio:not([controls]) {
	display: none;
	height: 0;
}
.main iframe,
.main img {
	border-style: none;
}
.main svg:not([fill]) {
	fill: currentColor;
}
.main svg:not(:root) {
	overflow: hidden;
}
.main button,
.main input,
.main select {
	margin: 0;
}
.main button {
	overflow: visible;
	text-transform: none;
}
.main [type="button"],
.main [type="reset"],
.main [type="submit"],
.main button {
	-webkit-appearance: button;
}
.main fieldset {
	border: 1px solid #a0a0a0;
	padding: 0.35em 0.75em 0.625em;
}
.main input {
	overflow: visible;
}
.main legend {
	color: inherit;
	display: table;
	max-width: 100%;
	white-space: normal;
}
.main progress {
	display: inline-block;
	vertical-align: baseline;
}
.main select {
	text-transform: none;
}
.main textarea {
	margin: 0;
	overflow: auto;
	resize: vertical;
}
.main [type="checkbox"],
.main [type="radio"] {
	padding: 0;
}
.main [type="search"] {
	-webkit-appearance: textfield;
	outline-offset: -2px;
}
.main ::-webkit-inner-spin-button,
.main ::-webkit-outer-spin-button {
	height: auto;
}
.main ::-webkit-input-placeholder {
	color: inherit;
	opacity: 0.54;
}
.main ::-webkit-search-decoration {
	-webkit-appearance: none;
}
.main ::-webkit-file-upload-button {
	-webkit-appearance: button;
	font: inherit;
}
.main ::-moz-focus-inner {
	border-style: none;
	padding: 0;
}
.main :-moz-focusring {
	outline: 1px dotted ButtonText;
}
.main :-moz-ui-invalid {
	box-shadow: none;
}
.main details,
.main dialog {
	display: block;
}
.main dialog {
	background-color: #fff;
	border: solid;
	color: #000;
	height: -moz-fit-content;
	height: -webkit-fit-content;
	height: fit-content;
	left: 0;
	margin: auto;
	padding: 1em;
	position: absolute;
	right: 0;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
}
.main dialog:not([open]) {
	display: none;
}
.main summary {
	display: list-item;
}
.main canvas {
	display: inline-block;
}
.main template {
	display: none;
}
.main [tabindex],
.main a,
.main area,
.main button,
.main input,
.main label,
.main select,
.main summary,
.main textarea {
	touch-action: manipulation;
}
.main [aria-busy="true"] {
	cursor: progress;
}
.main [aria-controls] {
	cursor: pointer;
}
.main [aria-disabled="true"],
.main [disabled] {
	cursor: not-allowed;
}
.main [aria-hidden="false"][hidden] {
	display: initial;
}
.main [aria-hidden="false"][hidden]:not(:focus) {
	clip: rect(0, 0, 0, 0);
	position: absolute;
}
.main a,
.main abbr,
.main acronym,
.main address,
.main applet,
.main article,
.main aside,
.main audio,
.main b,
.main big,
.main blockquote,
.main body,
.main canvas,
.main caption,
.main center,
.main cite,
.main code,
.main dd,
.main del,
.main details,
.main dfn,
.main div,
.main dl,
.main dt,
.main em,
.main embed,
.main fieldset,
.main figcaption,
.main figure,
.main footer,
.main form,
.main h1,
.main h2,
.main h3,
.main h4,
.main h5,
.main h6,
.main header,
.main hgroup,
.main html,
.main i,
.main iframe,
.main img,
.main ins,
.main kbd,
.main label,
.main legend,
.main li,
.main main,
.main mark,
.main menu,
.main nav,
.main object,
.main ol,
.main output,
.main p,
.main pre,
.main q,
.main ruby,
.main s,
.main samp,
.main section,
.main small,
.main span,
.main strike,
.main strong,
.main sub,
.main summary,
.main sup,
.main table,
.main tbody,
.main td,
.main tfoot,
.main th,
.main thead,
.main time,
.main tr,
.main tt,
.main u,
.main ul,
.main var,
.main video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
.main article,
.main aside,
.main details,
.main figcaption,
.main figure,
.main footer,
.main header,
.main hgroup,
.main main,
.main menu,
.main nav,
.main section {
	display: block;
}
.main [hidden] {
	display: none;
}
.main body {
	line-height: 1;
}
.main ol,
.main ul {
	list-style: none;
}
.main blockquote,
.main q {
	quotes: none;
}
.main blockquote:after,
.main blockquote:before,
.main q:after,
.main q:before {
	content: "";
	content: none;
}
.main table {
	border-collapse: collapse;
	border-spacing: 0;
}
body,
html {
	width: 100%;
	overflow-x: auto;
	min-width: 1366px;
}
@media (max-width: 640px) {
	body,
	html {
		overflow-x: hidden;
		min-width: 320px;
	}
}
.main {
	line-height: 1;
	font-family:
		"\6E38\30B4\30B7\30C3\30AF\4F53",
		YuGothic,
		"\6E38\30B4\30B7\30C3\30AF   Medium",
		Yu Gothic Medium,
		"\6E38\30B4\30B7\30C3\30AF",
		Yu Gothic,
		sans-serif;
	color: #fff;
	background-color: #fff;
	width: 100%;
	overflow-x: hidden;
}
.main *,
.main :after,
.main :before {
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
}
.main a {
	color: inherit;
	text-decoration: none;
}
.main button,
.main input,
.main select,
.main textarea {
	padding: 0;
	border: 0;
	border-radius: 0;
	outline: none;
	background: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	font-family:
		"\6E38\30B4\30B7\30C3\30AF\4F53",
		YuGothic,
		"\6E38\30B4\30B7\30C3\30AF   Medium",
		Yu Gothic Medium,
		"\6E38\30B4\30B7\30C3\30AF",
		Yu Gothic,
		sans-serif;
	line-height: 1;
}
.main dt {
	display: block;
}
.main img,
.main svg,
.main video {
	display: block;
	width: 100%;
	height: 100%;
}
.main video {
	-webkit-filter: drop-shadow(0 0 #000);
	filter: drop-shadow(0 0 #000);
}
.main use {
	pointer-events: none;
}
.go_top,
.sp_go_top {
	z-index: 10004;
}
.main .column-mv {
	position: relative;
	background-color: #222;
}
@media (max-width: 640px) {
	.main .column-mv {
		overflow: hidden;
	}
}
.main .column-mv-wrapper {
	max-height: 618px;
	overflow: hidden;
}
.main .column-mv-video {
	position: relative;
	padding-bottom: 39.215%;
	height: 0;
}
@media (max-width: 640px) {
	.main .column-mv-video {
		padding-bottom: 145.945%;
	}
}
.main .column-mv-video video {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
	-webkit-transition: opacity 3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
	transition: opacity 3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.main .column-mv-video video.is-fadein {
	opacity: 0.9;
}
.main .column-mv-video-image {
	display: none;
}
.main .column-mv-inner {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 3;
	opacity: 0;
	-webkit-transition: opacity 3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0.25s;
	transition: opacity 3s cubic-bezier(0.25, 0.46, 0.45, 0.94) 0.25s;
}
.main .column-mv-inner.is-fadein {
	opacity: 1;
}
.main .column-mv-heading {
	position: absolute;
	left: calc(50% - 573px);
	bottom: 258px;
	width: 140px;
	height: 31px;
}
@media (max-width: 640px) {
	.main .column-mv-heading {
		left: 17px;
		bottom: 158px;
		width: 98px;
		height: 21px;
	}
}
.main .column-mv-copy {
	position: absolute;
	left: calc(50% - 531px);
	bottom: 94px;
	width: 363px;
	height: 146px;
}
@media (max-width: 640px) {
	.main .column-mv-copy {
		left: 38px;
		bottom: 59px;
		width: 215px;
		height: 87px;
	}
}
.main .column-mv-scrollmark {
	position: absolute;
	left: calc(50% - 531px);
	bottom: -61px;
	display: -webkit-box;
	display: flex;
	-webkit-box-align: start;
	align-items: flex-start;
}
@media (max-width: 640px) {
	.main .column-mv-scrollmark {
		left: 37px;
		bottom: -1px;
	}
}
.main .column-mv-scrollmark-icon {
	width: 1px;
	height: 100px;
	background-color: #2c2d2a;
	position: relative;
	overflow: hidden;
}
.main .column-mv-scrollmark-icon:after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	background-color: #fff;
	z-index: 2;
	-webkit-animation: scrolling 2s cubic-bezier(0.075, 0.82, 0.165, 1) infinite;
	animation: scrolling 2s cubic-bezier(0.075, 0.82, 0.165, 1) infinite;
}
@media (max-width: 640px) {
	.main .column-mv-scrollmark-icon {
		height: 34px;
	}
}
.main .column-mv-scrollmark-text {
	width: 68px;
	height: 10px;
	margin-left: 18px;
}
@media (max-width: 640px) {
	.main .column-mv-scrollmark-text {
		width: 48px;
		height: 7px;
		margin-left: 10px;
	}
}
@-webkit-keyframes scrolling {
	0% {
		-webkit-transform: translateY(-100%);
		transform: translateY(-100%);
	}
	25% {
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
	to {
		-webkit-transform: translateY(100%);
		transform: translateY(100%);
	}
}
.ie .column-mv-video-image {
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	background-position: 50%;
	background-repeat: no-repeat;
	background-size: cover;
}
.ie .column-mv-video video {
	display: none;
}
.main .preface {
	position: relative;
	overflow: hidden;
	margin: 140px 0;
	background-color: #fff;
}
.main .preface:after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	height: 100%;
	width: 66%;
	background-color: #f6f4f0;
}
@media (max-width: 640px) {
	.main .preface {
		margin: 75px 0 60px;
	}
	.main .preface:after {
		width: 62%;
		height: 76%;
	}
}
.main .preface-body {
	position: relative;
	z-index: 2;
	width: 1126px;
	margin: 0 auto;
	padding: 84px 30px 80px;
}
@media (max-width: 640px) {
	.main .preface-body {
		padding: 40px 40px 0;
		width: 100%;
	}
}
.main .preface-body-inner {
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: justify;
	justify-content: space-between;
	-webkit-box-align: start;
	align-items: flex-start;
	-webkit-transition: opacity 1.2s 0s;
	transition: opacity 1.2s 0s;
	opacity: 0;
}
.main .preface-body-inner.is-active {
	opacity: 1;
}
@media (max-width: 640px) {
	.main .preface-body-inner {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		flex-direction: column;
	}
}
.main .preface-image {
	position: relative;
	min-width: 500px;
	height: 320px;
	overflow: hidden;
}
@media (max-width: 640px) {
	.main .preface-image {
		min-width: calc(100vw - 40px);
		margin-left: -40px;
		padding-top: 67.8%;
		height: auto;
	}
}
.main .preface-image-source {
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	background-position: 50%;
	background-repeat: no-repeat;
	background-size: cover;
}
.main .preface-text {
	position: relative;
	margin-left: 70px;
}
@media (max-width: 640px) {
	.main .preface-text {
		margin-left: 0;
	}
}
.main .preface-heading-ja {
	width: 411px;
	height: 81px;
	margin-top: 8px;
}
@media (max-width: 640px) {
	.main .preface-heading-ja {
		width: 256px;
		height: 53px;
		margin-top: 30px;
	}
}
.main .preface-heading-en {
	position: absolute;
	top: 43px;
	right: -33px;
	width: 403px;
	height: 100px;
	z-index: -1;
}
@media (max-width: 640px) {
	.main .preface-heading-en {
		top: 68px;
		right: 3px;
		width: 201px;
		height: 50px;
	}
}
.main .preface-desc {
	font-size: 16px;
	color: #333;
	line-height: 2.25;
	letter-spacing: 0.04em;
	margin: 29px 0 0 5px;
}
@media (max-width: 640px) {
	.main .preface-desc {
		font-size: 14px;
		line-height: 2;
		letter-spacing: 0.1em;
		margin: 17px 0 0;
	}
}
.main .season {
	position: relative;
	overflow: hidden;
	margin: 145px 0 162px;
}
@media (max-width: 640px) {
	.main .season {
		margin: 67px 0;
	}
}
.main .season-container {
	position: relative;
	z-index: 2;
	width: 1126px;
	margin: 0 auto;
	padding: 0 30px;
	-webkit-transition: opacity 1.2s 0s;
	transition: opacity 1.2s 0s;
	opacity: 0;
}
.main .season-container.is-active {
	opacity: 1;
}
@media (max-width: 640px) {
	.main .season-container {
		width: 100%;
		padding: 0 40px;
	}
}
.main .season-heading {
	position: relative;
	overflow: hidden;
	width: 100%;
	height: 500px;
}
@media (max-width: 640px) {
	.main .season-heading {
		height: auto;
		padding-top: 66.67%;
	}
}
.main .season-heading-source {
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	background-position: 50%;
	background-repeat: no-repeat;
	background-size: cover;
}
.main .season-heading-text {
	font-size: 0;
	letter-spacing: 0;
	color: transparent;
}
.main .season-research-wrapper {
	margin-top: 387px;
	position: relative;
	padding: 181px 0 88px;
}
@media (max-width: 640px) {
	.main .season-research-wrapper {
		margin-top: 495px;
		background-color: #f6f4f1;
		padding-top: 9em;
	}
}
@media (max-width: 320) {
	.main .season-research-wrapper {
		padding-top: 13em;
	}
}
.main .season-research-wrapper:before {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	width: calc(100% - 467px);
	height: 100%;
	background-color: #f5f3ef;
}
@media (max-width: 640px) {
	.main .season-research-wrapper:before {
		display: none;
	}
}
.main .season-research-wrapper.season-research-wrapper-summer:before {
	right: auto;
	left: 0;
}
@media (max-width: 640px) {
	.main .season-research-wrapper.season-research-wrapper-autumn,
	.main .season-research-wrapper.season-research-wrapper-winter {
		padding-top: 12em;
	}
}
.main .season-research-wrapper.season-research-wrapper-winter:before {
	right: auto;
	left: 0;
}
.main .season-research-content {
	margin-top: -7px;
	display: -webkit-box;
	display: flex;
}
@media (max-width: 640px) {
	.main .season-research-content {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		flex-direction: column;
	}
}
.main .season-research-content.season-research-content-summer,
.main .season-research-content.season-research-content-winter {
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	flex-direction: row-reverse;
}
@media (max-width: 640px) {
	.main .season-research-content.season-research-content-summer,
	.main .season-research-content.season-research-content-winter {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		flex-direction: column;
	}
}
.main .season-research-image {
	position: relative;
	width: 422px;
	height: 282px;
	overflow: hidden;
}
@media (max-width: 640px) {
	.main .season-research-image {
		width: 100%;
		padding-top: 59.323%;
		height: auto;
	}
}
.main .season-research-image-source {
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	background-position: 50%;
	background-repeat: no-repeat;
	background-size: cover;
}
.main .season-research-text {
	width: 648px;
	padding-left: 62px;
}
@media (max-width: 640px) {
	.main .season-research-text {
		margin-top: 30px;
		width: 100%;
		padding: 0;
	}
}
.main .season-research-text.season-research-text-summer,
.main .season-research-text.season-research-text-winter {
	padding-left: 0;
	padding-right: 46px;
}
@media (max-width: 640px) {
	.main .season-research-text.season-research-text-summer,
	.main .season-research-text.season-research-text-winter {
		padding: 0;
	}
}
.main .season-research-heading {
	font-size: 16px;
	color: #2f270a;
	color: red;
	padding-bottom: 21px;
	border-bottom: 1px solid #8c8a89;
}
@media (max-width: 640px) {
	.main .season-research-heading {
		padding-bottom: 16px;
		border: none;
	}
}
.main .season-research-sub-header {
	display: block;
	font-size: 14px;
	letter-spacing: 0.07em;
	color: #2f270a;
	text-shadow: 0 0;
}
@media (max-width: 640px) {
	.main .season-research-sub-header {
		position: relative;
		letter-spacing: 0.04em;
	}
	.main .season-research-sub-header:after {
		content: "";
		position: absolute;
		right: 0;
		top: 50%;
		-webkit-transform: translateY(-50%);
		transform: translateY(-50%);
		height: 1px;
		width: 48.475%;
		background-color: #797775;
	}
}
.main .season-research-header {
	display: block;
	margin-top: 19px;
	width: 261px;
}
@media (max-width: 640px) {
	.main .season-research-header {
		margin-top: 23px;
	}
}
.main .season-research-header svg {
	width: 520px;
	height: 24px;
}
@media (max-width: 640px) {
	.main .season-research-header svg {
		width: 237px;
		height: 52px;
	}
}
.main .season-research-header.season-research-header-summer svg {
	width: 591px;
}
@media (max-width: 640px) {
	.main .season-research-header.season-research-header-summer svg {
		width: 261px;
		height: 54px;
	}
}
.main .season-research-header.season-research-header-autumn svg {
	width: 569px;
}
@media (max-width: 640px) {
	.main .season-research-header.season-research-header-autumn svg {
		width: 241px;
	}
}
.main .season-research-header.season-research-header-winter svg {
	width: 543px;
}
@media (max-width: 640px) {
	.main .season-research-header.season-research-header-winter svg {
		width: 277px;
		height: 52px;
	}
}
.main .season-research-content-desc {
	margin-top: 20px;
	font-size: 16px;
	color: #2f270a;
	letter-spacing: 0.045em;
	line-height: 2.25;
	text-shadow: 0 0;
}
@media (max-width: 640px) {
	.main .season-research-content-desc {
		margin: 0;
		font-size: 14px;
		letter-spacing: 0.04em;
		line-height: 2;
	}
}
.main .season-story {
	position: absolute;
	z-index: 1;
	top: 47%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 100%;
	height: 614px;
	padding: 98px 0 123px;
}
@media (max-width: 640px) {
	.main .season-story {
		width: calc(100% - 21px);
		top: 505px;
		height: auto;
		padding: 39px 0 60px;
		background-color: #fff;
		box-shadow: 2px 2px 24px -1px rgba(0, 0, 0, 0.22);
	}
}
.main .season-story:before {
	content: "";
	position: absolute;
	width: calc(100% - 151px);
	height: 100%;
	box-shadow: 2px 2px 24px -1px rgba(0, 0, 0, 0.22);
	top: 0;
	left: 0;
	background-color: #fff;
}
@media (max-width: 640px) {
	.main .season-story:before {
		display: none;
	}
}
.main .season-story.season-story-summer,
.main .season-story.season-story-winter {
	right: 0;
}
@media (max-width: 640px) {
	.main .season-story.season-story-summer,
	.main .season-story.season-story-winter {
		left: auto;
		right: 0;
	}
}
.main .season-story.season-story-summer:before,
.main .season-story.season-story-winter:before {
	left: auto;
	right: 0;
}
.main .season-story.season-story-summer {
	height: 572px;
}
@media (max-width: 640px) {
	.main .season-story.season-story-summer {
		height: auto;
	}
}
.main .season-story.season-story-autumn {
	height: 584px;
}
@media (max-width: 640px) {
	.main .season-story.season-story-autumn {
		height: auto;
	}
}
.main .season-story-container {
	padding-right: 127px;
}
@media (max-width: 640px) {
	.main .season-story-container {
		padding-right: 0;
	}
}
.main .season-story-reverse-container {
	padding-left: 120px;
}
@media (max-width: 640px) {
	.main .season-story-reverse-container {
		padding-left: 0;
	}
}
.main .season-story-heading {
	position: relative;
	width: 949px;
}
.main .season-story-header {
	position: absolute;
	top: -206px;
	left: -89px;
	width: 930px;
	height: 140px;
}
@media (max-width: 640px) {
	.main .season-story-header {
		top: -84px;
		left: -36px;
		width: 345px;
		height: 60px;
	}
}
.main .season-story-header.season-story-header-summer {
	top: -233px;
	left: -107px;
	width: 1073px;
	height: 187px;
}
@media (max-width: 640px) {
	.main .season-story-header.season-story-header-summer {
		top: -96px;
		left: -40px;
		width: 341px;
		height: 69px;
	}
}
.main .season-story-header.season-story-header-autumn {
	top: -249px;
	left: -90px;
	width: 1023px;
	height: 196px;
}
@media (max-width: 640px) {
	.main .season-story-header.season-story-header-autumn {
		top: -109px;
		left: -31px;
		width: 342px;
		height: 87px;
	}
}
.main .season-story-header.season-story-header-winter {
	top: -191px;
	left: -6px;
	width: 715px;
	height: 97px;
}
@media (max-width: 640px) {
	.main .season-story-header.season-story-header-winter {
		top: -80px;
		left: -13px;
		width: 288px;
		height: 43px;
	}
}
.main .season-story-heading-jp svg {
	width: 644px;
	height: 108px;
}
@media (max-width: 640px) {
	.main .season-story-heading-jp svg {
		width: 267.5px;
		height: 113px;
	}
}
@media (max-width: 640px) {
	.main .season-story-heading-jp.season-story-heading-jp-summer svg {
		width: 285.5px;
		height: 118px;
	}
}
.main .season-story-heading-jp.season-story-heading-jp-autumn svg {
	width: 705px;
}
@media (max-width: 640px) {
	.main .season-story-heading-jp.season-story-heading-jp-autumn svg {
		width: 250px;
		height: 158px;
	}
}
.main .season-story-heading-jp.season-story-heading-jp-winter svg {
	width: 717px;
}
@media (max-width: 640px) {
	.main .season-story-heading-jp.season-story-heading-jp-winter svg {
		width: 224px;
		height: 157px;
	}
}
.main .season-story-heading-en {
	background-repeat: no-repeat;
	background-position: 50%;
	background-size: cover;
	position: absolute;
	top: 34px;
	right: 6px;
	width: 505px;
	height: 135px;
}
@media (max-width: 640px) {
	.main .season-story-heading-en {
		width: 252px;
		height: 67px;
		right: auto;
		top: auto;
		left: 41px;
		bottom: -31px;
	}
}
.main .season-story-heading-en.season-story-heading-en-summer {
	width: 513px;
	height: 135px;
}
@media (max-width: 640px) {
	.main .season-story-heading-en.season-story-heading-en-summer {
		width: 256px;
		height: 67px;
	}
}
.main .season-story-heading-en.season-story-heading-en-winter {
	width: 508px;
	height: 129px;
}
@media (max-width: 640px) {
	.main .season-story-heading-en.season-story-heading-en-winter {
		width: 254px;
		height: 64px;
	}
}
.main .season-story-desc {
	margin-top: 46px;
	font-size: 16px;
	color: #000;
	letter-spacing: 0.045em;
	line-height: 2.65;
	text-shadow: 0 0;
}
@media (max-width: 640px) {
	.main .season-story-desc {
		margin-top: 26px;
		font-size: 14px;
		letter-spacing: 0.04em;
		line-height: 2;
	}
}
.main .season-story-letter-adjusted {
	display: inline-block;
	width: 0;
}
@media (max-width: 640px) {
	.main .season-story-letter-adjusted {
		display: inline;
	}
}
@media (max-width: 640px) {
	.main .season-story-letter-adjusted-sp {
		display: inline-block;
		width: 0;
	}
}
.main .challenge {
	position: relative;
	padding: 0 20px;
}
.main .challenge-scroll {
	position: absolute;
	top: 0;
	left: 50%;
	width: 1px;
	height: 130px;
	overflow: hidden;
	margin: 0 auto;
	z-index: 1;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}
.main .challenge-scroll:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	background-color: #909090;
}
@media (max-width: 640px) {
	.main .challenge-scroll {
		height: 65px;
	}
}
.main .challenge-scroll-inner {
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	background-color: #2c2d2a;
	z-index: 2;
	-webkit-animation: scrolling 2s cubic-bezier(0.075, 0.82, 0.165, 1) infinite;
	animation: scrolling 2s cubic-bezier(0.075, 0.82, 0.165, 1) infinite;
}
.main .challenge-bg {
	position: relative;
	width: 100%;
	height: 996px;
	background-position: center 180px;
	background-size: 50%;
	background-repeat: no-repeat;
	-webkit-transition: opacity 1.5s 0.9s;
	transition: opacity 1.5s 0.9s;
	opacity: 0;
	max-width: 1640px;
	margin: 0 auto;
}
@media only screen and (min-width: 769px) and (max-height: 680px) {
	.main .challenge-bg {
		height: 890px;
	}
}
@media (max-width: 640px) {
	.main .challenge-bg {
		background-size: 100%;
		bottom: 0;
		height: 492px;
	}
}
.main .challenge-bg-pc {
	display: block;
}
@media (max-width: 640px) {
	.main .challenge-bg-pc {
		display: none;
	}
}
.main .challenge-bg-sp {
	display: none;
}
@media (max-width: 640px) {
	.main .challenge-bg-sp {
		display: block;
	}
}
.main .challenge-heading {
	position: absolute;
	top: 130px;
	left: 50%;
	width: 812px;
	height: 28px;
	margin: 70px auto 0;
	-webkit-transition:
		opacity 0.6s 0s,
		-webkit-transform 0.6s 0s;
	transition:
		opacity 0.6s 0s,
		-webkit-transform 0.6s 0s;
	transition:
		opacity 0.6s 0s,
		transform 0.6s 0s;
	transition:
		opacity 0.6s 0s,
		transform 0.6s 0s,
		-webkit-transform 0.6s 0s;
	opacity: 0;
	-webkit-transform: translate3d(-50%, 15px, 0);
	transform: translate3d(-50%, 15px, 0);
}
@media (max-width: 640px) {
	.main .challenge-heading {
		width: 248px;
		height: 53px;
		top: 35px;
	}
}
.main .is-active .challenge-bg,
.main .is-active .challenge-heading {
	opacity: 1;
}
.main .is-active .challenge-bg {
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
}
.main .is-active .challenge-heading {
	-webkit-transform: translate3d(-50%, 0, 0);
	transform: translate3d(-50%, 0, 0);
}
@keyframes scrolling {
	0% {
		-webkit-transform: translateY(-100%);
		transform: translateY(-100%);
	}
	25% {
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
	to {
		-webkit-transform: translateY(100%);
		transform: translateY(100%);
	}
}
.main .column-detail {
	position: relative;
	overflow: hidden;
	padding: 0 0 120px;
	margin-top: -110px;
}
@media (max-width: 640px) {
	.main .column-detail {
		padding: 88px 0 75px;
	}
}
.main .column-detail-heading-ja {
	position: relative;
	z-index: 1;
	width: 836px;
	height: 34px;
	margin: 0 auto;
	-webkit-transition:
		opacity 0.6s 0.3s,
		-webkit-transform 0.6s 0.3s;
	transition:
		opacity 0.6s 0.3s,
		-webkit-transform 0.6s 0.3s;
	transition:
		opacity 0.6s 0.3s,
		transform 0.6s 0.3s;
	transition:
		opacity 0.6s 0.3s,
		transform 0.6s 0.3s,
		-webkit-transform 0.6s 0.3s;
	opacity: 0;
	-webkit-transform: translate3d(0, 15px, 0);
	transform: translate3d(0, 15px, 0);
}
@media (max-width: 640px) {
	.main .column-detail-heading-ja {
		width: 281px;
		height: 56px;
	}
}
.main .column-detail-heading-en {
	position: relative;
	left: 20px;
	width: 446px;
	height: 146px;
	margin: -25px auto 0;
	z-index: 1;
	-webkit-transition:
		opacity 0.6s 0s,
		-webkit-transform 0.6s 0s;
	transition:
		opacity 0.6s 0s,
		-webkit-transform 0.6s 0s;
	transition:
		opacity 0.6s 0s,
		transform 0.6s 0s;
	transition:
		opacity 0.6s 0s,
		transform 0.6s 0s,
		-webkit-transform 0.6s 0s;
	opacity: 0;
	-webkit-transform: translate3d(0, 15px, 0);
	transform: translate3d(0, 15px, 0);
}
@media (max-width: 640px) {
	.main .column-detail-heading-en {
		width: 120px;
		height: 47px;
		left: 0;
		margin-top: -13px;
	}
}
.main .is-active .column-detail-heading-en,
.main .is-active .column-detail-heading-ja {
	opacity: 1;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
}
.main .column-detail-desc {
	position: relative;
	font-size: 16px;
	font-weight: 500;
	text-align: center;
	line-height: 2;
	letter-spacing: 0;
	color: #2f270a;
	margin: -89px auto 0;
	z-index: 1;
}
@media (max-width: 640px) {
	.main .column-detail-desc {
		font-size: 12px;
		line-height: 1.917;
		margin: -11px auto 0;
	}
}
.main .column-detail-body {
	position: relative;
	z-index: 1;
	width: 826px;
	margin: 40px auto 0;
	-webkit-transition:
		opacity 0.6s 0s,
		-webkit-transform 0.6s 0s;
	transition:
		opacity 0.6s 0s,
		-webkit-transform 0.6s 0s;
	transition:
		opacity 0.6s 0s,
		transform 0.6s 0s;
	transition:
		opacity 0.6s 0s,
		transform 0.6s 0s,
		-webkit-transform 0.6s 0s;
	opacity: 0;
	-webkit-transform: translate3d(0, 15px, 0);
	transform: translate3d(0, 15px, 0);
}
.main .column-detail-body.is-active {
	opacity: 1;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
}
@media (max-width: 640px) {
	.main .column-detail-body {
		width: 335px;
		margin: 22px auto 0;
		-webkit-transform: translate3d(0, 6px, 0);
		transform: translate3d(0, 6px, 0);
	}
}
.main .column-detail-body-inner {
	display: block;
}
@media (max-width: 640px) {
	.main .column-detail-body-inner {
		display: block;
	}
}
.main .column-detail-image {
	position: relative;
	width: 484px;
	padding-top: 12px;
	margin-left: auto;
	margin-right: auto;
}
@media (max-width: 640px) {
	.main .column-detail-image {
		width: 100%;
		padding-top: 0;
		margin: 0 auto;
	}
}
.main .column-detail-badge {
	position: absolute;
	top: 0;
	left: -59px;
	width: 140px;
	height: 140px;
}
@media (max-width: 640px) {
	.main .column-detail-badge {
		top: -5px;
		left: calc(50% - 86px);
		width: 70px;
		height: 70px;
	}
}
.main .column-detail-product {
	position: relative;
	z-index: 1;
	width: 288px;
	height: 484px;
	margin: 0 auto;
}
@media (max-width: 640px) {
	.main .column-detail-product {
		width: auto;
		aspect-ratio: 447/751;
		height: 311px;
	}
}
.main .column-detail-text {
	width: auto;
	padding-top: 25px;
}
@media (max-width: 640px) {
	.main .column-detail-text {
		width: 100%;
		padding: 15px 20px 0;
		margin: 0 auto;
	}
}
.main .column-detail-brand {
	display: block;
	font-size: 16px;
	color: #595757;
	text-align: center;
}
@media (max-width: 640px) {
	.main .column-detail-brand {
		font-size: 12px;
	}
}
.main .column-detail-name {
	display: block;
	font-size: 26px;
	text-align: center;
	color: #595757;
	letter-spacing: 0.1em;
	width: fit-content;
	margin: 14px auto 0;
	position: relative;
}

.main .column-detail-name a {
	display: block;
	transition: 0.3s;
}

@media (any-hover: hover) {
	.main .column-detail-name a:hover {
		opacity: 0.7;
	}
	.main .column-detail-name:hover::after {
		opacity: 0.7;
	}
}

.main .genre {
	font-size: 18px;
	text-align: center;
	color: #595757;
	text-align: center;
	display: block;
	margin-top: 11px;
	letter-spacing: 0.1em;
}
@media (max-width: 640px) {
	.main .genre {
		font-size: 12px;
	}
}

.main .column-detail-name::after {
	content: "";
	position: absolute;
	bottom: -2px;
	left: 0;
	right: 0;
	width: 100%;
	height: 2px;
	background-color: #595757;
	transition: 0.3s all;
}
@media (max-width: 640px) {
	.main .column-detail-name {
		font-size: 17px;
		margin-top: 11px;
	}
	.main .column-detail-name::after {
		height: 1px;
	}
}
.main .column-detail-price {
	display: block;
	position: relative;
	color: #595757;
	display: flex;
	flex-direction: column;
	width: fit-content;
	align-items: center;
	margin: 25px auto 0;
	letter-spacing: 0.05em;
}

.main .column-detail-price > span + span {
	margin-top: 4px;
}

.main .column-detail-price .liquid,
.main .column-detail-price .price {
	font-size: 24px;
}

@media (max-width: 640px) {
	.main .column-detail-price .liquid,
	.main .column-detail-price .price {
		font-size: 18px;
	}
}
.main .column-detail-price .liquid {
	margin-right: 15px;
}

.main .column-detail-price .price {
	letter-spacing: 0.1em;
}

.main .column-detail-price .small {
	font-size: 58.333%;
}

@media (max-width: 640px) {
	.main .column-detail-price {
		margin: 18px auto 0;
	}
}
/* .main .column-detail-price span {
	display: -webkit-box;
	display: flex;
	width: 182px;
	margin-bottom: 7px;
	justify-content: center;
} */
/* @media (max-width: 640px) {
	.main .column-detail-price span {
		width: fit-content;
		margin: 0 auto 4px;
	}
} */
.main .column-detail-price svg {
	height: 20px;
	position: relative;
	flex-shrink: 0;
}

@media (max-width: 640px) {
	.main .column-detail-price svg {
		height: 17px;
	}
}
.main .column-detail-price-80ml {
	width: 43px;
	margin-right: 26px;
	margin-left: auto;
}

@media (max-width: 640px) {
	.main .column-detail-price-80ml {
		width: 35px;
	}
}
.main .column-detail-price-top {
	top: 1px;
	width: 75px;
	margin-right: 5px;
}

@media (max-width: 640px) {
	.main .column-detail-price-top {
		width: 65px;
	}
}
.main .column-detail-price-160ml {
	width: 56px;
	margin-right: 19px;
}
@media (max-width: 640px) {
	.main .column-detail-price-160ml {
		width: 45px;
		margin-right: 22px;
	}
}
.main .column-detail-price-bottom {
	width: 92px;
	margin-right: 5px;
}

@media (max-width: 640px) {
	.main .column-detail-price-bottom {
		width: 78px;
	}
}

.main .column-detail-price-tax {
	height: 13px;
	width: 37px;
	top: 2px;
	margin-left: 7px;
}
@media (max-width: 640px) {
	.main .column-detail-price-tax {
		width: 30px;
		margin-left: 0;
	}
}
.main .column-detail-facts {
	background-color: #f6f6f6;
	overflow: auto;
	width: 100%;
	height: 145px;
	margin-top: 36px;
	padding: 15px 30px;
	-webkit-overflow-scrolling: auto;
}
@media (max-width: 640px) {
	.main .column-detail-facts {
		margin-top: 30px;
		padding: 16px 23px;
	}
}
.main .column-detail-facts::-webkit-scrollbar {
	width: 4px;
	background-color: transparent;
}
.main .column-detail-facts::-webkit-scrollbar-thumb {
	background-color: #acacba;
	border-radius: 2px;
}
.main .column-detail-facts-heading {
	font-weight: 700;
}
.main .column-detail-facts-body,
.main .column-detail-facts-heading {
	font-size: 11px;
	line-height: 2;
	letter-spacing: 1.54px;
	color: #2f270a;
}
.main .column-detail-button {
	position: relative;
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	align-items: center;
	width: 420px;
	height: 60px;
	margin: 80px auto 0;
	font-size: 16px;
	font-weight: 300;
	line-height: 1;
	letter-spacing: 0.08em;
	text-align: center;
	color: #fff;
	background-color: #595451;
	text-decoration: none;
	cursor: pointer;
	-webkit-transition:
		opacity 0.3s,
		-webkit-filter 0.3s;
	transition:
		opacity 0.3s,
		-webkit-filter 0.3s;
	transition:
		filter 0.3s,
		opacity 0.3s;
	transition:
		filter 0.3s,
		opacity 0.3s,
		-webkit-filter 0.3s;
}
.main .column-detail-button:hover {
	-webkit-filter: brightness(1.3);
	filter: brightness(1.3);
}
@media (max-width: 640px) {
	.main .column-detail-button {
		width: 295px;
		height: 50px;
		font-size: 13px;
		letter-spacing: 1.2px;
		margin-top: 60px;
	}
}
.main .column-detail-icon {
	position: absolute;
	right: 78px;
	width: 32px;
	height: 4px;
}
@media (max-width: 640px) {
	.main .column-detail-icon {
		right: 20px;
	}
}
.main .column-banner {
	position: relative;
	padding: 70px 0 100px;
	background-color: #f3f0ec;
}
@media (max-width: 640px) {
	.main .column-banner {
		padding: 50px 0 60px;
	}
}
.main .column-banner-body {
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: justify;
	justify-content: space-between;
	width: 1066px;
	margin: 0 auto;
}
@media (max-width: 640px) {
	.main .column-banner-body {
		display: block;
		width: 335px;
		margin-top: -37px;
	}
}
@media (max-width: 640px) {
	.main .column-banner-item {
		margin-top: 31px;
	}
}
.main .column-banner-intro-left {
	width: 179px;
	height: 21px;
	margin: 0 auto;
}
@media (max-width: 640px) {
	.main .column-banner-intro-left {
		width: 138px;
		height: 14px;
	}
}
.main .column-banner-intro-right {
	width: 276px;
	height: 21px;
	margin: 0 auto;
}
@media (max-width: 640px) {
	.main .column-banner-intro-right {
		width: 212px;
		height: 14px;
	}
}
.main .column-banner-copy {
	margin-top: 10px;
	font-size: 21px;
	font-weight: 500;
	letter-spacing: 1.68px;
	text-align: center;
	color: #2f270a;
}
@media (max-width: 640px) {
	.main .column-banner-copy {
		font-size: 16px;
		font-weight: 500;
		letter-spacing: 1.28px;
		text-align: center;
	}
}
.main .column-banner-anchor {
	display: block;
	-webkit-transition:
		opacity 0.3s,
		-webkit-filter 0.3s;
	transition:
		opacity 0.3s,
		-webkit-filter 0.3s;
	transition:
		filter 0.3s,
		opacity 0.3s;
	transition:
		filter 0.3s,
		opacity 0.3s,
		-webkit-filter 0.3s;
}
.main .column-banner-anchor:hover {
	-webkit-filter: brightness(1.1);
	filter: brightness(1.1);
}
.main .column-banner-image {
	width: 500px;
	height: 150px;
	margin-top: 23px;
}
@media (max-width: 640px) {
	.main .column-banner-image {
		width: 335px;
		height: 103px;
		margin-top: 15px;
	}
}

.u-min {
	font-family: "BIZ UDMincho", serif !important;
	font-weight: 400 !important;
}

.u-yumim {
	font-family: "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho Pro", serif !important;
}
