
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
		-webkit-text-size-adjust: 100%; /* 2 */
		font-size: 62.5%;
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
		margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
		display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
		-webkit-box-sizing: content-box;
		        box-sizing: content-box; /* 1 */
		height: 0; /* 1 */
		overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
		font-family: monospace, monospace; /* 1 */
		font-size: 1em; /* 2 */
}

/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
		background-color: transparent;
		text-decoration: none;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
		border-bottom: none; /* 1 */
		text-decoration: underline; /* 2 */
		-webkit-text-decoration: underline dotted;
		        text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
		font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
		font-family: monospace, monospace; /* 1 */
		font-size: 1em; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
		font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
		font-size: 75%;
		line-height: 0;
		position: relative;
		vertical-align: baseline;
}

sub {
		bottom: -0.25em;
}

sup {
		top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
		border-style: none;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
		font-family: inherit; /* 1 */
		font-size: 100%; /* 1 */
		line-height: 1.15; /* 1 */
		margin: 0; /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input { /* 1 */
		overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select { /* 1 */
		text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type=button],
[type=reset],
[type=submit] {
		-webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
		border-style: none;
		padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
		outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
		padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
		-webkit-box-sizing: border-box;
		        box-sizing: border-box; /* 1 */
		color: inherit; /* 2 */
		display: table; /* 1 */
		max-width: 100%; /* 1 */
		padding: 0; /* 3 */
		white-space: normal; /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
		vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
		overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type=checkbox],
[type=radio] {
		-webkit-box-sizing: border-box;
		        box-sizing: border-box; /* 1 */
		padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
		height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type=search] {
		-webkit-appearance: textfield; /* 1 */
		outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
		-webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
		-webkit-appearance: button; /* 1 */
		font: inherit; /* 2 */
}

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
		display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
		display: list-item;
}

/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
		display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
		display: none;
}

p {
		margin: unset;
}

ul {
		padding-left: unset;
		margin: unset;
}

li {
		list-style: none;
}

h1 {
		margin: unset;
}

h2 {
		margin: unset;
}

h3 {
		margin: unset;
}

h4 {
		margin: unset;
}

h5 {
		margin: unset;
}

h6 {
		margin: unset;
}

html, body {
		margin: 0;
		padding: 0;
}

* {
		-webkit-box-sizing: border-box;
		        box-sizing: border-box;
}

.l-main {
		font-weight: 500;
		color: #794123;
		line-height: 1.5;
		font-family: "Zen Maru Gothic", sans-serif;
}

img {
		width: 100%;
		height: auto;
		display: block;
}

@media screen and (min-width: 0) and (max-width: 767px) {
		html {
				overflow-x: hidden;
		}
}
.is-pc-only {
		display: block !important;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.is-pc-only {
				display: none !important;
		}
}

.is-sp-only {
		display: none !important;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.is-sp-only {
				display: block !important;
		}
}

.p-factory h1, .p-factory h2, .p-factory h3, .p-factory h4, .p-factory h5, .p-factory h6 {
		font-family: "Zen Maru Gothic", sans-serif !important;
		border-bottom: none !important;
		font-weight: 700;
		line-height: 1.5;
		padding: unset;
}
.p-factory a:hover {
		text-decoration: none !important;
}

.l-inner {
		width: min(79.1666666667vw, 1140px);
		margin: 0 auto;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.l-inner {
				width: 100%;
				padding: 0 5.1282051282vw;
		}
}

.l-under {
		background: url("/factory/virtual/assets/img/under/common/bg_process_description.png") repeat top left/auto, rgba(255, 219, 148, 0.2);
		min-height: 100vh;
		height: 100%;
}
.l-under__header {
		background: #C62A19;
		position: relative;
		z-index: 1;
}
.l-under__header::before {
		content: "";
		position: absolute;
		display: block;
		width: 100%;
		height: min(0.625vw, 9px);
		background: url("/factory/virtual/assets/img/under/common/img_header_line.svg") repeat-x center center/contain;
		bottom: max(-0.4166666667vw, -6px);
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.l-under__header::before {
				height: 2.3076923077vw;
				bottom: -1.5384615385vw;
				background: url("/factory/virtual/assets/img/under/common/img_header_line_sp.svg") repeat-x center center/contain;
		}
}
.l-under__header_inner {
		position: relative;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		max-width: 1440px;
		padding: 0 min(2.0833333333vw, 30px);
		margin: 0 auto;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
}
.l-under__header_content01 {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		gap: min(1.4583333333vw, 21px);
		padding: min(0.625vw, 9px) 0;
		position: absolute;
		left: min(2.0833333333vw, 30px);
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.l-under__header_content01 {
				display: none;
		}
}
.l-under__header_content02 {
		padding: min(0.9027777778vw, 13px) 0 min(1.25vw, 18px);
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.l-under__header_content02 {
				padding: 4.8717948718vw 0 4.6153846154vw;
		}
}
.l-under__header_content03 {
		position: absolute;
		right: min(2.0833333333vw, 30px);
}
.l-under__header_logo {
		width: min(12.5694444444vw, 181px);
}
.l-under__header_logo_link {
		display: block;
		height: auto;
		-webkit-transition: opacity 0.3s ease;
		transition: opacity 0.3s ease;
}
.l-under__header_logo_link:hover {
		opacity: 0.8;
}
.l-under__header_back-btn {
		width: min(3.3333333333vw, 48px);
}
.l-under__header_back-btn_link {
		display: block;
		height: auto;
		-webkit-transition: opacity 0.3s ease;
		transition: opacity 0.3s ease;
}
.l-under__header_back-btn_link:hover {
		opacity: 0.8;
}
.l-under__header_title {
		font-size: min(2.7777777778vw, 40px);
		font-weight: 700;
		text-align: center;
		line-height: 1.23;
		color: #fff;
		position: relative;
}
.l-under__header_title::before {
		position: absolute;
		content: "";
		display: block;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.l-under__header_title {
				font-size: 5.641025641vw;
				line-height: 1.23;
		}
}
.l-under__header_all-process-btn {
		width: min(17.9166666667vw, 258px);
		position: relative;
}
.l-under__header_all-process-btn_link {
		display: block;
		width: 100%;
		color: #C62A19;
		background: #FCD24C;
		border-radius: min(4.8611111111vw, 70px);
		font-size: min(1.6666666667vw, 24px);
		font-weight: 700;
		padding-left: min(2.5vw, 36px);
		padding-top: min(0.2777777778vw, 4px);
		padding-bottom: min(0.4166666667vw, 6px);
		-webkit-transition: all 0.3s ease;
		transition: all 0.3s ease;
		position: relative;
		z-index: 1;
}
.l-under__header_all-process-btn_link:hover {
		-webkit-transform: translateY(min(0.2777777778vw, 4px));
		        transform: translateY(min(0.2777777778vw, 4px));
		color: #C62A19 !important;
}
.l-under__header_all-process-btn_link::before {
		content: "";
		position: absolute;
		width: min(1.9444444444vw, 28px);
		height: min(1.9444444444vw, 28px);
		background: url("/factory/virtual/assets/img/under/common/icon_pdf.svg") no-repeat center center/contain;
		top: min(0.625vw, 9px);
		right: min(1.3888888889vw, 20px);
}
.l-under__header_all-process-btn_shadow {
		position: absolute;
		width: 100%;
		height: 100%;
		background: #C89A07;
		border-radius: min(4.8611111111vw, 70px);
		top: min(0.2777777778vw, 4px);
		left: 0;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.l-under__header_all-process-btn {
				display: none;
		}
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.l-under__footer {
				background: #C62A19;
				padding-top: 6.9230769231vw;
				padding-bottom: 8.9743589744vw;
		}
		.l-under__footer_all-process-btn {
				width: 90.7692307692vw;
				margin: 0 auto 10vw;
				position: relative;
		}
		.l-under__footer_all-process-btn_link {
				display: block;
				width: 100%;
				color: #C62A19;
				background: #FCD24C;
				border-radius: 17.9487179487vw;
				font-size: 6.1538461538vw;
				font-weight: 700;
				padding-left: 21.2820512821vw;
				padding-top: 1.0256410256vw;
				padding-bottom: 1.5384615385vw;
				-webkit-transition: all 0.3s ease;
				transition: all 0.3s ease;
				position: relative;
				z-index: 1;
		}
		.l-under__footer_all-process-btn_link:hover {
				-webkit-transform: translateY(min(0.2777777778vw, 4px));
				        transform: translateY(min(0.2777777778vw, 4px));
				color: #C62A19 !important;
		}
		.l-under__footer_all-process-btn_link::before {
				content: "";
				position: absolute;
				width: 7.1794871795vw;
				height: 7.1794871795vw;
				background: url("/factory/virtual/assets/img/under/common/icon_pdf.svg") no-repeat center center/contain;
				top: 2.3076923077vw;
				right: 17.1794871795vw;
		}
		.l-under__footer_all-process-btn_shadow {
				position: absolute;
				width: 100%;
				height: 100%;
				background: #C89A07;
				border-radius: 17.9487179487vw;
				top: 1.0256410256vw;
				left: 0;
		}
		.l-under__footer_content01 {
				position: relative;
		}
		.l-under__footer_logo {
				width: 47.9487179487vw;
				margin: 0 auto;
		}
		.l-under__footer_logo_link {
				display: block;
				height: auto;
				-webkit-transition: opacity 0.3s ease;
				transition: opacity 0.3s ease;
		}
		.l-under__footer_logo_link:hover {
				opacity: 0.8;
		}
		.l-under__footer_back-btn {
				width: 12.3076923077vw;
				position: absolute;
				top: -3.0769230769vw;
				left: 3.5897435897vw;
		}
		.l-under__footer_back-btn_link {
				display: block;
				height: auto;
				-webkit-transition: opacity 0.3s ease;
				transition: opacity 0.3s ease;
		}
		.l-under__footer_back-btn_link:hover {
				opacity: 0.8;
		}
}

