@charset "UTF-8";
/* @mixin mq-pc-sp2 {
	@media (max-width: 1024px) and (min-width: 500px) {
		@content;
	}
} */
/*----------
	icons
----------*/
.icon-freedial {
	display: inline-block;
	vertical-align: baseline;
	line-height: 1;
	width: 70px;
}

.icon-phone {
	display: inline-block;
	vertical-align: baseline;
	line-height: 1;
	width: 60px;
}

.icon-sns {
	display: inline-block;
	vertical-align: baseline;
	line-height: 1;
	width: 40px;
}

/*----------
	icon container
----------*/
.g-icon-container {
	margin-top: -8px;
	font-size: 0;
}
.g-icon-container__item {
	display: inline-block;
	margin-right: 24px;
	margin-top: 8px;
}

/*----------
	logo
----------*/
.c-logo {
	width: 200px;
}
.c-logo > img {
	display: block;
	width: auto;
	max-width: 100%;
	height: auto;
}

/*----------
	separator
----------*/
.c-separator {
	display: block;
	margin: 40px auto;
	border-top: 1px solid var(--color-border);
}
.c-separator--dashed {
	border-top-style: dashed;
}

/*----------
	tag
----------*/
.c-tag {
	display: inline-block;
	vertical-align: middle;
	color: #999;
	border-color: #999;
}
.c-tag > a,
.c-tag > span {
	color: var(--color-txt-hover);
	font-size: 1.4rem;
	line-height: 18px;
}
.c-tag > a {
	text-decoration: underline;
}
.c-tag--fill {
	border-color: var(--color-prim);
	color: #fff;
}
.c-tag--fill > a,
.c-tag--fill > span {
	background-color: var(--color-prim);
}
@media (min-width: 768px), print {
	.c-tag > a,
	.c-tag > span {
		font-size: 1.6rem;
	}
	.c-tag > a:hover {
		text-decoration: none;
	}
	.c-tag--fill > a:hover {
		background-color: #fff;
		color: var(--color-prim);
	}
}

/*----------
	tag container
----------*/
.g-tag-container {
	margin-top: -8px;
	font-size: 0;
}
.g-tag-container__item {
	display: inline-block;
	margin-right: 10px;
	margin-top: 10px;
	line-height: 1;
}

/*----------
	figure
----------*/
.c-figure__image {
	text-align: center;
}
.c-figure__image > img {
	max-width: 100%;
	width: auto;
}
.c-figure__image--radius > img {
	border-radius: 20px;
}
.c-figure__image--border > img {
	border: var(--color-border) solid 1px;
}
.c-figure__caption {
	margin-top: 20px;
	text-align: left;
	font-size: 1.2rem;
	line-height: var(--line-height-m);
	color: var(--color-txt-caption);
}
.c-figure--m {
	max-width: 1000px;
	margin-left: auto;
	margin-right: auto;
}
.c-figure--s {
	max-width: 800px;
	margin-left: auto;
	margin-right: auto;
}
.c-figure__support {
	display: none;
}
@media (min-width: 768px), print {
	.c-figure__caption {
		font-size: 1.4rem;
	}
}
@media (max-width: 767px) {
	.c-figure--sp {
		position: relative;
	}
	.c-figure--sp .c-figure__image {
		padding: 0 20px 20px;
		overflow-y: hidden;
		overflow-x: auto;
		margin: 0 -20px;
		position: relative;
	}
	.c-figure--sp .c-figure__image::before {
		position: absolute;
		content: "";
		width: 100%;
		height: calc(100% - 20px);
		background: rgba(0, 0, 0, 0.4);
		top: 0;
		left: 0;
		transition: background-color 0.3s;
	}
	.c-figure--sp .c-figure__image::-webkit-scrollbar {
		height: 10px;
		background-color: #CCC;
		border-radius: 30px;
	}
	.c-figure--sp .c-figure__image::-webkit-scrollbar-thumb {
		background: var(--color-txt-caption);
		border-radius: 30px;
		width: 50px;
	}
	.c-figure--sp .c-figure__image > img {
		max-width: 1000px;
	}
	.c-figure--sp.c-figure--s .c-figure__image > img {
		max-width: 800px;
	}
	.c-figure__support {
		display: block;
		width: 120px;
		height: 90px;
		background-color: var(--color-txt-caption);
		border-radius: 14px;
		color: #FFF;
		text-align: center;
		padding-top: 15px;
		position: absolute;
		top: calc(50% - 8px);
		left: 50%;
		transform: translate(-50%, -50%);
		z-index: 11;
		pointer-events: none;
	}
	.c-figure__support-text {
		font-size: 1.2rem;
	}
	.c-figure__support-text::before {
		content: "";
		display: block;
		background: url(/assets/images/icon_slide_float.svg) no-repeat;
		background-size: contain;
		width: 68px;
		height: 32px;
		margin: 0 auto 10px;
	}
	.c-figure.is-scroll .c-figure__image::before {
		opacity: 0;
	}
	.c-figure.is-scroll .c-figure__support {
		display: none;
	}
}

/*----------
	image fit
----------*/
.c-image-fit {
	height: 0;
	padding-bottom: 66.6666666667%;
	position: relative;
	overflow: hidden;
}
.c-image-fit > img,
.c-image-fit > iframe,
.c-image-fit > video,
.c-image-fit > object,
.c-image-fit > embed, .c-image-fit__element {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	object-fit: cover;
	object-position: center;
}
.c-image-fit--2t1 {
	padding-bottom: 50%;
}
.c-image-fit--16t9 {
	padding-bottom: 56.25%;
}
.c-image-fit--sq {
	padding-bottom: 100%;
}

/*----------
	image scaling
----------*/
.c-image-scaling {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 20px;
	width: 158px;
	height: 28px;
	background-color: var(--color-bg2);
	border-radius: 14px;
	text-align: center;
}
.c-image-scaling i {
	width: 16px;
	height: 16px;
	display: inline-block;
}
.c-image-scaling__text {
	display: inline-block;
	font-size: 1.2rem;
	margin-left: 8px;
	padding-bottom: 1px;
}
@media (min-width: 768px), print {
	.c-image-scaling {
		display: none;
	}
}

/*----------
	youtube
----------*/
.c-embed {
	position: relative;
}
.c-embed.is-play .c-embed__poster {
	display: none;
}
.c-embed > video {
	display: block;
	width: 100%;
	height: auto;
}
.c-embed__poster {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	width: 100%;
	height: 100%;
	cursor: pointer;
}
.c-embed__poster > button {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 2;
	margin: auto;
	width: 50px;
	height: 50px;
	font-size: 0;
	background: url(/assets/images/icon_play.svg) no-repeat center;
	cursor: pointer;
}
.c-embed__poster > img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/*----------
	youtube
----------*/
.c-youtube {
	position: relative;
}
.c-youtube::before {
	content: "";
	display: block;
	padding-top: 56.25%;
}
.c-youtube > iframe {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/*----------
	content box
----------*/
.c-contentbox {
	padding: 20px;
	background-color: var(--color-bg);
}
.c-contentbox--colored {
	color: #E32653;
	background-color: #FFF7F7;
}
@media (min-width: 768px), print {
	.c-contentbox {
		padding-left: 24px;
		padding-right: 24px;
	}
}

/*----------
	search
----------*/
.c-search {
	border-bottom: 1px solid #4A4A4A;
	background: #fff;
}
.c-search__body {
	position: relative;
}
.c-search__text {
	display: block;
	width: 100%;
	padding: 18px 60px 18px 16px;
	line-height: 1.6;
	border-radius: 0;
	appearance: none;
}
.c-search__text:focus {
	outline: none;
}
.c-search__submit {
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	width: 60px;
	height: 60px;
	cursor: pointer;
	background: var(--icon-search) no-repeat center/24px;
}

/*----------
	pagination
----------*/
.c-pagination__items {
	display: flex;
	align-items: center;
	justify-content: center;
}
.c-pagination__item {
	margin: 0 4px;
}
.c-pagination__item > a {
	display: block;
	color: inherit;
}
.c-pagination__page {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 50px;
	height: 32px;
	text-align: center;
	font-size: 1.6rem;
	line-height: 1;
	font-weight: bold;
	border: 1px solid var(--color-prim);
	border-radius: 3px;
	color: var(--color-prim);
}
.c-pagination__page--current {
	background: var(--color-prim);
	color: #fff;
}
.c-pagination__ellip {
	display: block;
	width: 24px;
	height: 32px;
	font-size: 0;
	background: radial-gradient(var(--color-txt-caption-v2) 1px, transparent 1px) repeat-x left center;
	background-size: 8px 8px;
}
.c-pagination__prev, .c-pagination__next {
	font-size: 1.6rem;
	line-height: 32px;
}
@media (min-width: 768px), print {
	.c-pagination a:hover .c-pagination__page {
		background: var(--color-prim);
		color: #fff;
	}
}

/*----------
	billboard
----------*/
.c-billboard {
	position: relative;
	padding-top: 70px;
	margin-bottom: 70px;
}
.c-billboard::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: calc(100% - 50px);
	background-color: var(--color-bg);
	border-radius: 0 0 30px 0;
	z-index: -1;
}
.c-billboard__inner {
	width: 100%;
	max-width: 1280px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 20px;
	padding-right: 20px;
}
@media (min-width: 768px), print {
	.c-billboard__inner {
		padding-left: 40px;
		padding-right: 40px;
	}
}
.c-billboard__content {
	align-content: flex-end;
	padding-top: 100px;
}
.c-billboard__title {
	font-weight: 500;
	font-size: 3.4rem;
	line-height: var(--line-height-m);
	margin-bottom: 50px;
}
.c-billboard__box {
	background-color: #FFF;
	border-radius: 20px;
	box-shadow: 0 0 10px rgba(48, 48, 48, 0.16);
	padding: 20px;
}
.c-billboard__image {
	margin-right: calc(50% - 50vw);
}
.c-billboard__image img {
	border-radius: 20px 0 0 20px;
}
@media (min-width: 1025px), print {
	.c-billboard {
		padding-top: 60px;
		margin-bottom: 100px;
	}
	.c-billboard::before {
		height: calc(100% - 80px);
	}
	.c-billboard:not(:has(.c-billboard__image))::before {
		height: 100%;
		border-radius: 0 0 60px 0;
	}
	.c-billboard:not(:has(.c-billboard__image)) .c-billboard__content {
		min-height: 300px;
		padding-bottom: 20px;
	}
	.c-billboard:not(:has(.c-billboard__image)) .c-billboard__title {
		margin-bottom: 60px;
	}
	.c-billboard__inner {
		display: flex;
		align-items: flex-end;
		gap: 40px;
	}
	.c-billboard__content {
		flex: 1;
		min-height: 380px;
		padding-bottom: 120px;
	}
	.c-billboard__title {
		font-size: 5.6rem;
		margin-bottom: 40px;
	}
	.c-billboard__box {
		margin-bottom: 40px;
		min-width: 320px;
	}
	.c-billboard__image {
		width: min(477px, 49%);
	}
	.c-billboard__image img {
		border-radius: 40px 0 0 40px;
	}
}
@media (min-width: 1281px), print {
	.c-billboard__inner {
		gap: 80px;
	}
}
@media (min-width: 768px), print {
	.c-billboard__box {
		padding: 20px 40px;
	}
}

