@charset "UTF-8";
/* Web Font */
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Zen+Maru+Gothic:wght@500;700&display=swap");
/* Custom Properties */
:root {
	/* color */
	--color-default: #232323;
	--color-blue: #00b4e6;
	--color-blue: #00b4e6;
	--color-green: #96b432;
	--color-orange: #fa8c37;
	/* font */
	--font-default: "Noto Sans JP", sans-serif;
	--font-zenmaru: "Zen Maru Gothic", sans-serif;
}

/*-------------------------
reset
---------------------------*/
*,
*::before,
*::after {
	box-sizing: border-box;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

html {
	-webkit-text-size-adjust: 100%;
}

body, input, textarea {
	font-size: 16px;
}

body {
	color: var(--color-default);
	font-family: var(--font-default);
	font-size: 16px;
	-webkit-font-feature-settings: "palt";
	font-feature-settings: "palt";
	text-align: justify;
	line-height: 1.75;
	margin: 0;
	position: relative;
	overflow-x: hidden;
}

img, a, ul, li, iframe, fieldset {
	border: none;
	outline: none;
}

a, img {
	display: block;
	width: 100%;
}

a.inline, img.inline {
	display: inline;
	width: auto;
}

img {
	line-height: 0;
}

a {
	color: var(--color-text);
	text-decoration: none;
	transition: 0.2s ease-out;
}

h1, h2, h3, h4, h5, ol, ul, li, dl, dt, dd, p, figure, from, iframe, fieldset, legend {
	margin-block-start: 0;
	margin-block-end: 0;
	margin: 0;
	padding: 0;
}

ol, ul {
	list-style: none;
}

h1, h2, h3, h4, h5 {
	font-size: 100%;
	font-weight: normal;
}

em {
	font-style: normal;
}

article, aside, footer, header, main, nav, section {
	display: block;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

textarea {
	resize: vertical;
}

input, textarea, select {
	font-size: 16px;
	padding: 3px;
	border: 1px solid #b2b2b2;
	border-radius: 5px;
}

select {
	padding: 2.5px 3px;
}

label {
	display: -webkit-box;
	display: flex;
}

label input {
	display: block;
}

/* iOSでのデフォルトスタイルをリセット */
input:focus {
	outline: none;
}

input[type=submit],
input[type=button] {
	border-radius: 0;
	-webkit-box-sizing: content-box;
	-webkit-appearance: button;
	appearance: button;
	border: none;
	box-sizing: border-box;
	cursor: pointer;
}

input[type=radio],
input[type=checkbox] {
	display: inline-block;
	height: 2em;
	font-size: 16px;
	margin: 0 5px 0 0;
	cursor: pointer;
}

input[type=submit]::-webkit-search-decoration,
input[type=button]::-webkit-search-decoration {
	display: none;
}

input[type=submit]:focus,
input[type=button]:focus {
	outline-offset: -2px;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
	margin-left: 5px;
	opacity: 0.5;
}

@media (width <= 767px) {
	.pc {
		display: none !important;
	}
}
@media (width > 767px) {
	.sp {
		display: none !important;
	}
}
.w860 {
	width: 100%;
	max-width: 860px;
}
.w860.box-side {
	max-width: 930px;
}

.w1090 {
	width: 100%;
	max-width: 1090px;
}
.w1090.box-side {
	max-width: 1160px;
}

.box-side {
	padding-inline: 35px;
}

.c-mt-l {
	margin-top: 100px;
}
@media (width <= 767px) {
	.c-mt-l {
		margin-top: 80px;
	}
}

.c-mt-m {
	margin-top: 60px;
}
@media (width <= 767px) {
	.c-mt-m {
		margin-top: 40px;
	}
}

.c-mt-s {
	margin-top: 30px;
}
@media (width <= 767px) {
	.c-mt-s {
		margin-top: 20px;
	}
}

.m-auto {
	margin-inline: auto !important;
}

.c-sec01 {
	padding-block: 60px;
}
@media (width <= 767px) {
	.c-sec01 {
		padding-block: 30px;
	}
}

.c-list01 > li {
	padding-left: 1em;
	position: relative;
}
.c-list01 > li::before {
	content: "・";
	position: absolute;
	top: 0;
	left: 0;
}
.c-list01 > li + li {
	margin-top: 0.5em;
}
.c-list01--notes > li::before {
	content: "※";
}
.c-list01--circle > li::before {
	content: "●";
	font-size: 0.75em;
	color: var(--color-orange);
	top: 0.25em;
}

.c-list02 {
	counter-reset: number;
	font-size: 18px;
}
.c-list02 > li {
	padding-left: 1.2em;
	position: relative;
}
.c-list02 > li + li {
	margin-top: 0.5em;
}
.c-list02 > li::before {
	counter-increment: number;
	content: counter(number, decimal-leading-zero);
	font-family: var(--font-zenmaru);
	color: var(--color-orange);
	font-weight: bold;
	position: absolute;
	inset: 0 auto auto 0;
}

.c-title01 {
	--color: var(--color-orange);
	font-size: clamp(28px, 2.29vw, 32px);
	font-weight: bold;
	color: var(--color);
	border-bottom: 1px solid var(--color);
	padding-bottom: 0.2em;
}
.c-title01--fz26 {
	font-size: 26px;
}
.c-title01--fz26-18 {
	font-size: clamp(18px, 1.86vw, 26px);
}
.c-title01--white {
	--color: #fff;
}
.c-title01--text-black {
	color: #232323;
}

.c-title02 {
	font-size: 26px;
	font-weight: bold;
	color: var(--color-orange);
}

.c-title03 {
	font-size: 22px;
	font-weight: bold;
}

.c-title04 {
	font-size: 18px;
	font-weight: 500;
	color: var(--color-orange);
}

.c-title05 {
	--color: var(--color-blue);
	font-size: 26px;
	font-weight: bold;
	color: var(--color);
	border-bottom: 1px solid var(--color);
	padding-bottom: 10px;
}

.c-fw-m {
	font-weight: 500;
}

.c-fw-b {
	font-weight: bold;
}

.c-text-c {
	text-align: center;
}

.c-ls-s {
	letter-spacing: -0.05em;
}

.c-text-st {
	font-weight: bold;
	color: var(--color-orange);
}

.c-text-2col {
	column-count: 2;
	column-rule: 1px solid #c8c8c8;
	gap: 80px;
}
@media (width <= 767px) {
	.c-text-2col {
		column-count: 1;
	}
}

.c-text-wave {
	display: inline-block;
	position: relative;
}
.c-text-wave::after {
	content: "";
	display: block;
	width: 100%;
	height: 0.15em;
	background: center/contain repeat-x;
	background-image: url(../img/common/icon_wave01.webp);
	clip-path: inset(0 100% 0 0);
	transition: clip-path 1s linear;
}
@media (width > 767px) {
	.c-text-wave--sp::after {
		content: none;
	}
}
@media (width <= 767px) {
	.c-text-wave--pc::after {
		content: none;
	}
}
.c-text-wave.animated::after {
	clip-path: inset(0 0 0 0);
}

.c-link01 {
	display: inline;
	color: var(--color-blue);
	text-decoration: underline var(--color-blue) 0.5px;
	text-underline-offset: 3px;
}

.c-link02 {
	display: flex;
	align-items: center;
	font-weight: bold;
}
.c-link02::before {
	content: "";
	display: block;
	width: 23px;
	height: 32px;
	background: center/contain no-repeat;
	margin-right: 15px;
}
.c-link02[href$=".pdf"]::before {
	background-image: url(../img/common/icon_pdf.svg);
}
.c-link02[href$=".xls"]::before, .c-link02[href$=".xlsx"]::before, .c-link02[href$=".xlsm"]::before {
	background-image: url(../img/common/icon_excel.svg);
}
.c-link02[href$=".docx"]::before {
	background-image: url(../img/common/icon_word.svg);
}
.c-link02__text {
	text-decoration: underline #c8c8c8 1px;
	text-underline-offset: 5px;
}
.c-link02 .file_size {
	font-weight: 400;
}
.c-link02--jc-c {
	justify-content: center;
}

.c-btn01 {
	--btn-color: var(--color-orange);
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	font-weight: 500;
	width: 100%;
	min-height: 50px;
	border: 1px solid var(--btn-color);
	background-color: var(--btn-color);
	border-radius: calc(infinity * 1px);
	padding: 5px 30px;
	position: relative;
	transition: 0.2s ease-out;
	cursor: pointer;
}
.c-btn01::after {
	content: "";
	display: block;
	width: 5px;
	aspect-ratio: 1/2;
	background: url(../img/common/icon_arrow01.svg) center/contain no-repeat;
	position: absolute;
	inset: 50% 20px auto auto;
	translate: 0 -50%;
	transition: filter 0.2s ease-out;
}
@media (any-hover: hover) {
	.c-btn01:hover {
		color: var(--btn-color);
		background-color: #fff;
	}
	.c-btn01:hover::after {
		filter: brightness(0) saturate(100%) invert(80%) sepia(36%) saturate(5948%) hue-rotate(335deg) brightness(100%) contrast(96%);
	}
}
.c-btn01--square {
	font-size: 18px;
	min-height: 86px;
	border-color: var(--btn-color);
	border-radius: 6px;
	padding: 5px 25px;
}
.c-btn01--square::after {
	right: 15px;
}
.c-btn01--blue {
	--btn-color: var(--color-blue);
}
@media (any-hover: hover) {
	.c-btn01--blue:hover::after {
		filter: brightness(0) saturate(100%) invert(72%) sepia(83%) saturate(4010%) hue-rotate(153deg) brightness(93%) contrast(101%);
	}
}

.c-btn02 {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	max-width: 300px;
	min-height: 70px;
	border: 1px solid #c8c8c8;
	border-radius: 12px;
	padding: 5px 15px;
}
@media (any-hover: hover) {
	.c-btn02:hover {
		color: #fff;
		background-color: #c8c8c8;
	}
}

.c-btn03 {
	display: block;
	max-width: max-content;
	font-weight: 500;
	padding-right: 20px;
	position: relative;
}
.c-btn03::after {
	content: "";
	display: block;
	width: 5px;
	aspect-ratio: 1/2;
	background: url(../img/common/icon_arrow02.svg) center/contain no-repeat;
	position: absolute;
	inset: 50% 0 auto auto;
	transform: translate(0, -50%);
	transition: inset 0.2s ease-out;
}
@media (any-hover: hover) {
	.c-btn03:hover::after {
		right: -10px;
	}
}
.c-btn03--blue {
	color: var(--color-blue);
}
.c-btn03--blue::after {
	background-image: url(../img/common/icon_arrow03.svg);
}
.c-btn03--green {
	color: var(--color-green);
}
.c-btn03--green::after {
	background-image: url(../img/common/icon_arrow04.svg);
}

.c-btn04 {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	font-size: 18px;
	color: #fff;
	text-align: center;
	width: 100%;
	min-height: 120px;
	background: url(../img/common/bg_orange.webp) center/cover no-repeat;
	border: 1px solid #fff;
	border-radius: 22px;
	padding: 5px 50px;
	position: relative;
}
.c-btn04::after {
	content: "";
	display: block;
	width: 5px;
	aspect-ratio: 1/2;
	background: url(../img/common/icon_arrow01.svg) center/contain no-repeat;
	position: absolute;
	inset: 50% 40px auto auto;
	transform: translate(0, -50%);
	transition: inset 0.2s ease-out;
}
.c-btn04 span {
	font-size: 16px;
}
@media (width <= 767px) {
	.c-btn04 span {
		font-size: 14px;
	}
}
@media (any-hover: hover) {
	.c-btn04:hover::after {
		right: 30px;
	}
}

.c-cts {
	display: flex;
	align-items: flex-start;
	gap: 40px 80px;
	width: 100%;
	max-width: 1210px;
}
@media (width <= 1200px) {
	.c-cts {
		flex-direction: column;
	}
}
.c-cts .box01 {
	width: 200px;
	position: sticky;
	inset: 50px auto auto 0;
}
@media (width <= 1200px) {
	.c-cts .box01 {
		width: 100%;
		max-width: 600px;
		margin-inline: auto;
		position: relative;
		inset: auto;
	}
}
.c-cts .box02 {
	width: calc(100% - 80px - 200px);
}
@media (width <= 1200px) {
	.c-cts .box02 {
		width: 100%;
	}
}

#parts .c-cts .box02 > * + * {
	margin-top: 60px;
}

.c-nav {
	background: url(../img/common/bg_orange.webp) center/cover no-repeat;
	border-radius: 6px;
	padding: 10px 20px;
}
.c-nav__item:not(:last-child) .c-nav__link {
	border-bottom: 1px solid #fff;
}
.c-nav__link {
	font-size: 15px;
	font-weight: 500;
	color: #fff;
	padding: 20px 15px 20px 5px;
	position: relative;
}
.c-nav__link::after {
	content: "";
	display: block;
	width: 5px;
	aspect-ratio: 1/2;
	background: url(../img/common/icon_arrow01.svg) center/contain no-repeat;
	position: absolute;
	inset: 50% 5px auto auto;
	translate: 0 -50%;
}

.c-flex01 {
	display: flex;
	flex-wrap: wrap;
	gap: 30px 60px;
}
.c-flex01 > * {
	width: calc((100% - 60px) / 2);
}
@media (width <= 767px) {
	.c-flex01 > * {
		width: 100%;
	}
}
.c-flex01--reverse {
	flex-direction: row-reverse;
}

.c-flex02 {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
}
.c-flex02 > * {
	width: 100%;
}
.c-flex02--2col > * {
	width: calc((100% - 20px) / 2);
}
@media (width <= 767px) {
	.c-flex02--2col > * {
		width: 100%;
	}
}
.c-flex02--3col > * {
	width: calc((100% - 40px) / 3);
}
@media (width <= 767px) {
	.c-flex02--3col > * {
		width: 100%;
	}
}
@media (width <= 767px) {
	.c-flex02--4col {
		gap: 40px 0;
	}
}
.c-flex02--4col > * {
	width: calc((100% - 60px) / 4);
}
@media (width <= 767px) {
	.c-flex02--4col > * {
		width: 50%;
	}
}
@media (width <= 767px) {
	.c-flex02--sp2col {
		gap: 20px;
	}
	.c-flex02--sp2col > * {
		width: calc((100% - 20px) / 2);
	}
}
.c-flex02--r-gap60 {
	row-gap: 60px;
}

.c-card {
	border: 1px solid #c8c8c8;
	border-radius: 22px;
	padding: 10px 10px 40px 10px;
}
.c-card__img {
	border-radius: 12px 12px 0 0;
	overflow: hidden;
}
.c-card__detail {
	padding: 30px 30px 0;
}
.c-card__detail > * + * {
	margin-top: 20px;
}
.c-card__title {
	font-size: 20px;
	font-weight: bold;
	color: var(--color-orange);
}

@media (width > 767px) {
	.c-flex02--2col .c-card__title {
		font-size: 18px;
	}
	.c-flex02--3col .c-card__detail {
		padding-inline: 20px;
	}
}
.c-flex02--4col .c-card {
	border: 0;
	border-radius: 0;
	padding: 0;
}
@media (width <= 767px) {
	.c-flex02--4col .c-card:nth-child(odd) {
		padding-right: 30px;
	}
	.c-flex02--4col .c-card:nth-child(even) {
		border-left: 1px dotted #c8c8c8;
		padding-left: 30px;
	}
}
.c-flex02--4col .c-card__img {
	border-radius: 12px;
}
.c-flex02--4col .c-card__detail {
	padding-inline: 0;
}
.c-flex02--4col .c-card__title {
	font-size: 16px;
}
.c-flex02--4col .c-btn01 {
	font-size: 16px;
}

.c-img01 {
	border-radius: 12px;
	overflow: hidden;
}

.c-sep {
	height: 1px;
	background-color: #fcca9b;
	margin-block: 60px;
}

.scroll-hint {
	overflow: hidden !important;
	overflow-x: auto !important;
}

.c-table {
	width: 100%;
	border-radius: 6px;
	border-bottom-left-radius: 0;
	overflow: hidden;
}
@media (width <= 767px) {
	.c-table {
		width: max-content;
	}
}
.c-table th {
	color: #fff;
}
.c-table th, .c-table td {
	text-align: center;
	box-sizing: border-box;
	padding: 10px;
	position: relative;
}
.c-table thead {
	background: url(../img/common/bg_orange.webp) center/cover no-repeat;
}
.c-table tbody tr > td {
	border-bottom: 1px solid var(--color-orange);
}
.c-table tbody th {
	background-color: var(--color-orange);
}
.c-table tbody th::before {
	content: "";
	display: block;
	width: 80%;
	height: 1px;
	background-color: #fff;
	position: absolute;
	inset: 0 auto auto 50%;
	translate: -50% 0;
}
.c-table thead tr > * + *::before,
.c-table tbody tr > td + td::before {
	content: "";
	display: block;
	width: 1px;
	height: 60%;
	position: absolute;
	inset: 50% auto auto 0;
	translate: 0 -50%;
}
.c-table thead tr > * + *::before {
	background-color: #fff;
}
.c-table tbody tr > td + td::before {
	background-color: var(--color-orange);
}

.c-dl01 {
	display: flex;
	flex-wrap: wrap;
	gap: 6px 0;
	overflow: hidden;
}
@media (width <= 767px) {
	.c-dl01 {
		flex-direction: column;
		gap: 0;
	}
}
.c-dl01 > * {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 50%;
	min-height: 50px;
	padding: 10px;
}
@media (width <= 767px) {
	.c-dl01 > * {
		width: 100%;
	}
}
.c-dl01 > dt {
	font-weight: bold;
	color: #fff;
	background-color: var(--color-orange);
	border-radius: 6px 0 0 6px;
}
@media (width <= 767px) {
	.c-dl01 > dt {
		border-radius: 6px 6px 0 0;
	}
}
.c-dl01 > dd {
	background-color: #fef4eb;
	border-radius: 0 6px 6px 0;
}
@media (width <= 767px) {
	.c-dl01 > dd {
		border-radius: 0 0 6px 6px;
	}
}
@media (width <= 767px) {
	.c-dl01 > dd + dt {
		margin-top: 10px;
	}
}

.c-dl02 > dt {
	font-size: 20px;
	font-weight: 500;
	color: var(--color-orange);
	border-bottom: 1px solid var(--color-orange);
	padding: 0 40px 15px;
}
@media (width <= 767px) {
	.c-dl02 > dt {
		padding: 0 0 15px;
	}
}
.c-dl02 > dd {
	border-left: 1px solid var(--color-orange);
	padding: 40px;
}
@media (width <= 767px) {
	.c-dl02 > dd {
		padding: 30px;
	}
}
.c-dl02 > dd + dt {
	margin-top: 50px;
}

.c-dl03 > dt {
	display: flex;
	align-items: center;
	font-size: 18px;
	font-weight: 500;
	color: #232323;
	min-height: 40px;
	background-color: #fddfc3;
	border-radius: 6px;
	padding: 10px 40px 10px 40px;
	position: relative;
	cursor: pointer;
}
.c-dl03 > dt span {
	width: 32px;
	aspect-ratio: 1;
	background-color: var(--color-orange);
	border-radius: 50%;
	position: absolute;
	inset: 50% 10px auto auto;
	translate: 0 -50%;
	transition: 0.2s ease-out;
}
.c-dl03 > dt span::before, .c-dl03 > dt span::after {
	content: "";
	display: block;
	width: 14px;
	height: 1px;
	background-color: #fff;
	position: absolute;
	inset: 50% auto auto 50%;
	translate: -50% -50%;
	transition: 0.2s ease-out;
}
.c-dl03 > dt span::after {
	rotate: 90deg;
}
@media (any-hover: hover) {
	.c-dl03 > dt:hover span {
		top: calc(50% + 5px);
	}
}
.c-dl03 > dt.open {
	border-radius: 6px 6px 0 0;
}
.c-dl03 > dt.open span {
	background-color: #c8c8c8;
}
.c-dl03 > dt.open span::after {
	rotate: 0deg;
}
.c-dl03 > dd {
	display: none;
	background-color: #fef4eb;
	border-radius: 0 0 6px 6px;
	padding: 40px;
}
@media (width <= 767px) {
	.c-dl03 > dd {
		padding: 20px;
	}
}
.c-dl03 > dd + dt {
	margin-top: 40px;
}
@media (width <= 767px) {
	.c-dl03 > dd + dt {
		margin-top: 20px;
	}
}

.c-swiper__wrapper {
	overflow: hidden;
}
@media (width <= 767px) {
	.c-swiper__wrapper {
		width: 100vw;
		margin-left: -35px;
	}
}

.c-swiper {
	padding: 50px 20px !important;
	overflow: visible !important;
}
@media (width <= 767px) {
	.c-swiper {
		padding: 10.81vw 20px !important;
	}
}
.c-swiper .swiper-slide {
	transition: scale 0.2s ease-out;
}
.c-swiper .swiper-slide.swiper-slide-active {
	scale: 1.25;
}
.c-swiper .c-card__detail {
	font-size: 12.8px;
	padding-inline: 15px;
}
.c-swiper__prev, .c-swiper__next {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 60px;
	aspect-ratio: 1;
	background-color: var(--color-orange);
	border-radius: 50%;
	position: absolute;
	top: 50%;
	translate: 0 -50%;
	z-index: 1;
	cursor: pointer;
}
.c-swiper__prev img, .c-swiper__next img {
	width: 5px;
}
.c-swiper__prev {
	left: 0;
}
.c-swiper__prev img {
	scale: -1 1;
}
.c-swiper__next {
	right: 0;
}
.c-swiper__pn {
	text-align: center;
	margin-top: 40px;
}
.c-swiper__pn .swiper-pagination-bullet {
	width: 10px;
	height: 10px;
	background-color: #c8c8c8;
	border: 1px solid transparent;
	margin-inline: 6px !important;
	opacity: 1;
}
.c-swiper__pn .swiper-pagination-bullet.swiper-pagination-bullet-active {
	background-color: #fff;
	border-color: var(--color-orange);
}

.c-feed {
	translate: 0 100px;
	opacity: 0;
	transition: opacity 1s, translate 1s;
}
.c-feed.animated {
	translate: 0 0;
	opacity: 1;
}

.c-breadList {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	max-width: 1130px;
	padding-inline: 20px;
	gap: 0.5em;
}
.c-breadList br {
	display: none !important;
}
.c-breadList > li {
	display: flex;
	font-size: 14px;
}
.c-breadList > li::after {
	content: "＞";
	display: inline-block;
	margin-left: 0.5em;
}
.c-breadList > li:last-child::after {
	content: none;
}

.lFv__inner {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 380px;
	padding-inline: 20px;
}
@media (width <= 767px) {
	.lFv__inner {
		height: 300px;
	}
}
.lFv__title {
	font-family: var(--font-zenmaru);
	font-size: clamp(32px, 2.71vw, 38px);
	font-weight: bold;
	color: #fff;
	text-align: center;
	line-height: 1.3;
}

.swiper.lFvSwiper {
	width: 100%;
	height: 100%;
	position: absolute;
	inset: 0 auto auto 0;
	z-index: -1;
}
.swiper.lFvSwiper .lFvSwiper__item {
	width: 100%;
	height: 380px;
}
@media (width <= 767px) {
	.swiper.lFvSwiper .lFvSwiper__item {
		height: 300px;
	}
}
.swiper.lFvSwiper .lFvSwiper__item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center bottom;
}

