@media screen and (max-width: 920px) {
	/*===============================
	MARK: common
	=================================*/
	.pc-content {
		display: none !important;
	}

	/*===============================
	MARK: TOP content
	=================================*/

	#concept .d-flex {
		flex-direction: column;
		row-gap: 60px;
	}

	.concept-image img {
		margin-inline: auto;
		width: min(100%, 600px);
	}

	#information .information-list {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media screen and (max-width: 590px) {
	/*===============================
	MARK: common
	=================================*/
	.sp-content {
		display: block;
	}

	.btn {
		padding: 1em 1.5em;
	}

	a:hover {
		opacity: 1;
	}

	/*===============================
	MARK: TOP content
	=================================*/
	.page-content section {
		margin-top: -40px;
	}

	.section-inner {
		border-radius: 0 0 40px 40px;
		box-shadow: 0 10px 10px rgba(0, 0, 0, 0.1);
		background: #efefef;
		padding-block: 80px;
	}

	#concept .section-inner {
		border-radius: 40px;
	}

	#concept .section-heading h2 {
		align-items: center;
	}

	#concept p {
		font-size: 14px;
	}

	.concept-summary .btn-wrap {
		text-align: center;
	}

	#information .information-list {
		grid-template-columns: repeat(1, 1fr);
	}

	#information .information-list .info-item {
		width: 100%;
	}

	.coming-soon span {
		font-size: 1.25rem;
	}

	.coming-soon p {
		font-size: 14px;
	}

	#letter p {
		font-size: 14px;
	}

	.member-list-wrap {
		margin-top: 50px;
	}

	.member-list {
		grid-template-columns: repeat(2, 1fr);
		grid-template-rows: repeat(6, 1fr);
		grid-column-gap: 15px;
		grid-row-gap: 15px;
	}

	.member-list-wrap p {
		font-size: 14px;
	}

	.statement .section-heading h2 img {
		height: auto;
		width: 100%;
	}

	.statement-sendai {
		flex-direction: column;
	}

	.statement-sendai .statement-detail {
		display: contents;
	}

	.statement-sendai .statement-ttl {
		order: 1;
		padding-bottom: 0;
	}

	.statement-sendai .statement-img {
		order: 2;
		max-width: unset;
	}

	.statement-sendai .statement-profile {
		order: 3;
		display: block;
		text-align: center;
	}

	.statement-sendai .statement-profile > img {
		margin-inline: auto;
	}

	.statement-sendai .statement-text {
		order: 4;
		margin-top: 0;
	}

	.statement-grid {
		grid-template-columns: auto;
	}

	.statement-img {
		max-width: 92px;
	}

	.statement-item .d-flex {
		column-gap: 15px;
	}

	.statement-profile {
		gap: 10px;
	}

	.statement-position {
		font-size: var(--fz12);
	}

	#members .join {
		margin-top: 40px;
		padding-top: 130px;
		background-size: 100%;
	}

	.images-list {
		margin-top: 40px;
		column-gap: 10px;
	}

	.applications p {
		text-align: center;
	}

	/*===============================
	MARK: FOOTER
	=================================*/

	.site-footer .section-inner {
		border-radius: 40px 40px 0 0;
	}

	.site-footer .section-inner {
		padding-bottom: 30px;
	}

	.site-footer .section-inner .container > .d-flex {
		flex-direction: column-reverse;
		row-gap: 40px;
	}

	.document {
		align-self: center;
	}

	.document .btn-wrap {
		text-align: center;
	}

	.document a {
		font-size: var(--fz10);
	}

	.management {
		width: 100%;
	}

	.footer-logo img {
		margin-inline: auto;
	}
	.management .d-flex {
		flex-direction: column;
		align-items: center;
		gap: 1em;
	}

	#cookie-attention {
		font-size: 12px;
	}

	/*===============================
	MARK: 下層ページ
	=================================*/
	.page-ttl {
		border-radius: 0 0 40px 40px;
		padding-block: 30px 40px;
	}

	.lower-page-content h2 {
		font-size: var(--fz18);
	}

	.lower-page-content p,
	.lower-page-content .table,
	.lower-page-content li {
		font-size: var(--fz14);
	}

	.timeline {
		width: 90%;
	}

	.timeline p {
		font-size: var(--fz12);
	}

	.img-flex {
		flex-direction: column;
	}

	/*===============================
	MARK: 感震ブレーカー
	=================================*/
	.breaker {
		.lower-page-content {
			margin-top: 20px;
		}

		.mv-ttl {
			padding-inline: 0;
		}

		.section01 {
			padding-block: 40px 20px;
		}

		.section01 .detail {
			flex-direction: column;
		}

		.prediction {
			width: 100%;
		}

		.prediction .ttl {
			font-size: var(--fz22);
		}

		.prediction .ttl h4 br {
			display: none;
		}

		.prediction .inner {
			flex-direction: column;
		}

		.prediction small {
			font-size: var(--fz10);
		}

		.prediction .number p {
			font-size: var(--fz22);
		}

		.area-map {
			width: 100%;
		}

		.section02::before {
			height: 40px;
		}

		.section02 .item {
			padding: 20px;
			flex-direction: column;
		}
		.section02 .item .graph {
			padding-right: 0;
		}

		.section02 .item .summary {
			width: 100%;
			margin-top: 20px;
		}

		.section02 .item .summary p {
			font-size: var(--fz18);
		}
		.section02 .item .summary .reason {
			font-size: 28px;
		}
		.section02 .item .summary p:last-of-type {
			font-size: 20px;
		}
		.section02 .item .summary small {
			font-size: var(--fz10);
			margin-top: 20px;
		}

		.section02 .item h3 {
			font-size: var(--fz20);
			letter-spacing: normal;
			padding-inline: 5px;
		}

		.point-ttl h3 {
			font-size: var(--fz18);
		}
		.point-ttl h3 span {
			padding: 7px 20px;
		}

		.point .inner {
			padding: 20px 15px 15px 15px;
		}

		.lower-page-content ul {
			margin-left: 2em;
		}

		.lower-page-content ul li {
			margin-bottom: 1em;
		}

		.lower-page-content ul li:before {
			top: -4px;
			left: -2.2em;
			width: 25px;
			height: 24px;
		}

		.point .point-img {
			flex-direction: column;
		}

		.point01 h4 span {
			font-size: var(--fz20);
			padding: 10px 30px;
		}

		.point01 .lead {
			font-size: var(--fz14);
			margin-top: 20px;
		}

		.point01 .lead .emphasis {
			font-size: var(--fz20);
		}

		.point01 .lead .mid {
			font-size: var(--fz14);
		}

		.fukidashi {
			width: 100%;
			padding: 10px;
		}

		.fukidashi::before {
			content: '';
			position: absolute;
			left: 50%;
			top: -17px;
			transform: translateX(-50%);
			display: inline-block;
			width: 35px;
			height: 18px;
			background: #d0111b;
			clip-path: polygon(0 100%, 50% 0, 100% 100%);
		}

		.point01 .point-img:last-of-type {
			gap: 25px;
		}

		.fukidashi p {
			font-size: var(--fz18);
		}

		.fukidashi p .emphasis {
			font-size: var(--fz26);
		}

		.point02 .point-img {
			gap: 20px;
			padding-right: 0px;
		}

		.section03 {
			background: #fff;
			padding-block: 40px 20px;
		}

		.bottom-section .usabou {
			margin-block: 40px 30px;
		}
	}

	/*===============================
	MARK: XIBとは
	=================================*/
	.about {
		.page-mv .d-flex {
			flex-direction: column;
		}

		.page-mv h1 {
			margin-left: 0;
		}

		.page-mv .lead {
			font-size: var(--fz18);
			margin-top: 1.7em;
			margin-bottom: 2em;
			line-height: 2;
		}

		.concept-image {
			width: 80%;
		}

		.lead-section {
			border-radius: 0 0 40px 40px;
		}

		.section01 .section-heading h2 {
			font-size: var(--fz20);
		}

		.section-heading p {
			font-size: 1rem;
		}

		.section01 .detail {
			flex-direction: column;
			margin-block: 30px 40px;
		}

		.stakeholder h3,
		.action h3 {
			font-size: var(--fz20);
		}

		.stakeholder .lead,
		.action .lead {
			font-size: var(--fz18);
		}

		.ecosystem h3 {
			transform: translateY(-80%);
		}

		.ecosystem .circle {
			width: 53px;
			height: 53px;
			font-size: 14px;
			bottom: 50%;
			transform: translateY(50%);
		}

		.ecosystem .ttl {
			padding: 10px 1em 10px 3em;
			font-size: 16px;
			width: 100%;
		}

		.ecosystem {
			padding: 25px 15px 20px 15px;
		}

		.ecosystem p {
			font-size: 1rem;
		}

		.ecosystem .arrow img {
			width: 25%;
		}

		.section02 .section-heading {
			margin-top: 70px;
		}

		.section02 .section-heading h2 span {
			font-size: var(--fz24);
		}

		.action-plan h3 span {
			padding: 10px 1.5em;
		}

		.action-plan {
			padding: 0px 15px 20px 15px;
		}

		.action-plan h3 {
			transform: translateY(-50%);
		}

		.action-plan .plan {
			padding: 25px 20px 20px 20px;
		}

		.action-plan .plan h4 {
			font-size: 1rem;
		}

		.plan .ttl {
			font-size: 1rem;
		}

		.project-list {
			gap: 15px;
			flex-direction: column;
		}

		.position {
			width: 100%;
		}

		.position::after {
			top: 100%;
			left: 0.4em;
			height: 26px;
			width: 2px;
		}

		.goal {
			padding: 25px 25px 25px 25px;
		}

		.goal-list p {
			font-size: 1rem;
		}

		.point {
			padding: 30px 20px;
		}

		.point-list {
			flex-direction: column;
		}

		.point-list dt {
			display: block;
			text-align: left;
			border-radius: 5px 5px 0 0;
			min-height: unset;
			width: 100%;
			padding: 15px 20px;
		}

		.point-list dd {
			display: block;
			text-align: left;
			border-radius: 0 0 5px 5px;
			width: 100%;
			padding-inline: 1em;
			line-height: 2;
			margin-right: 0;
			font-size: var(--fz14);
		}

		.point-list .badge {
			right: 10px;
			width: 20%;
			top: -15px;
		}

		.section03 {
			padding-block: 70px;
		}

		.section03 .section-heading h2 span {
			font-size: var(--fz24);
		}

		.heading-bg {
			height: 180px;
		}

		.example .heading .notice {
			font-size: var(--fz10);
			bottom: 5px;
			right: 10px;
		}

		.example .detail {
			padding: 20px 15px;
		}

		#members .section-inner {
			border-radius: 40px;
		}
	}

	/*===============================
	MARK: 仙台防災
	=================================*/

	.week .lead-text .btn-wrap {
		flex-direction: column;
		row-gap: 25px;
	}

	.activities-list {
		grid-template-columns: repeat(1, 1fr);
		grid-row-gap: 40px;
	}

	.activities-img {
		width: 35%;
	}

	.fukidashi::before {
		width: 3px;
		height: 7em;
		transform: rotate(-15deg);
		margin-top: 0.7em;
	}

	.fukidashi::after {
		content: '';
		width: 3px;
		height: 7em;
		transform: rotate(15deg);
	}

	.step-action .d-flex {
		flex-direction: column;
		gap: 25px;
	}
	.step-action {
		padding: 30px;
	}

	.step-heading h3 {
		flex-direction: column;
		align-items: start;
	}

	.border-rounded {
		height: 7px;
	}

	.step-lead {
		font-size: 1rem;
		margin-block: 20px 30px;
	}

	.hazardmap {
		flex-direction: column;
	}

	.step-item .pdf-list {
		grid-template-columns: repeat(2, 1fr);
		grid-template-rows: auto;
		margin-bottom: 30px;
	}

	.step01 .usabou {
		display: contents;
	}

	.step01 .usabou img {
		position: relative;
		width: 70%;
		bottom: unset;
		right: unset;
		margin-inline: auto;
	}

	.step-item {
		padding-bottom: 10px;
	}

	.step02 .preparation .ac-wrap,
	.step02 .preparation .risk {
		width: 100%;
	}

	.comment-form {
		border-radius: 15px;
		padding: 0 10px 25px 10px;
		margin-top: 80px;
	}

	.comment-form .bubble {
		padding: 0.7em 1.2em;
	}

	.comment-form .attribute-section {
		flex-wrap: wrap;
	}

	.check-affiliation label {
		font-size: 1rem;
	}

	.comment-form .text-wrap {
		border-radius: 10px;
		padding: 20px 20px 16px 20px;
	}

	.comment-form textarea::placeholder {
		font-size: var(--fz12);
	}

	.comment-form .submit-area {
		gap: 15px;
	}

	.submit-area .wpcf7-submit {
		width: 196px;
	}

	.declaration .heading {
		padding-top: 40px;
		padding-inline: 25px;
	}

	.switch-slider .switch-card {
		padding: 15px 20px 15px 20px;
	}

	.switch-meta {
		font-size: 13px;
	}

	.switch-slider .splide__arrows {
		gap: 30px;
	}

	.switch-slider .splide__arrow {
		height: 32px;
		width: 32px;
	}

	.sponsor {
		grid-template-columns: repeat(1, 1fr);
	}
}
