
@media (max-width: 1023.98px) {
	.has-sp .band--lower {
		background-size: calc(250 * var(--v)) auto;
	}

	.has-sp .pc--lower {
		--u: var(--v);
		--k: var(--kv);
		width: calc(390 * var(--u));
		min-height: calc(var(--hs) * var(--u));
		padding-bottom: 0;
		background: var(--art-sp) center top / 100% auto no-repeat;
	}


	.has-sp .news-layout {
		display: block;
		margin: 0;
		padding: calc(300.7 * var(--u)) calc(19.5 * var(--u)) calc(62 * var(--u));
	}

	.has-sp .news-layout--single {
		padding-top: calc(98.7 * var(--u));
		padding-bottom: calc(59 * var(--u));
	}

	.has-sp .news-side {
		display: grid;
		grid-template-columns: calc(135 * var(--u)) calc(135.1 * var(--u));
		grid-template-rows: auto auto;
		grid-auto-flow: column;
		column-gap: calc(30 * var(--u));
	}

	.has-sp .side-cats {
		display: none;
	}

	.has-sp .side-title {
		margin: 0;
		font-size: calc(10.6 * var(--u));
		line-height: calc(13 * var(--u));
		letter-spacing: 0.04em;
	}

	.has-sp .side-select {
		margin-top: calc(4.6 * var(--u));
	}

	.has-sp .side-select select {
		height: calc(24.5 * var(--u));
		padding: 0 calc(22 * var(--u)) 0 calc(11 * var(--u));
		box-shadow: inset 0 0 0 1px #808080;
		border-radius: calc(5 * var(--u));
		font-size: calc(8.6 * var(--u));
		letter-spacing: 0;
	}

	.has-sp .side-select::after {
		right: calc(12 * var(--u));
		width: calc(4.5 * var(--u));
		height: calc(4.5 * var(--u));
		border-right-width: calc(1.2 * var(--u));
		border-bottom-width: calc(1.2 * var(--u));
	}

	.has-sp .news-count {
		margin-top: calc(37 * var(--u));
		font-size: calc(9.7 * var(--u));
		line-height: calc(12 * var(--u));
		letter-spacing: 0.1em;
	}

	.has-sp .news-list {
		gap: calc(20 * var(--u));
		margin-top: calc(6 * var(--u));
	}

	.has-sp .news-item a,
	.has-sp .news-article {
		padding: calc(16.9 * var(--u)) calc(19.6 * var(--u)) calc(18 * var(--u)) calc(20 * var(--u));
		box-shadow: inset 0 0 0 1px #333;
		border-radius: calc(16 * var(--u));
	}

	.has-sp .news-meta {
		gap: calc(8.6 * var(--u));
		padding-bottom: calc(5.5 * var(--u));
		background-image: radial-gradient(circle, #333 45%, transparent 52%);
		background-size: calc(4.35 * var(--u)) calc(2.2 * var(--u));
		font-size: calc(9.2 * var(--u));
		line-height: calc(15.7 * var(--u));
		letter-spacing: 0.02em;
	}

	.has-sp .pill-label {
		height: calc(15.7 * var(--u));
		padding: 0 calc(13 * var(--u));
		box-shadow: inset 0 0 0 calc(0.8 * var(--u)) #4d4d4d;
		font-size: calc(8.8 * var(--u));
		line-height: calc(15.7 * var(--u));
		letter-spacing: 0;
	}

	.has-sp .news-item__title {
		margin-top: calc(12.7 * var(--u));
		font-size: calc(9.9 * var(--u));
		line-height: calc(14 * var(--u));
		letter-spacing: 0;
	}

	.has-sp .news-item__body {
		grid-template-columns: calc(191.6 * var(--u)) 1fr;
		column-gap: calc(12 * var(--u));
		margin-top: calc(14.6 * var(--u));
		min-height: calc(128.5 * var(--u));
	}

	.has-sp .news-item__thumb {
		height: calc(128.5 * var(--u));
		border-radius: calc(10 * var(--u));
	}

	.has-sp .news-item__excerpt {
		display: -webkit-box;
		margin-top: calc(-4.6 * var(--u));
		overflow: hidden;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 5;
		align-self: start;
		max-height: calc(18 * 5 * var(--u));
		font-size: calc(9.8 * var(--u));
		line-height: calc(18 * var(--u));
		letter-spacing: 0.02em;
	}

	.has-sp .news-item__more {
		right: 0;
		bottom: calc(1 * var(--u));
		padding-right: calc(10 * var(--u));
		font-size: calc(9.6 * var(--u));
		letter-spacing: 0.1em;
	}

	.has-sp .news-item__more::after {
		width: calc(5 * var(--u));
		height: calc(5 * var(--u));
		border-width: calc(1.5 * var(--u));
	}

	.has-sp .news-empty {
		font-size: calc(10 * var(--u));
	}

	.has-sp .pager {
		gap: calc(20 * var(--u));
		margin-top: calc(23 * var(--u));
		font-size: calc(15 * var(--u));
		font-family: var(--font-en);
	}

	.has-sp .pager .current {
		font-size: calc(22 * var(--u));
	}

	.has-sp .pager .prev,
	.has-sp .pager .next {
		width: calc(16 * var(--u));
		height: calc(16 * var(--u));
	}

	.has-sp .pager .prev::before,
	.has-sp .pager .next::before {
		width: calc(7 * var(--u));
		height: calc(7 * var(--u));
		border-width: calc(1.6 * var(--u));
		border-color: #666;
	}

	.has-sp .news-article {
		margin-top: calc(40 * var(--u));
		padding-bottom: calc(19 * var(--u));
	}

	.has-sp .news-article__title {
		margin-top: calc(23 * var(--u));
		font-size: calc(10.8 * var(--u));
		line-height: calc(14 * var(--u));
		letter-spacing: 0.05em;
	}

	.has-sp .entry {
		margin-top: calc(16 * var(--u));
		font-size: calc(9.8 * var(--u));
		line-height: calc(18 * var(--u));
		letter-spacing: -0.07em;
	}

	.has-sp .entry > * + * {
		margin-top: calc(18 * var(--u));
	}

	.has-sp .entry .has-large-font-size,
	.has-sp .entry h2,
	.has-sp .entry h3 {
		font-size: calc(10.8 * var(--u)) !important;
		line-height: calc(18 * var(--u));
		letter-spacing: 0;
	}

	.has-sp .btn--flow {
		width: calc(143.2 * var(--u));
		height: calc(24.1 * var(--u));
		padding-right: calc(14 * var(--u));
		box-shadow: inset 0 0 0 1px var(--blue);
		font-size: calc(9.8 * var(--u));
		letter-spacing: 0.08em;
	}

	.has-sp .btn--flow::after {
		right: calc(13 * var(--u));
		width: calc(5 * var(--u));
		height: calc(5 * var(--u));
		border-width: calc(1.7 * var(--u));
	}

	.has-sp .news-layout--single .btn--flow {
		margin-top: calc(40 * var(--u));
	}


	.has-sp .contact-form {
		padding: calc(639.6 * var(--u)) calc(19.5 * var(--u)) calc(60 * var(--u));
	}

	.has-sp .steps {
		gap: calc(74.8 * var(--u));
	}

	.has-sp .steps li {
		width: calc(36 * var(--u));
	}

	.has-sp .steps li + li::before {
		top: calc(18 * var(--u));
		width: calc(74.8 * var(--u));
	}

	.has-sp .steps__num {
		width: calc(36 * var(--u));
		height: calc(36 * var(--u));
		font-size: calc(13.5 * var(--u));
	}

	.has-sp .steps__label {
		margin-top: calc(9 * var(--u));
		font-size: calc(10.6 * var(--u));
	}

	.has-sp .form {
		margin-top: calc(37.4 * var(--u));
	}

	.has-sp .form-alert {
		width: auto;
		margin-bottom: calc(24 * var(--u));
		padding: calc(10 * var(--u)) calc(12 * var(--u));
		font-size: calc(10 * var(--u));
	}

	.has-sp .form-row {
		grid-template-columns: auto 1fr;
		grid-template-rows: auto auto;
		column-gap: calc(9 * var(--u));
		row-gap: calc(10.9 * var(--u));
		margin-left: 0;
	}

	.has-sp .form-row + .form-row,
	.has-sp .form-row--name {
		margin-top: calc(19.1 * var(--u)) !important;
	}

	.has-sp .form-row__label {
		margin: 0;
		font-size: calc(10.7 * var(--u));
		line-height: calc(12.4 * var(--u));
		text-align: left;
	}

	.has-sp .form-row--kind .form-row__label {
		margin: 0 0 0 calc(15 * var(--u));
	}

	.has-sp .badge,
	.has-sp .form-row--kind .badge {
		justify-self: start;
		height: calc(12.4 * var(--u));
		margin: 0;
		padding: 0 calc(8.4 * var(--u));
		font-size: calc(8.8 * var(--u));
	}

	.has-sp .form-row__field {
		grid-column: 1 / -1;
		margin: 0;
	}

	.has-sp .form-row input[type="text"],
	.has-sp .form-row input[type="email"],
	.has-sp .form-row input[type="tel"],
	.has-sp .form-row textarea {
		height: calc(43.1 * var(--u));
		padding: 0 calc(12 * var(--u));
		border-radius: calc(6 * var(--u));
		font-size: 16px;
	}

	.has-sp .form-row textarea {
		height: calc(128.9 * var(--u));
		padding-top: calc(10 * var(--u));
		padding-bottom: calc(10 * var(--u));
	}

	.has-sp .form-hint,
	.has-sp .form-error {
		margin-top: calc(4.8 * var(--u));
		font-size: calc(8.5 * var(--u));
	}

	.has-sp .choices {
		grid-template-columns: calc(129.3 * var(--u)) auto;
		row-gap: calc(21 * var(--u));
		margin-top: calc(-1 * var(--u));
	}

	.has-sp .choice {
		gap: calc(12.6 * var(--u));
		font-size: calc(10.8 * var(--u));
	}

	.has-sp .choice__box {
		width: calc(26.1 * var(--u));
		height: calc(26.1 * var(--u));
		border-radius: calc(4 * var(--u));
	}

	.has-sp .choice input:checked + .choice__box::after {
		width: calc(7 * var(--u));
		height: calc(12 * var(--u));
		border-width: 0 calc(2.2 * var(--u)) calc(2.2 * var(--u)) 0;
	}

	.has-sp .form-value {
		min-height: 0;
		padding: calc(4 * var(--u)) 0 0;
		font-size: calc(11 * var(--u));
	}

	.has-sp .form-privacy {
		margin: calc(19.5 * var(--u)) 0 0;
		font-size: calc(9.2 * var(--u));
		text-align: center;
	}

	.has-sp .form-actions {
		flex-direction: column;
		align-items: center;
		gap: calc(14 * var(--u));
		margin-top: calc(37.3 * var(--u));
	}

	.has-sp .form-actions .btn--flow {
		width: calc(196.2 * var(--u));
		height: calc(24.1 * var(--u));
	}

	.has-sp .form-done {
		width: auto;
		margin-top: calc(40 * var(--u));
		font-size: calc(10.5 * var(--u));
	}

	.has-sp .form-done__lead {
		margin-bottom: calc(14 * var(--u));
		font-size: calc(15 * var(--u));
	}

	.has-sp .form-done__note {
		margin-top: calc(14 * var(--u));
		font-size: calc(9 * var(--u));
	}

	.has-sp .form-done .btn--flow {
		margin-top: calc(32 * var(--u));
	}


	.has-sp .sp-video-latest__text {
		color: #4d4d4d;
	}

	.has-sp .sp-video-latest__text h3 {
		margin: 0;
		font-size: calc(15 * var(--u));
		font-weight: 700;
		line-height: calc(20 * var(--u));
	}

	.has-sp .sp-video-latest__text p {
		margin: calc(1 * var(--u)) 0 0;
		font-size: calc(11 * var(--u));
		font-weight: 700;
		line-height: calc(16 * var(--u));
	}

	.has-sp .video-lists__body {
		padding: calc(932 * var(--u)) 0 calc(46 * var(--u)) calc(70.5 * var(--u));
	}

	.has-sp .video-lists__title {
		font-size: calc(15.6 * var(--u));
		line-height: calc(19 * var(--u));
		letter-spacing: 0;
	}

	.has-sp .video-lists__title--stay {
		margin-top: calc(35.3 * var(--u));
	}

	.has-sp .video-lists__note {
		margin-top: calc(3 * var(--u));
		font-size: calc(11 * var(--u));
		line-height: calc(14 * var(--u));
	}

	.has-sp .video-grid {
		grid-template-columns: calc(249 * var(--u));
		row-gap: calc(18.6 * var(--u));
		margin-top: calc(8 * var(--u));
	}

	.has-sp .video-lists__note + .video-grid {
		margin-top: calc(10.2 * var(--u));
	}

	.has-sp .video-grid .video-frame {
		height: calc(140.1 * var(--u));
	}

	.has-sp .video-frame {
		border-radius: calc(10 * var(--u));
	}

	.has-sp .video-grid__caption {
		margin-top: calc(12.8 * var(--u));
		font-size: calc(10.9 * var(--u));
		line-height: calc(19.5 * var(--u));
		letter-spacing: 0.04em;
	}


	.has-sp .pv {
		--fs: 9.1;
		--lh: 18;
		width: auto;
		margin: 0;
		padding: calc(220 * var(--u)) calc(19.5 * var(--u)) 0;
	}

	.has-sp .pv-intro {
		font-size: calc(10.1 * var(--u));
		line-height: calc(18.1 * var(--u));
	}

	.has-sp .pv-sec,
	.has-sp .pv-sec:has(.pv-table) + .pv-sec {
		margin-top: calc(18 * var(--u));
	}

	.has-sp .pv-intro + .pv-sec {
		margin-top: calc(32 * var(--u));
	}

	.has-sp .pv-h {
		margin: 0;
		font-size: calc(11.1 * var(--u));
		line-height: calc(18 * var(--u));
	}

	.has-sp .pv-table {
		width: 100%;
		margin-top: calc(20 * var(--u));
		box-shadow: 0 0 0 calc(0.65 * var(--u)) #333;
	}

	.has-sp .pv-table tr {
		height: calc(54 * var(--u));
		border-top-width: calc(0.65 * var(--u));
	}

	.has-sp .pv-table th {
		width: calc(158.8 * var(--u));
		padding-left: calc(10.3 * var(--u));
		font-size: calc(9.1 * var(--u));
		line-height: calc(12 * var(--u));
	}

	.has-sp .pv-table td {
		padding: 0 calc(6 * var(--u)) 0 calc(8 * var(--u));
		font-size: calc(8.3 * var(--u));
		line-height: calc(11.4 * var(--u));
	}

	.has-sp .pv-list li {
		padding-left: calc(9 * var(--u));
	}

	.has-sp .pv-office-sp.is-measure {
		position: absolute;
		left: calc(19.5 * var(--u));
		top: calc(1636.1 * var(--u));
		width: calc(351 * var(--u));
		margin: 0;
	}

	.has-sp .pv-office-sp {
		position: relative;
		height: calc(217 * var(--u));
		margin: calc(40 * var(--u)) calc(19.5 * var(--u)) calc(60 * var(--u));
		box-shadow: inset 0 0 0 1px var(--blue);
		border-radius: calc(4 * var(--u));
	}
}

@media (max-width: 1023.98px) {
	.has-sp .side-title {
		font-size: max(14px, calc(10.6 * var(--u)));
		line-height: 1.5;
	}

	.has-sp .side-select select {
		height: max(44px, calc(24.5 * var(--u)));
		font-size: 16px;
	}

	.has-sp .news-count {
		font-size: max(13px, calc(9.7 * var(--u)));
		line-height: 1.5;
	}

	.has-sp .news-meta {
		font-size: max(13px, calc(9.2 * var(--u)));
		line-height: 1.6;
	}

	.has-sp .pill-label {
		height: auto;
		font-size: max(12.5px, calc(8.8 * var(--u)));
		line-height: 1.7;
	}

	.has-sp .news-item__title,
	.has-sp .news-article__title {
		font-size: max(16px, calc(9.9 * var(--u)));
		line-height: 1.6;
	}

	.has-sp .news-item__body {
		grid-template-columns: 1fr;
		row-gap: 10px;
		min-height: 0;
	}

	.has-sp .news-item__thumb {
		height: auto;
		aspect-ratio: 16 / 9;
	}

	.has-sp .news-item__excerpt {
		margin-top: 0;
		max-height: none;
		-webkit-line-clamp: 3;
		font-size: max(14.5px, calc(9.8 * var(--u)));
		line-height: 1.75;
	}

	.has-sp .news-item__more {
		position: static;
		display: block;
		margin-top: 8px;
		font-size: max(14px, calc(9.6 * var(--u)));
		text-align: right;
	}

	.has-sp .news-empty {
		font-size: 15px;
	}

	.has-sp .entry {
		font-size: max(15.5px, calc(9.8 * var(--u)));
		line-height: 1.9;
		letter-spacing: 0.02em;
	}

	.has-sp .entry > * + * {
		margin-top: 1.1em;
	}

	.has-sp .entry .has-large-font-size,
	.has-sp .entry h2,
	.has-sp .entry h3 {
		font-size: max(18px, calc(10.8 * var(--u))) !important;
		line-height: 1.6;
	}

	.has-sp .btn--flow,
	.has-sp .form-actions .btn--flow {
		width: min(100%, 320px);
		height: auto;
		min-height: 52px;
		font-size: max(15.5px, calc(9.8 * var(--u)));
		letter-spacing: 0.04em;
	}

	.has-sp .btn--flow::after {
		right: 20px;
		width: 8px;
		height: 8px;
		border-width: 2px;
	}

	.has-sp .steps__label {
		font-size: max(13px, calc(10.6 * var(--u)));
	}

	.has-sp .form-alert {
		font-size: 14px;
	}

	.has-sp .form-row__label {
		font-size: max(15px, calc(10.7 * var(--u)));
		line-height: 1.5;
	}

	.has-sp .badge,
	.has-sp .form-row--kind .badge {
		height: auto;
		font-size: max(12px, calc(8.8 * var(--u)));
		line-height: 1.6;
	}

	.has-sp .form-row input[type="text"],
	.has-sp .form-row input[type="email"],
	.has-sp .form-row input[type="tel"] {
		height: max(48px, calc(43.1 * var(--u)));
	}

	.has-sp .form-hint,
	.has-sp .form-error {
		font-size: max(13px, calc(8.5 * var(--u)));
	}

	.has-sp .choices {
		grid-template-columns: 1fr;
		row-gap: 14px;
	}

	.has-sp .choice {
		font-size: max(15px, calc(10.8 * var(--u)));
	}

	.has-sp .form-value {
		font-size: max(15px, calc(11 * var(--u)));
	}

	.has-sp .form-privacy {
		font-size: max(13.5px, calc(9.2 * var(--u)));
	}

	.has-sp .form-done {
		font-size: max(15px, calc(10.5 * var(--u)));
	}

	.has-sp .form-done__note {
		font-size: max(13px, calc(9 * var(--u)));
	}

	.has-sp .sp-video-latest__text p,
	.has-sp .video-lists__note {
		font-size: max(13.5px, calc(11 * var(--u)));
		line-height: 1.6;
	}

	.has-sp .video-grid__caption {
		font-size: max(14px, calc(10.9 * var(--u)));
		line-height: 1.6;
	}

	.has-sp .pv-intro,
	.has-sp .pv-sec {
		font-size: max(14.5px, calc(10.1 * var(--u)));
		line-height: 1.85;
	}

	.has-sp .pv-h {
		font-size: max(16px, calc(11.1 * var(--u)));
		line-height: 1.6;
	}

	.has-sp .pv-table tr {
		height: auto;
	}

	.has-sp .pv-table th,
	.has-sp .pv-table td {
		padding-top: 10px;
		padding-bottom: 10px;
		font-size: max(13.5px, calc(9.1 * var(--u)));
		line-height: 1.6;
	}

	.has-sp .pv-table th {
		width: 38%;
	}
}

.contact-sp {
	display: none;
}

@media (max-width: 1023.98px) {
	.has-sp .contact-form {
		padding-top: 36px;
	}

	.contact-sp {
		display: block;
		position: relative;
		margin: calc(255 * var(--v)) 20px 0;
		padding: 20px 18px;
		border: 1.5px solid var(--blue);
		border-radius: 16px;
		background: #fff;
		color: #333;
		font-size: 15px;
		line-height: 1.75;
	}

	.contact-sp p,
	.contact-sp ul,
	.contact-sp h2 {
		margin: 0;
	}

	.contact-sp__label {
		display: inline-block;
		padding: 2px 14px;
		border-radius: 999px;
		background: #333;
		color: #fff;
		font-size: 13px;
		font-weight: 700;
	}

	.contact-sp__office {
		margin-top: 8px !important;
		color: var(--blue);
		font-size: 17px;
		font-weight: 700;
		line-height: 1.5;
	}

	.contact-sp__tel a {
		display: flex;
		gap: 8px;
		align-items: center;
		margin-top: 8px;
		color: var(--blue);
		font-family: var(--font-en);
		font-size: 30px;
		font-weight: 800;
		line-height: 1.2;
		text-decoration: none;
	}

	.contact-sp__tel img {
		width: 40px;
		height: auto;
	}

	.contact-sp__sub {
		margin-top: 6px !important;
		font-weight: 700;
	}

	.contact-sp__sub a {
		color: inherit;
	}

	.contact-sp__note {
		font-size: 13px;
		color: #555;
	}

	.contact-sp__hours {
		margin-top: 10px !important;
		color: var(--blue);
		font-weight: 700;
	}

	.contact-sp__text {
		margin: 18px -18px -20px;
		padding: 18px;
		border-top: 1px dashed #bbb;
	}

	.contact-sp__text p + p,
	.contact-sp__text ul {
		margin-top: 10px !important;
	}

	.contact-sp__text ul {
		padding: 0;
		list-style: none;
		font-size: 13.5px;
		line-height: 1.7;
		color: #555;
	}

	.contact-sp__text li + li {
		margin-top: 4px;
	}

	.contact-sp__text h2 {
		margin-top: 16px !important;
		color: var(--blue);
		font-size: 16px;
		font-weight: 700;
	}
}

@media (max-width: 1023.98px) {
	.has-sp .pc--lower {
		display: flow-root;
	}

	.has-sp .news-side {
		grid-template-columns: 1fr 1fr;
		column-gap: 12px;
	}

	.has-sp .side-select select {
		width: 100%;
		font-size: 15px;
	}

	.has-sp .news-item__more {
		position: relative;
		padding-right: 16px;
	}

	.has-sp .news-item__more::after {
		top: 50%;
		right: 2px;
		bottom: auto;
		width: 7px;
		height: 7px;
		border-width: 2px;
		transform: translateY(-50%) rotate(45deg);
	}
}

@media (max-width: 1023.98px) {
	.has-sp .video-lists__body {
		padding-left: 20px;
		padding-right: 20px;
	}

	.has-sp .video-grid {
		grid-template-columns: 1fr;
	}

	.has-sp .video-grid .video-frame {
		height: auto;
		aspect-ratio: 16 / 9;
	}

	.has-sp .video-lists__title {
		font-size: max(18px, calc(15.6 * var(--u)));
		line-height: 1.5;
	}
}
