@charset "UTF-8";
.js-fade {
	opacity: 0;
	-webkit-transition: opacity var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s);
	transition: opacity var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s);
}
.js-fade.is-active {
	opacity: 1;
}

.js-fade-up {
	opacity: 0;
	-webkit-transform: translateY(2.5rem);
	transform: translateY(2.5rem);
	-webkit-transition:
		opacity var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s),
		-webkit-transform var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s);
	transition:
		opacity var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s),
		-webkit-transform var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s);
	transition:
		opacity var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s),
		transform var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s);
	transition:
		opacity var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s),
		transform var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s),
		-webkit-transform var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s);
}
.js-fade-up.is-active {
	opacity: 1;
	-webkit-transform: translateY(0);
	transform: translateY(0);
}

.js-fade-left {
	opacity: 0;
	-webkit-transform: translateX(-2.5rem);
	transform: translateX(-2.5rem);
	-webkit-transition:
		opacity var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s),
		-webkit-transform var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s);
	transition:
		opacity var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s),
		-webkit-transform var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s);
	transition:
		opacity var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s),
		transform var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s);
	transition:
		opacity var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s),
		transform var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s),
		-webkit-transform var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s);
}
.js-fade-left.is-active {
	opacity: 1;
	-webkit-transform: translateX(0);
	transform: translateX(0);
}

.js-fade-right {
	opacity: 0;
	-webkit-transform: translateX(2.5rem);
	transform: translateX(2.5rem);
	-webkit-transition:
		opacity var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s),
		-webkit-transform var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s);
	transition:
		opacity var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s),
		-webkit-transform var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s);
	transition:
		opacity var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s),
		transform var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s);
	transition:
		opacity var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s),
		transform var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s),
		-webkit-transform var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s);
}
.js-fade-right.is-active {
	opacity: 1;
	-webkit-transform: translateX(0);
	transform: translateX(0);
}

@media screen and (min-width: 800px) {
	.js-fade-pc {
		opacity: 0;
		-webkit-transition: opacity var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s);
		transition: opacity var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s);
	}
	.js-fade-pc.is-active {
		opacity: 1;
	}
	.js-fade-up-pc {
		opacity: 0;
		-webkit-transform: translateY(2.5rem);
		transform: translateY(2.5rem);
		-webkit-transition:
			opacity var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s),
			-webkit-transform var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s);
		transition:
			opacity var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s),
			-webkit-transform var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s);
		transition:
			opacity var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s),
			transform var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s);
		transition:
			opacity var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s),
			transform var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s),
			-webkit-transform var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s);
	}
	.js-fade-up-pc.is-active {
		opacity: 1;
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
	.js-fade-left-pc {
		opacity: 0;
		-webkit-transform: translateX(-2.5rem);
		transform: translateX(-2.5rem);
		-webkit-transition:
			opacity var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s),
			-webkit-transform var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s);
		transition:
			opacity var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s),
			-webkit-transform var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s);
		transition:
			opacity var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s),
			transform var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s);
		transition:
			opacity var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s),
			transform var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s),
			-webkit-transform var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s);
	}
	.js-fade-left-pc.is-active {
		opacity: 1;
		-webkit-transform: translateX(0);
		transform: translateX(0);
	}
	.js-fade-right-pc {
		opacity: 0;
		-webkit-transform: translateX(2.5rem);
		transform: translateX(2.5rem);
		-webkit-transition:
			opacity var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s),
			-webkit-transform var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s);
		transition:
			opacity var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s),
			-webkit-transform var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s);
		transition:
			opacity var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s),
			transform var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s);
		transition:
			opacity var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s),
			transform var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s),
			-webkit-transform var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s);
	}
	.js-fade-right-pc.is-active {
		opacity: 1;
		-webkit-transform: translateX(0);
		transform: translateX(0);
	}
}
@media (max-width: 799px) {
	.js-fade-sp {
		opacity: 0;
		-webkit-transition: opacity var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s);
		transition: opacity var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s);
	}
	.js-fade-sp.is-active {
		opacity: 1;
	}
	.js-fade-up-sp {
		opacity: 0;
		-webkit-transform: translateY(2.5rem);
		transform: translateY(2.5rem);
		-webkit-transition:
			opacity var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s),
			-webkit-transform var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s);
		transition:
			opacity var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s),
			-webkit-transform var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s);
		transition:
			opacity var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s),
			transform var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s);
		transition:
			opacity var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s),
			transform var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s),
			-webkit-transform var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s);
	}
	.js-fade-up-sp.is-active {
		opacity: 1;
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
	.js-fade-left-sp {
		opacity: 0;
		-webkit-transform: translateX(-2.5rem);
		transform: translateX(-2.5rem);
		-webkit-transition:
			opacity var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s),
			-webkit-transform var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s);
		transition:
			opacity var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s),
			-webkit-transform var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s);
		transition:
			opacity var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s),
			transform var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s);
		transition:
			opacity var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s),
			transform var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s),
			-webkit-transform var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s);
	}
	.js-fade-left-sp.is-active {
		opacity: 1;
		-webkit-transform: translateX(0);
		transform: translateX(0);
	}
	.js-fade-right-sp {
		opacity: 0;
		-webkit-transform: translateX(2.5rem);
		transform: translateX(2.5rem);
		-webkit-transition:
			opacity var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s),
			-webkit-transform var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s);
		transition:
			opacity var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s),
			-webkit-transform var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s);
		transition:
			opacity var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s),
			transform var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s);
		transition:
			opacity var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s),
			transform var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s),
			-webkit-transform var(--duration, 0.7s) cubic-bezier(0.175, 0.885, 0.32, 1.75) var(--delay, 0s);
	}
	.js-fade-right-sp.is-active {
		opacity: 1;
		-webkit-transform: translateX(0);
		transform: translateX(0);
	}
}
/*! destyle.css v4.0.1 | MIT License | https://github.com/nicolas-cusan/destyle.css */
/* Reset box-model and set borders */
/* ============================================ */
*,
::before,
::after {
	border-style: solid;
	border-width: 0;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	min-width: 0;
}

/* Document */
/* ============================================ */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 * 3. Remove gray overlay on links for iOS.
 */
html {
	line-height: 1.15; /* 1 */
	-webkit-tap-highlight-color: transparent; /* 3*/
	-webkit-text-size-adjust: 100%; /* 2 */
}

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

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

