@import url("https://use.typekit.net/bnf7jzd.css");
@import url('https://fonts.googleapis.com/css2?family=Crimson+Pro:wght@300;400&display=swap');

@font-face {
	font-family: "classical-garamond-bt";
	src: url(../fonts/classical_garamond_bt.ttf) format("truetype"),
		url(../fonts/classical_garamond_bt.woff) format("woff");
}

/* ==========================================================================
    Typograpgy
   ========================================================================== */
@media only screen and (min-width: 768px) and (max-width: 1600px) {
	html {
		font-size: calc(10 * (100vw / 1600)) !important;
	}
}
@media (max-width: 767px) {
	.lp * {
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
	}
}
html {
	font-size: 62.5%;
}

* {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

img,
video,
svg {
	width: 100%;
	height: auto;
}

/* for pc*/

.sp {
	display: none;
}

.pc {
	display: block;
}

/*basic*/

.main_container {
	margin: 0 auto;
	width: 100%;
	-ms-font-feature-settings: "normal";
	font-weight: 400;
	font-style: normal;
	font-size: 1.4rem;
	line-height: 2;
	letter-spacing: 0.12em;
	color: #343434;
	text-align: center;
	font-feature-settings: "palt";
}

/*ヘッド部分*/

.heading{
	width: 100rem;
	margin: auto;
	margin-bottom: 12rem;
}

.heading_logo{
	width: 30rem;
	margin: 7.9rem auto;
}

.heading_img{
	margin: auto;
	margin-bottom: 7.6rem;
}

.heading_ttl{
	margin-bottom: 3.4rem;
	font-size: 2.2rem;
	line-height: 1.4545;
	letter-spacing: 0.18em;
}

.heading_txt{
    margin-bottom: 7.5rem;
    font-size: 1.6rem;
    letter-spacing: 0.12em;
    line-height: 2;
}

.heading_sub_img{
	width: 61rem;
	margin: auto;
}

/*共通部分*/

.section{
	position: relative;
	margin: auto;
}

.content_list{
	display: flex;
}

.content_img{
	width: 48rem;
	margin: auto;
}

.content_txt{
	letter-spacing: 0.12em;
}

.content_wrap{
	width: 38rem;
	margin: auto;
	margin-top: 19.8rem;
}

.buy{
    border: 0.1rem #343434 solid;
    width: 4.7rem;
    height: 1.9rem;
    text-align: center;
    font-size: 1.2rem;
    letter-spacing: 0.115em;
	margin-left: 1rem;
    padding-top: 0.4rem;
    padding-bottom: 0.3rem;
    padding-right: 0.7rem;
    padding-left: 0.7rem
  }

  .content_price{
	  display: block;
	  text-align: left;
	  letter-spacing: 0.13em;
  }

  .content_price_img{
	  display: none;
	width: 26.2rem;
	image-rendering: -webkit-optimize-contrast;
  }

  .content_price_img2{
	  display: none;
	width: 26.2rem;
	image-rendering: -webkit-optimize-contrast;
  }

/*1段目*/
.sec01{
	width: 100rem;
	margin: auto;
	margin-bottom: 10rem;
}

.sec01 .content_list{
	width: 98.5rem;
	justify-content: space-between;
	margin: auto;
}

.sec01 .content_ttl{
	width: 11.7rem;
	margin-bottom: 3rem;
}

.sec01 .content_txt{
	text-align: left;
	margin-bottom: 2.8rem;
}

.sec01 .bg_color{
	position: absolute;
	width: 8.2rem;
	height: 44.2rem;
	background-color: #f4efe6;
	top: -3.9rem;
	left: 0;
	z-index: -1;
}

/*2段目*/

.sec02{
	width: 100rem;
	margin: auto;
	margin-bottom: 12.2rem;
}

.sec02 .content_wrap{
	margin-top: 19.1rem;
}

.sec02 .content_list{
	width: 98.5rem;
	justify-content: space-between;
	margin: auto;
}

.sec02 .content_ttl{
	width: 10.3rem;
	margin-bottom: 3.7rem;
}

.sec02  .content_txt{
	text-align: left;
	margin-bottom: 2.8rem;
}

.sec02 .bg_color{
	position: absolute;
	width: 8.2rem;
	height: 44.2rem;
	background-color: #f0f2f2;
	bottom: -3.9rem;
	right: 0;
	z-index: -1;
}

/*3段目*/

.sec03{
	 width: 63rem;
	 border: 0.5rem #f0f2f2 solid;
	 margin: auto;
	 margin-bottom: 12.2rem;
}

.sec03 .content_list{
	width: 50.5rem;
	justify-content: space-between;
	margin-top: 3.2rem;
	margin-bottom: 3.7rem;
	margin-left: 5.6rem;
	margin-right: 5.6rem;
}

.sec03 .content_img{
	width: 20rem;
	margin: 0;
}

.sec03 .content_txt{
	width: 26.6rem;
	margin-top: 3.1rem;
	text-align: left;
	letter-spacing: 0.12em;
}

/*4段目*/
.sec04{
	margin: auto;
	margin-bottom: 11rem;
}

.about_logo{
	width: 14rem;
	margin: auto;
	margin-bottom: 3.2rem;
}

.sec04 .content_txt{
	margin-bottom: 3.4rem;
}

.insta_saori{
	width: 18rem;
	margin: auto;
	margin-bottom: 0.9rem;
	image-rendering: -webkit-optimize-contrast;
}

.insta_mu{
	width: 16rem;
	margin: auto;
}

/*all_item*/
.all_item_btn {
	width: 46rem;
	margin: 0 auto;
	margin-bottom: 9.1rem;
}

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
    /* IE10・11に指定するスタイルを記入 */
	.action_on {
		width: 100%;
	  }

	  .content_price{
		  display: none;
	  }

	.content_price_img{
		display: block;
	  width: 26.2rem;
	  image-rendering: -webkit-optimize-contrast;
	}

	.content_price_img2{
		display: block;
	  width: 26.2rem;
	  image-rendering: -webkit-optimize-contrast;
	}

  }

