@charset "UTF-8";

/* =========================================================
sat css page
========================================================= */
.l-main {
	@media (max-width: 768px) {
		overflow: hidden;
  }
}
.p-cart {
	.l-content {
		padding-top: 0px;
	}
	.l-content .l-wrap {
		width: 100%;
	}
}

.p-my {
	.page-box {
		padding: 0;
	}
}
.p-404 {
	.post-header-block {
		padding-bottom: 9rem;
	}
}

.p-page {
}

/* =========================================================
sat css reset
========================================================= */
.post-header-block {
	border-radius: 0px;
  background: var(--gradient-hero);
  @media (max-width: 991px) {
    padding: var(--gap07) var(--gap04) var(--gap08);
  }
  &::before {
    content: none;
  }
}


.post-header-block {
	.post-title {
	font-size: var(--fs-xlarge);
	width: fit-content;
		margin: auto;
	@media (max-width: 991px) {
		font-size: var(--fs-title)!important;
	}
	@media (max-width: 591px) {
		font-size: var(--fs-postp)!important;
	}
	}
}

.page-box {
  position: relative;
  z-index: 5;

  padding: var(--gap08);

  font-size: var(--fs-mid);
  line-height: 1.6;

  width: calc(100% - (var(--ptb-big) + var(--ptb-big)));
  max-width: var(--max-width-large);
  margin-left: auto;
  margin-right: auto;
  margin-top: -4vw;
  border-radius: 1px;

  @media (max-width: 1024px) {
    width: 95%;
    padding: var(--gap05);
  }
  @media (max-width: 640px) {
    width: 97%;
  }
  &.__nopadding {
    padding: 0;
  }
  &.__login {
	max-width: var(--max-width00);
  }
  &.mypage {
	padding: 0;
  }
}
.l-inner-wrap {
	position: relative;
}

/* =========================================================
p-page 固定ページ
========================================================= */
.p-page .page-box {
  /* Lists */
  ul,
  ol {
  }

  ul li,
  ol li {
    position: relative;
    padding-left: var(--gap04);
    margin: 0 0 var(--gap02);
    list-style: none;
	p {
		margin-top: var(--gap01);
		margin-bottom: 0px;
		padding: var(--gap03);
		font-size: var(--fs-mid);
		background-color: var(--base-color04);

	}
  }

  ul li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0.45em;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background-color: var(--accent-color02);
  }

  ol {
    counter-reset: list-counter;
  }

  ol li::before {
    position: absolute;
    left: 0;
    top: 0.1em;
    counter-increment: list-counter;
    content: counter(list-counter) '.';
    color: var(--accent-color02);
    font-weight: 700;
	font-family: var(--font-outfit);
    min-width: 1.6em;
  }
  /* Headings */
  h2,
  h3,
  h4,
  h5 {
    margin: var(--gap04) 0 var(--gap03);
    font-weight: 700;
    color: var(--text-color01);
    line-height: 1.3;
  }

  h2 {
	&:not(:first-of-type) {
		padding-top: var(--gap04);
		border-top: 2px solid var(--base-color04);
		font-size: var(--fs-title);
	}
  }

  h3 {
    font-size: var(--fs-big);
  }

  h4 {
    font-size: var(--fs-mid);
  }

  h5 {
    font-size: var(--fs-p);
    font-weight: 600;
  }

	table {
		width: 100%;
		border-top: 1px solid var(--border-color02);
		th,td {
			border-bottom: 1px solid var(--border-color07);
			
		}
	}

}
.p-pageInner {
	max-width: var(--max-width-tiny);
	margin-left: auto;
	margin-right: auto;
}

/* =========================================================
p-cart style
========================================================= */
.l-main-wrap {
  display: flex;
  @media (max-width: 1280px) {
    display: block;
  }
}
.l-inner.__cartFlow {
  max-width: var(--max-width-big);
  background-color: transparent;
  margin-left: auto;
  margin-right: auto;
  margin-top: -60px;
  box-shadow: none;
  @media (max-width: 1280px) {
    width: 100%;
  margin-top: -40px;
    padding: var(--gap04);
  }


	.item-text-detail {
  		@media (max-width: 768px) {
			display: block;
		}
	}
}
/* カートページの場合 */
.p-cart .page-box {
  margin-top: 0px !important;
  border-radius: 0px;
  font-size: var(--fs-mid);
}

.o-cartFlow {
  margin-left: auto;
  margin-right: auto;
  padding: 0 var(--gap08);
  width: calc(100% - (var(--ptb-big) + var(--ptb-big)));
	max-width: var(--max-width-large);
  background-color: var(--base-color02);
  z-index: 6;
  border-radius: 2px 2px 0 0;
  @media (max-width: 1280px) {
	width: 95%;
    margin-top: 0;
    padding: 0 0 var(--gap04);
  }
}


/* 購入完了　*/
.payment-done {
	display: flex;
	flex-direction: column;
	width: 100;
	gap: var(--gap05);
	p {
		margin-bottom: 0;
	}
	.btn {
		max-width: inherit;
		width: 100%;
	}
	.box {
		width: 100%;
		.box-item {
			.tel {
				font-size: var(--fs-xlarge);
			}
		}
	}
}

/* 404 */
/* マイページ */
.mypage {
	.tab-btns {
		li {
			background: var(--base-color01);
			color: #fff;
		}
	}
}