/* Vertical rhythm */
/* ============================================ */
p,
table,
blockquote,
address,
pre,
iframe,
form,
figure,
dl {
	margin: 0;
}

/* Headings */
/* ============================================ */
h1,
h2,
h3,
h4,
h5,
h6 {
	font-size: inherit;
	font-weight: inherit;
	margin: 0;
}

/* Lists (enumeration) */
/* ============================================ */
ul,
ol {
	list-style: none;
	margin: 0;
	padding: 0;
}

/* Lists (definition) */
/* ============================================ */
dt {
	font-weight: bold;
}

dd {
	margin-left: 0;
}

/* Grouping content */
/* ============================================ */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
	border-top-width: 1px;
	-webkit-box-sizing: content-box;
	box-sizing: content-box; /* 1 */
	clear: both;
	color: inherit;
	height: 0; /* 1 */
	margin: 0;
	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: inherit; /* 2 */
}

address {
	font-style: inherit;
}

/* Text-level semantics */
/* ============================================ */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
	background-color: transparent;
	color: inherit;
	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] {
	-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: inherit; /* 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;
}

/* Replaced content */
/* ============================================ */
/**
 * Prevent vertical alignment issues.
 */
svg,
img,
embed,
object,
iframe {
	vertical-align: bottom;
}

/* Forms */
/* ============================================ */
/**
 * Reset form fields to make them styleable.
 * 1. Make form elements stylable across systems iOS especially.
 * 2. Inherit text-transform from parent.
 */
button,
input,
optgroup,
select,
textarea {
	-webkit-appearance: none; /* 1 */
	-moz-appearance: none;
	appearance: none;
	background: transparent;
	border-radius: 0;
	color: inherit;
	font: inherit;
	margin: 0;
	padding: 0;
	text-align: inherit;
	text-transform: inherit; /* 2 */
	vertical-align: middle;
}

/**
 * Correct cursors for clickable elements.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
	cursor: pointer;
}

button:disabled,
[type="button"]:disabled,
[type="reset"]:disabled,
[type="submit"]:disabled {
	cursor: default;
}

/**
 * Improve outlines for Firefox and unify style with input elements & buttons.
 */
:-moz-focusring {
	outline: auto;
}

select:disabled {
	opacity: inherit;
}

/**
 * Remove padding
 */
option {
	padding: 0;
}

/**
 * Reset to invisible
 */
fieldset {
	margin: 0;
	min-width: 0;
	padding: 0;
}

legend {
	padding: 0;
}

/**
 * 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;
}

/**
 * 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;
}

/**
 * Correct the outline style in Safari.
 */
[type="search"] {
	outline-offset: -2px; /* 1 */
}

/**
 * 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. Fix font inheritance.
 */
::-webkit-file-upload-button {
	-webkit-appearance: button; /* 1 */
	font: inherit; /* 2 */
}

/**
 * Fix appearance for Firefox
 */
[type="number"] {
	-moz-appearance: textfield;
}

/**
 * Clickable labels
 */
label[for] {
	cursor: pointer;
}

/* 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;
}

/*
 * Remove outline for editable content.
 */
[contenteditable]:focus {
	outline: auto;
}

/* Tables */
/* ============================================ */
/**
1. Correct table border color inheritance in all Chrome and Safari.
*/
table {
	border-collapse: collapse;
	border-color: inherit; /* 1 */
}

caption {
	text-align: left;
}

td,
th {
	padding: 0;
	vertical-align: top;
}

th {
	font-weight: bold;
	text-align: left;
}

html {
	scroll-behavior: smooth;
	scroll-padding-top: 2.75rem;
}
@media screen and (min-width: 800px) {
	html {
		scroll-padding-top: 4.375rem;
	}
}
@media screen and (min-width: 800px) and (max-width: 1300px) {
	html {
		font-size: 1.2307692308vw;
	}
}

body {
	background-color: #ffd900;
	color: #000;
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-weight: 500;
	-webkit-padding-before: 2.75rem;
	padding-block-start: 2.75rem;
}
@media screen and (min-width: 800px) {
	body {
		-webkit-padding-before: 4.375rem;
		padding-block-start: 4.375rem;
	}
}

img {
	height: auto;
	max-width: 100%;
	vertical-align: middle;
}

.l-main {
	overflow: hidden;
}

.c-section-title {
	text-align: center;
}
.c-section-title img {
	vertical-align: top;
}

.c-slider-pagination {
	-webkit-column-gap: 0.5625rem;
	-moz-column-gap: 0.5625rem;
	column-gap: 0.5625rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-margin-before: 1.875rem;
	margin-block-start: 1.875rem;
	position: static;
}
.c-slider-pagination .swiper-pagination-bullet {
	aspect-ratio: 1/1;
	background-color: #fff;
	border: solid 2px #231815;
	border-radius: 100%;
	display: block;
	height: auto !important;
	margin: 0 !important;
	opacity: 1;
	width: 1rem;
}
.c-slider-pagination .swiper-pagination-bullet-active {
	background-color: #231815;
}
.c-slider-buttons {
	-webkit-column-gap: 1.875rem;
	-moz-column-gap: 1.875rem;
	column-gap: 1.875rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-margin-before: 1.875rem;
	margin-block-start: 1.875rem;
}
.c-slider-button {
	aspect-ratio: 1/1;
	background: no-repeat 0 0;
	background-size: cover;
	height: auto;
	margin: 0;
	position: static;
	width: 3.75rem;
}
.c-slider-button::after {
	content: none;
}
.c-slider-button.swiper-button-prev {
	background-image: url(../img/icon-prev.svg);
}
.c-slider-button.swiper-button-next {
	background-image: url(../img/icon-next.svg);
}

.c-tilt-slider {
	overflow: hidden;
	-webkit-padding-before: 2.125rem;
	padding-block-start: 2.125rem;
}
.c-tilt-slider__item {
	background-color: #fff;
	border: 2px solid #000;
	border-radius: 1.5625rem;
	height: auto;
	width: 16.875rem;
}
.c-tilt-slider__item.swiper-slide-active {
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg);
	z-index: 2;
}
.c-tilt-slider__item.swiper-slide-prev {
	-webkit-transform: rotate(-4deg) translateY(1.25rem);
	transform: rotate(-4deg) translateY(1.25rem);
}
.c-tilt-slider__item.swiper-slide-next {
	-webkit-transform: rotate(4deg) translateY(1.25rem);
	transform: rotate(4deg) translateY(1.25rem);
}