/*----------
	billboard
----------*/
.c-billboard-v2 {
	position: relative;
	background: var(--color-bg);
	margin-bottom: 70px;
	border-radius: 0 0 30px 0;
}
.c-billboard-v2__inner {
	width: 100%;
	max-width: 1280px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 20px;
	padding-right: 20px;
	min-height: 268px;
	padding-top: 150px;
	padding-bottom: 50px;
	align-content: flex-end;
}
@media (min-width: 768px), print {
	.c-billboard-v2__inner {
		padding-left: 40px;
		padding-right: 40px;
	}
}
.c-billboard-v2__title {
	font-weight: 500;
	font-size: 3.2rem;
	line-height: var(--line-height-m);
}
@media (min-width: 1025px), print {
	.c-billboard-v2 {
		margin-bottom: 100px;
		border-radius: 0 0 60px 0;
	}
	.c-billboard-v2__inner {
		width: 100%;
		max-width: 1280px;
		margin-left: auto;
		margin-right: auto;
		padding-left: 20px;
		padding-right: 20px;
		min-height: 358px;
		padding-top: 160px;
		padding-bottom: 80px;
		align-content: flex-end;
	}
}
@media (min-width: 1025px) and (min-width: 768px), print and (min-width: 1025px), print and (min-width: 768px), print {
	.c-billboard-v2__inner {
		padding-left: 40px;
		padding-right: 40px;
	}
}
@media (min-width: 1025px), print {
	.c-billboard-v2__title {
		font-size: 5.6rem;
	}
}

/*----------
	heading-primary
----------*/
.c-heading-primary {
	line-height: 1;
}
.c-heading-primary--c {
	text-align: center;
}
.c-heading-primary__sub {
	font-weight: 500;
	font-size: 1.4rem;
	line-height: var(--line-height-m);
	color: var(--color-txt-hover);
	padding-left: 23px;
	position: relative;
	display: inline-block;
}
.c-heading-primary__sub::before {
	content: "";
	width: 8px;
	height: 100%;
	border-radius: 20px;
	background-color: var(--color-prim);
	position: absolute;
	left: 3px;
	top: 0;
	transform: rotate(15deg);
}
.c-heading-primary__sub--c2 {
	color: var(--color-txt-hover);
}
.c-heading-primary__sub--c2::before {
	background-color: var(--color-txt-hover);
}
.c-heading-primary__title {
	font-weight: 500;
	font-size: 4rem;
	line-height: var(--line-height-m);
	letter-spacing: 1px;
}
.c-heading-primary__title--c2 {
	color: var(--color-seco);
}
.c-heading-primary__title--m {
	font-size: min(3.4rem, 8vw);
}
.c-heading-primary__title--xs {
	font-size: 1.6rem;
	line-height: var(--line-height-l);
	display: block;
	color: #333;
}
@media (min-width: 1025px), print {
	.c-heading-primary__sub {
		font-size: 1.5rem;
	}
	.c-heading-primary__title {
		font-size: 5.6rem;
		letter-spacing: 2px;
	}
	.c-heading-primary__title--m {
		font-size: 4.8rem;
	}
	.c-heading-primary__title--xs {
		font-size: 2.4rem;
	}
}

/*----------
	heading-secondary
----------*/
.c-heading-secondary {
	padding-left: 20px;
	margin-top: 60px;
	margin-bottom: 25px;
	position: relative;
}
.c-heading-secondary::before {
	content: "";
	width: 2px;
	height: calc(100% - 2px);
	position: absolute;
	left: 0;
	bottom: 0;
	background-color: var(--color-txt-hover);
}
.c-heading-secondary__title {
	font-weight: 500;
	font-size: 2.6rem;
	line-height: var(--line-height-m);
}
@media (min-width: 1025px), print {
	.c-heading-secondary {
		margin-top: 100px;
		margin-bottom: 40px;
	}
	.c-heading-secondary::before {
		width: 3px;
	}
	.c-heading-secondary__title {
		font-size: 3.4rem;
	}
}

/*----------
	heading-tertiary
----------*/
.c-heading-tertiary {
	position: relative;
	padding-bottom: 16px;
	border-bottom: var(--color-border) solid 2px;
	margin-top: 50px;
	margin-bottom: 25px;
}
.c-heading-tertiary::before {
	content: "";
	width: 100px;
	height: 2px;
	background-color: var(--color-seco);
	position: absolute;
	left: 0;
	bottom: -2px;
}
.c-heading-tertiary__title {
	font-size: 2.4rem;
	font-weight: 500;
	line-height: var(--line-height-m);
}
@media (min-width: 1025px), print {
	.c-heading-tertiary {
		margin-top: 80px;
		margin-bottom: 30px;
	}
	.c-heading-tertiary::before {
		width: 50px;
	}
	.c-heading-tertiary__title {
		font-size: 3rem;
	}
}

/*----------
	heading-quaternary
----------*/
.c-heading-quaternary {
	position: relative;
	background-color: #F5F4EE;
	padding: 5px 20px 6px 20px;
	border-left: var(--color-seco) solid 2px;
	margin-top: 40px;
	margin-bottom: 20px;
}
.c-heading-quaternary__title {
	font-size: 2rem;
	font-weight: 500;
	line-height: var(--line-height-m);
}
@media (min-width: 1025px), print {
	.c-heading-quaternary {
		padding-top: 9px;
		padding-bottom: 11px;
		border-left-width: 3px;
		margin-top: 60px;
		margin-bottom: 30px;
	}
	.c-heading-quaternary__title {
		font-size: 2.4rem;
	}
}

/*----------
	heading-quinary
----------*/
.c-heading-quinary {
	position: relative;
	margin-top: 30px;
	margin-bottom: 15px;
}
.c-heading-quinary--dot {
	padding-left: 20px;
}
.c-heading-quinary--dot::before {
	content: "";
	width: 8px;
	height: 8px;
	background-color: #6C541F;
	position: absolute;
	left: 0;
	top: 7px;
}
.c-heading-quinary__title {
	font-size: 1.5rem;
	font-weight: bold;
	line-height: var(--line-height-m);
}
@media (min-width: 1025px), print {
	.c-heading-quinary {
		margin-top: 40px;
	}
	.c-heading-quinary--dot::before {
		width: 10px;
		height: 10px;
		top: 9px;
	}
	.c-heading-quinary__title {
		font-size: 1.8rem;
	}
}

/*----------
	heading-point
----------*/
.c-heading-point {
	display: flex;
}
.c-heading-point + .c-heading-point {
	margin: 20px 0 0;
}
.c-heading-point__icon {
	flex: 0 0 98px;
	margin: 0 20px 0 0;
}
.c-heading-point__icon-inner {
	background: var(--color-bg);
	border-radius: 100%;
	color: var(--color-seco);
	width: 98px;
	height: 98px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	gap: 2px;
}
.c-heading-point__icon-title {
	display: block;
	font-size: 2rem;
	line-height: 1.5;
	letter-spacing: 0.02rem;
	margin: 5px 0 0;
	font-weight: 600;
}
.c-heading-point__icon-title:only-child {
	margin: 0;
}
.c-heading-point__icon-num {
	display: block;
	font-size: 2.4rem;
	line-height: 1;
}
.c-heading-point__text {
	display: flex;
	flex: 1 1 auto;
	align-items: center;
}
.c-heading-point__title {
	font-size: 1.5rem;
	font-weight: bold;
	line-height: var(--line-height-m);
	letter-spacing: 0.02rem;
}
.c-heading-point__lead {
	margin: 15px 0 0;
	letter-spacing: 0.02rem;
}
@media (min-width: 768px), print {
	.c-heading-point__icon {
		flex-basis: 102px;
	}
	.c-heading-point__icon--s {
		flex-basis: 82px;
	}
	.c-heading-point__icon--s .c-heading-point__icon-inner {
		width: 82px;
		height: 82px;
	}
	.c-heading-point__icon-inner {
		width: 102px;
		height: 102px;
	}
	.c-heading-point__icon-title {
		margin: 7px 0 0;
		font-size: 2.4rem;
		font-weight: 500;
		color: var(--color-txt-hover);
	}
	.c-heading-point__title {
		font-size: 1.8rem;
	}
}

/* @forward '_heading/_heading-icon'; */
/*----------
	text
----------*/
.c-text {
	font-size: 1.4rem;
	line-height: var(--line-height-l);
	letter-spacing: 0.02em;
}
.c-text > a {
	text-decoration: underline;
}
@media (min-width: 768px), print {
	.c-text {
		font-size: 1.6rem;
	}
	.c-text > a {
		transition: color 0.2s, text-decoration 0.2s;
		text-decoration: underline;
		text-decoration-color: inherit;
		text-underline-offset: 2px;
	}
	.c-text > a:hover, a:hover .c-text > a {
		text-decoration-color: transparent;
	}
	.c-text > a:hover {
		color: var(--color-txt-hover);
	}
}

/*----------
	lead
----------*/
.c-lead {
	font-size: 2.4rem;
	font-weight: 500;
	line-height: var(--line-height-m);
	letter-spacing: 0.5px;
}
.c-lead--m {
	font-weight: normal;
	font-size: 1.5rem;
	line-height: var(--line-height-l);
}
@media (min-width: 1025px), print {
	.c-lead {
		font-size: 3rem;
	}
	.c-lead--m {
		font-size: 1.8rem;
	}
}

/*----------
	caption
----------*/
.c-caption {
	font-size: 1.3rem;
	line-height: var(--line-height-l);
	color: var(--color-txt-caption);
}
.c-caption > a {
	text-decoration: underline;
}
@media (min-width: 768px), print {
	.c-caption {
		font-size: 1.4rem;
	}
	.c-caption > a {
		transition: color 0.2s, text-decoration 0.2s;
		text-decoration: underline;
		text-decoration-color: inherit;
		text-underline-offset: 2px;
	}
	.c-caption > a:hover, a:hover .c-caption > a {
		text-decoration-color: transparent;
	}
	.c-caption > a:hover {
		color: var(--color-txt-hover);
	}
}

/*----------
	icontext
----------*/
.c-icontext {
	font-size: 1.4rem;
}
.c-icontext > a, .c-icontext > span {
	display: inline-block;
	line-height: var(--line-height-l);
	word-break: break-all;
}
.c-icontext > a {
	text-decoration: underline;
}
.c-icontext__icon {
	display: inline-block;
	width: 1em;
	height: 1em;
	vertical-align: -3px;
	background-color: var(--color-txt);
	margin-left: 5px;
}
@media (min-width: 1025px), print {
	.c-icontext {
		font-size: 1.6rem;
	}
	.c-icontext .c-icontext__icon {
		transition: background-color 0.2s;
	}
	.c-icontext > a {
		transition: color 0.2s, text-decoration 0.2s;
		text-decoration: underline;
		text-decoration-color: inherit;
		text-underline-offset: 2px;
	}
	.c-icontext > a:hover, a:hover .c-icontext > a {
		text-decoration-color: transparent;
	}
	.c-icontext > a:hover {
		color: var(--color-txt-hover);
	}
	.c-icontext > a:hover .c-icontext__icon {
		background-color: var(--color-txt-hover);
	}
}

/*----------
	list
----------*/
.c-list__item {
	padding-left: 1em;
	position: relative;
	font-size: 1.4rem;
	line-height: var(--line-height-l);
}
.c-list__item::before {
	content: "";
	display: block;
	width: 0.2em;
	height: 0.2em;
	border-radius: 50%;
	position: absolute;
	top: 0.9em;
	left: 0;
	transform: translate(50%, -50%);
	background-color: var(--color-txt);
}
.c-list__item.u-txt-red::before {
	background-color: var(--color-red);
}
.c-list__item + .c-list__item {
	margin-top: 4px;
}
@media (min-width: 768px), print {
	.c-list__item {
		font-size: 1.6rem;
	}
}

