html {
  scroll-behavior: smooth;
}


body {
	padding:0;
	margin:0;
	background-color: #8b1e23;
}

body img {
	vertical-align: bottom;
}


.pc {
	display:block;
}

.sp {
	display:none;
}

.clear {
	clear:both;
}

.st_wrap {
	clear: both;
	width: 80%;
	max-width: 700px;
	padding: 4% 0 5%;
	margin:0 auto 0px;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	color: #000000;	
	background-color: #e4dccf;
	font-size:14px;
	z-index: 1;
}

.st_wrap p {
	padding:0;
	margin:0;
}

.title_box{
	width: 100%;
	box-sizing: border-box;
}

.title_box img{
	width: 100%;
}

.lead {
	text-align:center;
	font-size:16px;
	line-height: 1.8;
	color: #8b1e23;
	margin-top: 5%;
	margin-bottom: 4%;
}

.typing-container1 {
	width: 50%;
	margin: auto;
	overflow: hidden;
}

.typing-container2 {
	width: 70%;
	margin: auto;
	overflow: hidden;
}


#type-js1 {
  font-size: 1.4em;
  border-right: 0 solid #333;
  white-space: nowrap;
  overflow: hidden;
  display: inline-block;
  height: 4%;
  margin-left: 16%;
  color: #8b1e23;
}

#type-js2 {
  font-size: 1.4em;
  border-right: 0 solid #333;
  white-space: nowrap;
  overflow: hidden;
  display: inline-block;
  height: 4%;
  margin-left: 5%;
  color: #8b1e23;
}

.bg_1{
	width: 100%;
	background-image: url("../images/item_bg.png");
	background-size: cover;
	box-sizing: border-box;
	margin-top: -15%;
}

.bg_2{
	width: 100%;
	background-image: url("../images/bg.png");
	background-size: cover;
	box-sizing: border-box;
	padding-top: 20%;
	padding-bottom: 30%;
}

.img_box {
	position: relative;
	z-index: 1;
	font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 0.7rem;
	font-weight: normal;
	letter-spacing: 0.05em;
}

.img_box img {
	width: 100%;
}

.img_box a {
	width: 100%;
	color: #000;
	text-decoration: underline;
}

.img_box a:hover {
	width: 100%;
	color: #000;
	text-decoration: none;
	opacity: 0.7;
}


.img_box2 {
	float: left;
	position: relative;
	margin-right: 0;
	z-index: 2;
}

.img_box2 img {
	width: 100%;
	margin-left: 0;
}

.img_box3 {
	float: left;
	position: relative;
	z-index: 2;
	width: 33.333%;
	margin: 1% 0 6%;
}

.img_box3 img {
	width: 100%;
}

.item_list_m1{
	margin: -20% auto 0;
}

.item_list_m2{
	margin: -26% auto 0 4%;
}

.item_list_m3{
	margin: -23% auto 0 3%;
}

.item_list_m4{
	margin: -30% auto 0 4%;
}

.item_list_m5{
	margin: 2.5% auto 0 3%;
}

.item_list_m6{
	margin: 2.5% auto 0;
}

.item_list_m7{
	margin: -10% 3% 5% 3%;
}

.item_list_m8{
	margin: -13% auto 0;
	text-align: center;
}

.item_list_m9{
	margin: 0% auto -20%;
	text-align: center;
}

.item_list_m10{
	margin: -20% auto 0 -20%;
	text-align: center;
}

.item_list_m11{
	margin: -15% auto 20%;
	text-align: center;
}