@keyframes shake {
	0% {
		transform: rotate(0);
	}
	16% {
		transform: rotate(12deg);
	}
	32% {
		transform: rotate(-10deg);
	}
	48% {
		transform: rotate(8deg);
	}
	64% {
		transform: rotate(-6deg);
	}
	80% {
		transform: rotate(4deg);
	}
	96% {
		transform: rotate(-2deg);
	}
	100% {
		transform: rotate(0deg);
	}
}
@keyframes bound {
	0% {
		transform: translateY(0);
		animation-timing-function: ease-out;
	}
	50% {
		transform: translateY(-10px);
		animation-timing-function: ease-in;
	}
	100% {
		transform: translateY(0);
	}
}
@keyframes blur {
	0% {
		filter: blur(10px);
	}
	100% {
		filter: blur(0);
	}
}
.c-side01 {
	position: relative;
}
.c-side01__img {
	width: 33.93vw;
	position: absolute;
	inset: 0 auto auto 0;
	z-index: -1;
}

.c-side02 {
	position: relative;
}
.c-side02__img {
	width: 68.07vw;
	position: absolute;
	inset: 0 0 auto auto;
	z-index: -1;
}

.c-side03 {
	position: relative;
}
.c-side03__img {
	width: 25.43vw;
	position: absolute;
	inset: 0 0 auto auto;
	z-index: -1;
}