/*----------
	order list
----------*/
.c-orderlist {
	counter-reset: orderlist;
}
.c-orderlist__item {
	padding-left: 2.5em;
	position: relative;
	font-size: 1.4rem;
	line-height: var(--line-height-l);
}
.c-orderlist__item::before {
	counter-increment: orderlist;
	content: counter(orderlist) ".";
	display: block;
	min-width: 1.5em;
	position: absolute;
	top: 0;
	left: 0;
	text-align: right;
}
.c-orderlist--bsk .c-orderlist__item::before {
	content: "(" counter(orderlist) ")";
	display: inline-block;
	margin-right: 0.5em;
	min-width: 1.8em;
	text-align: right;
}
.c-orderlist__item + .c-orderlist__item {
	margin-top: 4px;
}
@media (min-width: 768px), print {
	.c-orderlist__item {
		font-size: 1.6rem;
	}
}

/*----------
	remarks
----------*/
.c-remarks {
	font-size: 1.4rem;
	line-height: var(--line-height-l);
}
.c-remarks__item {
	padding-left: 1.5em;
	position: relative;
}
.c-remarks__item::before {
	content: "※";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
}
.c-remarks__item + .c-remarks__item {
	margin-top: 4px;
}
.c-remarks--order {
	counter-reset: orderlist;
}
.c-remarks--order .c-remarks__item {
	padding-left: 3em;
}
.c-remarks--order .c-remarks__item::before {
	counter-increment: orderlist;
	content: "※" counter(orderlist);
	min-width: 2em;
	text-align: right;
}
@media (min-width: 768px), print {
	.c-remarks {
		font-size: 1.6rem;
	}
}

/*----------
	indent
----------*/
.c-indent {
	font-size: 1.4rem;
	letter-spacing: 0.02em;
}
.c-indent__item {
	display: flex;
	align-items: flex-start;
}
.c-indent__item + .c-indent__item {
	margin-top: 1em;
}
.c-indent__head {
	margin-right: 4px;
}
.c-indent__text {
	flex: 1;
}
@media (min-width: 768px), print {
	.c-indent {
		font-size: 1.6rem;
	}
}

/* @forward '_list/_qalist'; */
/*----------
	button
----------*/
.c-button__inner {
	display: flex;
	width: 100%;
	height: 100%;
	min-height: 50px;
	border-radius: 30px;
	flex-wrap: nowrap;
	align-items: center;
	position: relative;
	overflow: hidden;
	background-color: var(--color-seco);
	color: #fff;
	cursor: pointer;
	font-size: 1.4rem;
}
.c-button__inner > span {
	padding: 12px 40px 13px 30px;
	font-weight: 500;
	line-height: var(--line-height-l);
	color: inherit;
}
.c-button__icon {
	width: 1em;
	height: 1em;
	margin: auto;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 18px;
	line-height: 1;
	color: inherit;
	background-color: #FFF;
}
@media (min-width: 1025px), print {
	.c-button__inner {
		transition: background-color 0.2s;
		min-height: 60px;
		font-size: 1.6rem;
	}
	.c-button__inner:hover {
		background-color: var(--color-txt-hover);
	}
	.c-button__icon {
		transition: background-color 0.2s;
	}
}

/* バリエーション */
/* color */
/* .c-button {
	&--seco {
		.c-button__inner {
			background-color: var(--color-seco);
			color: var(--color-txt);
		}
	}

	@include m.mq-pc {
		&--seco {
			.c-button__inner {
				&:hover {
					background-color: rgba($color: var(--color-seco-rgb), $alpha: .6);
				}
			}
		}
	}
} */
/* size */
.c-button {
	/* &--l {
		.c-button__inner {
			min-height: 60px;

			> span {
				font-size: 1.8rem;
				font-weight: bold;
			}
		}
	} */
}
.c-button--s .c-button__inner {
	min-height: 40px;
}
.c-button--s .c-button__inner > span {
	font-size: 1.3rem;
	padding: 6px 36px 6px 20px;
}
@media (min-width: 1025px), print {
	.c-button--s .c-button__inner > span {
		font-size: 1.4rem;
		padding-left: 30px;
	}
}

/* border */
.c-button--border .c-button__inner {
	border: 1px solid var(--color-border);
	background-color: #fff;
	color: var(--color-txt);
	border-radius: 10px;
}
.c-button--border .c-button__icon {
	background-color: var(--color-txt);
}
@media (min-width: 768px), print {
	.c-button--border .c-button__inner:hover {
		background-color: var(--color-txt-hover);
		color: #fff;
	}
	.c-button--border .c-button__inner:hover .c-button__icon {
		background-color: #FFF;
	}
}

/* cv */
/* .c-button {
	&--cv {
		.c-button__inner {
			min-height: 60px;
			background-color: var(--color-cv);
			color: #fff;

			> span {
				font-size: 1.8rem;
				font-weight: bold;
			}
		}
	}
	@include m.mq-pc {
		&--cv {
			.c-button__inner {
				&:hover {
					background-color: rgba($color: var(--color-cv-rgb), $alpha: .6);
				}
			}
		}
	}
} */
/* textlink */
.c-button--textlink .c-button__inner {
	border-bottom: 1px solid var(--color-border);
	border-radius: 0;
	background-color: transparent;
	color: var(--color-txt);
	min-height: 0;
	font-size: 1.5rem;
}
.c-button--textlink .c-button__inner > span {
	padding: 0 22px 20px 0;
}
.c-button--textlink .c-button__icon {
	right: 0;
	bottom: 16px;
	line-height: 1;
	background-color: var(--color-txt);
}
@media (min-width: 768px), print {
	.c-button--textlink .c-button__inner {
		font-size: 1.8rem;
		transition: color 0.2s, text-decoration 0.2s;
		text-decoration: underline;
		text-decoration-color: transparent;
		text-underline-offset: 3px;
	}
	.c-button--textlink .c-button__inner:hover, a:hover .c-button--textlink .c-button__inner {
		text-decoration-color: inherit;
	}
	.c-button--textlink .c-button__inner > span {
		padding-right: 30px;
	}
	.c-button--textlink .c-button__inner .c-button__icon {
		transition: background-color 0.2s;
	}
	.c-button--textlink .c-button__inner:hover {
		background-color: transparent;
		color: var(--color-txt-hover);
	}
	.c-button--textlink .c-button__inner:hover .c-button__icon {
		background-color: var(--color-txt-hover);
	}
}

/*----------
	button container
----------*/
.g-button-container {
	margin: 0 auto;
	/* ボーダー接合 3カラム（改行左寄せ） */
}
.g-button-container__item {
	max-width: 295px;
	margin: 0 auto 20px;
}
.g-button-container__item:last-child {
	margin-bottom: 0;
}
.g-button-container__item.c-button--textlink {
	max-width: 100%;
}
.g-button-container--spcenter {
	justify-content: center;
}
@media (min-width: 768px), print {
	.g-button-container {
		display: flex;
		flex-wrap: nowrap;
		justify-content: center;
		align-items: stretch;
	}
	.g-button-container__item {
		margin-left: auto;
		margin-right: auto;
		max-width: 288px;
	}
	.g-button-container__item--m {
		max-width: 373px;
	}
	.g-button-container__item + .g-button-container__item {
		margin-top: 40px;
	}
	.g-button-container .g-button-container__item {
		flex: 1 1 288px;
		margin: 0;
	}
	.g-button-container .g-button-container__item--m {
		flex: 1 1 373px;
	}
	.g-button-container--type2 .g-button-container .g-button-container__item {
		margin: 0;
	}
	.g-button-container--2up {
		justify-content: center;
	}
	.g-button-container--2up .g-button-container__item {
		flex: 1 1 288px;
	}
	.g-button-container--2up .g-button-container__item + .g-button-container__item {
		margin-left: 40px;
	}
	.g-button-container--type2 .g-button-container--2up .g-button-container__item + .g-button-container__item {
		margin-left: 20px;
	}
	.g-button-container--center {
		justify-content: center;
	}
	.g-button-container--left {
		justify-content: flex-start;
	}
	.g-button-container--right {
		justify-content: flex-end;
	}
	.g-button-container--2col, .g-button-container--3col, .g-button-container--4col, .g-button-container--5col {
		display: grid;
		gap: 20px 40px;
	}
	.g-button-container--2col .g-button-container__item, .g-button-container--3col .g-button-container__item, .g-button-container--4col .g-button-container__item, .g-button-container--5col .g-button-container__item {
		max-width: none;
	}
	.g-button-container--2col.g-button-container--type2, .g-button-container--3col.g-button-container--type2, .g-button-container--4col.g-button-container--type2, .g-button-container--5col.g-button-container--type2 {
		gap: 20px;
	}
	.g-button-container--2col {
		grid-template-columns: repeat(2, 1fr);
	}
	.g-button-container--3col {
		grid-template-columns: repeat(3, 1fr);
	}
	.g-button-container--4col {
		grid-template-columns: repeat(4, 1fr);
	}
	.g-button-container--5col {
		grid-template-columns: repeat(5, 1fr);
	}
}
@media (max-width: 1024px) and (min-width: 768px), print {
	.g-button-container--3col, .g-button-container--4col, .g-button-container--5col {
		grid-template-columns: repeat(2, 1fr);
	}
}
@media (min-width: 1025px), print {
	.g-button-container--spcenter {
		justify-content: flex-start;
	}
}
@media (max-width: 767px) {
	.g-button-container--2sp {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: 20px;
	}
	.g-button-container--2sp .g-button-container__item {
		max-width: none;
		margin: 0;
	}
	.g-button-container--type2 .g-button-container__item {
		max-width: 100%;
	}
}
.g-button-container--collapse .g-button-container__item {
	max-width: none;
}
@media (max-width: 767px) {
	.g-button-container--collapse .g-button-container__item {
		margin: 0 auto;
	}
}
@media (min-width: 768px), print {
	.g-button-container--collapse.g-button-container--2col, .g-button-container--collapse.g-button-container--3col, .g-button-container--collapse.g-button-container--4col {
		gap: 0 40px;
	}
	.g-button-container--type2 .g-button-container--collapse.g-button-container--2col, .g-button-container--type2 .g-button-container--collapse.g-button-container--3col, .g-button-container--type2 .g-button-container--collapse.g-button-container--4col {
		gap: 0 20px;
	}
}

/* @forward '_media-set/_card'; */
/*----------
	image link
----------*/
.c-imagelink a {
	cursor: pointer;
}
.c-imagelink__inner {
	height: 100%;
	display: block;
}
.c-imagelink__image {
	margin-bottom: 15px;
	position: relative;
	z-index: 1;
}
.c-imagelink__image img {
	border-radius: 10px;
}
.c-imagelink__image--border img {
	border: 1px solid var(--color-border);
}
.c-imagelink__image-icon {
	display: block;
	aspect-ratio: 1;
	width: 20px;
	background-color: #FFF;
	position: absolute;
	right: 15px;
	bottom: 15px;
}
.c-imagelink__image-icon--bk {
	background-color: var(--color-txt);
}
.c-imagelink__title {
	font-weight: 500;
	font-size: 2.4rem;
	line-height: var(--line-height-m);
	letter-spacing: 0.02em;
}
.g-grid--3up .c-imagelink__title {
	font-size: 2rem;
}
.c-imagelink__text {
	margin-top: 15px;
	font-size: 1.5rem;
	color: var(--color-txt-hover);
	line-height: var(--line-height-l);
	letter-spacing: 0.02em;
}
.g-grid--3up .c-imagelink__text {
	font-size: 1.4rem;
}
@media (min-width: 1025px), print {
	.c-imagelink a.c-imagelink__inner:hover .c-imagelink__title {
		color: var(--color-txt-hover);
	}
	.c-imagelink a.c-imagelink__inner:hover .c-imagelink__image img {
		opacity: 0.5;
	}
	.c-imagelink a.c-imagelink__inner:hover .c-imagelink__image-icon {
		background-color: var(--color-txt-hover);
	}
	.c-imagelink__image {
		margin-bottom: 20px;
	}
	.c-imagelink__image img {
		transition: opacity 0.2s;
		border-radius: 20px;
	}
	.c-imagelink__image-icon {
		width: 28px;
		right: 20px;
		bottom: 20px;
		transition: background-color 0.2s;
	}
	.g-grid--3up .c-imagelink__image-icon {
		width: 20px;
		right: 15px;
		bottom: 15px;
	}
	.c-imagelink__title {
		font-size: 3rem;
		transition: color 0.2s, text-decoration 0.2s;
		text-decoration: underline;
		text-decoration-color: transparent;
		text-underline-offset: 3px;
	}
	.c-imagelink__title:hover, a:hover .c-imagelink__title {
		text-decoration-color: inherit;
	}
	.g-grid--3up .c-imagelink__title {
		font-size: 2.4rem;
	}
	.c-imagelink__text {
		font-size: 1.8rem;
	}
	.g-grid--3up .c-imagelink__text {
		font-size: 1.6rem;
	}
}