.c-btn-wrap {
		width: min(30.4861111111vw, 439px);
		height: min(10.7638888889vw, 155px);
		overflow: hidden;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-btn-wrap {
				width: min(84.6153846154vw, 330px);
				height: min(35.8974358974vw, 140px);
		}
}
.c-btn {
		display: block;
		width: 100%;
		height: 100%;
		position: relative;
		text-align: center;
		font-size: min(2.9166666667vw, 42px);
		color: #794123;
		line-height: 1;
		padding-top: min(5.5555555556vw, 80px);
		-webkit-transition: all 0.3s ease;
		transition: all 0.3s ease;
		font-family: "Nova Round", system-ui;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-btn {
				font-size: min(10.2564102564vw, 40px);
				padding-top: min(17.9487179487vw, 70px);
		}
}
.c-btn:hover {
		opacity: 0.8;
}
.c-btn::before {
		content: "";
		position: absolute;
		width: 100%;
		height: min(30.4861111111vw, 439px);
		display: block;
		background: url(/assets/images/common/bg_btn_green.svg) no-repeat left top/contain;
		left: 50%;
		-webkit-transform: translateX(-50%);
		        transform: translateX(-50%);
		z-index: -1;
		top: 0;
		-webkit-animation: rotate 10s linear infinite;
		        animation: rotate 10s linear infinite;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-btn::before {
				height: min(84.6153846154vw, 330px);
		}
}

@-webkit-keyframes rotate {
		from {
				-webkit-transform: translateX(-50%) rotate(0deg);
				        transform: translateX(-50%) rotate(0deg);
		}
		to {
				-webkit-transform: translateX(-50%) rotate(360deg);
				        transform: translateX(-50%) rotate(360deg);
		}
}

@keyframes rotate {
		from {
				-webkit-transform: translateX(-50%) rotate(0deg);
				        transform: translateX(-50%) rotate(0deg);
		}
		to {
				-webkit-transform: translateX(-50%) rotate(360deg);
				        transform: translateX(-50%) rotate(360deg);
		}
}
.btn {
		margin: 40px auto 0;
		padding: unset;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.btn {
				width: 100%;
		}
}
.btn a {
		display: block;
		width: 380px;
		background: #C62A19;
		color: #fff;
		padding: 20px;
		text-align: center;
		border-radius: 40px;
		font-size: 2rem;
		font-weight: 600;
		position: relative;
		-webkit-box-shadow: 0 5px 10px rgba(69, 62, 45, 0.35);
		        box-shadow: 0 5px 10px rgba(69, 62, 45, 0.35);
}
.btn a::before {
		content: "";
		width: 0;
		height: 0;
		border-style: solid;
		border-top: 7px solid transparent;
		border-bottom: 7px solid transparent;
		border-left: 9px solid #fff;
		border-right: 0;
		position: absolute;
		right: 30px;
		top: 50%;
		-webkit-transform: translateY(-50%);
		        transform: translateY(-50%);
}
.btn a:hover {
		opacity: 0.7;
		text-decoration: none;
}
.btn a:focus, .btn a:focus-visible {
		text-decoration: none;
		outline: unset;
		offset: unset;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.btn a {
				width: 100%;
		}
}