.c-checkbox {
	padding-left: 20px;
	position: relative;
	cursor: pointer;
}
.c-checkbox::before {
	content: "";
	display: block;
	width: 15px;
	aspect-ratio: 1;
	background: url(../img/common/icon_check01.svg) center/contain no-repeat;
	position: absolute;
	inset: 50% auto auto 0;
	translate: 0 -50%;
}
.c-checkbox:has(input:checked)::before {
	background-image: url(../img/common/icon_check02.svg);
}
.c-checkbox input {
	display: none;
}

.nav-links {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 20px;
	margin-top: 60px;
}
@media (width <= 767px) {
	.nav-links {
		gap: 10px;
		margin-top: 40px;
	}
}
.nav-links > * {
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 14px;
	font-weight: 300;
	width: 40px;
	height: max-content;
	aspect-ratio: 1;
	border-radius: 50%;
	border: 1px solid transparent;
	position: relative;
}
.nav-links > *.current {
	color: var(--color-orange);
	border: 1px solid #c8c8c8;
}
.nav-links > *.prev, .nav-links > *.next {
	--margin: 40px;
	width: 60px;
	background-color: var(--color-orange);
	border: 1px solid var(--color-orange);
}
@media (width <= 767px) {
	.nav-links > *.prev, .nav-links > *.next {
		width: 40px;
		--margin: 5px;
	}
}
.nav-links > *.prev::after, .nav-links > *.next::after {
	--color: #fff;
	content: "";
	display: block;
	width: 5px;
	aspect-ratio: 1;
	border-top: 1px solid var(--color);
	border-right: 1px solid var(--color);
	rotate: 45deg;
}
.nav-links > *.prev {
	margin-right: var(--margin);
}
.nav-links > *.prev::after {
	rotate: -135deg;
}
.nav-links > *.next {
	margin-left: var(--margin);
}
@media (any-hover: hover) {
	.nav-links a:hover {
		color: var(--color-orange);
		border: 1px solid #c8c8c8;
	}
}
@media (any-hover: hover) {
	.nav-links a.prev:hover, .nav-links a.next:hover {
		background-color: #fff;
	}
	.nav-links a.prev:hover::after, .nav-links a.next:hover::after {
		--color: var(--color-orange);
	}
}