/* @forward '_img-set/cardlink';
@forward '_img-set/card-feature-container';
@forward '_img-set/card-feature'; */
/*----------
	imageset
----------*/
.c-imageset__button {
	max-width: 295px;
	margin: 0 auto;
}
.c-imageset__image {
	margin-bottom: 20px;
}
.c-imageset__image > img {
	border-radius: 10px;
}
.c-imageset__image--reverse {
	margin-bottom: 0;
	margin-top: 20px;
}
.c-imageset__image--sp {
	width: calc((100% - 20px) / 2);
}
.c-imageset--iconset .c-imageset__image > img {
	border-radius: 0;
}
@media (max-width: 767px) {
	.c-imageset--1t3 .c-imageset__inner {
		display: flex;
		flex-wrap: wrap;
		gap: 0 20px;
	}
	.c-imageset--1t3 .c-imageset__image {
		width: calc((100% - 20px) / 2);
		flex: none;
		margin-bottom: 0;
	}
	.c-imageset--1t3 .c-imageset__content {
		width: calc((100% - 20px) / 2);
	}
	.c-imageset--1t3 .c-imageset__button {
		margin-top: 10px;
		width: 100%;
	}
	.c-imageset--iconset .c-imageset__inner {
		display: flex;
		flex-wrap: wrap;
		gap: 0 20px;
	}
	.c-imageset--iconset .c-imageset__image {
		width: 98px;
		flex: none;
		margin-bottom: 0;
	}
	.c-imageset--iconset .c-imageset__content {
		width: calc(100% - 118px);
	}
	.c-imageset--iconset .c-imageset__button {
		margin-top: 10px;
		width: 100%;
	}
}
@media (min-width: 768px), print {
	.c-imageset__button {
		max-width: 270px;
		margin-left: 0;
	}
}
@media (max-width: 1024px) and (min-width: 768px), print {
	.c-imageset--1t2 .c-imageset__image {
		width: calc((100% - 30px) / 2);
	}
	.c-imageset--1t3 .c-imageset__inner {
		display: flex;
		flex-wrap: wrap;
	}
	.c-imageset--1t3 .c-imageset__image {
		flex: 0 0 40%;
		flex-basis: 184px;
		margin-right: 20px;
		margin-bottom: 0;
		width: 100%;
	}
	.c-imageset--1t3.c-imageset--reverse .c-imageset__image {
		margin-right: 0;
		margin-left: 20px;
	}
	.c-imageset--1t3 .c-imageset__content {
		flex: none;
		width: calc(100% - 204px);
	}
	.c-imageset--1t3 .c-imageset__button {
		width: 100%;
		margin-left: 204px;
	}
	.c-imageset--iconset .c-imageset__inner {
		display: flex;
		flex-wrap: wrap;
	}
	.c-imageset--iconset .c-imageset__image {
		flex: 0 0 20%;
		flex-basis: 102px;
		margin-right: 20px;
		margin-bottom: 0;
		width: 100%;
	}
	.c-imageset--iconset.c-imageset--reverse .c-imageset__image {
		margin-right: 0;
		margin-left: 20px;
	}
	.c-imageset--iconset .c-imageset__content {
		flex: none;
		width: calc(100% - 122px);
	}
	.c-imageset--iconset .c-imageset__button {
		width: 100%;
		margin-left: 122px;
	}
	.c-imageset--reverse .c-imageset__inner {
		flex-direction: row-reverse;
	}
	.c-imageset--reverse .c-imageset__button {
		margin-left: 0;
	}
}
@media (min-width: 1025px), print {
	.c-imageset__inner {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
	}
	.c-imageset__image {
		flex: 0 0 373px;
		margin-right: 40px;
		margin-bottom: 0;
	}
	.c-imageset__image > img {
		border-radius: 20px;
	}
	.c-imageset--reverse .c-imageset__image {
		margin-right: 0;
		margin-left: 40px;
	}
	.c-imageset__content {
		flex: 1 0 333px;
	}
	.c-imageset--1t2 .c-imageset__image {
		flex-basis: 285px;
	}
	.c-imageset--1t3 .c-imageset__inner {
		flex-wrap: wrap;
	}
	.c-imageset--1t3 .c-imageset__image {
		width: 100%;
		flex-basis: 184px;
	}
	.c-imageset--1t3 .c-imageset__content {
		flex: none;
		width: calc(100% - 224px);
	}
	.c-imageset--1t3 .c-imageset__button {
		width: 100%;
		margin-left: 224px;
	}
	.c-imageset--1t3.c-imageset--reverse .c-imageset__button {
		margin-left: 0;
	}
	.c-imageset--iconset .c-imageset__inner {
		flex-wrap: wrap;
	}
	.c-imageset--iconset .c-imageset__image {
		flex-basis: 102px;
		margin-right: 20px;
	}
	.c-imageset--iconset .c-imageset__content {
		flex: none;
		width: calc(100% - 122px);
	}
	.c-imageset--iconset .c-imageset__button {
		width: 100%;
		margin-left: 122px;
	}
	.c-imageset--iconset.c-imageset--reverse .c-imageset__button {
		margin-left: 0;
	}
	.c-imageset--reverse .c-imageset__inner {
		flex-direction: row-reverse;
	}
}

/* @forward '_icon-set/_iconset';
@forward '_icon-set/_iconset-v'; */
/*----------
	textpanel
----------*/
.c-txtpanel-link__inner {
	display: block;
	height: 100%;
	border: var(--color-border) solid 1px;
	padding: 25px 20px 42px;
	border-radius: 10px;
	position: relative;
}
.g-grid--3up .c-txtpanel-link__inner {
	padding: 25px 20px 45px;
}
.c-txtpanel-link__title {
	font-size: 2.4rem;
	font-weight: 500;
	line-height: var(--line-height-m);
}
.g-grid--3up .c-txtpanel-link__title {
	font-size: 2rem;
}
.c-txtpanel-link__text {
	font-size: 1.5rem;
	line-height: var(--line-height-l);
	color: var(--color-txt-hover);
	margin-top: 15px;
}
.g-grid--3up .c-txtpanel-link__text {
	font-size: 1.4rem;
}
.c-txtpanel-link__icon {
	position: absolute;
	right: 15px;
	bottom: 15px;
	width: 20px;
	height: 20px;
	background-color: var(--color-txt);
}
@media (min-width: 1025px), print {
	.c-txtpanel-link__inner {
		padding: 30px 20px 58px;
		transition: background-color 0.2s;
	}
	.c-txtpanel-link__inner:hover {
		background-color: var(--color-txt-hover);
	}
	.c-txtpanel-link__inner:hover .c-txtpanel-link__title {
		color: #FFF;
	}
	.c-txtpanel-link__inner:hover .c-txtpanel-link__text {
		color: #FFF;
	}
	.c-txtpanel-link__inner:hover .c-txtpanel-link__icon {
		background-color: #FFF;
	}
	.c-txtpanel-link__title {
		font-size: 3rem;
		transition: color 0.2s, text-decoration 0.2s;
		text-decoration: underline;
		text-decoration-color: transparent;
		text-underline-offset: 3px;
	}
	.c-txtpanel-link__title:hover, a:hover .c-txtpanel-link__title {
		text-decoration-color: inherit;
	}
	.g-grid--3up .c-txtpanel-link__title {
		font-size: 2.4rem;
	}
	.c-txtpanel-link__text {
		font-size: 1.8rem;
		transition: color 0.2s;
	}
	.g-grid--3up .c-txtpanel-link__text {
		font-size: 1.6rem;
	}
	.c-txtpanel-link__icon {
		transition: background-color 0.2s;
	}
	.g-grid--2up .c-txtpanel-link__icon {
		width: 28px;
		height: 28px;
	}
}

/*----------
	anchor
----------*/
.c-anchor__link {
	display: block;
	height: 100%;
	padding: 0 30px 20px 0;
	position: relative;
	border-bottom: var(--color-border) solid 1px;
}
.c-anchor__text {
	font-size: 1.4rem;
	font-weight: 500;
	line-height: var(--line-height-l);
}
.c-anchor__icon {
	position: absolute;
	right: 0;
	top: 0;
	bottom: 20px;
	margin: auto;
	background-color: var(--color-txt);
	width: 1em;
	height: 1em;
}
@media (max-width: 767px) {
	.c-anchor__item + .c-anchor__item {
		margin-top: 20px;
	}
}
@media (min-width: 768px), print {
	.c-anchor {
		display: grid;
		gap: 40px;
	}
	.c-anchor--2up {
		grid-template-columns: repeat(2, 1fr);
	}
	.c-anchor--3up {
		grid-template-columns: repeat(3, 1fr);
	}
	.c-anchor--4up {
		grid-template-columns: repeat(4, 1fr);
	}
	.c-anchor--5up {
		grid-template-columns: repeat(5, 1fr);
	}
}
@media (max-width: 1024px) and (min-width: 768px), print {
	.c-anchor {
		gap: 20px;
	}
	.c-anchor--3up, .c-anchor--4up, .c-anchor--5up {
		grid-template-columns: repeat(2, 1fr);
	}
}
@media (min-width: 1025px), print {
	.c-anchor__link:hover .c-anchor__text {
		color: var(--color-txt-hover);
	}
	.c-anchor__link:hover .c-anchor__icon {
		background-color: var(--color-txt-hover);
	}
	.c-anchor__text {
		font-size: 1.6rem;
		transition: color 0.2s, text-decoration 0.2s;
		text-decoration: underline;
		text-decoration-color: transparent;
		text-underline-offset: 3px;
	}
	.c-anchor__text:hover, a:hover .c-anchor__text {
		text-decoration-color: inherit;
	}
	.c-anchor__icon {
		position: absolute;
		right: 0;
		top: 0;
		bottom: 20px;
		margin: auto;
		background-color: var(--color-txt);
		width: 1em;
		height: 1em;
		transition: background-color 0.2s;
	}
}

