@charset "UTF-8";


html.scroll {
	scroll-behavior: smooth;
	scroll-padding-top: 6.5rem;
}

@media screen and (min-width: 1440px) {
	html.scroll {
		scroll-padding-top: 65px;
	}
}

@media screen and (max-width: 768px) {
	html.scroll {
		scroll-padding-top: 9rem;
	}
}

table {
	text-indent: 0;
	border-color: inherit;
	border-collapse: collapse;
}

section {
	margin-bottom: 0;
	margin-top: 0;
}

p {
	line-height: 1.5;
	letter-spacing:normal;
}

.spec_container {
	width: 115rem;
	margin: auto;
	line-height: 1.5;
}

@media screen and (max-width: 768px) {
	.spec_container {
		width: 32.4rem;
	}
}

@media screen and (min-width: 1440px) {
	.spec_container {
		width: 1150px;
	}
}

.py-10 {
	padding-top: 2.5rem;
	padding-bottom: 2.5rem;
}

.bg-white {
	--tw-bg-opacity: 1;
	background-color: rgb(255 255 255 / var(--tw-bg-opacity));
}

.mb-\[4rem\] {
	margin-bottom: 4rem;
}

.TemplateSpec_wrapper {
	word-break: break-word;
}

.TemplateSpec_title {
	padding: 8rem 0;
	font-size: 4.2rem;
	text-align: center;
	letter-spacing: .084rem;
}

@media screen and (max-width: 768px) {
	.TemplateSpec_title {
		padding: 4rem 0;
		font-size: 2.8rem;
		letter-spacing: .056rem;
	}
}

@media screen and (min-width: 1440px) {
	.TemplateSpec_title {
		padding: 80px 0;
		font-size: 42px;
	}
}

.TemplateSpec_specSeat {
	position: relative;
	display: grid;
}

@media screen and (max-width: 768px) {
	.TemplateSpec_specSeat {
		grid-template-columns: 100%;
	}
}

.TemplateSpec_specSeat tr {
	display: grid;
	grid-template-columns: 30rem 1fr;
	padding: 4rem 0;
	border-bottom: 1px solid #f5f5f5;
}

.TemplateSpec_specSeat tr:first-of-type {
	border-top: 1px solid #f5f5f5;
}

@media screen and (max-width: 768px) {
	.TemplateSpec_specSeat tr {
		grid-template-columns: 100%;
		padding: 2.6rem 0;
	}
}

@media screen and (min-width: 1440px) {
	.TemplateSpec_specSeat tr {
		grid-template-columns: 300px 1fr;
		padding: 40px 0;
	}
}

.TemplateSpec_specSeat th {
	display: block;
	font-size: 2rem;
	font-weight: 400;
	line-height: 1.5;
	text-align: left;
	letter-spacing: .04rem;
}

@media screen and (max-width: 768px) {
	.TemplateSpec_specSeat th {
		margin-bottom: 1.2rem;
		font-size: 1.5rem;
		letter-spacing: .032rem;
	}
}

@media screen and (min-width: 1440px) {
	.TemplateSpec_specSeat th {
		font-size: 20px;
	}
}

.TemplateSpec_specSeat td {
	display: block;
	font-size: 1.4rem;
	font-style: normal;
	font-weight: 400;
	line-height: 1.5;
	letter-spacing: .028rem;
	padding: 1px;
	vertical-align: middle;
}

@media screen and (max-width: 768px) {
	.TemplateSpec_specSeat td {
		padding: 0 1.8rem;
	}
}

@media screen and (min-width: 1440px) {
	.TemplateSpec_specSeat td {
		font-size: 14px;
	}
}

.TemplateSpec_specSeat ul:not([class]) li {
	font-size: 1.5rem;
}

.TemplateSpec_specSeat ul:not([class]) li:not(:first-child) {
	margin-top: 1.6rem;
}

@media screen and (min-width: 1440px) {
	.TemplateSpec_specSeat ul:not([class]) li {
		font-size: 15px;
	}
}

@media screen and (min-width: 1440px) {
	.TemplateSpec_specSeat ul:not([class]) li:not(:first-child) {
		margin-top: 16px;
	}
}

.TemplateSpec_specSeat figure {
	text-align: center;
}

.TemplateSpec_specSeat figcaption {
	display: block;
	margin-top: 1rem;
	font-size: 1.4rem;
	line-height: 1.5;
	letter-spacing: .07rem;
}

@media screen and (min-width: 1440px) {
	.TemplateSpec_specSeat figcaption {
		font-size: 14px;
	}
}