svg {
	display: block;
	width: 100%;
}

.cls-1 {
	fill: none;
}

.cls-2 {
	fill: #50aac8;
}

.cls-2, .cls-3, .cls-4, .cls-5, .cls-6, .cls-7, .cls-8, .cls-9 {
	stroke: #fff;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 0.547px;
}

.cls-3 {
	fill: #ff8246;
}

.cls-4 {
	fill: #fff;
}

.cls-10 {
	fill: #acb39e;
}

.cls-5 {
	fill: #f09b6e;
}

.cls-6 {
	fill: #78aa78;
}

.cls-7 {
	fill: #a08cb4;
}

.cls-8 {
	fill: #f0aa00;
}

.cls-9 {
	fill: #2e93cc;
}

.header {
	width: 100%;
	position: absolute;
	z-index: 100;
}
.header__title {
	position: absolute;
	inset: 40px auto auto 50%;
	translate: -50% 0;
}
@media (width <= 767px) {
	.header__title {
		inset: 30px auto auto 30px;
		translate: 0 0;
	}
}
.header__title a {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 0.5em;
	font-size: clamp(14px, 1.14vw, 16px);
	color: #fff;
	text-align: center;
	line-height: 1.2;
}
@media (width <= 767px) {
	.header__title a {
		flex-direction: column;
	}
}
.header__title a span {
	font-size: 1.375em;
	font-weight: 500;
}

.headerCv {
	display: flex;
	align-items: flex-end;
	gap: 15px;
	position: absolute;
	inset: 20px 20px auto auto;
}
@media (width <= 767px) {
	.headerCv {
		gap: 10px;
		right: 10px;
	}
}
.headerCv__item--sp {
	display: none;
}
@media (width <= 1200px) {
	.headerCv__item--sp {
		display: block;
	}
}
@media (any-hover: hover) {
	.headerCv__link:hover {
		animation: bound 500ms infinite;
	}
}

.headerCvPc {
	display: none;
}
@media (width > 1200px) {
	.headerCvPc {
		display: block;
	}
}
.headerCvPc__link {
	display: flex;
	align-items: center;
	gap: 10px;
}
@media (any-hover: hover) {
	.headerCvPc__link:hover .headerCvPc__icon {
		animation: shake 0.4s ease;
	}
}
.headerCvPc__icon {
	width: 40px;
}
.headerCvPc__tel {
	font-size: 26px;
	font-weight: bold;
	color: #464646;
	line-height: 1.2;
}
.headerCvPc__tel span {
	display: block;
	font-size: 14px;
	font-weight: 400;
}