/* ====== SP ===== */
@media only screen and (max-width: 750px) {
	.bredlist.lp {
		line-height: 5.33333vw;
		font-size: 2.66667vw;
		margin: 3.33333vw auto;
		width: 92.592%;
		text-align: left;
		padding: 0;
	}

	#Contents {
		max-width: calc(767 * (100vw / 750));
		background-position: center calc(202* (100vw/750));
		background-image: url(./img/page_sp.png);
	}

	/*basic*/

	.sp {
		display: block;
	}

	.pc {
		display: none;
	}
	/*basic*/

	.main_container {
		font-size: calc(24 * (100vw / 750));
		line-height: 2;
	}

/*ヘッド部分*/

.heading{
	width: 100%;
	margin: auto;
	margin-bottom: calc(200 * (100vw / 750));
}

.heading_logo{
	width: calc(424 * (100vw / 750));
	margin: calc(79 * (100vw / 750)) auto;
}

.heading_img{
	margin: auto;
	margin-bottom: calc(66 * (100vw / 750));
}

.heading_ttl{
	margin-bottom: calc(40 * (100vw / 750));
	font-size: calc(40 * (100vw / 750));
	line-height: 1.75;
	letter-spacing: 0.18em;
}

.heading_txt{
    margin-bottom: calc(73 * (100vw / 750));
    font-size: calc(26 * (100vw / 750));
    letter-spacing: 0.1em;
    line-height: 2;
}

.heading_sub_img{
	width: calc(510 * (100vw / 750));
	margin: auto;
}

/*共通部分*/

.section{
	position: relative;
	margin: auto;
}

.content_list{
	display: flex;
	flex-direction: column;
}

.content_img{
	width: calc(660 * (100vw / 750));
	margin-left: auto;
	order: 1;
}