.p-home__mv__logo_txt {
		opacity: 0;
		-webkit-animation: logo 1s ease-in-out 1;
		        animation: logo 1s ease-in-out 1;
		-webkit-animation-fill-mode: forwards;
		        animation-fill-mode: forwards;
}
.p-home__mv__logo_txt.animated {
		-webkit-animation-fill-mode: forwards;
		        animation-fill-mode: forwards;
}
@-webkit-keyframes logo {
		0% {
				scale: 0.7;
				opacity: 0;
		}
		20% {
				scale: 0.9;
				opacity: 1;
		}
		40% {
				scale: 0.7;
		}
		60% {
				scale: 1;
		}
		100% {
				scale: 1;
				opacity: 1;
		}
}
@keyframes logo {
		0% {
				scale: 0.7;
				opacity: 0;
		}
		20% {
				scale: 0.9;
				opacity: 1;
		}
		40% {
				scale: 0.7;
		}
		60% {
				scale: 1;
		}
		100% {
				scale: 1;
				opacity: 1;
		}
}
.p-home__mv__chara {
		opacity: 0;
		bottom: 15%;
		left: -23%;
		-webkit-transition: 0.3s;
		transition: 0.3s;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.p-home__mv__chara {
				margin-left: -5%;
				left: -25%;
				bottom: 32%;
		}
}
.p-home__mv__chara.animated {
		opacity: 1;
		bottom: 20%;
		left: -30%;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.p-home__mv__chara.animated {
				bottom: 35%;
				left: -28%;
				opacity: 1;
		}
}

.jamp-in {
		-webkit-animation: jamp-in 0.7s ease;
		        animation: jamp-in 0.7s ease;
		-webkit-animation-fill-mode: forwards;
		        animation-fill-mode: forwards;
		opacity: 0;
}
@-webkit-keyframes jamp-in {
		0% {
				-webkit-transform: translateY(0);
				        transform: translateY(0);
				opacity: 0;
		}
		80% {
				-webkit-transform: translateY(-20px);
				        transform: translateY(-20px);
		}
		100% {
				-webkit-transform: translateY(0);
				        transform: translateY(0);
				opacity: 1;
		}
}
@keyframes jamp-in {
		0% {
				-webkit-transform: translateY(0);
				        transform: translateY(0);
				opacity: 0;
		}
		80% {
				-webkit-transform: translateY(-20px);
				        transform: translateY(-20px);
		}
		100% {
				-webkit-transform: translateY(0);
				        transform: translateY(0);
				opacity: 1;
		}
}
.bounce-img {
		-webkit-animation: bounce 0.5s linear infinite;
		        animation: bounce 0.5s linear infinite;
		-webkit-transform-origin: 30% 25% 0;
		        transform-origin: 30% 25% 0;
}

@-webkit-keyframes bounce {
		0% {
				-webkit-transform: translateY(0);
				        transform: translateY(0);
		}
		25% {
				-webkit-transform: translateY(2px);
				        transform: translateY(2px);
		}
		50% {
				-webkit-transform: translateY(0);
				        transform: translateY(0);
		}
		75% {
				-webkit-transform: translateY(-2px);
				        transform: translateY(-2px);
		}
		100% {
				-webkit-transform: translateY(0);
				        transform: translateY(0);
		}
}

@keyframes bounce {
		0% {
				-webkit-transform: translateY(0);
				        transform: translateY(0);
		}
		25% {
				-webkit-transform: translateY(2px);
				        transform: translateY(2px);
		}
		50% {
				-webkit-transform: translateY(0);
				        transform: translateY(0);
		}
		75% {
				-webkit-transform: translateY(-2px);
				        transform: translateY(-2px);
		}
		100% {
				-webkit-transform: translateY(0);
				        transform: translateY(0);
		}
}
.rotate-img {
		-webkit-animation: rotate 3s ease-in-out infinite;
		        animation: rotate 3s ease-in-out infinite;
}

@keyframes rotate {
		0%, 20%, 40% {
				-webkit-transform: rotate(0);
				        transform: rotate(0);
				-webkit-transform-origin: 0 100% 0;
				        transform-origin: 0 100% 0;
		}
		10%, 30% {
				-webkit-transform: rotate(3deg);
				        transform: rotate(3deg);
		}
}
.c-text {
		font-size: min(2.3611111111vw, 34px);
		color: #794123;
		font-family: "Nova Round", system-ui;
		font-weight: 400;
		font-style: normal;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-text {
				font-size: min(8.2051282051vw, 32px);
		}
}