.headerLine {
	position: absolute;
	inset: 105px 20px auto auto;
}
@media (width <= 1200px) {
	.headerLine {
		display: none;
	}
}
.headerLine__item + .headerLine__item {
	margin-top: 10px;
}
.headerLine__link {
	display: flex;
	flex-direction: column;
	justify-content: center;
	font-family: var(--font-zenmaru);
	font-size: 17px;
	color: #fff;
	font-weight: bold;
	line-height: 1.4;
	min-height: 70px;
	background-color: #06c755;
	border-radius: 12px;
	padding: 10px 50px 10px 20px;
	position: relative;
}
.headerLine__link::after {
	content: "";
	display: block;
	width: 40px;
	aspect-ratio: 1;
	background: url(../img/common/icon_line01.svg) center/contain no-repeat;
	position: absolute;
	inset: 50% 10px auto auto;
	translate: 0 -50%;
}
.headerLine__link span {
	display: block;
	font-size: 0.7em;
	font-weight: 500;
	line-height: 1.6;
}
@media (any-hover: hover) {
	.headerLine__link:hover::after {
		animation: bound 500ms infinite;
	}
}
.headerLine__link--red {
	background-color: #eb8c78;
}
.headerLine__link--red::after {
	background-image: url(../img/common/icon_line02.svg);
}

.headerNav {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	width: 86px;
	background: url(../img/common/bg_red.webp) center/cover no-repeat;
	border-radius: 16px 0 0 0;
	position: fixed;
	inset: auto 0 0 auto;
	padding-top: 15px;
}
@media (width <= 767px) {
	.headerNav {
		flex-direction: row;
		width: 100%;
		max-width: 320px;
		padding-top: 10px;
	}
}
.headerNav__text {
	font-family: var(--font-zenmaru);
	font-weight: bold;
	color: #fff;
	text-align: center;
	width: 100%;
	margin-bottom: 5px;
}
@media (width <= 767px) {
	.headerNav__text {
		flex: 1;
		display: flex;
		align-items: center;
		font-size: 12px;
		writing-mode: vertical-rl;
		text-orientation: upright;
		width: auto;
	}
}
.headerNav__box {
	--color: var(--color-blue);
	display: flex;
	width: max-content;
	background: url(../img/common/bg_blue.webp) center/cover no-repeat;
	border: 1px solid #fff;
	border-right: 0;
	border-radius: 6px 0 0 6px;
	padding-block: 12px;
	position: relative;
	translate: calc(100% - 70px) 0;
	transition: translate 0.5s ease-out;
}
@media (width <= 767px) {
	.headerNav__box {
		border-right: 1px solid #fff;
		border-bottom: 0;
		border-radius: 6px 6px 0 0;
		padding-block: 0;
		translate: 0 0;
	}
}
.headerNav__box + .headerNav__box {
	margin-top: 5px;
}
@media (width <= 767px) {
	.headerNav__box + .headerNav__box {
		margin: 0 0 0 5px;
	}
}
.headerNav__box:last-child {
	border-bottom: 0;
	border-radius: 6px 0 0 0;
}
@media (width <= 767px) {
	.headerNav__box:last-child {
		border-right: 0;
		margin-left: 5px;
	}
}
.headerNav__box--green {
	--color: var(--color-green);
	background-image: url(../img/common/bg_green.webp);
}
.headerNav__box--active {
	translate: 0 0;
}
.headerNav__title {
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	font-weight: 500;
	writing-mode: vertical-rl;
	line-height: 1.375;
	width: 70px;
	cursor: pointer;
}
@media (width <= 767px) {
	.headerNav__title {
		font-size: 15px;
		text-align: center;
		writing-mode: horizontal-tb;
		width: auto;
		min-height: 60px;
		padding: 5px 18px;
	}
}
.headerNav__list {
	flex: 1;
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	width: 490px;
	padding-right: 45px;
}
.headerNav__item {
	width: calc((100% - 6px) / 2);
}
.headerNav__link {
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 500;
	line-height: 1.25;
	text-align: center;
	color: var(--color);
	min-height: 60px;
	background-color: #fff;
	border-radius: 4px;
}
.headerNav__close {
	display: block;
	font-size: 0;
	width: 32px;
	height: 32px;
	background-color: #c8c8c8;
	border: 1px solid var(--color);
	border-radius: 50%;
	position: absolute;
	inset: 10px 5px auto auto;
	cursor: pointer;
}
.headerNav__close::before, .headerNav__close::after {
	content: "";
	display: block;
	width: 14px;
	height: 1px;
	background-color: #fff;
	position: absolute;
	inset: 50% auto auto 50%;
	translate: -50% -50%;
}
.headerNav__close::before {
	rotate: -45deg;
}
.headerNav__close::after {
	rotate: 45deg;
}

.headerModal {
	display: none;
	height: 100vh;
	width: 100%;
	position: fixed;
	inset: 0 auto auto 0;
	z-index: 100;
}
.headerModal__bg {
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.7);
	position: absolute;
	inset: 0 auto auto 0;
}
.headerModal__panel {
	--color: var(--color-blue);
	width: 100%;
	max-width: 260px;
	background: url(../img/common/bg_blue.webp) center/cover no-repeat;
	border: 1px solid #fff;
	border-radius: 6px;
	padding: 20px;
	position: absolute;
	inset: 50% auto auto 50%;
	translate: -50% -50%;
}
.headerModal__panel--green {
	--color: var(--color-green);
	background-image: url(../img/common/bg_green.webp);
}
.headerModal__title {
	color: #fff;
	font-weight: 500;
	text-align: center;
	line-height: 1.25;
}
.headerModal .headerNav__list {
	width: 100%;
	padding-right: 0;
	margin-top: 10px;
}
.headerModal .headerNav__item {
	width: 100%;
}
.headerModal .headerNav__link {
	color: var(--color);
}
.headerModal .headerNav__close {
	border-color: var(--color);
	inset: 10px 10px auto auto;
}

.footer {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	min-height: 700px;
	background: url(../img/footer/f_bg_pc.webp) center/cover no-repeat;
	padding-bottom: 70px;
}
@media (width > 1400px) {
	.footer {
		aspect-ratio: 1400/700;
		padding-bottom: 7vw;
	}
}
@media (width <= 960px) {
	.footer {
		background-image: url(../img/footer/f_bg_sp.webp);
		background-position: center 10%;
		min-height: 1100px;
	}
}
.footer__inner {
	display: flex;
	align-items: flex-end;
	justify-content: center;
	flex-wrap: wrap;
	gap: 100px;
	width: 100%;
}
@media (width <= 767px) {
	.footer__inner {
		gap: 60px;
	}
}
.footer__inner .box01 {
	width: 100%;
	max-width: 330px;
}
.footer__inner .box02 {
	width: 100%;
	max-width: 410px;
}
.footer__info > * + * {
	margin-top: 40px;
}
@media (width <= 767px) {
	.footer__info > * + * {
		margin-top: 30px;
	}
}
.footer__title {
	font-weight: 500;
	line-height: 1.625;
}
.footer__title span {
	display: block;
	font-size: 1.375em;
}
.footer__address a {
	display: inline;
}
.footer__copy {
	font-size: 14px;
	text-align: center;
	width: 100%;
}
.footer__pagetop {
	width: 55px;
	position: fixed;
	inset: auto 110px 30px auto;
	opacity: 0;
	transition: opacity 0.5s ease-out;
}
@media (width <= 767px) {
	.footer__pagetop {
		inset: auto 20px 80px auto;
	}
}
.footer__pagetop--visible {
	opacity: 1;
}