.TemplateSpec_listColor {
	display: flex;
	gap: 0 4rem;
}

@media screen and (max-width: 768px) {
	.TemplateSpec_listColor {
		display: grid;
		grid-template-columns: 33% 33% 33%;
		gap: 2rem 0;
	}

	.TemplateSpec_listColor img {
		padding: 0 0.5rem;
	}
}

@media screen and (min-width: 1440px) {
	.TemplateSpec_listColor {
		gap: 0 40px;
	}
}

.TemplateSpec_listData {
	display: grid;
	grid-template-columns: 25.5rem 1fr;
	gap: 1.6rem 0;
}

.TemplateSpec_listData dt {
	font-weight: 500;
}

@media screen and (max-width: 768px) {
	.TemplateSpec_listData {
		grid-template-columns: 100%;
		gap: 0;
	}
	.TemplateSpec_listData.clm2 {
		grid-template-columns: 50% 50%;
    gap: 1.6rem;
	}

	.TemplateSpec_listData dt {
		margin-bottom: .5rem;
	}

	.TemplateSpec_listData dt:not(:first-of-type) {
		margin-top: 1.4rem;
	}
}

@media screen and (min-width: 1440px) {
	.TemplateSpec_listData {
		grid-template-columns: 255px 1fr;
		gap: 16px 0;
	}
}

.TemplateSpec_innerTable {
	margin-top: -1.8rem;
	border-spacing: 0 1.8rem;
	border-collapse: separate;
}

@media screen and (max-width: 768px) {
	.TemplateSpec_innerTable {
		display: block;
		margin-top: 0;
		border-spacing: 0;
	}

	.TemplateSpec_innerTable th[colspan="2"]+td {
		padding-left: 0;
	}
}

@media screen and (min-width: 1440px) {
	.TemplateSpec_innerTable {
		margin-top: -18px;
	}
}

.TemplateSpec_innerTable col:first-child {
	width: 5rem;
}

.TemplateSpec_innerTable col:nth-child(2) {
	width: 20.5rem;
}

.TemplateSpec_innerTable col:nth-child(3) {
	width: auto;
}

@media screen and (max-width: 768px) {
	.TemplateSpec_innerTable col:first-child {
		width: 100%;
	}

	.TemplateSpec_innerTable col:nth-child(2) {
		width: 100%;
	}

	.TemplateSpec_innerTable col:nth-child(3) {
		width: 100%;
	}
}

@media screen and (min-width: 1440px) {
	.TemplateSpec_innerTable col:first-child {
		width: 50px;
	}

	.TemplateSpec_innerTable col:nth-child(2) {
		width: 205px;
	}
}

.TemplateSpec_innerTable td {
	display: table-cell;
}

@media screen and (max-width: 768px) {
	.TemplateSpec_innerTable td {
		display: block;
		padding-right: 0;
		margin-bottom: .4rem;
	}
}

.TemplateSpec_innerTable th {
	display: table-cell;
	font-size: 1.5rem;
	font-weight: 500;
}

.TemplateSpec_innerTable th:nth-child(2) {
	font-size: 1.4rem;
	font-weight: 400;
}

.TemplateSpec_innerTable th.TemplateSpec_thTop {
	font-size: 1.4rem;
	font-weight: 400;
}

@media screen and (max-width: 768px) {
	.TemplateSpec_innerTable th {
		display: block;
		margin-bottom: .4rem;
	}
}

@media screen and (min-width: 1440px) {
	.TemplateSpec_innerTable th {
		font-size: 15px;
	}

	.TemplateSpec_innerTable th:nth-child(2) {
		font-size: 14px;
	}
}

.TemplateSpec_innerTable tr {
	display: table-row;
	margin-top: 1.8rem;
	border: 0 !important;
}

@media screen and (max-width: 768px) {
	.TemplateSpec_innerTable tr {
		display: block;
		padding: 0;
	}
}

@media screen and (min-width: 1440px) {
	.TemplateSpec_innerTable tr {
		margin-top: 18px;
	}
}

.TemplateSpec_innerTable tr:first-of-type {
	margin-top: 0;
}

.TemplateSpec_innerTable tr:has(th:empty) {
	margin-top: 0;
}

.TemplateSpec_listLogo {
	display: flex;
	gap: 0 2rem;
	align-items: center;
	justify-content: flex-start;
	padding: .5rem;
	margin: 3.8rem auto;
}

.TemplateSpec_listLogo li {
	width: auto;
	height: 8rem;
}

.TemplateSpec_listLogo li img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