/*----------
	anchor
----------*/
.c-tab__tab {
	background-color: var(--color-bg);
	padding: 10px;
	border-radius: 10px;
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}
.c-tab__tab--nobg {
	background-color: transparent;
	padding: 0;
	gap: 30px;
}
.c-tab__tab-item {
	background: var(--color-bg);
	color: var(--color-txt);
	width: 100%;
	border-radius: 20px;
	overflow: hidden;
}
.c-tab__tab-item.is-active {
	background: var(--color-seco);
	color: #fff;
	pointer-events: none;
	cursor: default;
}
.c-tab__tab-link {
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.4rem;
	font-weight: 500;
	letter-spacing: 0.5px;
	line-height: var(--line-height-l);
	text-align: center;
	width: 100%;
	min-height: 40px;
	height: 100%;
	padding: 6px 10px;
	color: inherit;
	cursor: pointer;
}
.c-tab__contents-item {
	display: none;
}
.c-tab__contents-item.is-active {
	display: block;
}
@media (min-width: 768px), print {
	.c-tab__tab {
		border-radius: 40px;
		display: grid;
	}
	.c-tab__tab--nobg {
		gap: 30px 60px;
	}
	.c-tab__tab--2up {
		grid-template-columns: repeat(2, 1fr);
	}
	.c-tab__tab--3up {
		grid-template-columns: repeat(3, 1fr);
	}
	.c-tab__tab--4up {
		grid-template-columns: repeat(4, 1fr);
	}
	.c-tab__tab--5up {
		grid-template-columns: repeat(5, 1fr);
	}
	.c-tab__tab-item {
		background: var(--color-bg);
		color: var(--color-txt);
		width: 100%;
		border-radius: 20px;
	}
	.c-tab__tab-item.is-active {
		background: var(--color-seco);
		color: #fff;
		pointer-events: none;
		cursor: default;
	}
}
@media (max-width: 1024px) and (min-width: 768px), print {
	.c-tab__tab--nobg {
		gap: 20px 40px;
	}
	.c-tab__tab--4up, .c-tab__tab--5up {
		grid-template-columns: repeat(3, 1fr);
	}
}
@media (min-width: 1025px), print {
	.c-tab__tab-link {
		font-size: 1.6rem;
		transition: background-color 0.2s, color 0.2s;
	}
	.c-tab__tab-link:hover {
		background-color: var(--color-txt-hover);
		color: #FFF;
	}
}

/*----------
	news
----------*/
.c-news > a {
	display: inline-block;
	border-color: #999;
	border-color: var(--color-txt-link);
	color: var(--color-txt-link);
}
.c-news__detail {
	display: grid;
	grid-template-columns: auto 1fr;
	grid-template-rows: auto auto;
	padding: 16px 0;
}
.c-news__date {
	margin-right: 10px;
	font-size: 1.4rem;
	line-height: var(--line-height-m);
	vertical-align: middle;
	color: var(--color-txt-hover);
}
.c-news__tag {
	grid-column: 2;
	border-left: #AD8C48 solid 1px;
	padding-left: 10px;
}
.c-news__headline {
	grid-column: 1/4;
	grid-row: 2;
	font-size: 1.4rem;
	line-height: var(--line-height-l);
	margin-top: 10px;
}
.c-news__headline > i[class^=icon-] {
	color: var(--color-txt);
}
.c-news a.c-news__title {
	display: inline-block;
	text-decoration: underline;
	text-decoration-color: inherit;
	text-underline-offset: 2px;
}
.c-news a.c-news__title:hover, a:hover .c-news a.c-news__title {
	text-decoration-color: transparent;
}
.c-news__file {
	display: inline-block;
	line-height: var(--line-height-m);
	margin-left: 8px;
	font-size: 1.4rem;
	text-indent: 0;
	color: #999;
}
.c-news__text-icon {
	display: inline-block;
	aspect-ratio: 1;
	width: 14px;
	background-color: var(--color-txt);
	vertical-align: -2px;
	margin-inline: 4px;
}
@media (min-width: 768px), print {
	.c-news > a .c-news__headline,
	.c-news > a .c-news__date {
		transition: color 0.2s;
	}
	.c-news > a:hover .c-news__headline,
	.c-news > a:hover .c-news__date {
		color: var(--color-txt-hover);
	}
	.c-news > a:hover .c-news__text-icon {
		background-color: var(--color-txt-hover);
	}
	.c-news__detail {
		grid-template-columns: auto auto 1fr;
		grid-template-rows: auto;
		padding-top: 24px;
		padding-bottom: 24px;
	}
	.c-news__date {
		font-size: 1.6rem;
	}
	.c-news__tag {
		margin-right: 8px;
	}
	.c-news__headline {
		font-size: 1.6rem;
	}
	.c-news a.c-news__title {
		transition: color 0.2s, text-decoration 0.2s;
	}
	.c-news a.c-news__title .c-news__text-icon {
		transition: background-color 0.2s;
	}
	.c-news a.c-news__title:hover {
		color: var(--color-txt-hover);
	}
	.c-news a.c-news__title:hover .c-news__text-icon {
		background-color: var(--color-txt-hover);
	}
}

/*----------
	news list
----------*/
.g-news-container__item {
	border-bottom: 1px solid #ccc;
}
.g-news-container__item:first-child {
	border-top: 1px solid #ccc;
}

/*----------
	important-info
----------*/
.c-important-info__item + .c-important-info__item {
	margin-top: 10px;
}
.c-important-info__date {
	font-size: 1.4rem;
	line-height: var(--line-height-l);
	color: var(--color-txt-caption);
}
.c-important-info__content {
	margin-top: 2px;
	line-height: var(--line-height-l);
	color: var(--color-red);
	font-size: 1.4rem;
}
.c-important-info__content a {
	text-decoration: underline;
	text-decoration-color: inherit;
	text-underline-offset: 2px;
}
.c-important-info__content a:hover, a:hover .c-important-info__content a {
	text-decoration-color: transparent;
}
@media (min-width: 1025px), print {
	.c-important-info__item {
		display: flex;
		justify-content: flex-start;
		align-items: flex-start;
	}
	.c-important-info__date {
		flex: 0 0 6.5em;
		font-size: 1.6rem;
	}
	.c-important-info__content {
		margin-top: 0;
		font-size: 1.6rem;
	}
	.c-important-info__content a {
		transition: color 0.2s, text-decoration 0.2s;
	}
	.c-important-info__content a:hover {
		color: var(--color-txt-hover);
	}
}

.c-important-box__title {
	background-color: var(--color-bg2);
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 5px 5px 0 0;
	padding: 14px 20px;
}
.c-important-box__title-icon {
	display: inline-block;
	aspect-ratio: 1;
	width: 20px;
	margin-right: 10px;
	background-color: var(--color-red);
}
.c-important-box__title-text {
	font-size: 1.5rem;
	font-weight: bold;
}
.c-important-box .c-important-info {
	width: 100%;
	border: var(--color-bg2) solid 2px;
	border-top: none;
	border-radius: 0 0 5px 5px;
	padding: 20px 20px 30px;
	background-color: #FFF;
}
@media (min-width: 1025px), print {
	.c-important-box {
		display: flex;
	}
	.c-important-box__title {
		min-width: 212px;
		border-radius: 20px 0 0 20px;
		justify-content: flex-start;
	}
	.c-important-box__title-text {
		font-size: 1.8rem;
	}
	.c-important-box .c-important-info {
		border: var(--color-bg2) solid 2px;
		border-left: none;
		border-radius: 0 20px 20px 0;
		padding: 30px 40px;
	}
}

/* @forward '_table/_deflist'; */
/*----------
	table
----------*/
.c-table__content {
	width: 100%;
	text-align: left;
	border: none;
	font-size: 1.4rem;
	line-height: var(--line-height-l);
}
.c-table__layouter--for-pc {
	display: none;
}
.c-table__layouter--for-sp {
	display: table-column-group;
}
.c-table tr {
	border-top: var(--color-border) solid 1px;
}
.c-table tr:last-child {
	border-bottom: var(--color-border) solid 1px;
}
.c-table--border tr > * {
	border-left: var(--color-border) solid 1px;
}
.c-table--border tr > *:last-child {
	border-right: var(--color-border) solid 1px;
}
.c-table__header {
	padding: 20px;
	background-color: var(--color-bg);
	font-weight: 700;
}
.c-table__header:empty {
	background: none;
	border: none;
	position: relative;
}
.c-table__header:empty::after {
	content: "";
	width: 100%;
	height: calc(100% + 1px);
	position: absolute;
	left: 0;
	top: -1px;
	background-color: #FFF;
}
.c-table__header--mid {
	vertical-align: middle;
}
.c-table__narrow-header {
	padding: 20px;
	background-color: var(--color-txt-caption);
	text-align: center;
	color: #fff;
	vertical-align: middle;
}
.c-table__narrow-header:empty {
	background: none;
	border: none;
	position: relative;
}
.c-table__narrow-header:empty::after {
	content: "";
	width: 100%;
	height: calc(100% + 1px);
	position: absolute;
	left: 0;
	top: -1px;
	background-color: #FFF;
}
.c-table__subheader {
	padding: 20px;
	background-color: var(--color-bg);
	text-align: center;
	vertical-align: middle;
}
.c-table__subheader:empty {
	background: none;
	border: none;
	position: relative;
}
.c-table__subheader:empty::after {
	content: "";
	width: 100%;
	height: calc(100% + 1px);
	position: absolute;
	left: 0;
	top: -1px;
	background-color: #FFF;
}
.c-table__cell {
	padding: 20px;
	vertical-align: middle;
}
.c-table__cell:empty {
	background: none;
	border: none;
}
.c-table__cell--top {
	vertical-align: top;
}
.c-table-scaling {
	display: block;
	margin-bottom: 20px;
}
.c-table-scaling i::before {
	font-size: 2rem;
	vertical-align: middle;
}
.c-table-scaling__text {
	display: inline-block;
	font-size: 1.2rem;
	vertical-align: middle;
	margin-left: 6px;
}
@media (min-width: 768px), print {
	.c-table-scaling {
		display: none;
	}
}
.c-table-switch {
	display: block;
	padding: 6px 12px 8px;
	border-radius: 6px;
	border: 1px solid #DDDDDD;
	padding-left: 58px;
	min-height: 36px;
	position: relative;
	margin: 0 0 20px auto;
}
.c-table-switch::before, .c-table-switch::after {
	content: "";
	display: block;
	width: 16px;
	height: 16px;
	background: url(/assets/images/icon_table_slide.svg) no-repeat center/contain;
	margin: auto;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 12px;
}
.c-table-switch::after {
	background-image: url(/assets/images/icon_table_fit.svg);
	left: 34px;
	filter: invert(0.7);
}
.c-table-switch__text {
	font-size: 1.2rem;
}
.c-table-switch__text--fit {
	display: none;
}
@media (min-width: 768px), print {
	.c-table-switch {
		display: none;
	}
}
.c-table__support {
	display: none;
}
@media (max-width: 767px) {
	.c-table {
		/* &--scrollable {
			position: relative;
			$gutter: math.div(20, 375);

			.c-table__inner {
				overflow: auto;
				margin-right: percentage( $gutter * -1 );
				padding-bottom: 8px;

				&::-webkit-scrollbar {
					width: 132px;
					height: 4px;
				}

				&::-webkit-scrollbar-thumb {
					background: #666;
					border-radius: 30px;
				}
			}

			.c-table__body {
				width: 1000px;
				padding-bottom: 8px;
			}
		} */
		/* &--switch {
			$gutter: math.div(20, 375);

			&.is-scrollable {
				&.is-scroll {
					.c-table__inner {
						&::before,
						&::after {
							opacity: 0;
							visibility: hidden;
						}
					}
				}

				.c-table__inner {
					overflow: auto;
					margin-right: percentage( $gutter * -1 );
					padding-bottom: 8px;
					position: relative;

					&::after {
						position: absolute;
						content: '';
						background: url(/assets/images/icon_slide_float.svg) no-repeat;
						background-size: contain;
						width: 68px;
						height: 32px;
						top: calc(50% - 8px);
						left: 50%;
						transform: translate(-50% , -50%);
						z-index: 11;
						pointer-events: none;
					}

					&::before {
						position: absolute;
						content: '';
						width: 100%;
						height: 100%;
						background: rgba(0,0,0,.4);
						top: 0;
						left: 0;
						z-index: 10;
						transition: background-color .3s;
						pointer-events: none;
					}

					&::-webkit-scrollbar {
						width: 132px;
						height: 4px;
					}

					&::-webkit-scrollbar-thumb {
						background: #666;
						border-radius: 30px;
					}
				}

				.c-table__body {
					min-width: 1000px;
					padding-bottom: 8px;
				}

				.c-table-switch {
					&::before {
		      		filter: invert(0.7);
					}

					&::after {
						filter: none;
					}

					&__text {
						&--fit {
							display: block;
						}

						&--slide {
							display: none;
						}
					}
				}
			}
		}

		&--scrollable-v2 {
			$gutter: math.div(20, 375);

			position: relative;

			&.is-touched {
				.c-table__body {
					&::after {
						display: none;
					}
				}
			}

			.c-table__inner {
				margin-left: percentage( $gutter * -1 );
				margin-right: percentage( $gutter * -1 );
				padding-left: percentage( $gutter );
				overflow: auto;
			}

			.c-table__body {
				width: 1000px;
				padding-bottom: 10px;
				padding-right: percentage( $gutter );

				&::after {
					content: '';
					display: block;
					position: absolute;
					top: 0;
					bottom: 0;
					right: 0;
					left: 0;
					margin-left: percentage( $gutter * -1 );
					margin-right: percentage( $gutter * -1 );
					background: rgba(#000, .4) url(/assets/images/table-swipe-white.svg) no-repeat center;
					background-size: 67px auto;
				}
			}
		} */
	}
	.c-table--scrollable-float .c-table__inner {
		overflow: auto;
		margin: 0 -20px;
		position: relative;
		/* &::after {
			position: absolute;
			content: '';
			background: url(/assets/images/icon_slide_float.svg) no-repeat;
			background-size: contain;
			width: 68px;
			height: 32px;
			top: calc(50% - 8px);
			left: 50%;
			transform: translate(-50% , -50%);
			z-index: 11;
			pointer-events: none;
		} */
	}
	.c-table--scrollable-float .c-table__inner::before {
		position: absolute;
		content: "";
		width: 100%;
		height: calc(100% - 20px);
		background: rgba(0, 0, 0, 0.4);
		top: 0;
		left: 0;
		z-index: 10;
		transition: background-color 0.3s;
		pointer-events: none;
	}
	.c-table--scrollable-float .c-table__inner::-webkit-scrollbar {
		height: 10px;
		background-color: #CCC;
		border-radius: 30px;
	}
	.c-table--scrollable-float .c-table__inner::-webkit-scrollbar-thumb {
		background: var(--color-txt-caption);
		border-radius: 30px;
		width: 50px;
	}
	.c-table--scrollable-float .c-table__body {
		min-width: 1000px;
		padding: 0 20px 20px;
	}
	.c-table--scrollable-float .c-table__support {
		display: block;
		width: 120px;
		height: 90px;
		background-color: var(--color-txt-caption);
		border-radius: 14px;
		color: #FFF;
		text-align: center;
		padding-top: 15px;
		position: absolute;
		top: calc(50% - 8px);
		left: 50%;
		transform: translate(-50%, -50%);
		z-index: 11;
		pointer-events: none;
	}
	.c-table--scrollable-float .c-table__support-text {
		font-size: 1.2rem;
	}
	.c-table--scrollable-float .c-table__support-text::before {
		content: "";
		display: block;
		background: url(/assets/images/icon_slide_float.svg) no-repeat;
		background-size: contain;
		width: 68px;
		height: 32px;
		margin: 0 auto 10px;
	}
	.c-table--scrollable-float.is-scroll .c-table__inner::before, .c-table--scrollable-float.is-scroll .c-table__inner::after {
		opacity: 0;
		visibility: hidden;
	}
	.c-table--scrollable-float.is-scroll .c-table__support {
		opacity: 0;
		visibility: hidden;
	}
	.c-table--col table,
	.c-table--col thead,
	.c-table--col tbody,
	.c-table--col tr,
	.c-table--col th,
	.c-table--col td {
		display: block;
	}
	.c-table--col .c-table__header {
		padding: 15px 20px;
	}
}
@media (min-width: 768px), print {
	.c-table__content {
		font-size: 1.6rem;
	}
	.c-table__layouter--for-pc {
		display: table-column-group;
	}
	.c-table__layouter--for-sp {
		display: none;
	}
}