.footerNav {
	display: flex;
	flex-wrap: wrap;
	gap: 40px;
}
.footerNav__item + .footerNav__item {
	margin-top: 1em;
}

.footerNavChild__item + .footerNavChild__item {
	margin-top: 0.5em;
}
.footerNavChild__link {
	padding-left: 1.2em;
	position: relative;
}
.footerNavChild__link::before {
	content: "└ ";
	position: absolute;
	inset: 0 auto auto 0;
}

.tFv {
	height: 100svh;
	position: relative;
	overflow: hidden;
}
.tFv__catch {
	font-family: var(--font-zenmaru);
	font-size: clamp(28px, 3vw, 42px);
	font-weight: bold;
	color: #fff;
	padding-top: 27vh;
	animation: blur 1.5s linear forwards;
	text-align: center;
}
@media (width <= 767px) {
	.tFv__catch {
		padding-top: 18.18vh;
	}
}

.tFvSlider {
	display: flex;
	gap: 20px;
	position: absolute;
	inset: auto auto 13vh 0;
	pointer-events: none;
}
@media (width <= 767px) {
	.tFvSlider {
		bottom: 100px;
	}
}
.tFvSlider .tFvSlider__list {
	display: flex;
	gap: 20px;
	animation: infinity-scroll-left 80s infinite linear both;
}
.tFvSlider .tFvSlider__item {
	width: calc((100vw - 120px) / 6);
}
@media (width <= 767px) {
	.tFvSlider .tFvSlider__item {
		width: calc((100vw - 120px) / 1.8);
	}
}

@keyframes infinity-scroll-left {
	from {
		transform: translateX(0);
	}
	to {
		transform: translateX(-100%);
	}
}
.swiper.tFvSwiper {
	width: 100%;
	height: 100%;
	position: absolute;
	inset: 0 auto auto 0;
	z-index: -1;
}
.swiper.tFvSwiper .tFvSwiper__item {
	width: 100%;
	height: 100svh;
}
.swiper.tFvSwiper .tFvSwiper__item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center bottom;
}

.tTs__inner {
	width: 100%;
	max-width: 920px;
}
.tTs__item {
	display: flex;
	align-items: flex-end;
	gap: 30px;
	border-bottom: 1px solid #c8c8c8;
	padding: 60px 15px;
}
@media (width <= 767px) {
	.tTs__item {
		flex-direction: column;
		padding: 40px 0;
	}
}
.tTs__item > .box01 {
	flex: 1;
}
.tTs__item > .box02 {
	width: 150px;
}
@media (width <= 767px) {
	.tTs__item > .box02 {
		width: 100%;
	}
}
.tTs__link {
	display: flex;
	align-items: flex-start;
	gap: 20px;
}
@media (width <= 767px) {
	.tTs__link {
		flex-direction: column;
	}
}
@media (any-hover: hover) {
	.tTs__link:hover .tTsDate__content,
	.tTs__link:hover .tTs__title {
		color: var(--color-blue);
	}
}
.tTs__link > .box01 {
	width: 100px;
}
@media (width <= 767px) {
	.tTs__link > .box01 {
		width: 100%;
	}
}
.tTs__link > .box02 {
	flex: 1;
}
.tTs__img {
	border-radius: 6px;
	overflow: hidden;
}
.tTs__img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.tTs__img--single {
	width: 100%;
	max-width: 500px;
	margin-inline: auto;
}
.tTs__title {
	font-weight: 500;
	margin-top: 10px;
	transition: color 0.2s ease-out;
}
@media (width <= 767px) {
	.tTs__title {
		margin-top: 20px;
	}
}
.tTs__btn {
	flex-direction: column;
	line-height: 1.4;
	min-height: 60px;
}
@media (width <= 767px) {
	.tTs__btn {
		flex-direction: row;
	}
}
.tTs__btn span {
	font-size: 0.75em;
}
@media (width <= 767px) {
	.tTs__btn span {
		padding-top: 0.25em;
	}
}

.tTsDate {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 5px 10px;
}
@media (width <= 767px) {
	.tTsDate {
		align-items: baseline;
	}
}
.tTsDate__title {
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 14px;
	color: #fff;
	width: 100px;
	height: 24px;
	background-color: #969696;
	border-radius: 2px;
}
.tTsDate__content {
	font-size: 14px;
	color: #232323;
	width: calc(100% - 110px);
	transition: color 0.2s ease-out;
}

.tAttempt__inner {
	width: 100%;
	max-width: 1020px;
}
.tAttempt .c-title02, .tAttempt__text {
	width: 100%;
	max-width: 690px;
}
.tAttempt__list {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 40px 60px;
}
@media (width <= 767px) {
	.tAttempt__list {
		grid-template-columns: repeat(1, minmax(0, 1fr));
	}
}
.tAttempt__detail {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	gap: 20px 0;
}
.tAttempt__detail > * {
	width: 100%;
}
.tAttempt__title {
	font-size: 18px;
	font-weight: bold;
	color: var(--color-orange);
	line-height: 1.55;
	text-align: center;
}
@media (width <= 767px) {
	.tAttempt__title {
		order: -2;
		text-align: justify;
		width: 190px;
	}
}
.tAttempt__img {
	order: -1;
	width: 100%;
	max-width: 250px;
	margin-inline: auto;
}
@media (width <= 767px) {
	.tAttempt__img {
		width: calc(100% - 190px);
	}
}
.tAttempt__content {
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 500;
	color: #fff;
	min-height: 40px;
	background: url(../img/common/bg_orange.webp) center/cover no-repeat;
	padding: 5px 15px;
	border-radius: 6px;
}
.tAttempt__content + .tAttempt__content {
	margin-top: 10px;
}

.station {
	padding-bottom: 40px;
}
.station__inner {
	background-color: #fff;
	border: 2px solid var(--color-orange);
	border-radius: 12px;
	padding: 80px 35px;
}
@media (width <= 1090px) {
	.station__inner {
		border-right: 0;
		border-left: 0;
		border-radius: 0;
	}
}
@media (width <= 767px) {
	.station__inner {
		padding: 60px 35px;
	}
}
.station__panel {
	--width: 330px;
	--gap: 80px;
	display: flex;
	align-items: center;
	gap: 40px var(--gap);
	width: 100%;
	max-width: 900px;
	margin-inline: auto;
}
@media (width <= 960px) {
	.station__panel {
		--width: 250px;
		--gap: 40px;
	}
}
@media (width <= 767px) {
	.station__panel {
		flex-direction: column;
	}
}
.station__panel .box01 {
	width: var(--width);
}
@media (width <= 767px) {
	.station__panel .box01 {
		width: 100%;
	}
}
.station__panel .box02 {
	width: calc(100% - var(--gap) - var(--width));
}
@media (width <= 767px) {
	.station__panel .box02 {
		display: contents;
	}
}
@media (width <= 767px) {
	.station__panel .c-title01 {
		order: -1;
	}
}
.station__searchBTn {
	display: flex;
	gap: 20px;
	width: 100%;
	width: 100%;
	max-width: 860px;
}
@media (width <= 767px) {
	.station__searchBTn {
		flex-direction: column;
	}
}
.station__searchBTn.box-side {
	max-width: 930px;
}
.station__searchBTn .c-btn01--clear {
	--btn-color: #949494;
	width: 200px;
}
@media (width <= 767px) {
	.station__searchBTn .c-btn01--clear {
		width: 100%;
	}
}
.station__searchBTn .c-btn01--clear::after {
	content: none;
}

