@charset "UTF-8";
@media screen and (min-width: 768px), print {
	/* PC表示のスタイルを記述 */

	/*# common
		-----------------------------------*/

	#after main {
		background-color: #e4e2db;
	}

	#after .sec-gallery {
		padding-block: 90px 105px;
	}

	#after .sec-services {
		padding-block: 101px 179px;
	}

	#after .sec-services__cards {
		margin-top: 76px;
	}

	#after .sec-services::before {
		height: 44.95126%;
	}

	/*# sec1
		-----------------------------------*/

	.after-sec1 {
		margin-top: 58px;
		padding-bottom: 105px;
	}

	.after-sec1 .layout-inner {
		max-width: 1156px;
	}

	.after-sec1__media {
		gap: 76px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}

	.after-sec1__media-body {
		padding-top: 58px;
	}

	.after-sec1__media-copy {
		font-size: 24px;
		font-weight: 500;
		letter-spacing: 1.92px;
		line-height: 1.46;
	}

	.after-sec1__media-text {
		font-size: 17px;
		letter-spacing: 0.85px;
		line-height: 1.88;
		margin-top: 44px;
	}

	.after-sec1__media-text:nth-of-type(n + 2) {
		margin-top: 32px;
	}

	/*# sec2
		-----------------------------------*/

	.after-sec2 {
		padding-block: 145px 150px;
		background: url('../images/after/sec2_bg.png') no-repeat center center/cover;
	}

	.after-sec2__box {
		margin-inline: auto;
		background-color: #fff;
		padding: 86px 173px 83px;
		width: 1099px;
	}

	.after-sec2__title {
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		border: solid 2px #3c3c3c;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		font-size: 22px;
		font-weight: 500;
		height: 52px;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		letter-spacing: 1.1px;
		line-height: 1.45;
		text-align: center;
		width: 752px;
	}

	.after-sec2__list {
		margin-top: 48px;
	}

	.after-sec2__item {
		gap: 14px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}

	.after-sec2__item:nth-of-type(n + 2) {
		margin-top: 35px;
	}

	.after-sec2__item img {
		height: 27px;
		width: 32px;
	}

	.after-sec2__item-title {
		color: #a1876d;
		font-size: 20px;
		font-weight: bold;
		letter-spacing: 1px;
		line-height: 1.3;
	}

	.after-sec2__item-text {
		font-size: 17px;
		letter-spacing: 1.02px;
		line-height: 1.88;
		margin-top: 2px;
	}

	/*# sec3
		-----------------------------------*/

	.after-sec3 {
		padding-block: 146px 150px;
	}

	.after-sec3__title {
		font-size: 24px;
		font-weight: 500;
		letter-spacing: 1.2px;
		line-height: 1.67;
		text-align: center;
	}

	.after-sec3__text {
		margin-inline: auto;
		font-size: 15px;
		letter-spacing: 0.75px;
		line-height: 2.13;
		margin-top: 35px;
		width: 1099px;
	}

	.after-sec3__box {
		margin-inline: auto;
		background-color: #fff;
		margin-top: 87px;
		max-width: 1197px;
		padding: 71px 129px 81px 133px;
	}

	.after-sec3__box-title {
		border-bottom: solid 1px #a1876d;
		font-size: 24px;
		font-weight: 500;
		letter-spacing: 1.2px;
		line-height: 1.33;
		padding-bottom: 14px;
		text-align: center;
	}

	.after-sec3__box-list {
		grid-gap: 38px 76px;
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		margin-top: 64px;
		padding-left: 14px;
	}

	.after-sec3__box-item {
		gap: 26px;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}

	.after-sec3__box-item img {
		width: 135px;
	}

	.after-sec3__box-text {
		font-size: 18px;
		letter-spacing: 0.9px;
		line-height: 1.78;
	}
}

@media screen and (max-width: 767px) {
	/* SP表示のスタイルを記述 */

	/*# common
		-----------------------------------*/

	#after main {
		background-color: #e4e2db;
	}

	#after .sec-gallery__text {
		text-align: left;
	}

	/*# sec1
		-----------------------------------*/

	.after-sec1 {
		margin-top: 12.077vw;
		padding-bottom: 24.155vw;
	}

	.after-sec1__media img {
		width: 100%;
	}

	.after-sec1__media-copy {
		font-size: 5.797vw;
		font-weight: 500;
		letter-spacing: 0.464vw;
		line-height: 1.46;
		margin-top: 12.077vw;
	}

	.after-sec1__media-text {
		font-size: 4.106vw;
		letter-spacing: 0.205vw;
		line-height: 1.88;
		margin-top: 9.662vw;
	}

	.after-sec1__media-text:nth-of-type(n + 2) {
		margin-top: 8.454vw;
	}

	/*# sec2
		-----------------------------------*/

	.after-sec2 {
		padding-block: 24.155vw;
		background: url('../images/after/sec2_bg-sp.png') no-repeat center center/cover;
	}

	.after-sec2__box {
		background-color: #fff;
		padding: 12.077vw 4.831vw;
	}

	.after-sec2__title {
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		border: solid 2px #3c3c3c;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		font-size: 5.314vw;
		font-weight: 500;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		letter-spacing: 0.266vw;
		line-height: 1.45;
		text-align: center;
	}

	.after-sec2__list {
		margin-top: 11.353vw;
	}

	.after-sec2__item {
		gap: 3.382vw;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}

	.after-sec2__item:nth-of-type(n + 2) {
		margin-top: 8.937vw;
	}

	.after-sec2__item img {
		height: 6.522vw;
		width: 6.522vw;
	}

	.after-sec2__item-title {
		color: #a1876d;
		font-size: 4.831vw;
		font-weight: bold;
		letter-spacing: 0.242vw;
		line-height: 1.3;
	}

	.after-sec2__item-text {
		font-size: 4.106vw;
		letter-spacing: 0.246vw;
		line-height: 1.88;
		margin-top: 0.483vw;
	}

	/*# sec3
		-----------------------------------*/

	.after-sec3 {
		padding-block: 24.155vw;
	}

	.after-sec3__title {
		font-size: 5.797vw;
		font-weight: 500;
		letter-spacing: 0.29vw;
		line-height: 1.67;
		text-align: center;
	}

	.after-sec3__text {
		margin-inline: auto;
		font-size: 3.623vw;
		letter-spacing: 0.181vw;
		line-height: 2.13;
		margin-top: 10.145vw;
	}

	.after-sec3__box {
		background-color: #fff;
		margin-top: 12.077vw;
		padding: 12.077vw 4.831vw;
	}

	.after-sec3__box-title {
		border-bottom: solid 1px #a1876d;
		font-size: 5.797vw;
		font-weight: 500;
		letter-spacing: 0.29vw;
		line-height: 1.33;
		padding-bottom: 3.382vw;
		text-align: center;
	}

	.after-sec3__box-list {
		margin-top: 7.246vw;
	}

	.after-sec3__box-item {
		gap: 6.28vw;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}

	.after-sec3__box-item:nth-of-type(n + 2) {
		margin-top: 4.831vw;
	}

	.after-sec3__box-item img {
		width: 18.116vw;
	}

	.after-sec3__box-text {
		font-size: 4.348vw;
		letter-spacing: 0.217vw;
		line-height: 1.78;
	}
}