/* @forward '_box/_box'; */
/*----------
	c-txtpanel
----------*/
.c-txtpanel {
	border-radius: 10px;
	border: 1px solid var(--color-border);
	padding: 25px 20px;
}
.c-txtpanel__title {
	font-size: 2.4rem;
	font-weight: 500;
	line-height: var(--line-height-m);
}
.g-grid--3up .c-txtpanel__title {
	font-size: 2rem;
}
.c-txtpanel__body {
	margin-top: 10px;
}
.c-txtpanel__text {
	font-size: 1.5rem;
	line-height: var(--line-height-l);
	color: var(--color-txt-hover);
}
.g-grid--3up .c-txtpanel__text {
	font-size: 1.4rem;
}
@media (min-width: 1025px), print {
	.c-txtpanel {
		padding: 30px 20px;
	}
	.g-grid--3up .c-txtpanel {
		padding: 25px 20px;
	}
	.c-txtpanel__title {
		font-size: 3rem;
	}
	.g-grid--3up .c-txtpanel__title {
		font-size: 2.4rem;
	}
	.c-txtpanel__text {
		font-size: 1.8rem;
	}
	.g-grid--3up .c-txtpanel__text {
		font-size: 1.6rem;
	}
}

/* @forward '_panel/_panel'; */
/*----------
	c-point
----------*/
.c-point__inner {
	display: flex;
	flex-direction: column;
	gap: 20px;
}
.c-point__image > img {
	border-radius: 10px;
}
.c-point__listwrap {
	display: flex;
	flex-direction: column;
	gap: 10px;
}
@media (min-width: 768px), print {
	.c-point__inner {
		flex-direction: row;
		gap: 40px;
	}
	.c-point__image {
		max-width: 373px;
		flex-shrink: 0;
	}
	.c-point__image > img {
		border-radius: 20px;
	}
	.c-point__image--s {
		max-width: 307px;
	}
	.c-point__listwrap {
		flex-direction: row;
		gap: 40px;
	}
	.c-point__listwrap_item {
		width: calc((100% - 40px) / 2);
	}
}

/* @forward '_accordion/_qa';
@forward '_accordion/_accordion'; */
/* @forward '_kv/_slider';
@forward '_kv/_kv';
@forward '_cv/_kv-v2'; */
/*----------
	kv v3
----------*/
.c-kv-v3 {
	background: var(--color-prim);
	border-radius: 10px;
	overflow: hidden;
	position: relative;
	z-index: 10;
}
.c-kv-v3::before {
	content: "";
	aspect-ratio: 542/848;
	width: 167px;
	position: absolute;
	right: -10px;
	top: 10px;
	background: url(/assets/images/beans.svg) center/contain no-repeat;
	z-index: -1;
}
.c-kv-v3__inner {
	padding: 40px 20px;
}
.c-kv-v3__button {
	margin: 40px auto 0;
	max-width: 255px;
}
.c-kv-v3 .c-heading-primary__title {
	font-size: 2.6rem;
}
@media (min-width: 1025px), print {
	.c-kv-v3 {
		border-radius: 40px;
	}
	.c-kv-v3::before {
		width: 275px;
		right: 48px;
		top: -18px;
	}
	.c-kv-v3__inner {
		/* max-width: 1040px;
		margin: 0 auto; */
		padding: 60px 80px;
		display: flex;
		justify-content: space-between;
		align-items: flex-end;
		gap: 40px;
	}
	.c-kv-v3__button {
		margin: 0;
		max-width: 100%;
		width: 300px;
	}
	.c-kv-v3 .c-heading-primary__title {
		font-size: 3.4rem;
	}
}

/* @forward '_cv/_contact';
@forward '_cv/_contactset'; */
/*----------
	radio-container
----------*/
.g-radio-container__item {
	display: table;
}
.g-radio-container__item + .g-radio-container__item {
	margin-top: 16px;
}

/*----------
	checkbox-container
----------*/
.g-checkbox-container__item {
	display: table;
}
.g-checkbox-container__item + .g-checkbox-container__item {
	margin-top: 16px;
}

/*----------
	radio
----------*/
.c-radio {
	cursor: pointer;
}
.c-radio input[type=radio] {
	position: absolute;
	clip: rect(0 0 0 0);
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	border: 0;
}
.c-radio input[type=radio]:checked + span {
	color: var(--color-txt);
}
.c-radio input[type=radio]:checked + span::before {
	background-image: url(/assets/images/marker_radio_on.svg);
}
.c-radio input[type=radio]:focus-visible + span::before {
	border-radius: 100%;
	outline: #000 solid 2px;
}
.c-radio span {
	position: relative;
	padding-left: 32px;
	display: inline-block;
	line-height: 2.4rem;
	text-align: left;
}
.c-radio span::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 24px;
	height: 24px;
	margin-right: 8px;
	background: #fff url(/assets/images/marker_radio.svg) no-repeat center;
	background-size: contain;
}
.c-radio span a {
	text-decoration: underline;
}
.c-radio.is-error {
	color: var(--color-caution);
}
.c-radio.is-error span::before {
	margin-right: 8px;
	background-image: url(/assets/images/marker_radio_error.svg);
}
.is-error .c-radio {
	color: var(--color-caution);
}
.is-error .c-radio span::before {
	margin-right: 8px;
	background-image: url(/assets/images/marker_radio_error.svg);
}

/*----------
	checkbox
----------*/
.c-checkbox {
	cursor: pointer;
}
.c-checkbox input[type=checkbox] {
	position: absolute;
	clip: rect(0 0 0 0);
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	border: 0;
}
.c-checkbox input[type=checkbox]:checked + span {
	color: var(--color-txt);
}
.c-checkbox input[type=checkbox]:checked + span::before {
	background-image: url(/assets/images/marker_checkbox_on.svg);
}
.c-checkbox input[type=checkbox]:focus-visible + span::before {
	outline: #000 solid 2px;
}
.c-checkbox span {
	position: relative;
	padding-left: 32px;
	display: inline-block;
	line-height: 2.4rem;
	text-align: left;
}
.c-checkbox span::before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 24px;
	height: 24px;
	margin-right: 8px;
	background: #fff url(/assets/images/marker_checkbox.svg) no-repeat center;
	background-size: contain;
}
.c-checkbox span a {
	text-decoration: underline;
}
.c-checkbox.is-error {
	color: var(--color-caution);
}
.c-checkbox.is-error span::before {
	margin-right: 8px;
	background-image: url(/assets/images/marker_checkbox_error.svg);
}
.is-error .c-checkbox {
	color: var(--color-caution);
}
.is-error .c-checkbox span::before {
	margin-right: 8px;
	background-image: url(/assets/images/marker_checkbox_error.svg);
}

/*----------
	input
----------*/
.c-input > input[type=text],
.c-input > input[type=number],
.c-input > input[type=email],
.c-input > input[type=tel] {
	display: block;
	width: 100%;
	padding: 16px 20px;
	border: 1px solid #999999;
	border-radius: 5px;
	appearance: none;
	-webkit-appearance: none;
	font-size: 1.6rem;
	line-height: var(--line-height-s);
}
.c-input > input[type=text]::placeholder,
.c-input > input[type=number]::placeholder,
.c-input > input[type=email]::placeholder,
.c-input > input[type=tel]::placeholder {
	color: #999999;
}
.c-input > input[type=text]::-webkit-input-placeholder,
.c-input > input[type=number]::-webkit-input-placeholder,
.c-input > input[type=email]::-webkit-input-placeholder,
.c-input > input[type=tel]::-webkit-input-placeholder {
	color: #999999;
}
.c-input > input[type=text]:-moz-placeholder,
.c-input > input[type=number]:-moz-placeholder,
.c-input > input[type=email]:-moz-placeholder,
.c-input > input[type=tel]:-moz-placeholder {
	color: #999999;
}
.c-input > input[type=text]::-moz-placeholder,
.c-input > input[type=number]::-moz-placeholder,
.c-input > input[type=email]::-moz-placeholder,
.c-input > input[type=tel]::-moz-placeholder {
	color: #999999;
}
.c-input > input[type=text]:-ms-input-placeholder,
.c-input > input[type=number]:-ms-input-placeholder,
.c-input > input[type=email]:-ms-input-placeholder,
.c-input > input[type=tel]:-ms-input-placeholder {
	color: #999999;
}
.c-input.is-error > input[type=text],
.c-input.is-error > input[type=number],
.c-input.is-error > input[type=email],
.c-input.is-error > input[type=tel] {
	color: var(--color-caution);
	border-color: var(--color-caution);
	background: #FEDFDF;
}