.stationArea {
	display: flex;
	flex-wrap: wrap;
	gap: 30px;
	margin-top: 60px;
}
@media (width <= 767px) {
	.stationArea {
		margin-top: 0;
		position: relative;
	}
}
.stationArea__area {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	font-size: 14px;
	color: #fff;
	width: 100px;
	min-height: 36px;
	height: max-content;
	border-radius: 6px;
	cursor: pointer;
}
@media (width <= 767px) {
	.stationArea__area {
		width: 80px;
	}
}
.stationArea__area--color01 {
	background-color: #3caad2;
}
.stationArea__area--color02 {
	background-color: #78aa78;
}
.stationArea__area--color03 {
	background-color: #a08cb4;
}
.stationArea__area--color04 {
	background-color: #f0aa00;
}
.stationArea__area--color05 {
	background-color: #ff8246;
}
.stationArea__area--color06 {
	background-color: #50aac8;
}
.stationArea__area--color07 {
	background-color: #f09b6e;
}
.stationArea__city {
	display: flex;
	flex-wrap: wrap;
	column-gap: 30px;
	width: calc(100% - 30px - 100px);
}
@media (width <= 767px) {
	.stationArea__city {
		width: calc(100% - 30px - 80px);
	}
}
.stationArea__item {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 36px;
}

.stationAs {
	width: 100%;
	max-width: 860px;
}
.stationAs__inner {
	border: 1px solid #c8c8c8;
	border-radius: 6px;
	padding: 60px 35px;
}
@media (width <= 860px) {
	.stationAs__inner {
		border-left: 0;
		border-right: 0;
		border-radius: 0;
		padding-block: 40px;
	}
}
.stationAs__title {
	font-size: 18px;
	font-weight: bold;
	color: var(--color-orange);
	border-bottom: 1px solid var(--color-orange);
	padding: 0 40px 15px 0;
}
@media (any-hover: hover) {
	.stationAs__title:hover span {
		top: 5px;
	}
}
.stationAs__title--open span {
	background-color: #c8c8c8;
}
.stationAs__title--open span::after {
	rotate: 0deg;
}
.stationAs__list {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 30px;
	width: 100%;
	max-width: 500px;
}
.stationAs__search {
	display: flex;
	align-items: center;
	gap: 10px 0;
}
@media (width <= 767px) {
	.stationAs__search {
		flex-direction: column;
		align-items: flex-start;
	}
}
.stationAs__search > dt {
	font-weight: 500;
	width: 135px;
}
.stationAs__search > dd {
	flex: 1;
	width: 100%;
}
.stationAs__search input {
	width: 100%;
	min-height: 60px;
	border: 0;
	border-radius: 2px;
	background-color: #f7f7f7;
	padding: 10px 20px;
}

.c-panel + .c-panel {
	margin-top: 40px;
}
@media (width <= 767px) {
	.c-panel + .c-panel {
		margin-top: 0;
	}
}
.c-panel__inner {
	background: url(../img/common/bg_blue.webp) center/cover no-repeat;
	border-radius: 12px;
	padding: 100px 35px;
}
@media (width <= 1090px) {
	.c-panel__inner {
		border-radius: 0;
	}
}
@media (width <= 767px) {
	.c-panel__inner {
		padding-block: 60px;
	}
}
.c-panel__inner > * {
	width: 100%;
	max-width: 940px;
	margin-inline: auto;
}
.c-panel__inner--green {
	background-image: url(../img/common/bg_green.webp);
}
.c-panel.tPref {
	padding-bottom: 60px;
}
@media (width <= 767px) {
	.c-panel.tPref {
		padding-bottom: 30px;
	}
}

.c-panelList {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
	margin-top: 60px;
}
@media (width <= 767px) {
	.c-panelList {
		grid-template-columns: repeat(1, minmax(0, 1fr));
		margin-top: 20px;
	}
}
.c-panelList__item {
	width: calc((100% - 40px) / 3);
}
@media (width <= 767px) {
	.c-panelList__item {
		width: 100%;
	}
}
.c-panelList__link {
	--color: var(--color-blue);
	display: flex;
	flex-direction: column;
	gap: 40px;
	height: 100%;
	background-color: #fff;
	border: 1px solid #c8c8c8;
	border-radius: 22px;
	padding: 10px 10px 35px;
}
.c-panelList__link > *:not(.c-panelList__img) {
	padding-inline: 30px;
}
@media (any-hover: hover) {
	.c-panelList__link:hover .c-panelList__img img {
		scale: 1.05;
	}
	.c-panelList__link:hover .c-btn03::after {
		right: -10px;
	}
}
.c-panelList__link--btn {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 120px;
	padding: 5px 50px;
	position: relative;
}
.c-panelList__link--btn::after {
	content: "";
	display: block;
	width: 5px;
	aspect-ratio: 1/2;
	background: url(../img/common/icon_arrow03.svg) center/contain no-repeat;
	position: absolute;
	inset: 50% 40px auto auto;
	transform: translate(0, -50%);
	transition: inset 0.2s ease-out;
}
@media (any-hover: hover) {
	.c-panelList__link--btn:hover::after {
		right: 30px;
	}
}
.c-panelList__link--b-none {
	border: 0;
	padding: 0;
}
.c-panelList__img {
	aspect-ratio: 3/2;
	border-radius: 12px 12px 0 0;
	overflow: hidden;
}
.c-panelList__img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: scale 0.5s ease-out;
}
.c-panelList__text {
	font-size: 18px;
	font-weight: bold;
	text-align: center;
}
.c-panelList__text-en {
	display: block;
	font-size: 0.63em;
	color: var(--color);
	text-align: center;
	letter-spacing: 0.05em;
	margin-bottom: 15px;
}
.c-panelList__more {
	margin-top: auto;
}
.c-panelList__more .c-btn03 {
	margin-left: auto;
}
.c-panelList--green .c-panelList__link {
	--color: var(--color-green);
}

.tVnsBtn {
	display: flex;
	gap: 20px;
	margin-top: 20px;
}
@media (width <= 767px) {
	.tVnsBtn {
		flex-direction: column;
	}
}
.tVnsBtn .c-panelList__link {
	max-width: 300px;
}
@media (width <= 767px) {
	.tVnsBtn .c-panelList__link {
		max-width: 100%;
	}
}
@media (width <= 767px) {
	.tVnsBtn .c-btn04 {
		padding-inline: 15px;
	}
}
@media (width <= 767px) {
	.tVnsBtn .c-btn04::after {
		content: none;
	}
}

.tBnr__list {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 20px 10px;
}
.tBnr__link {
	width: 100%;
	max-width: 320px;
	border: 2px solid transparent;
	border-radius: 6px;
	overflow: hidden;
}
@media (any-hover: hover) {
	.tBnr__link:hover {
		scale: 0.95;
	}
}
.tBnr__link--b-blue {
	border-color: var(--color-blue);
}
.tBnr__link--b-pink {
	border-color: #eb4678;
}
.tBnr__link--b-orange {
	border-color: var(--color-orange);
}

.l-station .station__inner {
	border: 0;
	padding-block: 0;
}
.l-station .stationAs__panel {
	width: 100%;
	max-width: 720px;
}