.c-process__inner {
		position: relative;
}
.c-process__scrollX_wrap {
		overflow: hidden;
}
.c-process__scrollX_inner {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: stretch;
		    -ms-flex-align: stretch;
		        align-items: stretch;
		overflow-x: auto;
		overflow-y: hidden;
		scrollbar-width: none; /* Firefox */
		-ms-overflow-style: none; /* IE/Edge */
		-webkit-overflow-scrolling: touch; /* iOS スムーズスクロール */
		will-change: scroll-position; /* ブラウザ最適化 */
}
.c-process__scrollX_inner::-webkit-scrollbar {
		display: none; /* Chrome/Safari */
}
.c-process__scrollX_inner {
		padding-bottom: 1.3888888889vw;
		padding-top: 4.1666666667vw;
		background: #FCF9EE;
		height: calc(100vh - (min(6.9444444444vw, 100px) + min(15.1388888889vw, 218px)));
		min-height: calc(100vh - (min(6.9444444444vw, 100px) + min(15.1388888889vw, 218px)));
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-process__scrollX_inner {
				height: 60vh;
				padding-top: 10.2564102564vw;
				min-height: 60vh;
		}
}
.c-process__scrollX_scroll {
		position: fixed;
		width: min(14.3055555556vw, 206px);
		height: auto;
		z-index: 1;
		top: 50%;
		left: 50%;
		-webkit-transform: translate(-50%, -50%);
		        transform: translate(-50%, -50%);
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-process__scrollX_scroll {
				width: min(38.4615384615vw, 150px);
				position: absolute;
				top: min(64.1025641026vw, 250px);
		}
}
.c-process__scrollX_item {
		height: 100%;
		-ms-flex-negative: 0;
		    flex-shrink: 0;
}
.c-process__scrollX_item_inner {
		height: 100%;
		position: relative;
}
.c-process__scrollX_item_inner img {
		height: 100%;
		width: auto;
}
.c-process__scrollX_item_banner {
		margin-right: 3.4722222222vw;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-process__scrollX_item_banner {
				margin-right: 15.3846153846vw;
		}
}
.c-process__scrollX_item_banner_link {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		height: 100%;
		-webkit-box-align: end;
		    -ms-flex-align: end;
		        align-items: flex-end;
		-webkit-transition: opacity 0.3s ease;
		transition: opacity 0.3s ease;
}
.c-process__scrollX_item_banner_link:hover {
		opacity: 0.8;
}
.c-process__scrollX_item_banner img {
		max-width: 307px;
		height: 100%;
		-o-object-fit: contain;
		   object-fit: contain;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-process__scrollX_item_banner img {
				max-width: 64.1025641026vw;
		}
}
.c-process__description {
		max-width: 1440px;
		margin: 0 auto;
		position: relative;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-process__description {
				padding-right: 5.1282051282vw;
				padding-left: 5.1282051282vw;
		}
}
.c-process__description_item {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		display: block;
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
		-webkit-transition: opacity 0.4s ease, visibility 0.4s ease;
		transition: opacity 0.4s ease, visibility 0.4s ease;
}
.c-process__description_item.is-active {
		position: relative;
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
}
.c-process__description_item_inner {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		padding-top: min(1.3888888889vw, 20px);
		padding-bottom: min(1.25vw, 18px);
		-webkit-box-pack: justify;
		    -ms-flex-pack: justify;
		        justify-content: space-between;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		width: min(91.6666666667vw, 1320px);
		margin: 0 auto;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-process__description_item_inner {
				-webkit-box-orient: vertical;
				-webkit-box-direction: normal;
				    -ms-flex-direction: column;
				        flex-direction: column;
				padding-top: 7.6923076923vw;
				padding-bottom: 10.2564102564vw;
		}
}
.c-process__description_item_txt {
		font-size: min(1.3888888889vw, 20px);
		line-height: calc(min(2.7777777778vw, 40px) / min(1.3888888889vw, 20px));
		color: #794123;
		width: min(60.5555555556vw, 872px);
		font-weight: 700;
		margin-right: min(3.4027777778vw, 49px);
		position: relative;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-process__description_item_txt {
				font-size: 4.6153846154vw;
				width: 100%;
				margin-right: auto;
				line-height: calc(min(2.5694444444vw, 37px) / min(1.25vw, 18px));
		}
}
.c-process__description_item_txt rt {
		text-align: left;
}
.c-process__description_item_txt_note {
		font-size: min(1.1111111111vw, 16px);
		display: inline-block;
		position: absolute;
		bottom: 0;
		right: min(0.3472222222vw, 5px);
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-process__description_item_txt_note {
				position: relative;
				bottom: auto;
				right: auto;
				display: block;
				font-size: 3.5897435897vw;
				text-align: right;
				margin-bottom: 5.1282051282vw;
		}
}
.c-process__description_item_movie {
		width: min(16.9444444444vw, 244px);
		text-align: center;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-process__description_item_movie {
				width: 62.5641025641vw;
				margin-top: 8.7179487179vw;
		}
}
.c-process__description_item_movie_title {
		font-size: min(1.3888888889vw, 20px);
		font-weight: 700;
		color: #C62A19;
		margin-bottom: min(0.3472222222vw, 5px);
		position: relative;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-process__description_item_movie_title {
				font-size: 5.1282051282vw;
				line-height: calc(min(6.4102564103vw, 25px) / min(5.1282051282vw, 20px));
				margin-bottom: 3.0769230769vw;
		}
}
.c-process__description_item_movie_title::before, .c-process__description_item_movie_title::after {
		position: absolute;
		content: "";
		display: block;
		width: min(0.1388888889vw, 2px);
		height: min(1.3888888889vw, 20px);
		background: #C62A19;
		top: min(0.4861111111vw, 7px);
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-process__description_item_movie_title::before, .c-process__description_item_movie_title::after {
				height: 5.1282051282vw;
				width: 0.5128205128vw;
				top: 1.2820512821vw;
		}
}
.c-process__description_item_movie_title::before {
		-webkit-transform: rotate(-30deg);
		        transform: rotate(-30deg);
		left: min(1.6666666667vw, 24px);
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-process__description_item_movie_title::before {
				left: 6.1538461538vw;
		}
}
.c-process__description_item_movie_title::after {
		-webkit-transform: rotate(30deg);
		        transform: rotate(30deg);
		right: min(1.6666666667vw, 24px);
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-process__description_item_movie_title::after {
				right: 6.1538461538vw;
		}
}
.c-process__description_item_movie_popup {
		width: min(16.9444444444vw, 244px);
		height: auto;
		cursor: pointer;
		-webkit-transition: opacity 0.3s ease;
		transition: opacity 0.3s ease;
}
.c-process__description_item_movie_popup:hover {
		opacity: 0.8;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-process__description_item_movie_popup {
				width: 62.5641025641vw;
		}
}
.c-process__indicator {
		position: absolute;
		width: min(34.7222222222vw, 500px);
}
.c-process__indicator--sucorn {
		width: min(22.4305555556vw, 323px);
}
.c-process__indicator {
		top: min(2.7777777778vw, 40px);
		left: 50%;
		-webkit-transform: translateX(-50%);
		        transform: translateX(-50%);
		z-index: 100;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-process__indicator {
				width: 88.7179487179vw;
				top: 7.6923076923vw;
		}
}
.c-process__indicator_item {
		position: absolute;
		top: 50%;
		-webkit-transform: translateY(-50%);
		        transform: translateY(-50%);
		cursor: pointer;
}
.c-process__indicator_item01 {
		left: max(-0.6944444444vw, -10px);
		width: min(2.7777777778vw, 40px);
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-process__indicator_item01 {
				width: 6.9230769231vw;
		}
}
.c-process__indicator_item01--sucorn {
		width: min(3.4722222222vw, 50px);
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-process__indicator_item01--sucorn {
				width: 8.7179487179vw;
		}
}
.c-process__indicator_item01--dontacos {
		width: min(3.4722222222vw, 50px);
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-process__indicator_item01--dontacos {
				width: 8.7179487179vw;
				left: -3.3333333333vw;
		}
}
.c-process__indicator_item02 {
		left: min(9.9305555556vw, 143px);
		width: min(3.3333333333vw, 48px);
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-process__indicator_item02 {
				width: 8.4615384615vw;
				left: calc(20.2564102564vw + 6.9230769231vw);
		}
}
.c-process__indicator_item02--sucorn {
		width: min(3.4722222222vw, 50px);
		left: min(10.2083333333vw, 147px);
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-process__indicator_item02--sucorn {
				width: 8.7179487179vw;
				left: 50%;
				-webkit-transform: translate(-50%, -50%);
				        transform: translate(-50%, -50%);
		}
}
.c-process__indicator_item02--dontacos {
		width: min(3.4722222222vw, 50px);
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-process__indicator_item02--dontacos {
				width: 8.7179487179vw;
				left: 23.8461538462vw;
		}
}
.c-process__indicator_item03 {
		left: min(21.1805555556vw, 305px);
		width: min(2.5vw, 36px);
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-process__indicator_item03 {
				width: 6.4102564103vw;
				left: calc(48.7179487179vw + 8.4615384615vw);
		}
}
.c-process__indicator_item03--sucorn {
		width: min(3.4722222222vw, 50px);
		left: auto;
		right: max(-0.7638888889vw, -11px);
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-process__indicator_item03--sucorn {
				width: 8.7179487179vw;
				right: -1.2820512821vw;
		}
}
.c-process__indicator_item03--dontacos {
		width: min(3.4722222222vw, 50px);
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-process__indicator_item03--dontacos {
				width: 8.7179487179vw;
				left: 50.2564102564vw;
		}
}
.c-process__indicator_item04 {
		right: max(-0.7638888889vw, -11px);
		width: min(2.5vw, 36px);
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-process__indicator_item04 {
				width: 6.4102564103vw;
				right: -0.2564102564vw;
		}
}
.c-process__indicator_item04--dontacos {
		width: min(3.4722222222vw, 50px);
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-process__indicator_item04--dontacos {
				width: 8.7179487179vw;
				right: -2.3076923077vw;
		}
}
.c-process__indicator_progress {
		width: 100%;
		height: min(0.6944444444vw, 10px);
		height: min(0.4861111111vw, 7px);
		background-color: #E3E3E3;
		border-radius: min(1.3888888889vw, 20px);
		overflow: hidden;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-process__indicator_progress {
				height: 1.5384615385vw;
				border-radius: 5.1282051282vw;
		}
}
.c-process__indicator_progress_bar {
		width: 0%;
		height: 100%;
		background-color: #C62A19;
		border-radius: 1.3888888889vw;
		-webkit-transition: width 0.3s ease;
		transition: width 0.3s ease;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-process__indicator_progress_bar {
				border-radius: 5.1282051282vw;
		}
}