.c-tab {
	-webkit-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}
.c-tab__item {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-flex: 1;
	-ms-flex: 1;
	flex: 1;
	-webkit-margin-start: -2px;
	margin-inline-start: -2px;
}
.c-tab__item:first-child {
	-webkit-margin-start: 0;
	margin-inline-start: 0;
}
.c-tab__button {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	background-color: #dcdddd;
	border: 2px solid #000;
	border-radius: 1.25rem 1.25rem 0 0;
	color: #000;
	cursor: pointer;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-size: 1rem;
	font-weight: 700;
	height: 100%;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	min-height: 3.125rem;
	-webkit-transition:
		background-color 0.3s,
		color 0.3s;
	transition:
		background-color 0.3s,
		color 0.3s;
	width: 100%;
}
.c-tab__button[aria-selected="true"] {
	background-color: #fff;
	-webkit-border-after: #fff;
	border-block-end: #fff;
	font-size: 1.375rem;
	height: 3.75rem;
	pointer-events: none;
}
.c-tab-panels {
	background-color: #fff;
	-webkit-border-after: 2px solid #000;
	border-block-end: 2px solid #000;
	border-inline: 2px solid #000;
	border-radius: 0 0 1.5625rem 1.5625rem;
}
.c-tab-panel {
	-webkit-animation: fadeIn 0.4s ease forwards;
	animation: fadeIn 0.4s ease forwards;
}
.c-tab-panel[hidden] {
	display: none;
}
@-webkit-keyframes fadeIn {
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}
@keyframes fadeIn {
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}

.c-accordion {
	-webkit-margin-before: 1.875rem;
	margin-block-start: 1.875rem;
}
.c-accordion__content {
	-webkit-animation: fadeIn 0.4s ease forwards;
	animation: fadeIn 0.4s ease forwards;
	-webkit-margin-after: 1.25rem;
	margin-block-end: 1.25rem;
}
.c-accordion__content[hidden] {
	display: none;
}
.c-accordion__trigger {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	background-color: #000;
	border: 2px solid #000;
	border-radius: 3.125rem;
	color: #fff;
	cursor: pointer;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	height: 2.5rem;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	position: relative;
	-webkit-transition:
		background-color 0.3s,
		color 0.3s;
	transition:
		background-color 0.3s,
		color 0.3s;
	width: 100%;
}
.c-accordion__trigger::after {
	aspect-ratio: 1/1;
	background: url(../img/toggle-icon.svg) no-repeat 0 0;
	content: "";
	inset-block-start: 50%;
	inset-inline-end: 1.25rem;
	position: absolute;
	-webkit-transform: translateY(-50%) rotate(0);
	transform: translateY(-50%) rotate(0);
	-webkit-transition:
		-webkit-transform 0.3s,
		-webkit-filter 0.3s;
	transition:
		-webkit-transform 0.3s,
		-webkit-filter 0.3s;
	transition:
		transform 0.3s,
		filter 0.3s;
	transition:
		transform 0.3s,
		filter 0.3s,
		-webkit-transform 0.3s,
		-webkit-filter 0.3s;
	width: 0.75rem;
}
.c-accordion__trigger .text-open {
	display: inline-block;
	line-height: 1;
}
.c-accordion__trigger .text-close {
	display: none;
	line-height: 1;
}
.c-accordion__trigger[aria-expanded="true"] {
	background-color: #fff;
	color: #000;
}
.c-accordion__trigger[aria-expanded="true"]::after {
	-webkit-filter: invert(1);
	filter: invert(1);
	-webkit-transform: translateY(-50%) rotate(45deg);
	transform: translateY(-50%) rotate(45deg);
}
.c-accordion__trigger[aria-expanded="true"] .text-open {
	display: none;
}
.c-accordion__trigger[aria-expanded="true"] .text-close {
	display: inline-block;
}

.c-toggle-btn {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	aspect-ratio: 1/1;
	border-radius: 100%;
	cursor: pointer;
	display: inline-block;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	height: auto;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	width: 2.125rem;
}
.c-toggle-btn__icon {
	aspect-ratio: 1/1;
	display: block;
	position: relative;
	width: 0.875rem;
}
.c-toggle-btn__icon::before,
.c-toggle-btn__icon::after {
	background-color: #000;
	border-radius: 0.0625rem;
	content: "";
	inset-block-start: 50%;
	inset-inline-start: 50%;
	position: absolute;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	-webkit-transition: -webkit-transform 0.3s ease;
	transition: -webkit-transform 0.3s ease;
	transition: transform 0.3s ease;
	transition:
		transform 0.3s ease,
		-webkit-transform 0.3s ease;
}
.c-toggle-btn__icon::before {
	height: 0.125rem;
	width: 100%;
}
.c-toggle-btn__icon::after {
	height: 100%;
	width: 0.125rem;
}
.c-toggle-btn[aria-expanded="true"] .c-toggle-btn__icon::after {
	-webkit-transform: translate(-50%, -50%) rotate(90deg);
	transform: translate(-50%, -50%) rotate(90deg);
}

.c-button {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	background-color: #000;
	border: 2px solid #000;
	border-radius: 3.125rem;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	height: 2.5rem;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-transition:
		background-color 0.3s,
		opacity 0.3s;
	transition:
		background-color 0.3s,
		opacity 0.3s;
	width: 100%;
}

.l-wrapper {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	min-height: 100vh;
	position: relative;
}
@media screen and (min-width: 800px) {
	.l-wrapper {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		flex-direction: row;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
	}
}

.l-container {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	margin-inline: auto;
	max-width: 31.25rem;
	position: relative;
	width: 100%;
	z-index: 1;
}
@media (min-width: 500px) {
	.l-container {
		background-color: #ffd900;
		border-inline: 4px solid #000;
	}
}
@media screen and (min-width: 800px) {
	.l-container {
		-ms-flex-negative: 0;
		flex-shrink: 0;
		max-width: 31.25rem;
	}
}