.station-s__item:last-child .station-s__link {
	border-bottom: 1px solid #e3e3e3;
}
.station-s__link {
	display: flex;
	gap: 30px 0;
	border-top: 1px solid #e3e3e3;
	padding-block: 80px;
}
@media (width <= 767px) {
	.station-s__link {
		flex-direction: column;
		padding-block: 40px;
	}
}
.station-s__link .box01 {
	width: 160px;
}
@media (width <= 767px) {
	.station-s__link .box01 {
		width: 100%;
	}
}
.station-s__link .box02 {
	flex: 1;
}
.station-s__link > * {
	transition: color 0.2s ease-out;
}
@media (any-hover: hover) {
	.station-s__link:hover > * {
		color: var(--color-blue);
	}
}
.station-s__detail {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 30px;
}
@media (width <= 767px) {
	.station-s__detail {
		gap: 20px;
	}
}
.station-s__title {
	font-size: 22px;
	font-weight: bold;
}
.station-s__address {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
	width: 100%;
}
.station-s__address-01 {
	display: block;
	width: max-content;
}
.station-s__address-02 {
	flex: 1;
}

.station-s-tag {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	width: 100%;
}
.station-s-tag__item {
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 14px;
	font-weight: 500;
	height: 28px;
	border: 1px solid #c8c8c8;
	border-radius: calc(infinity * 1px);
	padding-inline: 15px;
}

.l-station-s {
	border-top: 1px solid #fcca9b;
	padding-top: 100px;
	margin-top: 90px;
}
@media (width <= 767px) {
	.l-station-s {
		padding-top: 50px;
		margin-top: 30px;
	}
}
.l-station-s .station__inner {
	max-width: 930px;
}
@media (width <= 767px) {
	.l-station-s .stationArea {
		margin-top: 40px;
	}
}

.station-d {
	padding-top: 120px;
}
@media (width <= 767px) {
	.station-d {
		padding-top: 60px;
	}
}
.station-d__titleBox {
	display: flex;
	align-items: flex-end;
	gap: 40px;
}
@media (width <= 767px) {
	.station-d__titleBox {
		flex-direction: column;
	}
}
.station-d__titleBox .c-title01 {
	flex: 1;
}
@media (width <= 767px) {
	.station-d__titleBox .c-title01 {
		width: 100%;
	}
}
.station-d__titleBox .c-btn01 {
	width: 200px;
	min-height: 50px;
}
@media (width <= 767px) {
	.station-d__titleBox .c-btn01 {
		width: 100%;
	}
}
.station-d .station-s-tag {
	margin-top: 40px;
}
.station-d__panel {
	display: flex;
	align-items: flex-start;
	flex-wrap: wrap;
	gap: 30px 60px;
}
.station-d__panel > * {
	width: calc((100% - 60px) / 2);
}
@media (width <= 767px) {
	.station-d__panel > * {
		width: 100%;
	}
}
.station-d__panel + .station-d__panel {
	margin-top: 30px;
}
@media (width <= 767px) {
	.station-d__panel--spReverse {
		flex-direction: column-reverse;
	}
}
.station-d__map {
	aspect-ratio: 1;
	border-radius: 12px;
	overflow: hidden;
}
.station-d__map iframe {
	width: 100%;
	height: 100%;
}

.tation-d-info__box {
	border-top: 1px solid #e3e3e3;
	padding-block: 30px;
}
.tation-d-info__box--first {
	border-top: 0;
	padding-top: 0;
}
.tation-d-info__box:last-child {
	padding-bottom: 0;
}
.tation-d-info__title {
	font-weight: 500;
	color: var(--color-orange);
	margin-bottom: 1em;
}
.tation-d-info__content strong {
	font-size: 20px;
	font-weight: bold;
}
.tation-d-info__content--blank {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	border: 1px solid var(--color-orange);
	line-height: 1.4;
	border-radius: 6px;
	min-height: 86px;
	padding: 20px;
}
.tation-d-info__content--blank span {
	font-size: 18px;
	font-weight: 500;
	color: var(--color-orange);
}
.tation-d-info__text01 {
	font-size: 14px;
	font-weight: bold;
	color: #505050;
	margin-top: 1em;
}
.tation-d-info__list {
	display: flex;
	flex-wrap: wrap;
	gap: 0 30px;
}
.tation-d-info__list > li span {
	color: var(--color-orange);
}
.tation-d-info__list > li.gray, .tation-d-info__list > li.gray span {
	color: rgba(80, 80, 80, 0.6);
}

.station-content > * + * {
	margin-top: 50px;
}
@media (width <= 767px) {
	.station-content > * + * {
		margin-top: 30px;
	}
}
.station-content h2 {
	font-size: 22px;
	font-weight: bold;
	color: var(--color-blue);
	border-bottom: 1px solid var(--color-blue);
}
.station-content h3 {
	font-size: 20px;
	font-weight: 500;
	color: var(--color-blue);
}
.station-content h4 {
	font-size: 16px;
	font-weight: bold;
	color: var(--color-blue);
}
.station-content h5 {
	font-size: 16px;
	font-weight: bold;
}
.station-content ul > li {
	padding-left: 1em;
	position: relative;
}
.station-content ul > li::before {
	content: "●";
	font-size: 0.75em;
	color: var(--color-blue);
	position: absolute;
	top: 0.25em;
	left: 0;
}
.station-content ol {
	counter-reset: number;
}
.station-content ol > li {
	padding-left: 1.2em;
	position: relative;
}
.station-content ol > li + li {
	margin-top: 0.5em;
}
.station-content ol > li::before {
	counter-increment: number;
	content: counter(number, decimal-leading-zero);
	color: var(--color-blue);
	font-weight: bold;
	letter-spacing: -0.05em;
	position: absolute;
	inset: 0 auto auto 0;
}
.station-content a {
	--btn-color: var(--color-blue);
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	font-weight: 500;
	width: 100%;
	min-height: 86px;
	border: 1px solid var(--btn-color);
	background-color: var(--btn-color);
	border-radius: 6px;
	padding: 5px 30px;
	position: relative;
	transition: 0.2s ease-out;
	cursor: pointer;
}
.station-content a::after {
	content: "";
	display: block;
	width: 5px;
	aspect-ratio: 1/2;
	background: url(../img/common/icon_arrow01.svg) center/contain no-repeat;
	position: absolute;
	inset: 50% 15px auto auto;
	translate: 0 -50%;
	transition: filter 0.2s ease-out;
}
@media (any-hover: hover) {
	.station-content a:hover {
		color: var(--btn-color);
		background-color: #fff;
	}
	.station-content a:hover::after {
		filter: brightness(0) saturate(100%) invert(72%) sepia(83%) saturate(4010%) hue-rotate(153deg) brightness(93%) contrast(101%);
	}
}
.station-content .table-wrap {
	overflow-x: auto;
}
.station-content table {
	width: 800px !important;
}
.station-content table tr:nth-child(odd) {
	background-color: #f2f8fc;
	border-radius: 6px;
}
.station-content table tr:nth-child(even) {
	background-color: #e5f1f8;
}
.station-content table tr + tr {
	border: 5px solid #fff;
}
.station-content table tr > * + * {
	border-left: 1px dashed var(--color-blue) !important;
}
.station-content table th, .station-content table td {
	border: 0;
	padding: 20px;
}
.station-content table th {
	color: var(--color-blue);
}/*# sourceMappingURL=style.css.map */

.tFv__catch,
.header__title{
	text-shadow: 1px 1px 5px #000000aa;
}

@media (width <= 767px) {
    .headerNav {
        flex-direction: row;
        width: 100%;
        max-width: 340px;
        padding-top: 10px;
    }
}

.w1090.box-side.m-auto.searchNotice{
    border: 1px solid #ccc;
    padding: 1rem;
    border-radius: .5rem;
    max-width: 860px;
}
@media (width <= 767px) {
	.w1090.box-side.m-auto.searchNotice{
    max-width: 90%;
	}
}