.c-popup__movie .mfp-iframe-holder .mfp-content {
		width: min(62.5vw, 900px) !important;
		max-width: unset !important;
		position: relative;
		-webkit-box-shadow: 0px 4px 30px -5px rgba(0, 0, 0, 0.3);
		        box-shadow: 0px 4px 30px -5px rgba(0, 0, 0, 0.3);
		border-radius: min(2.0833333333vw, 30px);
}
.c-popup__movie .mfp-iframe-holder .mfp-content::before {
		position: absolute;
		content: "";
		display: block;
		width: 100%;
		height: min(7.6388888889vw, 110px);
		background: #C62A19;
		left: 0;
		bottom: max(-7.6388888889vw, -110px);
		border-radius: 0 0 min(2.0833333333vw, 30px) min(2.0833333333vw, 30px);
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-popup__movie .mfp-iframe-holder .mfp-content::before {
				height: 9.2307692308vw;
				bottom: -9.2307692308vw;
				border-radius: 0 0 3.8461538462vw 3.8461538462vw;
		}
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-popup__movie .mfp-iframe-holder .mfp-content {
				width: 100% !important;
				-webkit-box-shadow: 0px 2px 15px -2.5px rgba(0, 0, 0, 0.3) !important;
				        box-shadow: 0px 2px 15px -2.5px rgba(0, 0, 0, 0.3) !important;
		}
}
.c-popup__movie .mfp-iframe-scaler iframe {
		background: #C62A19 !important;
		padding: min(2.3611111111vw, 34px) min(2.0833333333vw, 30px) 0 !important;
		border-radius: min(2.0833333333vw, 30px) min(2.0833333333vw, 30px) 0 0 !important;
		-webkit-box-shadow: unset !important;
		        box-shadow: unset !important;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-popup__movie .mfp-iframe-scaler iframe {
				padding: 5.641025641vw 3.0769230769vw 5.3846153846vw !important;
				border-radius: 3.8461538462vw 3.8461538462vw 0 0 !important;
		}
}
.c-popup__movie .mfp-iframe-scaler {
		padding-top: min(31.6666666667vw, 456px) !important;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-popup__movie .mfp-iframe-scaler {
				padding-top: 56.25% !important;
		}
}
.c-popup__movie .mfp-iframe-holder {
		padding-bottom: 110px !important;
}
.c-popup__close.mfp-close {
		display: -webkit-box !important;
		display: -ms-flexbox !important;
		display: flex !important;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		cursor: pointer !important;
		font-size: min(1.6666666667vw, 24px);
		font-family: "Zen Maru Gothic", sans-serif;
		color: #C62A19;
		font-weight: 700;
		display: flex;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		justify-content: center;
		background: #fff;
		width: min(11.4583333333vw, 165px);
		height: min(3.4722222222vw, 50px);
		border-radius: min(4.8611111111vw, 70px);
		position: relative;
		-webkit-transition: all 0.3s ease;
		transition: all 0.3s ease;
		padding-bottom: min(0.1388888889vw, 2px);
		left: 50%;
		-webkit-transform: translateX(-50%);
		        transform: translateX(-50%);
		top: min(5.5555555556vw, 80px) !important;
		padding: unset !important;
}
.c-popup__close.mfp-close:hover {
		opacity: 0.8;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-popup__close.mfp-close {
				width: 25.641025641vw;
				height: 7.6923076923vw;
				border-radius: 7.6923076923vw;
				font-size: 4.1025641026vw;
				padding-bottom: 0.7692307692vw;
		}
}
.c-popup__serif {
		font-family: "Zen Maru Gothic", sans-serif;
}
.c-popup__serif_link {
		position: absolute;
		top: 6%;
		-webkit-transition: opacity 0.3s ease;
		transition: opacity 0.3s ease;
		height: 17%;
		width: auto;
		z-index: 1;
}
.c-popup__serif_link:hover {
		opacity: 0.8;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-popup__serif_link {
				top: 11%;
				height: 10%;
		}
}
.c-popup__serif_link01 {
		left: 15%;
}
.c-popup__serif_link01 img {
		max-width: 439px;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-popup__serif_link01 {
				left: 18%;
		}
}
.c-popup__serif_link01--dontacos {
		left: 79%;
}
.c-popup__serif_link01--dontacos img {
		max-width: 463px;
}
.c-popup__serif_link02 {
		left: 1%;
}
.c-popup__serif_link02 img {
		max-width: 387px;
}
.c-popup__serif_link02--dontacos {
		left: 15%;
}
.c-popup__serif_link02--dontacos img {
		max-width: 417px;
}
.c-popup__serif_link03 {
		left: 42%;
}
.c-popup__serif_link03 img {
		max-width: 388px;
}
.c-popup__serif_link03--sucorn {
		left: 13%;
}
.c-popup__serif_link03--dontacos {
		left: 20%;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-popup__serif .mfp-container {
				padding-left: 3.8461538462vw !important;
				padding-right: 3.8461538462vw !important;
		}
}
.c-popup__serif .mfp-content {
		width: min(56.25vw, 810px);
		background: #C62A19;
		border-radius: min(2.0833333333vw, 30px);
		padding-top: min(1.5972222222vw, 23px);
		padding-left: min(2.0833333333vw, 30px);
		padding-right: min(2.0833333333vw, 30px);
		padding-bottom: min(3.1944444444vw, 46px);
		-webkit-box-shadow: 0px 4px 30px -5px rgba(0, 0, 0, 0.3);
		        box-shadow: 0px 4px 30px -5px rgba(0, 0, 0, 0.3);
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-popup__serif .mfp-content {
				width: 100%;
				padding-left: 3.8461538462vw;
				padding-right: 3.8461538462vw;
				padding-top: 3.8461538462vw;
				padding-bottom: 7.6923076923vw;
				border-radius: 3.8461538462vw;
				-webkit-box-shadow: 0px 2px 15px -2.5px rgba(0, 0, 0, 0.3);
				        box-shadow: 0px 2px 15px -2.5px rgba(0, 0, 0, 0.3);
		}
}
.c-popup__serif .c-popup__close {
		top: min(1.3888888889vw, 20px) !important;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-popup__serif .c-popup__close {
				top: 3.5897435897vw !important;
		}
}
.c-popup__serif_title {
		font-size: min(2.5vw, 36px);
		font-weight: 700;
		color: #fff;
		padding-left: min(3.8194444444vw, 55px) !important;
		position: relative;
}
.c-popup__serif_title::before {
		position: absolute;
		content: "";
		display: block;
		width: min(2.7777777778vw, 40px);
		height: min(2.7777777778vw, 40px);
		background: url("/factory/virtual/assets/img/under/common/icon_question.svg") no-repeat center center/contain;
		left: 0;
		top: 50%;
		-webkit-transform: translateY(-50%);
		        transform: translateY(-50%);
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-popup__serif_title::before {
				width: 5.1282051282vw;
				height: 5.1282051282vw;
				left: 2.5641025641vw;
		}
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-popup__serif_title {
				font-size: 4.6153846154vw;
				text-align: center;
		}
}
.c-popup__serif_content_inner {
		background: #fff;
		border-radius: min(0.3472222222vw, 5px);
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		padding-top: min(3.1944444444vw, 46px);
		padding-bottom: min(1.25vw, 18px);
		margin-top: min(1.3888888889vw, 20px);
		position: relative;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-popup__serif_content_inner {
				-ms-flex-pack: distribute;
				    justify-content: space-around;
				padding-top: 5.1282051282vw;
				padding-bottom: 5.1282051282vw;
				padding: 5.1282051282vw;
				-webkit-box-orient: vertical;
				-webkit-box-direction: normal;
				    -ms-flex-direction: column;
				        flex-direction: column;
		}
}
.c-popup__serif_content_inner::before {
		position: absolute;
		content: "";
		display: block;
		width: min(6.8055555556vw, 98px);
		height: min(13.8888888889vw, 200px);
		background: url("/factory/virtual/assets/img/under/potatochips/img_popup_monsieur.png") no-repeat center center/contain;
		right: min(0.9027777778vw, 13px);
		bottom: max(-5.7638888889vw, -83px);
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-popup__serif_content_inner::before {
				width: 11.5384615385vw;
				height: 23.0769230769vw;
				right: 1.2820512821vw;
				bottom: -11.5384615385vw;
		}
}
.c-popup__serif_content_inner--sucorn::before {
		background: url("/factory/virtual/assets/img/under/sucorn/img_popup_kong.png") no-repeat center center/contain;
		width: min(8.1944444444vw, 118px);
		height: min(10.4861111111vw, 151px);
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-popup__serif_content_inner--sucorn::before {
				width: 16.6666666667vw;
				height: 22.0512820513vw;
		}
}
.c-popup__serif_content_inner--dontacos::before {
		background: url("/factory/virtual/assets/img/under/dontacos/img_popup_ojisan.png") no-repeat center center/contain;
		width: min(8.3333333333vw, 120px);
		height: min(9.3055555556vw, 134px);
		bottom: max(-5.0694444444vw, -73px);
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-popup__serif_content_inner--dontacos::before {
				width: 16.6666666667vw;
				height: 22.0512820513vw;
				bottom: -11.5384615385vw;
		}
}
.c-popup__serif_content_txt {
		font-size: min(1.6666666667vw, 24px);
		line-height: calc(min(2.9166666667vw, 42px) / min(1.6666666667vw, 24px));
		color: #5E5A5A;
		font-weight: 500;
		width: min(19.1666666667vw, 276px);
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-popup__serif_content_txt {
				font-size: 3.5897435897vw;
				width: 40%;
				line-height: calc(min(6.9230769231vw, 27px) / min(3.5897435897vw, 14px));
				width: 100%;
		}
}
.c-popup__serif_content_img {
		-ms-flex-negative: 0;
		    flex-shrink: 0;
}
.c-popup__serif #process01-popup .c-popup__serif_content_inner {
		gap: min(1.25vw, 18px);
}
.c-popup__serif #process01-popup .c-popup__serif_content_img {
		width: min(26.6666666667vw, 384px);
		height: auto;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-popup__serif #process01-popup .c-popup__serif_content_img {
				width: 100%;
		}
}
.c-popup__serif #process02-popup .c-popup__serif_content_inner {
		gap: min(1.25vw, 18px);
}
.c-popup__serif #process02-popup .c-popup__serif_content_img {
		width: min(26.6666666667vw, 384px);
		height: auto;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-popup__serif #process02-popup .c-popup__serif_content_img {
				width: 100%;
		}
}
.c-popup__serif #process02-popup .c-popup__serif_content_inner--potatochips {
		padding-top: min(1.6666666667vw, 24px);
		gap: min(1.6666666667vw, 24px);
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-popup__serif #process02-popup .c-popup__serif_content_inner--potatochips {
				padding-top: 5.1282051282vw;
		}
}
.c-popup__serif #process02-popup .c-popup__serif_content_img--potatochips {
		width: min(25.6944444444vw, 370px);
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-popup__serif #process02-popup .c-popup__serif_content_img--potatochips {
				gap: min(1.25vw, 18px);
				width: 100%;
				margin-left: 4.6153846154vw;
		}
}
.c-popup__serif #process04-01-popup .c-popup__serif_content_inner {
		gap: min(1.25vw, 18px);
}
.c-popup__serif #process04-01-popup .c-popup__serif_content_img {
		width: min(26.6666666667vw, 384px);
		height: auto;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-popup__serif #process04-01-popup .c-popup__serif_content_img {
				width: 100%;
		}
}
.c-popup__serif #process04-02-popup .c-popup__serif_content_inner {
		gap: min(1.25vw, 18px);
}
.c-popup__serif #process04-02-popup .c-popup__serif_content_img {
		width: min(26.6666666667vw, 384px);
		height: auto;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.c-popup__serif #process04-02-popup .c-popup__serif_content_img {
				width: 100%;
		}
}