.product-list-container {
	max-width: 600px;
	font-family: "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	position: relative;
	z-index: 100;
}


        /*
         * 商品行のスタイル
         * 3つの独立した要素（商品名、価格、BUY）を横並びで配置し、右端に寄せます。
         */
        .product-item {
            display: flex;
            justify-content: flex-end; /* 全体を右揃えにする */
            align-items: center;
            margin-bottom: 0px;
            padding: 2px 0;
        }

        .product-name {
            font-size: 0.7rem;
            font-weight: normal;
            letter-spacing: 0.05em;
            text-align: right; /* テキスト自体を右寄せ */
            /* 価格との間隔 */
            margin-right: 20px;
            white-space: nowrap;
        }

        .product-price {
            font-size: 0.7rem;
            font-weight: normal;
            text-align: right; /* テキスト自体を右寄せ */
            /* BUYリンクとの間隔 */
            margin-right: 20px;
            white-space: nowrap;
        }

        .buy-link {
            font-size: 0.7rem;
            font-weight: normal;
            text-decoration: underline;
            color: black;
            white-space: nowrap;
        }

        .buy-link:hover,
        .buy-link:focus {
            opacity: 0.7;
			text-decoration: none;
        }

        .product-item2 {
            display: flex;
            align-items: center;
            margin-bottom: 0px;
            padding: 5px 0;
        }

       .product-name2 {
            font-size: 0.7rem;
            font-weight: normal;
            letter-spacing: 0.05em;
            text-align: left; /* テキスト自体を右寄せ */
            /* 価格との間隔 */
            margin-right: 20px;
            white-space: nowrap;
		   width: 12%;
        }

        .product-price2 {
            font-size: 0.7rem;
            font-weight: normal;
            text-align: right; /* テキスト自体を右寄せ */
            /* BUYリンクとの間隔 */
            margin-right: 20px;
            white-space: nowrap;
		   width: 15%;
        }

        .buy-link2 {
            font-size: 0.7rem;
            font-weight: normal;
            text-decoration: underline;
            color: black;
            white-space: nowrap;
            /* Flexアイテムとして配置されているため、margin-left: 0; または auto; で調整可能ですが、
               ここでは明示的なマージンは不要です。 */
        }

        .buy-link2:hover,
        .buy-link2:focus {
            opacity: 0.7;
			text-decoration: none;
        }

        @media (min-width: 768px) {
            .product-name,
            .product-price,
            .buy-link {
                font-size: 0.7rem;
            }

            .product-item {
                margin-bottom: 0px;
            }
        }


        /*
         * アクセシビリティ対応: タブキーでのフォーカス時のスタイル（BUYリンク）
         */
        .buy-link:focus {
            outline: 3px solid #0056b3;
            outline-offset: 2px;
        }

        /*
         * セマンティックタグの調整
         */
        .product-list-container > ul {
            list-style: none;
            padding: 0;
            margin: 0;
        }

.sub_lead {
	text-align:left;
	font-size:22px;
	font-weight: 700;
	line-height: 1.8;
	color: #8b1e23;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
}

.sub_lead_s {
	text-align:left;
	font-size:14px;
	line-height: 1.8;
	color: #000;
	font-weight: 400;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	margin-top: 2%;
}

.sub_lead2 {
	text-align:center;
	font-size:14px;
	line-height: 1.7;
	color: #000;
	font-weight: 400;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
}

.sub_lead2 a {
	color: #000;
	text-decoration: none;
	margin-top: 3%;
}

.sub_lead2 a:hover {
	color: #000;
	text-decoration: underline;
}

.color_box {
	width: 60%;
	position: relative;
	z-index: 5;
}

.color_box img {
	width: 100%;
}


.btn_img {
	width: 30%;
	margin: 0% auto 0;
}

.btn_img img {
	width: 100%;
}

.btn_img a:hover {
	opacity: 0.7;
}


.btn_all {
	width: 88%;
	margin: 4% auto 2%;
	position: relative;
	z-index: 10;
}

.btn_all img {
	width: 100%;
}

.btn_all a:hover {
	opacity: 0.7;
}

.item_box1 {
	width: 98%;
	text-align: center;
	font-size: 14px;
	margin: 10% auto 2%;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	font-weight: bold;
	line-height: 1.8;
}

.item_box1 a {
	font-weight: bold;
	color: #272727;
	text-decoration: underline;
	line-height: 1.8;
}

.item_box1 a:hover {
	font-weight: bold;
	color: #272727;
	text-decoration: none;
}

.item_box1 span {
	font-size: 80%;
}

.item_box1 img {
	width: 100%;
}

.item_box2 {
	width: 98%;
	text-align: center;
	font-size: 14px;
	margin: 10% auto 2%;
	padding: 6% 1% 6%;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	font-weight: bold;
	line-height: 1.8;
	border: solid 1px #666;
	box-sizing: border-box;
}

.item_box2 img {
	width: 100%;
}

.sub_title {
	text-align: center;
	margin: 3% 5% 6% 0%;
	width: 95%;
	font-family: 'Noto Serif JP', serif;
	font-size: 26px;
	line-height: 1.4;
}

.sub_title img {
	width: 100%;
}

.osusume {
	width: 50%;
	margin: 3% 25% 4%;;
	font-size: 18px;
	text-align: left;
	line-height: 2.2;
	letter-spacing: 1.3;
	font-family: serif;
	font-weight: bold;
}

.btn_code {
	color: #000;
	font-size: 90%;
	text-align: center;
	margin: 1% 40% 6%;
	border:2px solid #fff;
	width:20%;
}

.btn_code a{
	text-decoration: none;
	display: block;
	color:#fff;
	font-weight: bold;
	padding:1% 0;
}

.btn_code a:hover{
	text-decoration: none;
	display: block;
	color:#fff;
	font-weight: bold;
	background-color: #e6d4d1;
}

.point_txt {
	width: 90%;
	margin: 3% auto 5%;
	text-align: center;
	font-size: 13px;
	line-height: 1.6;
	color: #000;
}

.styling_item {
	width: 100%;
	margin-top: 10%;
	text-align: center;
	font-size: 13px;
	letter-spacing: 1.4em;
	color: #b18e89;
	font-weight: bold;
}