.l-header {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	margin-inline: auto;
	max-width: 31.25rem;
	position: relative;
	width: 100%;
}
@media (min-width: 500px) {
	.l-header {
		background-color: #ffd900;
		border-inline: 4px solid #000;
	}
}
@media screen and (min-width: 800px) {
	.l-header {
		-webkit-box-align: start;
		-ms-flex-align: start;
		align-items: flex-start;
		border-inline: none;
		-webkit-box-flex: 696;
		-ms-flex: 696 1 0%;
		flex: 696 1 0%;
		height: calc(100vh - 4.375rem);
		inset-block-start: 4.375rem;
		-webkit-box-pack: end;
		-ms-flex-pack: end;
		justify-content: flex-end;
		max-width: initial;
		min-width: 21.25rem;
		position: -webkit-sticky;
		position: sticky;
	}
}
.l-header__heading {
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
	aspect-ratio: 390/660;
	background: url(../img/header-title-bg.webp) no-repeat 0 0;
	background-size: cover;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-padding-before: min(7.6923076923vw, 2.4038461538rem);
	padding-block-start: min(7.6923076923vw, 2.4038461538rem);
	width: 100%;
}
.l-header__heading img {
	width: min(83.0769230769vw, 25.9615384615rem);
}
@media screen and (min-width: 800px) {
	.l-header__heading {
		aspect-ratio: auto;
		background-image: url(../img/header-title-bg-pc.webp);
		background-position: 50% 0;
		height: 100%;
		max-width: none;
		-webkit-padding-before: 3.625rem;
		padding-block-start: 3.625rem;
		width: 100%;
	}
	.l-header__heading img {
		width: 67.816091954%;
	}
}

@media screen and (min-width: 800px) {
	.l-sidebar {
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		background-image: url(../img/bg-pattern01.webp), url(../img/bg-pattern02.webp);
		background-position:
			100% 0,
			0 100%;
		background-repeat: no-repeat;
		background-size:
			8.25rem auto,
			12.5rem auto;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-flex: 404;
		-ms-flex: 404 1 0%;
		flex: 404 1 0%;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		height: calc(100vh - 4.375rem);
		inset-block-start: 4.375rem;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		min-width: 21.25rem;
		-webkit-box-ordinal-group: 2;
		-ms-flex-order: 1;
		order: 1;
		overflow-y: auto;
		padding-block: 3.75rem;
		position: -webkit-sticky;
		position: sticky;
	}
}

