@media only screen and (max-width: 780px) {
	/* ========= 共通パーツ ========= */
	.ttl .en {
		font-size: 15px;
		margin-bottom: 8px;
	}
	.ttl .ja {
		font-size: 26px;
	}
	.btn a {
		min-width: 0;
		width: 100%;
		padding: 14px 20px;
		font-size: 14px;
	}

	/* ========= intro ========= */
	.intro {
		padding: 70px 0;
	}
	.intro::after {
		width: 220px;
		height: 210px;
		right: -30px;
	}
	.intro h2 {
		font-size: 19px;
		letter-spacing: 2px;
		margin-bottom: 24px;
	}
	.intro__text {
		font-size: 12px;
	}

	/* ========= news ========= */
	.tp_news {
		padding: 60px 0;
	}
	.tp_news .news__content {
		flex-direction: column;
		gap: 30px;
	}
	.tp_news .news__description {
		width: 100%;
	}
	.tp_news .news__archive--date {
		width: 65px;
	}
	.tp_news .news__archive--ttl {
		font-size: 12px;
	}
	.news__btn.btn.pc_only {
		display: none;
	}
	.tp_news .news__archive--date--y {
		font-size: 10px;
	}
	.tp_news .news__archive--date--md {
		font-size: 14px;
	}
	.tp_news .news__btn {
		margin-top: 0px;
		padding: 10px 0 0 0;
	}

	/* ========= guide ========= */
	.guide {
		padding: 60px 0;
	}
	.guide__ttl {
		margin-bottom: 30px;
	}
	.guide__innner--text h3 {
		margin-top: 36px;
	}
	.price__head--text {
		padding-top: 0;
		padding-left: 0;
	}
	.price__head--lead {
		font-size: 16px;
	}
	.price__head--sub {
		font-size: 12px;
	}

	/* ========= price ========= */
	.price {
		padding: 60px 0;
	}
	.price__head {
		flex-direction: column;
		gap: 20px;
		margin-bottom: 40px;
	}
	.price__head--text {
		padding-top: 0;
	}
	.price__map {
		margin-bottom: 40px;
	}
	.price__block {
		margin-top: 40px;
	}
	.price__block--ttl {
		font-size: 18px;
		margin-bottom: 16px;
	}
	.price__cards {
		flex-direction: column;
		gap: 16px;
	}
	.price__card {
		padding: 26px 24px 24px;
	}
	.price__card--ttl {
		font-size: 15px;
	}
	.price__card--note {
		font-size: 12px;
	}
	.price__free {
		font-size: 12px;
	}
	.price__card--time {
		font-size: 18px;
	}
	.price__card--num {
		font-size: 36px;
	}
	.price__member {
		flex-direction: column;
		padding: 30px 24px;
		gap: 24px;
	}
	.price__member--left {
		width: 100%;
	}
	.price__member--right {
		padding-left: 0;
		border-left: none;
	}
	.price__member--label {
		font-size: 14px;
	}

	/* ========= information ========= */
	.information {
		padding: 60px 0;
	}
	.information__head {
		margin-bottom: 30px;
	}
	.information__content {
		flex-direction: column;
		gap: 30px;
	}
	.information__table--label {
		width: 100px;
		font-size: 12px;
	}
	.information__table--value {
		font-size: 12px;
	}
	.information__map::before {
		padding-top: 75%;
	}

	/* ========= instagram ========= */
	.instagram {
		padding: 60px 0;
	}
	.instagram__content {
		flex-direction: column;
		gap: 24px;
	}
	.instagram__description {
		width: 100%;
	}
	.instagram__description--head {
		justify-content: center;
		margin-bottom: 0;
	}
	.instagram__btn.btn.pc_only {
		display: none;
	}
	.instagram__btn.sp_only {
		margin-top: 30px;
	}

	/* ========= contact ========= */
	.contact {
		padding: 60px 0;
	}
	.contact__cards {
		flex-direction: column;
		gap: 16px;
	}
	.contact__card {
		padding: 30px 24px;
	}

	/* ========= low_hd（下層ヘッダー簡易版） ========= */
	.low_hd--simple .low_hd__inner {
		height: 160px;
	}
	.low_hd__inner--ttl {
		font-size: 24px;
	}

	/* ========= archive-news ========= */
	.page_content.news {
		padding: 50px 20px 20px;
	}
	.page_content.news .news__archive--content {
		gap: 16px;
		padding: 16px 0;
	}
	.page_content.news .news__archive--date {
		width: 60px;
	}
	.page_content.news .news__archive--ttl {
		font-size: 12px;
	}
	.page_content.news .news__archive--date--y {
		font-size: 10px;
	}
	.page_content.news .news__archive--date--md {
		font-size: 14px;
	}

	/* ========= single-news ========= */
	.post_content.news_detail {
		padding: 50px 20px 60px;
	}
	.news_detail__meta {
		margin-bottom: 0px;
	}
	.news_detail__ttl h1 {
		font-size: 18px;
	}
	.news_detail__btn {
		margin-top: 0px;
	}

	/* ========= page-tokutei ========= */
	.page_content.tokutei {
		padding: 50px 0 60px;
	}
	.tokutei__table--row {
		flex-direction: column;
		gap: 8px;
		padding: 20px 0;
	}
	.tokutei__table--ttl {
		width: 100%;
	}

	/* ========= footer ========= */
	.footer {
		padding-bottom: 3.2em;
	}
	.footer__main {
		padding: 50px 0 30px;
	}
	.footer__nav--list {
		gap: 10px 16px;
	}
	.footer__copyright {
		padding: 13px 0;
		font-size: 10px;
	}

	/* ========= フローティング予約・お問い合わせ ========= */
	.float_contact {
		top: auto;
		bottom: 0;
		left: 0;
		right: 0;
		width: 100%;
		flex-direction: row;
	}
	.float_contact__item {
		flex: 1;
		width: auto;
		flex-direction: row;
		padding: 14px 0;
		border-radius: 0;
	}
	.float_contact__icon img {
		width: 20px;
		height: 20px;
		margin-bottom: 0;
		margin-right: 8px;
	}
	.float_contact__text {
		writing-mode: horizontal-tb;
		font-size: 13px;
	}
	.float_contact__item--web {
		margin-bottom: 0em;
	}

	/* ========= PAGE_TOP（フローティングバーと重ならないように） ========= */
	.page_top {
		bottom: 84px;
	}
}