.marker-all {
  background: linear-gradient(transparent 0%, #fff 0%);
	padding-left: 2.5%;
}

.styling_item a {
	text-align: center;
	font-size: 14px;
	color: #fff;
	text-decoration: underline;
	letter-spacing: 0.1em;
	line-height: 2.4em;
}

.styling_item a:hover {
	color: #fff;
	text-decoration: none;
}


@media only screen and (max-width: 900px) {

.pc {
	display:none;
}
.sp {
	display:block;
}

.st_wrap {
	width:100%;
	margin:0 auto 0px;
	padding: 8% 0 5%;
}
	
.point_box {
	width: 92%;
}
	
.item_list_m1{
	margin-top: 0% 0 0 0;
}
	
.item_list_m2{
	margin: -36% auto 0 3%;
}
	
.item_list_m3{
	margin: -35.5% auto 0 2.5%;
}

.item_list_m4{
	margin: -48.6% -2.5% 0 0;
}

.item_list_m5{
	margin: 2% auto 0 2.5%;
}

.item_list_m6{
	margin: 2.5% auto 0;
}

.item_list_m7{
	margin: -14.5% 3% 5% 2%;
}

.item_list_m8{
	margin: -15% auto 0;
	text-align: center;
}

.item_list_m9{
	margin: 0 auto -23%;
	text-align: center;
}

.item_list_m10{
	margin: -24% auto 0 -20%;
	text-align: center;
}

.item_list_m11{
	margin: -16% auto 20%;
	text-align: center;
}

#type-js1 {
  font-size: 0.75em;
}

#type-js2 {
  font-size: 0.75em;
}
	
.img_box {
	font-size: 0.5rem;
}
	

            .product-list-container {
                padding: 10px;
            }

            .product-item {
                margin-bottom: 0px;
            }

            .product-name,
            .product-price,
            .buy-link {
                font-size: 0.6rem;
            }

            .product-name {
                margin-right: 10px;
				font-size: 0.6rem;
            }

            .product-price {
                margin-right: 15px;
				font-size: 0.6rem;
            }
	
        .product-item2 {
            display: flex;
            margin-bottom: 0px;
            padding: 2px 0;
        }

       .product-name2 {
            font-size: 0.6rem;
            font-weight: normal;
            letter-spacing: 0.05em;
            text-align: left; /* テキスト自体を右寄せ */
            /* 価格との間隔 */
            margin-right: 20px;
            white-space: nowrap;
		   width: 18%;
        }

        .product-price2 {
            font-size: 0.6rem;
            font-weight: normal;
            text-align: right; /* テキスト自体を右寄せ */
            /* BUYリンクとの間隔 */
            margin-right: 20px;
            white-space: nowrap;
		   width: 23%;
        }

        .buy-link2 {
            font-size: 0.6rem;
            font-weight: normal;
            text-decoration: underline;
            color: black;
            white-space: nowrap;
            /* Flexアイテムとして配置されているため、margin-left: 0; または auto; で調整可能ですが、
               ここでは明示的なマージンは不要です。 */
        }

        .buy-link2:hover,
        .buy-link2:focus {
            opacity: 0.7;
			text-decoration: none;
        }

	
.sub_lead {
	font-size:15px;
}
	
.sub_lead_s {
	font-size:10px;
}
	
.sub_lead2 {
	font-size:11.5px;
}

	
.btn_img {
	width: 50%;
	margin: 2% auto 0;
}
	
.btn_img2 {
	width: 80%;
	margin: 10% auto 5% ;
}
	
.lead {
	text-align:center;
	font-size:14px;
	line-height: 1.8;
	margin-top: 5%;
	margin-bottom: 4%;
}
	
.item_box1 {
	width: 97%;
	margin: 10% auto 2%;
}
	
.item_box2 {
	width: 97%;
	margin: 10% auto 2%;
}

.btn_code {
	color: #000;
	font-size: 90%;
	text-align: center;
	margin: 1% 40% 6%;
	border:2px solid #fff;
	width:20%;
}

.btn_code a{
	text-decoration: none;
	display: block;
	color:#fff;
	font-weight: bold;
	padding:1% 0;
	font-size: 90%;
}

.point_txt {
	width: 90%;
	margin: 3% auto 5%;
	text-align: center;
	font-size: 11px;
	line-height: 1.6;
	color: #000;
}
	
.styling_item {
	width: 100%;
	margin-top: 10%;
	text-align: center;
	font-size: 11px;
	letter-spacing: 1.4em;
	font-weight: bold;
}
	
.styling_item a {
	text-align: center;
	font-size: 12px;
	color: #fff;
	text-decoration: underline;
}
	
.marker-all {
  background: linear-gradient(transparent 0%, #fff 0%);
	padding-left: 4%;
}
	
}