@media screen and (max-width: 768px) {
	.TemplateSpec_listLogo {
		gap: 0 1rem;
		margin: 3rem auto;
	}

	.TemplateSpec_listLogo li {
		height: 5.4rem;
	}
}

@media screen and (min-width: 1440px) {
	.TemplateSpec_listLogo {
		gap: 0 20px;
		margin: 38px auto;
	}

	.TemplateSpec_listLogo li {
		height: 80px;
	}
}

.TemplateSpec_note {
	font-size: 1.3rem;
	line-height: 1.8;
	letter-spacing: .026rem;
	counter-reset: item;
}

.TemplateSpec_note li:not(:first-child) {
	margin-top: .5rem;
}

.TemplateSpec_note li:before {
	display: inline-block;
	margin-right: .5em;
	content: "*" counter(item);
	counter-increment: item;
}

@media screen and (max-width: 768px) {
	.TemplateSpec_note li:not(:first-child) {
		margin-top: .8rem;
	}
}

@media screen and (min-width: 1440px) {
	.TemplateSpec_note {
		font-size: 13px;
	}

	.TemplateSpec_note li:not(:first-child) {
		margin-top: 5px;
	}
}

.TemplateSpec_importantNotice {
	margin-top: 8.5rem;
}

@media screen and (max-width: 768px) {
	.TemplateSpec_importantNotice {
		margin-top: 3rem;
	}
}

@media screen and (min-width: 1440px) {
	.TemplateSpec_importantNotice {
		margin-top: 85px;
	}
}

.TemplateSpec_importantNotice h1 {
	padding: 3rem 0;
	margin-bottom: 5rem;
	font-size: 3.2rem;
	font-weight: 400;
	letter-spacing: .064rem;
	border-bottom: 1px solid #000;
}

@media screen and (max-width: 768px) {
	.TemplateSpec_importantNotice h1 {
		padding: 2rem 0;
		margin-bottom: 3.4rem;
		font-size: 2rem;
		letter-spacing: .04rem;
	}
}

@media screen and (min-width: 1440px) {
	.TemplateSpec_importantNotice h1 {
		padding: 30px 0;
		margin-bottom: 50px;
		font-size: 32px;
	}
}

.TemplateSpec_importantNotice h2 {
	margin-bottom: 2rem;
	font-size: 2.2rem;
	font-weight: 500;
	line-height: 1.5;
	letter-spacing: .044rem;
	text-align: left;
}

.TemplateSpec_importantNotice h2:not(:first-child) {
	margin-top: 4rem;
}

@media screen and (max-width: 768px) {
	.TemplateSpec_importantNotice h2 {
		font-size: 1.6rem;
		letter-spacing: .032rem;
	}

	.TemplateSpec_importantNotice h2:not(:first-child) {
		margin-top: 4rem;
	}

	.TemplateSpec_importantNotice h2:not(:first-child) {
		margin-top: 2.4rem;
	}
}

@media screen and (min-width: 1440px) {
	.TemplateSpec_importantNotice h2 {
		margin-bottom: 20px;
		font-size: 22px;
}
	.TemplateSpec_importantNotice h2:not(:first-child) {
			margin-top: 40px;
	}
}

.TemplateSpec_importantNotice ul {
	font-size: 1.3rem;
	font-style: normal;
	font-weight: 400;
	line-height: 1.6;
	letter-spacing: .026rem;
}

.TemplateSpec_importantNotice ul li {
	margin-top: .5rem;
}

.TemplateSpec_importantNotice ul li:before {
	display: inline-block;
	content: "・";
}

@media screen and (max-width: 768px) {
	.TemplateSpec_importantNotice ul li {
		margin-top: .8rem;
	}
}

@media screen and (min-width: 1440px) {
	.TemplateSpec_importantNotice ul {
			font-size: 13px;
	}
	.TemplateSpec_importantNotice ul li {
		margin-top: 5px;
}
}

.TemplateSpec_importantNotice p {
	font-size: 1.3rem;
	font-weight: 400;
	line-height: 1.6;
	letter-spacing: .026rem;
}

@media screen and (min-width: 1440px) {
	.TemplateSpec_importantNotice p {
			font-size: 13px;
	}
}

.TemplateSpec_felicaIcon {
	display: inline-block;
	width: auto;
	height: 1rem;
	padding-right: .3rem;
}

.TemplateSpec_felicaIcon img {
	width: auto;
	height: 100%;
}

@media screen and (min-width: 1440px) {
	.TemplateSpec_felicaIcon {
			height: 10px;
			padding-right: 3px;
	}
}