@charset "UTF-8";
/* CSS Document */


figure {
	margin: 0;
	padding: 0;
}

/* contents */

.advertisement {
	background-color: #ffeecc;
	display: flex;
	justify-content: space-between;
	padding: 12px 24px 6px 24px;
	margin-bottom: 24px;
	border-radius: 12px;
}
.advertisement p {
	font-size: 1.5rem;
	font-weight: bold;
	line-height: 1.5;
	padding-top: 2.5%;
}
.advertisement img {
	width: 250px;
	height: auto;
}

.introduction {
	margin: 0 auto 50px;
}
.introduction p {
	margin-top: 12px;
	font-size: 1.1em;
}


.introduction h3 {
	font-size: 1.4rem;
    font-weight: bold;
    font-family: Noto Serif JP;
    margin: 10px 0;
}

.introduction h4 {
	font-weight: bold;
    margin-top: 1.3rem;
}

.introduction figure {
	position: relative;
	margin-bottom: 12px;
}

.introduction img {
	width: 100%;
	height: auto;
	margin: 10px 0;
	border-radius: 5px;
    box-shadow: 0 0 4px 0 rgb(0 0 0 / 12%), 0 4px 4px 0 rgb(0 0 0 / 22%);
}

.introduction figure img {
	width: 100%;
	height: auto;
	margin: 10px 0;
}

/*
.introduction figure figcaption {
	font-size: 1.5rem;
	line-height: 1.75;
	font-weight: bold;
	font-family: Noto Serif JP;
	position: absolute;
	left: 36px;
	top: 36px;
}
*/

.introduction figure figcaption {
font-size: 0.875rem;
text-align: right;
line-height: 1.5;
}

.half {
	display: flex;
	justify-content: space-between;
	margin-top: 12px;
}

.half img {
	width: 95%;
	height: auto;
	display: grid;
    margin: 0 auto;
}

.bgpaper {
    background: url(/template/default/img/common/bg_paper.webp);
    padding: 20px;
	margin: 15px 0;
}
/*
.bgpaper h2 {
    font: 100% "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", Osaka, "ＭＳ Ｐゴシック", sans-serif;
    font-size: 100%;
    font-size: 1.875rem;
    font-weight: bold;
    padding-bottom: 0;
}
*/
.bgpaper h2 {
	text-align: center;
}
.bgpaper h2 strong {
	color: #ffffff;
	background-color: #330000;
	border-radius: 24px;
	padding: 0 18px 3px;
	margin: 0 0.33rem;
}
.bgpaper h2 br {
	display: none;
}
.bgpaper ol  {
	margin-top: 24px;
}
.bgpaper ol li {
	background-color: #ffffff;
	border-radius: 24px;
	padding: 0 42px ;
	margin-bottom: 24px;
	position: relative;
}

.bgpaper ol li.image {
    width: 70%;
    margin: 0 auto;
	background:none;
	border-radius: 0;
	padding: 0;
}

.bgpaper ol li span {
	display: block;
	font-size: 200%;
	font-weight: bold;
	background-color: #cc8833;
	color: #ffffff;
	border-radius: 50%;
	width: 48px;
	height: 48px;
	text-align: center;
	position: absolute;
	left: -12px;
	top: -12px;
	line-height: 1.66;
}
.bgpaper ol li h3 {
	font-size: 131.25%;
	font-weight: bold;
	color: #330000;
	margin-bottom: 6px;
}

.bgpaper p {
	margin-top: 12px;
}

.bgpaper img {
	width: 100%;
	height: auto;
	margin: 10px 0;
}

.bgpaper figure figcaption {
	font-size: 0.875rem;
	text-align: right;
	line-height: 1.5;
	margin-bottom: 10px;
}

/* 商品バナー */

.itembanner {
  position: relative;
  }

.itembanner p {
  position: absolute;
  color: white;
  bottom:20px ;
  right: 20px;
  margin: 0; 
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 2.5rem;
  line-height: 1;
  padding: 15px 40px;
  border-radius: 10px;
  background-color: #ff7305;
  opacity: 0.9;
  box-shadow: 0 0 3px 0 rgb(0 0 0 / 12%), 0 3px 3px 0 rgb(0 0 0 / 22%);
  font-weight: 600;
    }

@media screen and (max-width: 750px) {
.itembanner p {
	font-size: 1.25rem;
  	bottom:15px;
 	right: 5px;
	padding: 10px 20px;

}
}