/*----------
	textarea
----------*/
.c-textarea > textarea {
	display: block;
	width: 100%;
	padding: 20px 24px;
	border: 1px solid #999999;
	border-radius: 5px;
	appearance: none;
	-webkit-appearance: none;
}
.c-textarea > textarea::placeholder {
	color: #999999;
}
.c-textarea > textarea::-webkit-input-placeholder {
	color: #999999;
}
.c-textarea > textarea:-moz-placeholder {
	color: #999999;
}
.c-textarea > textarea::-moz-placeholder {
	color: #999999;
}
.c-textarea > textarea:-ms-input-placeholder {
	color: #999999;
}
.c-textarea.is-error > textarea {
	color: var(--color-caution);
	border-color: var(--color-caution);
	background: #FEDFDF;
}

/*----------
	select
----------*/
.c-select {
	position: relative;
	cursor: pointer;
}
.c-select::after {
	content: "";
	display: block;
	width: 16px;
	height: 16px;
	position: absolute;
	top: 50%;
	right: 20px;
	transform: translateY(-50%);
	background: url("/assets/images/icons/chev-down.svg");
	pointer-events: none;
}
.c-select > select {
	display: block;
	width: 100%;
	height: 60px;
	padding: 12px 50px 12px 20px;
	border: 1px solid var(--color-border);
	border-radius: 5px;
	color: var(--color-txt);
	appearance: none;
	-webkit-appearance: none;
	font-size: 1.4rem;
	line-height: var(--line-height-m);
}
.c-select > select::-ms-expand {
	display: none;
}
.c-select.is-error::after {
	color: var(--color-caution);
}
.c-select.is-error > select {
	color: var(--color-caution);
	border-color: var(--color-caution);
	background: #FEDFDF;
}
.c-select:not(.is-selected):not(.parsley-success) > select {
	color: #999999;
}
@media (min-width: 1025px), print {
	.c-select > select {
		font-size: 1.6rem;
		transition: background-color 0.2s;
	}
	.c-select > select:hover {
		background-color: #F5F4EE;
	}
}

/*----------
	inputset
----------*/
.c-inputset__required {
	display: inline-block;
	margin-left: 10px;
	padding: 6px 8px;
	font-size: 1.1rem;
	line-height: 1;
	color: #fff;
	background: #3B4043;
	border-radius: 4px;
}
.c-inputset__note {
	margin-top: 12px;
	font-size: 1.2rem;
	line-height: 1.2;
	color: var(--color-txt-caption-v2);
}
.c-inputset .parsley-errors-list {
	font-size: 1.2rem;
	line-height: 1.2;
	color: var(--color-caution);
}
.c-inputset .parsley-errors-list.filled {
	margin-top: 8px;
}
@media (max-width: 767px) {
	.c-inputset__inner, .c-inputset__body, .c-inputset__row {
		display: block;
		width: 100%;
	}
	.c-inputset__row {
		overflow: hidden;
	}
	.c-inputset__header, .c-inputset__subheader, .c-inputset__detail {
		text-align: left;
	}
	.c-inputset__header {
		display: block;
		width: 100%;
		padding: 8px 20px;
		background: #DDDDDD;
		color: var(--color-txt-caption-v2);
	}
	.c-inputset__subheader {
		display: block;
		width: 100%;
		padding: 10px 16px;
		font-size: 1.4rem;
		background: var(--color-bg);
		color: var(--color-txt-caption-v2);
	}
	.c-inputset__detail {
		display: block;
		width: 100%;
		padding: 20px 16px;
		border: 1px solid #CDD6DD;
		border-top: none;
	}
}
@media (min-width: 768px), print {
	.c-inputset__inner {
		width: 100%;
	}
	.c-inputset__header {
		vertical-align: middle;
		width: 300px;
		padding: 18px 16px;
		font-size: 1.8rem;
		background: #DDDDDD;
		color: var(--color-txt-caption-v2);
		border: 1px solid #FFF;
		border-top: 1px solid #FFF;
		border-bottom: 1px solid #FFF;
		border-right: none;
		border-left: none;
		text-align: left;
	}
	.c-inputset__header--top {
		vertical-align: top;
	}
	.c-inputset__subheader {
		vertical-align: middle;
		width: 240px;
		padding: 18px 16px;
		font-size: 1.8rem;
		background: var(--color-bg);
		color: var(--color-txt-caption-v2);
		text-align: left;
		border: 1px solid #FFF;
		border-top: 1px solid #FFF;
		border-bottom: 1px solid #FFF;
		border-right: none;
		border-left: none;
	}
	.c-inputset__subheader--top {
		vertical-align: top;
	}
	.c-inputset__detail {
		padding: 18px 47px;
		border: 1px solid #CDD6DD;
		border-top: 1px solid #CDD6DD;
		border-bottom: 1px solid #CDD6DD;
		border-right: 1px solid #CDD6DD;
		border-left: none;
	}
	.c-inputset__item--300 {
		max-width: 300px;
	}
	.c-inputset__item--340 {
		max-width: 340px;
	}
	.c-inputset__item--400 {
		max-width: 400px;
	}
	.c-inputset__item--420 {
		max-width: 420px;
	}
	.c-inputset__item--460 {
		max-width: 460px;
	}
	.c-inputset__item--500 {
		max-width: 500px;
	}
	.c-inputset__required {
		display: inline-block;
	}
	.c-inputset__note {
		font-size: 1.4rem;
	}
	.c-inputset .parsley-errors-list {
		font-size: 1.4rem;
	}
}
@media print {
	.c-inputset__inner {
		display: table;
		width: 100%;
	}
	.c-inputset__body {
		display: table-row-group;
	}
	.c-inputset__row {
		display: table-row;
	}
	.c-inputset__header {
		display: table-cell;
		float: none;
	}
	.c-inputset__subheader {
		display: table-cell;
		float: none;
	}
	.c-inputset__detail {
		display: table-cell;
		float: none;
		width: auto;
	}
}

/*----------s
	personalset
----------*/
.c-personalset__policy {
	height: 240px;
	margin: 40px auto 0;
	padding: 25px 36px;
	border: 1px solid var(--color-txt-caption);
	overflow: auto;
	color: var(--color-txt-caption);
}
.c-personalset__policy-title {
	margin-bottom: 8px;
	font-weight: bold;
	font-size: 2.4rem;
	color: #3B4043;
}
.c-personalset__agreement {
	margin: 20px auto 0;
}
.c-personalset__agreement-body {
	padding: 10px 16px;
	background: var(--color-bg);
	text-align: center;
}
.c-personalset__agreement-check {
	display: table;
	margin: auto;
}
.c-personalset__agreement-error {
	text-align: center;
}
.c-personalset__note {
	margin: 20px auto 0;
	line-height: var(--line-height-m);
	color: var(--color-txt-caption);
	text-align: center;
}
.c-personalset__submit {
	margin: 10px auto 0;
}
.c-personalset__submit-inner {
	display: flex;
	width: 100%;
	height: 100%;
	min-height: 64px;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: center;
	position: relative;
	overflow: hidden;
	background-color: var(--color-txt-caption-v2);
	color: #fff;
	border-radius: 4px;
}
.c-personalset__submit-inner[disabled] {
	opacity: 0.6;
}
.c-personalset__submit-inner:not([disabled]) {
	cursor: pointer;
}
.c-personalset__submit-inner > span {
	padding: 8px 40px;
	text-align: center;
	font-size: 2rem;
	font-weight: bold;
	line-height: var(--line-height-s);
	color: inherit;
}
.c-personalset .parsley-errors-list {
	font-size: 1.2rem;
	line-height: 1.2;
	color: var(--color-caution);
}
.c-personalset .parsley-errors-list.filled {
	margin-top: 8px;
}
@media (min-width: 768px), print {
	.c-personalset__policy {
		margin-top: 80px;
		padding: 36px 66px;
	}
	.c-personalset__policy-title {
		margin-bottom: 17px;
		font-size: 3.2rem;
	}
	.c-personalset__agreement {
		max-width: 800px;
		margin: 40px auto 0;
	}
	.c-personalset__agreement-body {
		padding: 25px;
	}
	.c-personalset__note {
		margin: 80px auto 0;
	}
	.c-personalset__submit {
		max-width: 528px;
		margin: 26px auto 0;
	}
	.c-personalset__submit-inner {
		transition: background-color 0.2s, opacity 0.2s;
	}
	.c-personalset__submit-inner:not([disabled]) {
		opacity: 1;
	}
	.c-personalset__submit-inner:not([disabled]):hover {
		background-color: rgba(var(--color-txt-caption-v2-rgb), 0.6);
	}
}

/*----------
	field
----------*/
/* お名前入力用 */
.c-field-name {
	display: grid;
	grid-template-rows: repeat(2, auto);
	grid-auto-flow: column;
	grid-auto-columns: 1fr;
	gap: 5px 10px;
}
.c-field-name__item {
	flex: 1;
}
.c-field-name__item + .c-field-name__item {
	margin-left: 10px;
}
@media (min-width: 768px), print {
	.c-field-name {
		display: flex;
		justify-content: center;
		gap: 0;
	}
	.c-field-name__label {
		display: flex;
		align-items: center;
		line-height: 50px;
		width: 35px;
		margin-right: 8px;
	}
	.c-field-name__item + .c-field-name__label {
		margin-left: 30px;
	}
}

/* 郵便番号入力用（検索ボタンも含む） */
.c-field-zip__items {
	display: flex;
	align-items: flex-start;
}
.c-field-zip__item {
	flex: 1;
}
.c-field-zip__search {
	display: block;
	margin: 15px auto 0;
	max-width: 160px;
}
.c-field-zip__search-inner {
	display: flex;
	align-items: center;
	width: 100%;
	border: 2px solid #3B4043;
	border-radius: 5px;
	font-weight: bold;
	color: #3B4043;
	cursor: pointer;
}
.c-field-zip__search-inner > span {
	display: block;
	width: 100%;
	padding: 14px 10px;
	text-align: center;
	font-size: 1.6rem;
	line-height: var(--line-height-s);
	color: inherit;
}
@media (min-width: 768px), print {
	.c-field-zip {
		display: flex;
		align-items: flex-start;
		flex-wrap: wrap;
		margin-bottom: -16px;
	}
	.c-field-zip__items {
		flex: 1;
		margin: 0 32px 16px 0;
	}
	.c-field-zip__item {
		min-width: 100px;
	}
	.c-field-zip__search {
		flex-basis: 160px;
		margin: 0 0 16px;
	}
	.c-field-zip__search-inner {
		transition: background-color 0.2s, color 0.2s;
	}
	.c-field-zip__search-inner:hover {
		background-color: #3B4043;
		color: #fff;
	}
}

/* 電話番号入力用 */
.c-field-tel {
	display: flex;
	align-items: flex-start;
	justify-content: center;
}
.c-field-tel__item {
	flex: 1;
}
.c-field-tel__hyphen {
	display: flex;
	align-items: center;
	margin: 0 8px;
	line-height: 50px;
}