.l-floating-nav {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	background-color: #fff;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	height: 2.75rem;
	inset-block-start: 0;
	inset-inline: 0;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	padding-inline: 0.75rem;
	position: fixed;
	z-index: 100;
}
@media screen and (min-width: 800px) {
	.l-floating-nav {
		height: 4.375rem;
		padding-inline: 1.5rem;
		pointer-events: none;
	}
}
.l-floating-nav__logo {
	width: 7.25rem;
}
@media screen and (min-width: 800px) {
	.l-floating-nav__logo {
		pointer-events: auto;
		width: 10rem;
	}
	.l-floating-nav__logo img {
		width: 100%;
	}
}
.l-floating-nav__trigger {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	aspect-ratio: 1/1;
	cursor: pointer;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	position: relative;
	width: 1.25rem;
	z-index: 102;
}
@media screen and (min-width: 800px) {
	.l-floating-nav__trigger {
		display: none;
	}
}
.l-floating-nav__trigger-bar {
	display: block;
	height: 0;
	position: relative;
	width: 1.5rem;
}
.l-floating-nav__trigger-bar::before,
.l-floating-nav__trigger-bar::after {
	background-color: #000;
	content: "";
	height: 0.125rem;
	inset-inline-start: 0;
	position: absolute;
	-webkit-transition:
		top 0.3s ease,
		-webkit-transform 0.3s ease;
	transition:
		top 0.3s ease,
		-webkit-transform 0.3s ease;
	transition:
		transform 0.3s ease,
		top 0.3s ease;
	transition:
		transform 0.3s ease,
		top 0.3s ease,
		-webkit-transform 0.3s ease;
	width: 100%;
}
.l-floating-nav__trigger-bar::before {
	inset-block-start: -0.25rem;
}
.l-floating-nav__trigger-bar::after {
	inset-block-start: 0.25rem;
}
.l-floating-nav__trigger[aria-expanded="true"] .l-floating-nav__trigger-bar::before {
	inset-block-start: -0.0625rem;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.l-floating-nav__trigger[aria-expanded="true"] .l-floating-nav__trigger-bar::after {
	inset-block-start: -0.0625rem;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.l-floating-nav__menu {
	background-color: #fff;
	inset-block-end: 0;
	inset-block-start: 2.75rem;
	inset-inline: 0;
	opacity: 1;
	overflow-y: auto;
	padding: 1.25rem 0.625rem 5.625rem;
	position: fixed;
	-webkit-transition:
		opacity 0.3s ease,
		visibility 0.3s ease;
	transition:
		opacity 0.3s ease,
		visibility 0.3s ease;
	visibility: visible;
	z-index: 101;
}
@media screen and (min-width: 800px) {
	.l-floating-nav__menu {
		border: 4px solid #000;
		border-radius: 1.25rem;
		display: block !important;
		max-width: 20.125rem;
		min-width: 18.375rem;
		opacity: 1 !important;
		overflow-y: visible;
		padding: 0.375rem;
		pointer-events: auto !important;
		position: static;
		visibility: visible !important;
		width: 100%;
	}
}
.l-floating-nav__menu[hidden] {
	display: block;
	opacity: 0;
	pointer-events: none;
	visibility: hidden;
}
.l-floating-nav__menu-inner {
	border: 2px dashed #ffd900;
	border-radius: 1.25rem;
	margin-inline: auto;
	max-width: 30rem;
	min-height: 100%;
	padding: 2.5rem 1.25rem 5.625rem;
	position: relative;
}
@media screen and (min-width: 800px) {
	.l-floating-nav__menu-inner {
		border: 4px dashed #ffd900;
		border-radius: 1rem;
		min-height: auto;
		padding: 1.75rem 1.25rem;
	}
}
.l-floating-nav__list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	row-gap: 2.75rem;
}
@media screen and (min-width: 800px) {
	.l-floating-nav__list {
		row-gap: 1.5rem;
	}
}
.l-floating-nav__link {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-column-gap: 0.75rem;
	-moz-column-gap: 0.75rem;
	column-gap: 0.75rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	text-decoration: none;
	-webkit-transition: opacity 0.3s;
	transition: opacity 0.3s;
}
@media (hover: hover) {
	.l-floating-nav__link:hover {
		opacity: 0.7;
	}
}
.l-floating-nav__link picture {
	-ms-flex-negative: 1;
	flex-shrink: 1;
	line-height: 0;
	-webkit-margin-end: auto;
	margin-inline-end: auto;
	min-width: 0;
}
.l-floating-nav__link::before {
	aspect-ratio: 23/27;
	background: url(../img/nav-icon-list.svg) no-repeat center;
	background-size: contain;
	content: "";
	-ms-flex-negative: 0;
	flex-shrink: 0;
	width: 1.4375rem;
}
@media screen and (min-width: 800px) {
	.l-floating-nav__link::before {
		width: 1.125rem;
	}
}
.l-floating-nav__link::after {
	aspect-ratio: 1/1;
	background: url(../img/nav-icon-arrow.svg) no-repeat center;
	background-size: contain;
	content: "";
	-ms-flex-negative: 0;
	flex-shrink: 0;
	-webkit-margin-start: auto;
	margin-inline-start: auto;
	-webkit-transform: rotate(-90deg);
	transform: rotate(-90deg);
	width: 1.25rem;
}
@media screen and (min-width: 800px) {
	.l-floating-nav__link::after {
		-webkit-transform: rotate(0);
		transform: rotate(0);
		width: 1.125rem;
	}
}
.l-floating-nav__illust {
	inset-block-end: -5.625rem;
	inset-inline-start: 50%;
	position: absolute;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	width: 6.875rem;
}
@media screen and (min-width: 800px) {
	.l-floating-nav__illust {
		display: none;
	}
}
.l-floating-nav__illust img {
	display: block;
	width: 100%;
}

.l-footer {
	background-color: #fff;
	font-family: "Note Sans JP", sans-serif;
	-webkit-margin-before: 3.75rem;
	margin-block-start: 3.75rem;
}
.l-footer__message {
	margin-inline: 1.25rem;
	padding-block: 1.1875rem 1.6875rem;
}
.l-footer__figure {
	text-align: center;
}
.l-footer__desc {
	font-size: 0.8125rem;
	letter-spacing: -0.025rem;
	line-height: 1.7;
	-webkit-margin-before: 0.25rem;
	margin-block-start: 0.25rem;
}
.l-footer__bottom {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-border-before: 2px solid #000;
	border-block-start: 2px solid #000;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-font-feature-settings: "palt";
	font-feature-settings: "palt";
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	padding: 0.625rem 1rem 1rem;
}
@media screen and (min-width: 800px) {
	.l-footer__bottom {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		flex-direction: row;
		-webkit-padding-before: 1.5rem;
		padding-block-start: 1.5rem;
	}
}
.l-footer__logo {
	width: 30.7262569832%;
}
.l-footer .l-footer__copyright,
.l-footer .l-footer__company {
	font-size: 0.6875rem;
	line-height: 1.5;
	text-align: right;
}
.l-footer__copyright {
	-webkit-margin-before: 0.1875rem;
	margin-block-start: 0.1875rem;
}

@media screen and (min-width: 800px) {
	.p-hero {
		-webkit-padding-before: 1.5rem;
		padding-block-start: 1.5rem;
	}
}
.p-hero__content {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	padding-block: 3.125rem 2.5rem;
	position: relative;
	z-index: 1;
}
.p-hero__content::after {
	background-color: #fee134;
	border-radius: 10px;
	content: "";
	display: block;
	inset: 0 1.25rem;
	position: absolute;
	z-index: -1;
}
.p-hero__catch {
	margin-inline: 1.25rem;
	position: relative;
	width: min(80vw, 25rem);
	z-index: 3;
}
.p-hero__catch img {
	width: 100%;
}
.p-hero__img {
	aspect-ratio: 390/272;
	display: block;
	margin-inline: -1.25rem;
	position: relative;
	width: 100%;
	z-index: 2;
}
.p-hero__img img {
	aspect-ratio: 390/279;
	inset-block-end: 0;
	inset-inline: 0;
	position: absolute;
	width: min(100vw, 31.25rem);
}
.p-hero__desc {
	font-size: 1.0625rem;
	line-height: 2;
	-webkit-margin-before: 1rem;
	margin-block-start: 1rem;
	margin-inline: 1.25rem;
	text-align: center;
}
.p-hero__desc:first-of-type {
	-webkit-margin-before: min(5.1282051282vw, 1.6025641026rem);
	margin-block-start: min(5.1282051282vw, 1.6025641026rem);
}

.p-preparation {
	-webkit-padding-before: 5rem;
	padding-block-start: 5rem;
}
.p-preparation__lead {
	letter-spacing: 0.02em;
	line-height: 1.8;
	-webkit-margin-before: 0.9375rem;
	margin-block-start: 0.9375rem;
	text-align: center;
}
.p-preparation__list {
	background: url(../img/preparation-bg.webp) no-repeat 3.5897435897% 100%;
	background-size: 22.0512820513% auto;
	-webkit-padding-after: 0.9375rem;
	padding-block-end: 0.9375rem;
}
.p-preparation__item {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	padding: 1.875rem 1.5625rem 2.625rem;
	row-gap: 1.5rem;
}
.p-preparation__item-title {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
	min-height: 4.75rem;
	row-gap: 1.25rem;
}
.p-preparation__item-title img {
	height: auto;
	max-height: 4rem;
	max-width: 100%;
	-o-object-fit: contain;
	object-fit: contain;
	width: auto;
}
.p-preparation__item-title::after {
	background: url(../img/preparation-line.svg) no-repeat 0 0;
	background-size: cover;
	content: "";
	display: block;
	height: 0.125rem;
	width: 100%;
}
.p-preparation__item-text {
	font-size: 0.9375rem;
	line-height: 1.6;
}

.p-baggage {
	-webkit-padding-before: 5.25rem;
	padding-block-start: 5.25rem;
}
.p-baggage__lead {
	letter-spacing: 0.02em;
	line-height: 1.8;
	margin: 1.25rem 1.25rem 0;
}
.p-baggage__tab-container {
	-webkit-margin-before: 1.125rem;
	margin-block-start: 1.125rem;
}
.p-baggage__tab-container .c-tab__button {
	border-radius: 1.5625rem 1.5625rem 0 0;
}
.p-baggage__tab-container .c-tab-panel {
	padding: 1.625rem 1.125rem 2.375rem;
}
.p-baggage__desc {
	font-size: 0.9375rem;
	line-height: 1.8;
}
.p-baggage__image {
	display: block;
	-webkit-margin-before: 1.25rem;
	margin-block-start: 1.25rem;
	text-align: center;
}
.p-baggage__block {
	border-radius: 1.25rem;
	-webkit-margin-before: 1.5rem;
	margin-block-start: 1.5rem;
	padding: 1.5rem 1.875rem 1.875rem;
}
.p-baggage__block-title {
	text-align: center;
}
.p-baggage__block-title:has(img[src*="leave"]) {
	-webkit-margin-before: 0.25rem;
	margin-block-start: 0.25rem;
}
.p-baggage #panel-carry .p-baggage__block {
	background: #dcdddd;
}
.p-baggage #panel-leave .p-baggage__block {
	background: #ffd900;
}
.p-baggage__def {
	-webkit-margin-before: 1.25rem;
	margin-block-start: 1.25rem;
}
.p-baggage__def-term {
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.8;
}
.p-baggage__def-desc {
	font-size: 0.875rem;
	line-height: 1.8;
}
.p-baggage #accordion-leave-1 .p-baggage__def-term {
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
	-webkit-column-gap: 0.3125rem;
	-moz-column-gap: 0.3125rem;
	column-gap: 0.3125rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-size: 1rem;
}
.p-baggage #accordion-leave-1 .p-baggage__def-term::before {
	aspect-ratio: 1/1;
	background-color: #000;
	border-radius: 100%;
	content: "";
	display: block;
	-ms-flex-negative: 0;
	flex-shrink: 0;
	-webkit-transform: translateY(0.66em);
	transform: translateY(0.66em);
	width: 0.625rem;
}
.p-baggage #accordion-leave-1 .p-baggage__def-desc {
	font-size: 0.9375rem;
}
.p-baggage__list-block {
	border-radius: 1.25rem;
	display: grid;
	grid-template-columns: 1fr auto;
	-webkit-margin-before: 1.25rem;
	margin-block-start: 1.25rem;
	padding: 1.25rem;
	row-gap: 0.875rem;
}
.p-baggage #panel-carry .p-baggage__list-block {
	background: #dcdddd;
}
.p-baggage #panel-leave .p-baggage__list-block {
	background: #ffd900;
}
.p-baggage__list {
	-webkit-animation: fadeIn 0.4s ease forwards;
	animation: fadeIn 0.4s ease forwards;
	grid-column: 1/-1;
}
@keyframes fadeIn {
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}
.p-baggage__list-title {
	align-self: center;
	grid-column: 1/2;
}
.p-baggage__list-item {
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
	-webkit-column-gap: 0.4375rem;
	-moz-column-gap: 0.4375rem;
	column-gap: 0.4375rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-size: 0.9375rem;
	line-height: 1.8;
}
.p-baggage__list-item::before {
	aspect-ratio: 1/1;
	background-color: #000;
	border-radius: 100%;
	content: "";
	display: block;
	-ms-flex-negative: 0;
	flex-shrink: 0;
	-webkit-transform: translateY(0.66em);
	transform: translateY(0.66em);
	width: 0.625rem;
}
.p-baggage .c-toggle-btn {
	grid-column: 2/3;
}
.p-baggage .c-toggle-btn[aria-controls*="list-carry"] {
	background-color: #f6f7f7;
}
.p-baggage .c-toggle-btn[aria-controls*="list-leave"] {
	background-color: #f8ee97;
}