/* ご購入はこちらから */

.fromHere {
	text-align: center;
	margin: 48px auto;
}
.fromHere a {
	display: block;
	font-size: 1.5rem;
	font-weight: bold;
	/* width: 24rem;
	height: 72px; */
	margin: 0 auto;
	background-color: #ee0000;
	color: #ffffff;
	padding: 10px 0;
	border-radius: 6px;
}

/* 商品詳細 */


.ItemDetails {
    margin-top: 36px;
}

.ItemDetails dl dt {
	background-color: #ffdd99;
	padding: 0.25rem 1em;
	margin: 0.75em 0;
}

.ItemDetails dl dd {
	padding: 0.25em 0.25em 0.25em 1em;
}

.ItemDetails dl dd.ten {
	padding: 0.25em 0.25em 0.25em 1em;
    margin-left: 1.5em;
	text-indent: -5.5em;
}

.ItemDetails dl dd.ten:before{
	content: "・";
    margin-right: 0.5em;
	margin-left: 4em;
}

.ItemDetails dl dd.kome {
	padding: 0.25em 0.25em 0.25em 1em;
    margin-left: 1.5em;
	text-indent: -5.5em;
}

.ItemDetails dl dd.kome:before{
	content: "※";
    margin-right: 0.5em;
	margin-left: 4em;
}


ol.large {
    position: relative;
    font-size: 1.1rem;
    width: auto;
    margin: 0.2em 0;
    counter-reset: number;
    list-style-type: none !important;
    padding: 0.5em 1em;
}

ol li.large {
    position: relative;
    line-height: 1.8em;
    padding: 0.4em 0 0.4em 35px;
    margin: 0.2em 0 !important;
    width: auto;
	background: none;
	border-radius: 0;
}

ol li.large:before {
    position: absolute;
    counter-increment: number;
    content: counter(number);
    display: inline-block;
    /* background: #63499b; */
    color: #454545;
    font-family: 'Avenir', 'Arial Black', 'Arial', sans-serif;
    font-weight: bold;
    font-size: 15px;
    border-radius: 50%;
    left: 0;
    width: 25px;
    height: 25px;
    line-height: 25px;
    text-align: center;
    vertical-align: top;
    border: solid 1px;
}

/* 表示領域が750px以下の場合に適用するスタイル */
@media screen and (max-width: 750px) {

	/* contents */

	.advertisement {
		display: block;
		padding: 0 24px 6px;
	}
	/*
	.fadvertisement p br {
		display: none;
	}
	*/
	.advertisement img {
		width: 100%;
	}
	figure img {
		width: 100%;
		height: auto;
	}

	.introduction figure figcaption {
		position: static;
		line-height: 1.5;
	}

	.introduction figure figcaption br {
		display: none;
	}


	.bgpaper {
		padding: 15px;
	}
	.bgpaper h2 {
		padding-top: 12px;
		line-height: 1.66;
	}
	.bgpaper h2 br {
		display: block;
	}
	.bgpaper ol {
		margin-left: 5%;
		margin-right: 5%;
	}
	.bgpaper ol li h3 {
		white-space: nowrap;
		line-height: 1.33;
	}

	.bgpaper figure figcaption {
		position: static;
		line-height: 1.5;
	}

	.bgpaper figure figcaption  br{
		display: none;
	}

	.half {
		display: block;
		margin-top: 0;
}

ol.large {
    position: relative;
    width: auto;
    margin: 0.2em 0;
    counter-reset: number;
    list-style-type: none !important;
    padding: 0.5em 0.2em;
}

ol li.large {
    position: relative;
    font-size: 1.2rem;
    line-height: 1.7em;
    padding: 0.3em 0.5em 0.3em 35px;
    margin: 0.2em 0 !important;
    width: auto;
}

ol li.large:before {
    position: absolute;
    counter-increment: number;
    content: counter(number);
    display: inline-block;
    /* background: #63499b; */
    color: #454545;
    font-family: 'Avenir', 'Arial Black', 'Arial', sans-serif;
    font-weight: bold;
    font-size: 15px;
    border-radius: 50%;
	top: 7px;
    left: 0;
    width: 25px;
    height: 25px;
    line-height: 25px;
    text-align: center;
    vertical-align: top;
    border: solid 1px;
}
}