/*----------
	single column
----------*/
.g-center-col__item + .g-center-col__item {
	margin-top: 40px;
}
@media (min-width: 768px), print {
	.g-center-col {
		display: flex;
		justify-content: center;
		align-items: flex-start;
	}
	.g-center-col__item {
		flex: 1 1 66.6666666667%;
		max-width: 66.6666666667%;
	}
	.g-center-col__item + .g-center-col__item {
		margin-top: 0;
	}
	.g-center-col--small .g-center-col__item {
		flex-basis: 33.3333333333%;
		max-width: 33.3333333333%;
	}
	.g-center-col--2up .g-center-col__item {
		flex-basis: 33.3333333333%;
		max-width: 33.3333333333%;
	}
	.g-center-col--2up .g-center-col__item + .g-center-col__item {
		margin-left: 40px;
	}
}

/*----------
	grid
----------*/
.g-grid {
	margin: 0 auto;
}
@media (max-width: 767px) {
	.g-grid__item + .g-grid__item {
		margin-top: 40px;
	}
	.g-grid--type2 .g-grid__item + .g-grid__item {
		margin-top: 20px;
	}
	.g-grid--2sp .g-grid__item + .g-grid__item {
		margin-top: 0;
	}
	.g-grid--2sp {
		display: grid;
		gap: 20px;
		grid-template-columns: repeat(2, 1fr);
	}
}
@media (min-width: 768px), print {
	.g-grid {
		display: grid;
		gap: 40px;
	}
	.g-grid--type2 {
		gap: 20px;
	}
	.g-grid--type3 {
		gap: 60px 40px;
	}
	.g-grid--2up {
		grid-template-columns: repeat(2, 1fr);
	}
	.g-grid--3up {
		grid-template-columns: repeat(3, 1fr);
	}
	.g-grid--4up {
		grid-template-columns: repeat(4, 1fr);
	}
	.g-grid--5up {
		grid-template-columns: repeat(5, 1fr);
	}
}
@media (max-width: 1024px) and (min-width: 768px), print {
	.g-grid--3up, .g-grid--4up, .g-grid--5up {
		grid-template-columns: repeat(2, 1fr);
	}
}

/*----------
	c-contactbox
----------*/
.c-contactbox {
	border: 8px solid var(--color-bg);
	padding: 32px 24px;
}
.c-contactbox__head {
	display: flex;
	align-items: center;
}
.c-contactbox__icon::before {
	font-size: 3rem;
}
.c-contactbox__title {
	display: inline-block;
	font-size: 2rem;
	font-weight: bold;
	position: relative;
	margin-left: 12px;
}
.c-contactbox__text {
	margin-top: 13px;
	font-size: 1.4rem;
}
.c-contactbox__btn {
	margin-top: 20px;
}
@media (min-width: 768px), print {
	.c-contactbox {
		padding: 22px 84px;
		display: flex;
		align-items: center;
		justify-content: space-between;
	}
	.c-contactbox__body {
		width: 400px;
		max-width: 50%;
		padding-right: 20px;
	}
	.c-contactbox__head {
		position: relative;
	}
	.c-contactbox__icon {
		position: absolute;
		top: 6px;
		left: -54px;
	}
	.c-contactbox__title {
		margin-left: 0;
	}
	.c-contactbox__text {
		margin-top: 8px;
	}
	.c-contactbox__btn {
		margin-top: 8px;
		width: 454px;
		max-width: 50%;
	}
}

/*----------
	c-contactbox-v
----------*/
.c-contactbox-v {
	border: 8px solid var(--color-bg);
	padding: 32px 24px;
}
.c-contactbox-v__head {
	display: flex;
}
.c-contactbox-v__title {
	display: inline-block;
	font-size: 2rem;
	font-weight: bold;
	position: relative;
	margin-left: 12px;
}
.c-contactbox-v__icon {
	position: relative;
	top: 3px;
}
.c-contactbox-v__icon::before {
	font-size: 3rem;
}
.c-contactbox-v__text {
	margin-top: 13px;
	font-size: 1.4rem;
}
.c-contactbox-v__btn {
	margin-top: 20px;
}
@media (min-width: 768px), print {
	.c-contactbox-v {
		padding: 22px 82px;
	}
	.c-contactbox-v__head {
		position: relative;
	}
	.c-contactbox-v__icon {
		position: absolute;
		top: 2px;
		left: -52px;
	}
	.c-contactbox-v__title {
		margin-left: 0;
	}
	.c-contactbox-v__body {
		margin-top: 13px;
	}
	.c-contactbox-v__btn {
		margin-top: 30px;
	}
}

/*----------
	link
----------*/
.c-link-l {
	position: relative;
	border-bottom: var(--color-border) solid 2px;
}
.c-link-l::before {
	content: "";
	width: 50px;
	height: 2px;
	background-color: #6C541E;
	position: absolute;
	left: 0;
	bottom: -2px;
}
.c-link-l > a {
	display: block;
	color: inherit;
	font-size: 1.5rem;
	font-weight: 500;
	line-height: var(--line-height-m);
}
.c-link-l > a > span {
	display: block;
	padding: 0 30px 20px 0;
}
.c-link-l > button {
	display: none;
	position: absolute;
	top: 0;
	right: 0;
	width: 32px;
	height: 100%;
	text-align: right;
	cursor: pointer;
}
.c-link-l__icon {
	width: 18px;
	height: 18px;
	background-color: var(--color-txt);
	position: absolute;
	right: 0;
	top: 0;
	bottom: 20px;
	margin: auto;
}
@media (max-width: 1024px) {
	.c-link-l {
		/* 開閉ボタンありの場合 */
	}
	.is-hierarichical .c-link-l > a > span {
		padding-right: 80px;
	}
	.is-hierarichical .c-link-l > button {
		display: block;
		color: var(--color-txt);
	}
	.is-hierarichical .c-link-l > button::before {
		content: "";
		display: block;
		width: 18px;
		height: 18px;
		position: absolute;
		top: 0;
		bottom: 20px;
		right: 0;
		margin: auto;
		background: url("/assets/images/icons/plus.svg") no-repeat center/contain;
	}
	.is-hierarichical .c-link-l > button::after {
		content: "";
		width: 1px;
		height: calc(100% - 20px);
		background-color: var(--color-border);
		position: absolute;
		left: 0;
		top: 0;
	}
	.is-hierarichical .c-link-l__icon {
		right: 49px;
	}
	.is-open .c-link-l > button::before {
		background-image: url("/assets/images/icons/minus.svg");
	}
}
@media (min-width: 1025px), print {
	.c-link-l > button {
		display: none;
	}
	.c-link-l > a {
		color: inherit;
		transition: color 0.2s, text-decoration 0.2s;
		text-decoration: underline;
		text-decoration-color: transparent;
		text-underline-offset: 3px;
		display: block;
		font-size: 1.8rem;
	}
	.c-link-l > a:hover, a:hover .c-link-l > a {
		text-decoration-color: inherit;
	}
	.c-link-l > a:hover {
		color: var(--color-txt-hover);
	}
	.c-link-l__icon {
		transition: background-color 0.2s;
	}
	a:hover .c-link-l__icon {
		background-color: var(--color-txt-hover);
	}
}

.c-link-m {
	font-size: 1.4rem;
	font-weight: 500;
	margin-top: 20px;
	line-height: var(--line-height-m);
}
.c-link-m > a {
	color: inherit;
	padding-bottom: 15px;
	position: relative;
	border-bottom: var(--color-border) solid 1px;
	display: block;
}
.c-link-m > a > span {
	display: block;
	padding-right: 30px;
}
.c-link-m__icon {
	width: 1em;
	height: 1em;
	background-color: var(--color-txt);
	position: absolute;
	right: 0;
	top: 0;
	bottom: 15px;
	margin: auto;
}
@media (min-width: 1025px), print {
	.c-link-m {
		font-size: 1.6rem;
	}
	.c-link-m > a {
		color: inherit;
		transition: color 0.2s, text-decoration 0.2s;
		text-decoration: underline;
		text-decoration-color: transparent;
		text-underline-offset: 3px;
	}
	.c-link-m > a:hover, a:hover .c-link-m > a {
		text-decoration-color: inherit;
	}
	.c-link-m > a:hover {
		color: var(--color-txt-hover);
	}
	.c-link-m__icon {
		transition: background-color 0.2s;
	}
	a:hover .c-link-m__icon {
		background-color: var(--color-txt-hover);
	}
}

.c-link-s {
	font-size: 1.4rem;
	font-weight: 400;
	line-height: var(--line-height-m);
}
.c-link-s__icon {
	width: 15px;
	height: 15px;
	background-color: var(--color-txt);
	display: inline-block;
	margin-left: 5px;
	vertical-align: -2px;
}
@media (min-width: 1025px), print {
	.c-link-s {
		font-size: 1.6rem;
	}
	.c-link-s__icon {
		width: 1em;
		height: 1em;
		transition: background-color 0.2s;
	}
	a:hover .c-link-s__icon {
		background-color: var(--color-txt-hover);
	}
	.c-link-s > a {
		color: inherit;
		transition: color 0.2s, text-decoration 0.2s;
		text-decoration: underline;
		text-decoration-color: transparent;
		text-underline-offset: 3px;
	}
	.c-link-s > a:hover, a:hover .c-link-s > a {
		text-decoration-color: inherit;
	}
	.c-link-s > a:hover {
		color: var(--color-txt-hover);
	}
}

/*----------
	history
----------*/
.c-history__item {
	position: relative;
}
.c-history__item::before {
	content: "";
	width: 1px;
	height: calc(100% - 70px);
	position: absolute;
	left: 19px;
	bottom: 0;
	background-color: var(--color-border);
}
.c-history__year {
	font-size: 4rem;
	font-weight: 500;
	color: var(--color-txt-hover);
	line-height: var(--line-height-m);
}
.c-history__year--s {
	font-size: 2.4rem;
	margin-left: 3px;
}
.c-history__content {
	padding: 10px 0 20px 40px;
	margin-top: 10px;
}
.c-history__content-item + .c-history__content-item {
	margin-top: 4px;
}
.c-history__month {
	font-size: 2.4rem;
	font-weight: 700;
	margin-bottom: 4px;
	line-height: var(--line-height-m);
}
.c-history__month--s {
	font-size: 1.4rem;
	margin-left: 2px;
}
@media (min-width: 1025px), print {
	.c-history__item::before {
		height: calc(100% - 81px);
		left: 63px;
	}
	.c-history__year {
		font-size: 5.6rem;
	}
	.c-history__year--s {
		font-size: 3.2rem;
		margin-left: 5px;
	}
	.c-history__content {
		padding: 20px 0 30px 133px;
		margin-top: 0;
	}
	.c-history__content-item {
		display: flex;
		align-items: flex-start;
		gap: 20px;
	}
	.c-history__content .c-text {
		margin-top: 10px;
	}
	.c-history__month {
		font-size: 2.8rem;
		margin-bottom: 0;
		min-width: 54px;
	}
	.c-history__month--s {
		font-size: 1.8rem;
	}
}

/*----------
	link
----------*/
.c-pdf {
	display: flex;
	flex-direction: column;
	gap: 20px;
}
.c-pdf__image {
	max-width: 158px;
	min-width: 158px;
}
@media (min-width: 1025px), print {
	.c-pdf {
		flex-direction: row;
		align-items: center;
	}
	.c-pdf__image a {
		transition: opacity 0.2s;
	}
	.c-pdf__image a:hover, a:hover .c-pdf__image a {
		opacity: 0.7;
	}
}

/*----------
	calendar
----------*/
@media (min-width: 768px), print {
	.c-calendar {
		display: flex;
		gap: 1px;
	}
}
/*# sourceMappingURL=components.css.map */