.p-experience {
	-webkit-padding-before: 5rem;
	padding-block-start: 5rem;
}
.p-experience__list {
	--bg-width: min(91.2820512821vw, 28.5256410256rem);
	-webkit-animation: loop-experience-bg 10s linear infinite;
	animation: loop-experience-bg 10s linear infinite;
	background: url(../img/experience-bg.svg) repeat-x 0 100%;
	background-size: var(--bg-width) min(56.4102564103vw, 17.6282051282rem);
	-webkit-padding-after: min(58.9743589744vw, 18.4294871795rem);
	padding-block-end: min(58.9743589744vw, 18.4294871795rem);
}
.p-experience__item {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	padding: 1.25rem 1rem 2.375rem;
	position: relative;
	row-gap: 0.875rem;
}
.p-experience__item::before,
.p-experience__item::after {
	aspect-ratio: 12/50;
	background: no-repeat 50% 50%;
	background-size: cover;
	content: "";
	position: absolute;
	width: 0.75rem;
}
.p-experience__item::before {
	inset-block-start: 1.25rem;
	inset-inline-start: 0.625rem;
}
.p-experience__item::after {
	inset-block-end: 1.25rem;
	inset-inline-end: 0.625rem;
	-webkit-transform: rotate(180deg);
	transform: rotate(180deg);
}
.p-experience__item--01::before,
.p-experience__item--01::after {
	background-image: url(../img/experience-case01.svg);
}
.p-experience__item--02::before,
.p-experience__item--02::after {
	background-image: url(../img/experience-case02.svg);
}
.p-experience__item--03::before,
.p-experience__item--03::after {
	background-image: url(../img/experience-case03.svg);
}
.p-experience__item--04::before,
.p-experience__item--04::after {
	background-image: url(../img/experience-case04.svg);
}
.p-experience__title {
	margin-inline: 0.25rem;
}
.p-experience__title img {
	height: auto;
	max-height: 5.75rem;
	max-width: 100%;
	-o-object-fit: contain;
	object-fit: contain;
	width: 100%;
}
.p-experience__text {
	font-size: 0.9375rem;
	line-height: 1.8;
}
.p-experience__highlight {
	background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, #fff4b2));
	background: linear-gradient(transparent 60%, #fff4b2 60%);
	display: inline;
	-webkit-padding-after: 0.125rem;
	padding-block-end: 0.125rem;
}
.p-experience__profile {
	font-size: 0.8125rem;
	line-height: 1.8;
	-webkit-margin-before: auto;
	margin-block-start: auto;
}

@-webkit-keyframes loop-experience-bg {
	0% {
		background-position: 0 100%;
	}
	100% {
		background-position: calc(var(--bg-width) * -1) 100%;
	}
}

@keyframes loop-experience-bg {
	0% {
		background-position: 0 100%;
	}
	100% {
		background-position: calc(var(--bg-width) * -1) 100%;
	}
}
.p-risk {
	-webkit-padding-before: 6.875rem;
	padding-block-start: 6.875rem;
}
.p-risk__lead {
	font-size: 1rem;
	letter-spacing: 0.02em;
	line-height: 1.8;
	margin: 1.375rem 1.25rem 0;
}
.p-risk__tab-container {
	-webkit-margin-before: 1.75rem;
	margin-block-start: 1.75rem;
}
.p-risk__tab-container .c-tab-panel {
	padding: 0 1.875rem 2.875rem;
}
.p-risk__panels {
	display: grid;
}
.p-risk__panels > .c-tab-panel {
	grid-area: 1/1;
}
.p-risk__panels > .c-tab-panel[hidden] {
	display: block;
	opacity: 0;
	pointer-events: none;
	visibility: hidden;
	z-index: -1;
}
.p-risk__def-title {
	text-align: center;
}
.p-risk__def-item {
	font-size: 0.9375rem;
	font-weight: 700;
	line-height: 1.8;
	-webkit-padding-start: 1.375rem;
	padding-inline-start: 1.375rem;
	position: relative;
}
.p-risk__def-item:not(:first-of-type) {
	-webkit-margin-before: 0.3125rem;
	margin-block-start: 0.3125rem;
}
.p-risk__def-item::before {
	aspect-ratio: 1/1;
	background: url(../img/risk-box.svg) no-repeat 0 0;
	background-size: contain;
	content: "";
	display: block;
	inset-block-start: 0;
	inset-inline-start: 0;
	position: absolute;
	-webkit-transform: translateY(0.5em);
	transform: translateY(0.5em);
	width: 0.875rem;
}
.p-risk__def-note {
	font-size: 0.75rem;
	-webkit-margin-start: 0.0625rem;
	margin-inline-start: 0.0625rem;
}
.p-risk-sites {
	margin: 3.125rem 1.5625rem 0;
}
.p-risk-sites__title {
	text-align: center;
}
.p-risk-sites__title img {
	width: 100%;
}
.p-risk-sites__list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-margin-before: 2.5rem;
	margin-block-start: 2.5rem;
	row-gap: 3.125rem;
}
.p-risk-sites__figure {
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
	-webkit-column-gap: 1.5rem;
	-moz-column-gap: 1.5rem;
	column-gap: 1.5rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
.p-risk-sites__img {
	-ms-flex-negative: 0;
	flex-shrink: 0;
	-webkit-box-ordinal-group: 3;
	-ms-flex-order: 2;
	order: 2;
	width: 4.75rem;
}
.p-risk-sites__caption {
	-webkit-box-ordinal-group: 2;
	-ms-flex-order: 1;
	order: 1;
}
.p-risk-sites__desc {
	font-size: 0.875rem;
	line-height: 1.6;
	-webkit-margin-before: 0.625rem;
	margin-block-start: 0.625rem;
}
.p-risk-sites__note {
	font-size: 0.625rem;
	line-height: 1.6;
	-webkit-margin-before: 0.375rem;
	margin-block-start: 0.375rem;
}
.p-risk-sites .c-button {
	-webkit-margin-before: 1.25rem;
	margin-block-start: 1.25rem;
}

.p-chart {
	-webkit-padding-before: 6.25rem;
	padding-block-start: 6.25rem;
	position: relative;
	z-index: 1;
}
.p-chart__lead {
	font-size: 1rem;
	letter-spacing: 0.02em;
	line-height: 1.8;
	margin: 1.375rem 1.25rem 0;
}
.p-chart__container {
	background-color: #fee134;
	-webkit-margin-before: 1.875rem;
	margin-block-start: 1.875rem;
	padding: 0.875rem 1.5625rem 2.5rem;
}
.p-chart__slide {
	opacity: 0 !important;
	pointer-events: none;
	-webkit-transition:
		opacity 0.4s ease,
		visibility 0.4s ease;
	transition:
		opacity 0.4s ease,
		visibility 0.4s ease;
	visibility: hidden;
}
.p-chart__slide.swiper-slide-active {
	opacity: 1 !important;
	pointer-events: auto;
	visibility: visible;
}
.p-chart__label {
	text-align: center;
}
.p-chart__label--result {
	padding-block: 1.375rem 0.5rem;
}
.p-chart__question {
	background-color: #fff;
	border: 2px solid #000;
	border-radius: 1.5625rem;
	-webkit-margin-before: 1.25rem;
	margin-block-start: 1.25rem;
	min-height: 10rem;
	padding: 1.5rem 1.75rem;
	position: relative;
	z-index: 1;
}
.p-chart__q-label {
	inset-block-start: -13px;
	inset-inline-end: -17px;
	position: absolute;
	z-index: 3;
}
.p-chart__q-text {
	font-size: 0.9375rem;
	font-weight: 700;
	line-height: 1.8;
}
.p-chart__q-list {
	font-size: 0.9375rem;
	font-weight: 700;
	line-height: 1.8;
}
.p-chart__question:has(.p-chart__q-image img[src*="icon1"]) .p-chart__q-list {
	-webkit-padding-end: 25.7142857143%;
	padding-inline-end: 25.7142857143%;
}
.p-chart__question:has(.p-chart__q-image img[src*="icon2"]) .p-chart__q-list {
	-webkit-padding-end: 27.1428571429%;
	padding-inline-end: 27.1428571429%;
}
.p-chart__question:has(.p-chart__q-image img[src*="icon3"]) .p-chart__q-list {
	-webkit-padding-end: 34.6428571429%;
	padding-inline-end: 34.6428571429%;
}
.p-chart__question:has(.p-chart__q-image img[src*="icon2"]) .p-chart__q-list {
	-webkit-padding-end: 29.6428571429%;
	padding-inline-end: 29.6428571429%;
}
.p-chart__q-item {
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
	-webkit-column-gap: 0.3333333333em;
	-moz-column-gap: 0.3333333333em;
	column-gap: 0.3333333333em;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}
.p-chart__q-item::before {
	content: "●";
	-ms-flex-negative: 0;
	flex-shrink: 0;
}
.p-chart__q-image {
	inset-block-end: 0;
	inset-inline-end: 0;
	position: absolute;
	z-index: -1;
}
.p-chart__q-image:has(img[src*="icon1"]) {
	width: 26.7857142857%;
}
.p-chart__q-image:has(img[src*="icon2"]) {
	width: 27.9761904762%;
}
.p-chart__q-image:has(img[src*="icon3"]) {
	width: 34.2261904762%;
}
.p-chart__q-image:has(img[src*="icon4"]) {
	width: 30.0595238095%;
}
.p-chart__q-image img {
	width: 100%;
}
.p-chart__actions {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	gap: 0.625rem;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-margin-before: 0.625rem;
	margin-block-start: 0.625rem;
}
.p-chart__actions .c-button {
	background-color: #dcdddd;
}
.p-chart__actions .c-button-fire {
	background-color: #ea5514;
}
.p-chart__actions .c-button-flood {
	background-color: #006d96;
}
.p-chart__actions .c-button-result {
	background-color: #000;
}
.p-chart__result {
	background-color: #fff;
	border: 2px solid #000;
	border-radius: 1.5625rem;
	-webkit-margin-before: 1.25rem;
	margin-block-start: 1.25rem;
}
.p-chart__result-text {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	aspect-ratio: 336/204;
	border: 12px solid;
	border-radius: 1.4375rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	width: 100%;
}
.p-chart__result-fire1 {
	border-color: #ec6d5e;
}
.p-chart__result-fire2 {
	border-color: #f2998e;
}
.p-chart__result-fire3 {
	border-color: #f8c5be;
}
.p-chart__result-flood1 {
	border-color: #5bc2d9;
}
.p-chart__result-flood2 {
	border-color: #8cd4e4;
}
.p-chart__result-flood3 {
	border-color: #bee7f0;
}
.p-chart__r-label {
	-webkit-column-gap: 0.625rem;
	-moz-column-gap: 0.625rem;
	column-gap: 0.625rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin-inline: 1.4375rem;
	-webkit-padding-before: 1.4375rem;
	padding-block-start: 1.4375rem;
}
.p-chart__r-label img {
	width: 100%;
}
.p-chart__r-title {
	margin: 0.625rem 1.4375rem 0;
	-webkit-padding-after: 1.4375rem;
	padding-block-end: 1.4375rem;
	text-align: center;
}
.p-chart__r-title img {
	width: 100%;
}

.p-lineup {
	-webkit-padding-before: 3.75rem;
	padding-block-start: 3.75rem;
	position: relative;
	z-index: 1;
}
.p-lineup::after {
	aspect-ratio: 178/224;
	background: url(../img/knowledge-bg.webp) no-repeat 100% 0;
	background-size: contain;
	content: "";
	display: block;
	margin: -6.5rem auto 0;
	position: relative;
	width: min(45.641025641vw, 14.2628205128rem);
	z-index: 3;
}
.p-lineup__lead {
	letter-spacing: 0.02em;
	line-height: 1.8;
	margin: 1rem 1.25rem 0;
}
.p-lineup__item {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	background-color: #fff;
	border: 2px solid #000;
	border-radius: 1.5625rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	margin: 1.25rem 1.25rem 0;
	padding: 1.75rem 1.75rem 2.375rem;
	row-gap: 1.25rem;
}
.p-lineup__item:first-of-type {
	-webkit-margin-before: 1.75rem;
	margin-block-start: 1.75rem;
}
.p-lineup__desc {
	font-size: 0.9375rem;
	line-height: 1.8;
	max-width: 18.125rem;
}
.p-lineup__feature {
	max-width: 18.125rem;
	width: 100%;
}
.p-lineup__buttons {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	row-gap: 1rem;
}
.p-lineup__buttons--detail {
	background-color: #fff;
}
.p-lineup__buttons + .p-lineup__name {
	-webkit-margin-before: 1.875rem;
	margin-block-start: 1.875rem;
}
.p-lineup__design-lead + .p-lineup__name {
	-webkit-margin-before: -1.25rem;
	margin-block-start: -1.25rem;
}

.p-knowledge {
	background-color: #fff;
	border: 2px solid #000;
	border-radius: 1.5625rem;
	margin: 1.25rem 1.25rem 0;
	padding: 1.875rem 1.25rem 7.5rem;
	position: relative;
	z-index: 2;
}
.p-knowledge__title {
	text-align: center;
}
.p-knowledge__list {
	-webkit-margin-before: 2rem;
	margin-block-start: 2rem;
}
.p-knowledge__term {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-column-gap: 0.625rem;
	-moz-column-gap: 0.625rem;
	column-gap: 0.625rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	font-size: 1.125rem;
	font-weight: 700;
	line-height: normal;
}
.p-knowledge__desc {
	font-size: 0.9375rem;
	line-height: 1.8;
	-webkit-margin-before: 0.5rem;
	margin-block-start: 0.5rem;
}
.p-knowledge__note {
	counter-reset: note;
	font-size: 0.75rem;
	line-height: 1.6;
	-webkit-margin-before: 0.25rem;
	margin-block-start: 0.25rem;
}
.p-knowledge__note li {
	-webkit-column-gap: 0.2em;
	-moz-column-gap: 0.2em;
	column-gap: 0.2em;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}
.p-knowledge__note li::before {
	content: "※" counter(note);
	counter-increment: note;
	-ms-flex-negative: 0;
	flex-shrink: 0;
	white-space: nowrap;
}

.p-note {
	background: url(../img/note-bg.webp) no-repeat min(18.4615384615vw, 5.7692307692rem) 100%;
	background-size: min(65.641025641vw, 20.5128205128rem) auto;
	padding-block: 5rem min(56.9230769231vw, 17.7884615385rem);
}
.p-note__lead {
	font-size: 0.9375rem;
	line-height: 1.8;
	margin: 1.25rem 1.25rem 0;
}
.p-note__images {
	margin: 1.25rem 1rem 0;
}
.p-note__images.swiper-wrapper {
	-webkit-column-gap: 1.25rem;
	-moz-column-gap: 1.25rem;
	column-gap: 1.25rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}
.p-note__picture {
	text-align: center;
}
.p-note__picture img {
	width: 100%;
}
.p-note .c-button {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin: 3.125rem 1.25rem 0;
	width: auto;
}

.p-supervisor {
	margin: 5rem 1.25rem 0;
}
.p-supervisor__figure {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-column-gap: 1.625rem;
	-moz-column-gap: 1.625rem;
	column-gap: 1.625rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}
.p-supervisor__caption {
	font-size: 1.125rem;
	font-weight: 700;
}
.p-supervisor__desc {
	font-size: 0.875rem;
	line-height: 1.8;
	-webkit-margin-before: 0.625rem;
	margin-block-start: 0.625rem;
}