.content_wrap{
	width: calc(660 * (100vw / 750));
	margin: auto;
	margin-top: 0;
	order: 2;
}

  .content_price{
	  text-align: left;
	  letter-spacing: 0.07em;
  }

  .buy{
	margin-left: calc(17* (100vw / 750));
	padding-top: calc(1* (100vw / 750));
	padding-bottom: calc(1* (100vw / 750));
	padding-right: calc(16* (100vw / 750));
	padding-left: calc(16* (100vw / 750));
	border: calc(2* (100vw / 750)) #343434 solid;
	width: calc(49* (100vw / 750));
	height: calc(24* (100vw / 750));
	text-align: center;
	font-size: calc(20* (100vw / 750));
	line-height: 1;
  }

/*1段目*/
.sec01{
	width: 100%;
	margin: auto;
	margin-bottom: calc(138 * (100vw / 750));
}

.sec01 .content_list{
	width: calc(660 * (100vw / 750));
	justify-content: normal;
	margin-right: 0;
}

.sec01 .content_img{
	margin-bottom: calc(31 * (100vw / 750));
}

.sec01 .content_ttl{
	width: calc(167 * (100vw / 750));
	margin-bottom: calc(30 * (100vw / 750));
}

.sec01 .content_txt{
	width: calc(600 * (100vw / 750));
	text-align: left;
	margin-bottom: calc(15  * (100vw / 750));
}

.sec01 .bg_color{
	position: absolute;
	width: calc(180 * (100vw / 750));
	height: calc(660 * (100vw / 750));
	background-color: #f4efe6;
	top: calc(-62 * (100vw / 750));
	left: 0;
	z-index: -1;
}

/*2段目*/

.sec02{
	width: 100%;
	margin: auto;
	margin-bottom: calc(151 * (100vw / 750));
}

.sec02 .content_wrap{
	margin-top: 0;
	margin-left: calc(60 * (100vw / 750));
}

.sec02 .content_list{
	width: calc(660 * (100vw / 750));
	justify-content: normal;
	margin: 0;
}

.sec02 .content_img{
	margin-left: 0;
	margin-bottom: calc(30 * (100vw / 750));
}

.sec02 .content_ttl{
	width: calc(147.7 * (100vw / 750));
	margin-bottom: calc(37 * (100vw / 750));
}

.sec02 .content_txt{
	text-align: left;
	margin-bottom: calc(22 * (100vw / 750));
}

.sec02 .bg_color{
	position: absolute;
	width: calc(180 * (100vw / 750));
	height: calc(660 * (100vw / 750));
	background-color: #f0f2f2;
	bottom: calc(703 * (100vw / 750));
	right: 0;
	z-index: -1;
}

/*3段目*/

.sec03{
	 width: calc(650 * (100vw / 750));
	 border: calc(8 * (100vw / 750)) #f0f2f2 solid;
	 margin: auto;
	 margin-bottom: calc(122 * (100vw / 750));
}

.sec03 .content_list{
	width: calc(635 * (100vw / 750));
	justify-content: normal;
	margin-top: calc(46 * (100vw / 750));
	margin-bottom: calc(42 * (100vw / 750));
	margin-left: 0;
	margin-right: 0;
}

.sec03 .content_img{
	width: calc(360 * (100vw / 750));
	margin: auto;
	margin-bottom: 0;
	order: 1;
}

.sec03 .content_txt{
	width: calc(530 * (100vw / 750));
	margin: auto;
	margin-top: calc(32 * (100vw / 750));
	text-align: left;
	order: 2;
}

/*4段目*/
.sec04{
	margin: auto;
	margin-bottom: calc(148 * (100vw / 750));
}

.about_logo{
	width: calc(270 * (100vw / 750));
	margin: auto;
	margin-bottom: calc(47 * (100vw / 750));
}

.sec04 .content_txt{
	margin-bottom: calc(48 * (100vw / 750));
}

.insta_saori{
	width: calc(311 * (100vw / 750));
	margin-bottom: calc(38 * (100vw / 750));
}

.insta_mu{
	width: calc(270 * (100vw / 750));
	margin: auto;
}
  /*all_item*/
  .all_item_btn{
    width: calc(570* (100vw / 750));
    margin:0 auto;
  }

}

/* fade */
.fade {
	transition-property: opacity, transform;
	transition-duration: 1.5s;
	opacity: 0;
	transform: translateY(1.5rem);
}

.fade.onView {
	opacity: 1;
	transform: translateY(0);
}