.mfp-bg {
		background: rgba(19, 40, 58, 0.7) !important;
		opacity: 1 !important;
}

@media screen and (min-width: 0) and (max-width: 767px) {
		.mfp-container {
				padding-left: unset !important;
				padding-right: unset !important;
		}
}

h2 {
		border-bottom: unset;
}

.l-main {
		position: relative;
}

.p-home {
		position: relative;
}
.p-home__mv__inner {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		background: url("/factory/assets/img/img_mv_pc.webp") no-repeat center/cover;
		width: 100%;
		aspect-ratio: 4/1;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.p-home__mv__inner {
				background: url("/factory/assets/img/img_mv_sp.webp") no-repeat center/cover;
				width: 100%;
				aspect-ratio: 15/16;
		}
}
.p-home__mv__logo {
		position: relative;
		padding: 0 0 40px !important;
		width: 30%;
		z-index: 150;
		scale: 0.8;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.p-home__mv__logo {
				width: 75%;
				margin-left: 7%;
		}
}
.p-home__mv__chara {
		width: 30%;
		height: auto;
		position: absolute;
		display: block;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.p-home__mv__chara {
				width: 35%;
				margin-left: -5%;
				left: -25%;
				bottom: 32%;
		}
}
.p-home__mv img {
		max-width: unset;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.p-home__mv {
				padding-top: 60px;
		}
}
.p-home__intro {
		position: relative;
		z-index: -10;
		background: #FFFCE8;
}
.p-home__intro__inner {
		padding: 90px 0 220px;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.p-home__intro__inner {
				padding: 20px 0;
		}
}
.p-home__intro__txt {
		text-align: center;
		font-size: 2rem;
		line-height: 2;
		font-weight: 600;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.p-home__intro__txt {
				font-size: 1.8rem;
				line-height: 1.5;
				padding: 20px 0;
		}
}
.p-home__intro .txt-red {
		color: #C62A19;
}
.p-home__intro .line__chara_sp_01 {
		width: 100%;
		height: 80px;
		background: url(/factory/assets/img/img_intro_01_sp.webp) no-repeat center bottom/contain;
}
.p-home__intro .line__chara_sp_02 {
		width: 100%;
		height: 90px;
		background: url(/factory/assets/img/img_intro_02_sp.webp) no-repeat center bottom/contain;
}
.p-home__select__gogo {
		margin-top: -80px;
		position: relative;
		z-index: 100;
		background: url(/factory/assets/img/bg_gogo_02.webp) repeat center top;
		padding-top: min(6.25vw, 90px);
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.p-home__select__gogo {
				margin-top: 0;
				padding-top: 40px;
		}
}
.p-home__select__gogo::before {
		position: absolute;
		z-index: 102;
		top: -35px;
		content: "";
		background: url(/factory/assets/img/bg_gogo_01.webp) repeat-x center top/cover;
		width: 100%;
		height: 40px;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.p-home__select__gogo::before {
				height: 30px;
				top: -10px;
		}
}
.p-home__select__gogo .line__chara {
		position: absolute;
		z-index: 102;
		top: -170px;
		content: "";
		background: url(/factory/assets/img/bg_gogo_chara.webp) no-repeat center bottom/1260px auto;
		width: 100%;
		height: 180px;
}
.p-home__select__inner {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		gap: 60px;
		-webkit-box-pack: start;
		    -ms-flex-pack: start;
		        justify-content: start;
		-webkit-box-align: start;
		    -ms-flex-align: start;
		        align-items: flex-start;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.p-home__select__inner {
				-webkit-box-orient: vertical;
				-webkit-box-direction: normal;
				    -ms-flex-direction: column;
				        flex-direction: column;
				-webkit-box-pack: justify;
				    -ms-flex-pack: justify;
				        justify-content: space-between;
				-ms-flex-item-align: start;
				    align-self: flex-start;
		}
}
.p-home__select__img {
		width: 45%;
		position: relative;
}
.p-home__select__img .attention {
		margin: 20px 0 0 20px;
		color: #473933;
		font-size: 1.2rem;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.p-home__select__img .attention {
				padding-right: 20%;
		}
}
.p-home__select__img .chips_01 {
		position: absolute;
		width: min(11.875vw, 171px);
		height: 155px;
		bottom: -20px;
		right: -100px;
		background: url(/factory/assets/img/img_gogo_chips.webp) no-repeat center/contain;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.p-home__select__img .chips_01 {
				width: 25%;
				bottom: -40px;
				right: 0;
		}
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.p-home__select__img {
				width: 100%;
				padding-right: 20px;
		}
}
.p-home__select__txt {
		width: 40%;
		text-align: center;
		position: relative;
}
.p-home__select__txt .flag_gogo {
		position: absolute;
		top: -160px;
		left: -20px;
		width: 223px;
		height: auto;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.p-home__select__txt .flag_gogo {
				top: -110px;
				left: -30px;
				width: 180px;
		}
}
.p-home__select__txt .flag_virtual {
		position: absolute;
		top: -140px;
		left: -80px;
		width: 266px;
		height: auto;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.p-home__select__txt .flag_virtual {
				top: -110px;
				left: -30px;
				width: 180px;
		}
}
.p-home__select__txt .ttl_gogo {
		position: relative;
		max-width: 454px;
		margin: 120px auto 40px;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.p-home__select__txt .ttl_gogo {
				max-width: 80%;
				margin: 40px auto 40px;
		}
}
.p-home__select__txt .ttl_virtual {
		position: relative;
		max-width: 346px;
		margin: 120px auto 40px;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.p-home__select__txt .ttl_virtual {
				max-width: 80%;
				margin: 40px auto 40px;
		}
}
.p-home__select__txt p {
		font-size: 1.8rem;
		line-height: 2;
		font-weight: 600;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.p-home__select__txt p {
				font-size: 1.6rem;
				line-height: 1.5;
		}
}
.p-home__select__txt .chara_01 {
		position: absolute;
		width: min(18.6111111111vw, 268px);
		height: 174px;
		top: -40px;
		right: -40px;
		background: url(/factory/assets/img/img_gogo_chara.webp) no-repeat center/contain;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.p-home__select__txt .chara_01 {
				width: 40%;
				height: 174px;
				top: -60px;
				right: 10px;
		}
}
.p-home__select__txt .chips_02 {
		position: absolute;
		z-index: 200;
		width: min(11.875vw, 171px);
		height: 155px;
		bottom: 40px;
		left: -60px;
		background: url(/factory/assets/img/img_virtual_chips.webp) no-repeat center/contain;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.p-home__select__txt .chips_02 {
				width: 25%;
				bottom: -90px;
				left: 10px;
		}
}
.p-home__select__txt .dontacos_01 {
		position: absolute;
		width: min(17.9861111111vw, 259px);
		height: 259px;
		top: -30px;
		right: -110px;
		background: url(/factory/assets/img/img_virtual_dontacos.webp) no-repeat center/contain;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.p-home__select__txt .dontacos_01 {
				width: 35%;
				top: -70px;
				right: 0;
		}
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.p-home__select__txt {
				width: 100%;
				padding: 40px 20px;
		}
}
.p-home__select__virtual .p-home__select__inner {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: reverse;
		    -ms-flex-direction: row-reverse;
		        flex-direction: row-reverse;
		-webkit-box-pack: start;
		    -ms-flex-pack: start;
		        justify-content: flex-start;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.p-home__select__virtual .p-home__select__inner {
				-webkit-box-orient: vertical;
				-webkit-box-direction: normal;
				    -ms-flex-direction: column;
				        flex-direction: column;
		}
}
.p-home__select__virtual {
		position: relative;
		z-index: 150;
		background: url(/factory/assets/img/bg_virtual_02.webp) repeat center top;
		padding-top: min(6.25vw, 90px);
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.p-home__select__virtual {
				padding-top: 40px;
				margin-top: 0;
		}
}
.p-home__select__virtual::before {
		position: absolute;
		z-index: 103;
		top: -20px;
		content: "";
		background: url(/factory/assets/img/bg_virtual_01.webp) repeat-x center top/cover;
		width: 100%;
		height: 40px;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.p-home__select__virtual::before {
				height: 30px;
				top: -10px;
		}
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.p-home__select__virtual .p-home__select__img {
				padding: 0 0 0 20px;
		}
}
.p-home .gogo_slider_wrapper, .p-home .virtual_slider_wrapper {
		margin-top: 50px;
		overflow-x: hidden;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.p-home .gogo_slider_wrapper, .p-home .virtual_slider_wrapper {
				margin-top: 20px;
		}
}
.p-home__about {
		background: #E9F5FF url("/factory/assets/img/bg_about.webp") repeat top left/auto;
		padding: min(10.4166666667vw, 150px) 0 min(6.25vw, 90px);
		margin-top: max(-3.3333333333vw, -48px);
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.p-home__about {
				padding: 22.5641025641vw 0 9.7435897436vw 0;
				margin-top: -12.3076923077vw;
				background-size: cover;
		}
}
.p-home__about__head_ttl {
		position: relative;
		font-size: min(1.6666666667vw, 24px);
		line-height: 1.5;
		color: #C62A19;
		text-align: center;
		font-weight: 600;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.p-home__about__head_ttl {
				font-size: 5.1282051282vw;
				padding-top: 6.4102564103vw !important;
		}
}
.p-home__about__head_ttl span {
		font-size: min(2.7777777778vw, 40px);
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.p-home__about__head_ttl span {
				font-size: 6.6666666667vw;
		}
}
.p-home__about__head_ttl::before {
		content: "";
		position: absolute;
		display: block;
		width: min(11.875vw, 171px);
		height: min(6.25vw, 90px);
		background: url("/factory/assets/img/img_about_check.webp") no-repeat center center/contain;
		left: min(16.6666666667vw, 240px);
		top: max(-3.4722222222vw, -50px);
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.p-home__about__head_ttl::before {
				left: min(12.5vw, 180px);
				top: max(-6.25vw, -90px);
				width: min(25vw, 360px);
				height: min(17.3611111111vw, 250px);
		}
}
.p-home__about__body_bnr {
		margin-top: min(2.7777777778vw, 40px);
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.p-home__about__body_bnr {
				margin-top: 5.8974358974vw;
		}
}
.p-home__about__body_bnr_link {
		display: block;
		width: min(52.0833333333vw, 750px);
		margin: 0 auto;
		-webkit-transition: all 0.3s ease;
		transition: all 0.3s ease;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.p-home__about__body_bnr_link {
				width: 100%;
		}
}
.p-home__about__body_bnr_link:hover {
		opacity: 0.8;
}
.p-home__about__body_bnr_link img {
		width: 100%;
		height: 100%;
		-o-object-fit: contain;
		   object-fit: contain;
}
.p-home__about__body_gogofactory {
		background: #fff;
		border: min(0.4861111111vw, 7px) solid #C62A19;
		border-radius: min(4.1666666667vw, 60px);
		margin-top: min(6.0416666667vw, 87px);
		padding: min(3.4722222222vw, 50px) min(3.9583333333vw, 57px) min(4.0277777778vw, 58px) min(4.5833333333vw, 66px);
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.p-home__about__body_gogofactory {
				margin-top: 10.2564102564vw;
				border: 0.7692307692vw solid #C62A19;
				padding: 5.1282051282vw 5.1282051282vw 5.8974358974vw 5.1282051282vw;
		}
}
.p-home__about__body_gogofactory_inner {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		gap: min(1.875vw, 27px);
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.p-home__about__body_gogofactory_inner {
				-webkit-box-orient: vertical;
				-webkit-box-direction: reverse;
				    -ms-flex-direction: column-reverse;
				        flex-direction: column-reverse;
				gap: 5.1282051282vw;
		}
}
.p-home__about__body_gogofactory_content {
		width: min(34.7222222222vw, 500px);
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.p-home__about__body_gogofactory_content {
				width: 100%;
		}
}
.p-home__about__body_gogofactory_content_ttl {
		font-size: min(2.7777777778vw, 40px);
		color: #C62A19;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.p-home__about__body_gogofactory_content_ttl {
				font-size: 6.1538461538vw;
				padding-left: 2.0512820513vw !important;
		}
}
.p-home__about__body_gogofactory_content_txt {
		font-size: min(1.25vw, 18px);
		line-height: calc(min(2.2222222222vw, 32px) / min(1.25vw, 18px));
		color: #000;
		margin-top: min(1.6666666667vw, 24px);
		width: min(32.5vw, 468px);
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.p-home__about__body_gogofactory_content_txt {
				font-size: 3.5897435897vw;
				width: 100%;
				line-height: calc(min(6.9230769231vw, 27px) / min(3.5897435897vw, 14px));
				margin-top: 3.3333333333vw;
				padding-left: 2.5641025641vw;
				padding-right: 2.5641025641vw;
		}
}
.p-home__about__body_gogofactory_img {
		width: min(33.75vw, 486px);
		-webkit-transition: all 0.3s ease;
		transition: all 0.3s ease;
}
.p-home__about__body_gogofactory_img:hover {
		opacity: 0.8;
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.p-home__about__body_gogofactory_img {
				width: 100%;
		}
}
.p-home__about__body_gogofactory_btn {
		display: block;
		font-size: min(1.3888888889vw, 20px);
		color: #fff;
		font-weight: 700;
		background: #C62A19;
		border-radius: min(5.5555555556vw, 80px);
		width: min(24.3055555556vw, 350px);
		padding: min(0.6944444444vw, 10px) 0 min(0.6944444444vw, 10px) min(1.5277777778vw, 22px);
		position: relative;
		margin-top: min(2.0833333333vw, 30px);
		-webkit-transition: all 0.3s ease;
		transition: all 0.3s ease;
}
.p-home__about__body_gogofactory_btn:hover {
		opacity: 0.8;
		color: #fff !important;
}
.p-home__about__body_gogofactory_btn::before {
		content: "";
		position: absolute;
		display: block;
		width: min(1.5972222222vw, 23px);
		height: min(1.5972222222vw, 23px);
		background: url("/factory/virtual/assets/img/common/icon_btn_arrow_wh.svg") no-repeat center center/contain;
		right: min(0.8333333333vw, 12px);
		top: 50%;
		-webkit-transform: translateY(-50%);
		        transform: translateY(-50%);
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.p-home__about__body_gogofactory_btn::before {
				width: 5.1282051282vw;
				height: 5.1282051282vw;
				right: 3.0769230769vw;
		}
}
@media screen and (min-width: 0) and (max-width: 767px) {
		.p-home__about__body_gogofactory_btn {
				width: 100%;
				font-size: 4.1025641026vw;
				text-align: center;
				padding: 1.7948717949vw 0 2.5641025641vw;
				margin-top: 6.4102564103vw;
		}
}