body {
	margin: 0;
}

main {
	display: block;
	width: 100%;
}

picture {
	display: block;
	margin: 0 auto;
}

img {
	margin: 0;
	vertical-align: top;
}

picture img {
	width: 100%;
}

header {
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
}

header > picture {
	flex: 431 1 431px;
	width: 431px;
}

header > a {
	flex: 319 1 319px;
	width: 319px;
}

.header__row {
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
}

.header__item01 {
	flex: 1 1 50%;
	width: 50%;
}

.header__item02 {
	flex: 1 1 50%;
	width: 50%;
}

}


@media screen and (max-width: 767px) {
	.only-pc {
		display: none !important;
	}
}

@media screen and (min-width: 768px) {
	.only-sp {
		display: none !important;
	}
}

@media screen and (min-width: 768px) {
	header {
		max-width: 1240px;
		margin: 0 auto;
	}

	header > picture {
		flex: 785 1 785px;
		width: 785px;
	}

	header > a {
		flex: 649 1 649px;
		width: 649px;
	}
.header__row {
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
}

.header__item01 {
	flex: 1 1 50%;
	width: 50%;
}

.header__item02 {
	flex: 1 1 50%;
	width: 50%;
}

}



.cart__row {
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
}

.cart__item01 {
	width: 100%;
}

.cart__item02 {
	flex: 1 1 472px;
	width: 472px;
}

.cart__item03 {
	flex: 1 1 1028px;
	width: 1010px;
}

.cart__item04 {
	width: 100%;
}

.cart01 {
	position: relative;
	z-index: 1;
	margin: -100px 0 0;
	margin: calc(-100 * 100vw / 375) 0 0;
}

.section02 {
	margin: 22px 0 0;
	margin: calc(22 * 100vw / 375) 0 0;
}

.section05 {
	margin: 45px 0 0;
	margin: calc(45 * 100vw / 375) 0 0;
}

.section06 {
	margin: 50px 0 0;
	margin: calc(50 * 100vw / 375) 0 0;
}

.cart02 {
	margin: 32px 0 0;
	margin: calc(32 * 100vw / 375) 0 0;
}

.section07 {
	margin: 32px 0 0;
	margin: calc(32 * 100vw / 375) 0 0;
}

.section11 {
	margin: 110px 0 0;
	margin: calc(110 * 100vw / 375) 0 0;
}

.section12 {
	margin: 36px 0 0;
	margin: calc(36 * 100vw / 375) 0 0;
}

.cart04 {
	margin: 41px 0 0;
	margin: calc(41 * 100vw / 375) 0 0;
}

@media screen and (min-width: 768px) {
	.firstview {
		max-width: 1240px;
		margin: 0 auto;
	}
	.cart {
		max-width: 980px;
		margin: 0 auto;
	}

	.cart__item02 {
		flex: 1 1 632px;
		width: 632px;
	}

	.cart__item03 {
		flex: 1 1 1328px;
		width: 1328px;
	}

	.cart01 {
		margin-top: -132px;
	}

	.section01,
	.section02,
	.section03,
	.section04,
	.section05,
	.section06,
	.section07,
	.section08,
	.section09,
	.section10,
	.section11,
	.section12 {
		max-width: 980px;
		margin: 0 auto;
	}

	.section01 {
		margin-top: 50px;
	}

	.section02 {
		margin-top: 27px;
	}

	.section05 {
		margin-top: 40px;
	}

	.section06 {
		margin-top: 57px;
	}

	.cart02 {
		margin-top: 22px;
	}

	.section07 {
		margin-top: 43px;
	}

	.cart03 {
		margin-top: 13px;
	}

	.section09 {
		margin-top: 51px;
	}

	.section10 {
		margin-top: 39px;
	}

	.section11 {
		margin-top: -4px;
	}

	.section12 {
		margin-top: 45px;
	}

	.cart04 {
		margin-top: 8px;
	}

	.footer {
		max-width: 1240px;
		margin: 92px auto 0;
	}

	.footer__row {
		display: flex;
		align-items: flex-start;
		justify-content: flex-start;
	}

	.footer__item02 {
		flex: 1 1 1164px;
		width: 1164px;
	}

	.footer__item03 {
		flex: 1 1 400px;
		width: 400px;
	}

	.footer__item04 {
		flex: 1 1 916px;
		width: 916px;
	}
}

/* ボタン部分のCSS追加 */
.button_button01 {
    display: flex;
    flex-direction: column; /* ボタンを縦に並べる */
    align-items: center;
    width: 100%; /* ボタンのコンテナを100%の幅に設定 */
    max-width: 980px; /* セクションと同じ最大幅を設定 */
    margin: 0 auto; /* セクションと同じ中央揃え */
    padding: 0; /* 上下のパディングを0に設定 */
    box-sizing: border-box; /* パディングを含む幅の設定 */
}

.button__row01,
.button__row02 {
    display: flex;
    flex-direction: column; /* ボタンを縦に並べる */
    align-items: center;
    width: 100%;
    max-width: 980px; /* ボタン行の最大幅もセクションに合わせる */
    padding: 0; /* パディングを0に設定して隙間をなくす */
    margin: 0; /* マージンを0に設定して隙間をなくす */
}

.button__item01,
.button__item02,
.button__item03,
.button__item04 {
    width: 100%; /* ボタンの幅を100%に設定 */
    text-align: center;
    padding: 10px 0; /* ボタンに上下のパディングを追加 */
    font-size: 18px; /* フォントサイズを調整して見やすくする */
    margin: 0 !important; /* ボタン間の隙間を完全になくす */
    box-sizing: border-box; /* パディングを含む幅の設定 */
}

/* モバイル用のメディアクエリ */
@media screen and (max-width: 767px) {
    .button_button01 {
        max-width: 100%; /* モバイルデバイスでは最大幅を解除 */
        padding: 0; /* モバイル用にパディングを調整 */
    }

    .button__row01,
    .button__row02 {
        max-width: 100%; /* モバイルデバイスでは最大幅を解除 */
        padding: 0; /* パディングを0に設定して隙間をなくす */
        margin: 0; /* マージンを0に設定して隙間をなくす */
    }

    .button__item01,
    .button__item02,
    .button__item03,
    .button__item04 {
        width: 100%;
        padding: 10px 0; /* ボタンに上下のパディングを追加 */
        font-size: 18px;
        margin: 0 !important; /* ボタン間の隙間を完全になくす */
    }
}
