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

img { -ms-interpolation-mode: bicubic !important; max-width: 100%; }

#campaign-wrapper ol {
	padding: 0 !important;
}

#campaign-wrapper dl,#campaign-wrapper ol,#campaign-wrapper ul {
    /*font-family:"Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif !important;*/
	list-style: none;
    font-size: 14px;
}

#campaign-wrapper a:hover {
	text-decoration: none;
}

#campaign-wrapper a.line {
	text-decoration: underline;
}

#campaign-wrapper a.line:hover {
	text-decoration: none;
}

#campaign-wrapper img.border {
	border: 1px solid #a91212;
}

#campaign-wrapper ul,#campaign-wrapper h4,#campaign-wrapper h5, #campaign-wrapper figure {
	margin: 0;
	padding: 0;
	border: none;
}

#campaign-wrapper * {
	font-size:14px;
	line-height: 1.4;
}

.pc {
	display: block;
}

.mobile {
	display: none;
}

.txtLink {
    text-decoration: underline;
}

.txtLink:hover {
    text-decoration: none;
}

#campaign-wrapper .inner {
	width: 100%;
	max-width: 1140px;
	margin: 0 auto;
}

#campaign-wrapper .flx {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	width: 100%;

	+ .l-sign {
		margin-top: 50px !important;
	}
}

#campaign-wrapper .price {
	display: flex;
	align-items: center;
	gap: 15px;
	font-size: 32px !important;
	color: #EB6112;
	font-weight: bold;
	position: relative;
	padding-left: 30px !important;
	font-family: DaxPro-WideMedium,Dax-Regular,"Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif !important;
	margin: 15px 0 0;

	& > b {
		font-size: inherit;
		font-weight: inherit;
	}
}

#campaign-wrapper .price.is-blue {
	color: #14254f;

	& > strong {
		background: #14254f;

		&::before {
			border-color: transparent transparent transparent #14254f;
		}
	}
}

#campaign-wrapper .price.is-orange {
	color: #eb6112;

	&>strong {
		background: #eb6112;

		&::before {
			border-color: transparent transparent transparent #eb6112;
		}
	}
}

#campaign-wrapper #net .price.is-blue {
	color: #14254f;
}

#campaign-wrapper #net .price::before,
#campaign-wrapper #set .price::before,
#campaign-wrapper #piw .price.is-blue::before {
	background-color: #14254f;
}

#campaign-wrapper .price strong {
	font-size: 14px;
	background: #EB6112;
	color: #FFF;
	font-style: normal;
	display: inline-block;
	width: 95px;
	height: 30px;
	line-height: 30px !important;
	text-align: center;
	vertical-align: 0.4em;
	position: relative;
}

#campaign-wrapper #net .price.is-blue strong {
	background: #14254f;
	color: #fff;
}

#campaign-wrapper .price strong::before {
	content: '';
	position: absolute;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 7px 0 7px 10px;
	border-color: transparent transparent transparent #EB6112;
	top: 0;
	bottom: 0;
	left: -30px;;
	margin: auto 0;
}

#campaign-wrapper #net .price.is-blue strong::before {
	border-color: transparent transparent transparent #14254f;
}

#campaign-wrapper .price span  {
	font-size: 0.75em !important;
}

#campaign-wrapper .price em  {
	font-size: 20px !important;
	font-style: normal;
}

#campaign-wrapper .item .price {
	margin-bottom: 30px !important;
}

#campaign-wrapper .more-btn {
	display: block;
	font-weight: bold;
	background: #131313;
	color: #FFF;
	text-align: center;
	width: 100%;
	max-width: 260px;
	margin: 25px auto 0;
	height: 45px;
	line-height: 45px !important;
}

#campaign-wrapper .more-btn:hover {
	color: #FFF !important;
}

#campaign-wrapper p.cap {
	margin-top: 15px;
	text-align: center;
}

#campaign-wrapper section {
	padding: 80px 0;
}

#campaign-wrapper section.bgGray {
	background: #f5f5f5;
}

#campaign-wrapper nav ul {
	margin: 50px 0 0;
}

#campaign-wrapper section .inner {
	border:1px solid #ccc;
	padding: 60px min(80px, calc(100 / 1140 * 80vw));
	background: #FFF;
}

#campaign-wrapper section.bgGray .inner {
	border: none;
}

#campaign-wrapper section h4 {
	font-size: 24px;
	font-weight: bold;
	border-bottom: 1px solid #53565a;
	padding-bottom: 20px;
	letter-spacing: 0.1px !important;
	margin-bottom: 40px;
}

#campaign-wrapper section h4 strong {
	display: inline-block;
	font-size: 14px;
	background: #eb6112;
	color: #FFF;
	height: 26px;
	line-height: 26px;
	padding: 0 5px;
	margin-right: 15px;
	vertical-align: 0.15em;
}

#campaign-wrapper section h4 strong + strong {
	background: #000;
}

#campaign-wrapper section#net h4 strong {
	background: #14254f;
	color: #fff;
}

#campaign-wrapper section h5 {
	font-weight: bold;
	font-size: 22px;
	margin-top: 40px;
	margin-bottom: 35px;
	padding-bottom: 14px;
	border-bottom: 1px solid #ccc;
}

#campaign-wrapper section h6 {
	font-weight: bold;
	font-size: 20px;
	height: 40px;
	line-height: 40px;
	background: #f5f5f5;
	padding: 0 20px;
}

#campaign-wrapper .po dt {
	margin: 15px 0;
	font-size: 18px;
	font-weight: bold;
}

#campaign-wrapper article dt {
	line-height: 1.7;
	padding-top: 15px;
	margin-bottom: 15px;
}

#campaign-wrapper article dt strong {
	font-size: 18px;
}

#campaign-wrapper article dd > span {
	font-size: 12px;
	display: block;
	margin-top: 15px;
}

#net article + article {
	margin-top: 40px;
}

#net article:last-of-type {
	border-top: 1px solid #ccc;
	padding-top: 40px;
}

#piw article figure {
	width: min(509px, calc(100 / 1140 * 509vw));
}

#piw article dl {
	width: min(430px, calc(100 / 1140 * 430vw));
}

@media screen and (max-width: 810px) {

	#net article figure,
	#piw article figure {
		width: 100%;
	}
	
	#net article dl,
	#piw article dl {
		width: 100%;
	}

	#campaign-wrapper {
		img {
			max-width: initial;
			width: 100%;
		}

		ul {
			img {
				max-width: 100%;
				width: auto;
			}
		}
	}

}

#net article:last-of-type dl {
	max-width: 100%;
}

#net article dt,
#piw article dt.is-guarantee-3,
#mat article dt:not(.no-guarantee) {
	padding-left: 80px;
	background: url("../images/icon_03.jpg") no-repeat left top;
	min-height: 85px;
}

#net article dt {
	padding-left: 0;
	background: none;
}

#net article dt {
	background: none;
	padding-left: 0;
	min-height: 0;
}

#set .set-tit dt {
	font-weight: bold;
	font-size: 22px;
	margin-bottom: 30px;
}

#set .set-tit dd {
	font-size: 16px;
	line-height: 1.6;
	margin-bottom: 35px;
}

#set .set-tit dd {
	font-size: 16px;
	line-height: 1.6;
	margin-bottom: 35px;
}

#mat .po + p {
	font-size: 16px;
	text-align: center;
	margin: 40px 0;
}

#mat article.flx > *,
#mat div.flx > *,
#piw div.flx > * {
	width: 49%;
}

@media screen and (max-width: 810px) {
	#mat article.flx > *,
	#mat div.flx > *,
	#piw div.flx > * {
		width: 100%;
		max-width: 501px;
		margin-left: auto;
		margin-right: auto;
	}
}

#mat .po + p + article {
	border-bottom: 1px solid #ccc;
	padding-bottom: 40px;
	margin-bottom: 40px;
}

#piw .inner div.heightline+ div.heightline {
	border-top: 1px solid #ccc;
	padding-top: 40px;
	margin-top: 40px;
}

#faq dl {
	padding: 30px 0;
}

#faq dt {
	font-weight: bold;
	font-size: 16px;
}

#faq dl dd {
	padding-left: 1em;
	margin-top: 15px;
}

#faq dl dd + dt {
	margin-top: 15px;
}

#pl h5 strong {
	text-align: center;
}

#pl .send {
	margin: 0 auto;
	width: 100%;
	max-width: 980px;
}

#pl .send dt {
	text-align: center;
	font-size: 28px;
	margin-bottom: 30px;
}

#pl .send dd {
	font-size: 15px;
}

#pl .send dd + dd {
	margin-top: 5px;
}

#cmp-shop {
	text-align: center;
	background: #d7d1ca;
	padding: 30px 15px !important;
	font-size: 14px;
}

#cmp-shop p {
	font-size: 14px !important;
}

#cmp-shop p span {
	display: block;
	margin-top: 5px;
}

#cmp-shop dl {
	margin: 30px auto 0;
	max-width:980px;
}

#cmp-shop dl dt {
	color: #FFF;
	background: #53565b;
	font-size: 16px !important;
	height: 40px;
	line-height: 40px !important;
	cursor: pointer;
}

#cmp-shop dl dt span {
	position: relative;
	display: inline-block;
	font-size: 16px !important;
	line-height: 40px !important;
}

#cmp-shop dl dt span::after {
	content: "";
	position: absolute;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	width: 15px;
	height: 15px;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
	right: -30px;
	top: 8px;
}

#cmp-shop dl dd {
	display: none;
	background: #FFF;
	padding: 30px 15px;
}

#cmp-shop dl dd ul li {
	width:50%;
	float: left;
	margin-top: 15px;
}

#cmp-shop dl dd ul li.prefec {
	font-weight: bold;
	margin-top: 0;
	padding-top: 50px;
	clear: both;
	float: none;
	width: 100%;
	font-size: 16px !important;
}

#cmp-shop dl dd ul li.prefec:first-of-type {
	padding-top: 0;
}

#cmp-shop dl dd ul li a {
	text-decoration: underline;
}

#cmp-shop dl dd ul li a:hover {
	text-decoration: none;
}

#campaign-wrapper article dd > em {
	font-style: normal;
}



/*ここから追記*/

.po li {
	position: relative;
}

.po li span {
	position: absolute;
	z-index: 10;
	display: block;
	color: #fff;
	width: 40px;
	height: 40px;
	line-height: 40px !important;
	font-size: 26px!important;
	text-align: center;
	background: #eb6112;
}

.six-item {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    max-width: 900px;
    margin: 0 auto;
    text-align: center;
    font-weight: bold;
}

.six-item li {
    position: relative;
	margin-top: 30px;
}

.six-item li::after {
    position: absolute;
    content: "";
    width: 32px;
    height: 32px;
    background: url("../images/icon_plus.jpg") no-repeat center center;
    top:30px;
    right: -60px;
}

.six-item li:nth-child(3)::after,
.six-item li:nth-child(6)::after {
    display: none;
}

.six-item li p {
    margin-top: 15px;
    font-size: 14px;
}

.set-nav {
	margin-top: 30px;
}

.set-nav a {
	margin-top: 30px;
	border:1px solid #53565a;
}

.t-set {

	+ .t-set, + .l-sign {
		margin-top: 50px !important;
	}

	> .t-set__title {
		margin: 35px auto 0 !important;
		line-height: 1.65;
		text-align: center;
		font-size: 20px !important;
		font-weight: 700;

		> sup {
			top: 0;
		}
	}
}

.t-set ul.six-item {
    background: url("../images/free02.jpg") no-repeat center bottom;
    padding-bottom: 160px !important;
}

.s-set ul.six-item {
    background: url("../images/free01.jpg") no-repeat center bottom;
    padding-bottom: 95px !important;
}

.priceBox {
	max-width: 975px;
	margin: 30px auto 0;
}

.priceBox dl {
	width: 100%;
}

.priceBox dl dt {
	font-weight: normal;
	display: inline-block;
	margin-right: 15px;
	padding-top: 0 !important;
	margin-bottom: 0 !important;
	vertical-align: 0.4em;
}

.priceBox dl dd {
	display: inline-block;
	font-size:28px !important;
	color: #EB6112;
	font-weight: bold;
	padding-left: 30px;
	background: url("../images/special_l.jpg") no-repeat left center;
    font-family: DaxPro-WideMedium,Dax-Regular,"Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif !important;
}

.priceBox dl dd em {
	font-style: normal;
	font-weight: normal;
	display: inline-block;
    margin-left: 15px;
    color: #495057;
    font-size: 12px;
}

.priceBox dl dd strong {
	color: #FFF;
	display: inline-block;
	background: #EB6112;
	padding: 2px 10px;
	font-size: 14px;
	font-weight: normal;
	vertical-align: 0.5em;
	margin-right: 10px;
}

.priceBox dl dd span {
	font-size: 0.65em !important;
	display: inline !important;
}

.priceBox dl + p {
	margin-top: 5px;
	font-size: 16px !important;
}

.rice {
	margin-top: 20px !important;
	margin-bottom: 25px !important;
	background: #fafafa;
	text-align: center;
	padding: 10px !important;
}

.b-cap {
	text-align: right;
	margin-top: 10px;
	font-size: 12px !important;
}

.b-size {
	text-align: center;
	font-size: 16px !important;
	margin: 30px 0 !important;
}

.example {
	font-size: 16px !important;
	max-width: 975px;
	margin: 0 auto 10px !important;
}



@media only screen and (max-width: 810px) {
    
    .pc {
        display: none;
    }
    
    .mobile {
        display: block;
    }
	
	
/***メディアクエリここまで***/}





@media only screen and (max-width: 810px) {
	
	#campaign-wrapper dl, #campaign-wrapper ol, #campaign-wrapper ul {
		font-size: 12px;
	}
	
	#campaign-wrapper * {
		font-size:14px;
		line-height: 1.4;
	}

	.fs-outer .inner {
		box-sizing: border-box;
	}
	
	.section-search .cont-shop-search .body ul li {
		text-indent: 0 !important;
	}
	
	
	.mobile {
		display:block;
	}

	.pc {
		display:none;
	}

	.txtLink {
		text-decoration: underline;
	}

	.txtLink:hover {
		text-decoration: none;
	}

	#campaign-wrapper .inner {
		width: 100%;
		max-width: 1140px;
		margin: 0 auto;
	}

	#campaign-wrapper .flx {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		align-items: flex-start;
		max-width: 501px;
		margin-left: auto;
		margin-right: auto;
	}

	#campaign-wrapper .flx > * {
		width: 49%;
		max-width: 470px;
	}

	#campaign-wrapper .bgBlack {
		background: #181617;
	}

	#campaign-wrapper .borderGold {
		border: 4px solid #b48e34 !important;
	}

	#campaign-wrapper .price {
		display: flex;
		justify-content: flex-start;
		align-items: center;
		gap: min(8px, calc(100 / 750 * 8vw));
		font-size: 26px !important;
		color: #EB6112;
		font-weight: bold;
		position: relative;
		margin-top: 30px;
		line-height: 1.2;
	}
	
	#campaign-wrapper #net .price::before {
		border-color: transparent transparent transparent #d1dcbd;
	}


	#campaign-wrapper .price strong {
		font-size: 12px;
		background: #EB6112;
		color: #FFF;
		font-style: normal;
		min-width: 60px;
		width: fit-content;
		height: 22px;
		padding: 1px 3px 2px;
		box-sizing: border-box;
		line-height: 22px !important;
		text-align: center;
		vertical-align: 0.4em;
		display: block;
		position: relative;
	}
	
	#campaign-wrapper #piw .price,
	#campaign-wrapper #set .price,
	#campaign-wrapper #mat .price {
		margin-top: 10px;
	}
	
	#campaign-wrapper #piw .price strong::before,
	#campaign-wrapper #set .price:not('.is-blue') strong::before,
	#campaign-wrapper #mat .price strong::before {
		content: '';
		position: absolute;
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 6px 0 6px 8px;
		border-color: transparent transparent transparent #EB6112;
		top: -20px;
		bottom: 0;
		left: 0;
		right: 0;
		margin: 0 auto;
		transform: rotate(90deg);
	}

	#campaign-wrapper .price span  {
		font-size: 0.65em !important;
	}

	#campaign-wrapper .price em  {
		font-size: 16px !important;
		font-style: normal;
	}

	#campaign-wrapper .item .price {
		margin-bottom: 15px !important;
		text-align: center;
	}

	#campaign-wrapper .more-btn {
		display: block;
		font-weight: bold;
		background: #131313;
		color: #FFF;
		text-align: center;
		width: 100%;
		max-width: 260px;
		margin: 20px auto 0;
		height: 45px;
		line-height: 45px !important;
	}

	#campaign-wrapper .more-btn:hover {
		color: #FFF !important;
	}
	
	#campaign-wrapper section {
		padding: 40px 2%;
	}

	#campaign-wrapper section .inner {
		padding: 20px 2%;
		background: #FFF;
		border: 1px solid #000;
	}

	#campaign-wrapper section h5 {
		display: flex;
		justify-content: center;
		flex-wrap: wrap;
		align-items: center;
		margin-bottom: 30px !important;
	}

	#campaign-wrapper section h5 > * {
		padding: 0;
		text-align: center;
		width: 100%;
	}
	
	#campaign-wrapper section h5 > span {
		margin-bottom: 10px;
	}
	
	#campaign-wrapper section h5 > span img {
		height: 55px;
		width: auto;
	}

	#campaign-wrapper section h5 strong span {
		font-weight: normal;
		display: block;
		font-size: 14px !important;
		margin-top: 15px;
		text-align: center;
	}

	#campaign-main nav ul {
		padding: 10px 2% 20px;
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}

	#campaign-main nav ul li {
		width: 100%;
		margin-top: 10px;
	}

	#mp h5 + div,
	#ft h5 + div,
	#pl .line {
		padding-bottom: 20px;
		margin-bottom: 20px;
		border-bottom: 1px solid #ccc;
	}
	
	#mp h5 + div > *,
	#ft h5 + div > *,
	#pl .item > * {
		width: 100% !important;
		text-align: center;
	}
	
	#pl .item {
		width: 48% !important;
		text-align: center;
	}
	
	#mp h5 + div figure {
		
	}

	#bs ul {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		margin-bottom: 30px;
	}

	#bs ul li {
		text-align: center;
		font-weight: bold;
		position: relative;
	}

	#bs ul li:nth-child(1) {
		width: 44%;
	}

	#bs ul li:nth-child(2) {
		width: 44%;
	}
	
	#bs ul li:nth-child(3) {
		margin: 10px auto 0;
		padding: 40px 0 0;
		width: 50%;
		position: relative;
	}

	#bs ul li::after {
		position: absolute;
		content: "";
		width: 20px;
		height: 20px;
		background: url("../images/plus.jpg") no-repeat center center / 20px 20px;
		top: 50px;
		right: -20%;
		z-index: 10;
	}
	
	#bs ul li:nth-child(2)::after {
		display: none;
	}

	#bs ul li:nth-child(3)::after {
		display: block;
		position: absolute;
		content: "";
		width: 20px;
		height: 20px;
		background: url("../images/plus.jpg") no-repeat center center / 20px 20px;
		top: 0;
		right: 0;
		left: 0;
		margin: 0 auto;	
	}

	#bs ul li span {
		display: block;
		margin-top: 10px;
		font-size: 12px !important;
	}

	#bs ul li em {
		font-style: normal;
		display: inline-block;
		margin-top: 5px;
		color: #b48e34;
		border: 1px solid #b48e34;
		padding: 2px 10px;
		font-size: 12px !important;
	}
	
	#bs dl {
		text-align: center;
	}

	#bs dl dd:last-child {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}

	#bs dl dd:last-child p {
		width: 100%;
		letter-spacing: 0;
	}

	#bs dl dd:last-child div {
		width: 100%;
		max-width: 260px;
		margin: 15px auto 0;
	}

	#dt .cap span {
		font-size: 14px;
		margin-top: 5px;
		display: block;
	}

	#pl .send {
		margin: 80px auto 0;
		width: 100%;
		max-width: 980px;
	}

	#pl .send dt {
		text-align: center;
		font-size: 28px;
		margin-bottom: 30px;
	}

	#pl .send dd {
		font-size: 15px;
	}

	#pl .send dd + dd {
		margin-top: 5px;
	}
	
	#cmp-shop p {
		font-size: 13px !important;
	}

	#cmp-shop dl {
		margin: 20px auto 0;
	}

	#cmp-shop dl dt {
		font-size: 14px !important;
	}
	
	#cmp-shop dl dt span {
		font-size: 14px !important;
	}

	#cmp-shop dl dt span::after {
		width: 15px;
		height: 15px;
		right: -25px;
		top: 8px;
	}

	#cmp-shop dl dd {
		padding: 20px 10px;
	}
	
	#cmp-shop dl dd ul li {
		width:100%;
		float: none;
		margin-top: 10px;
		font-size: 12px !important;
	}

	#cmp-shop dl dd ul li.prefec {
		padding-top: 30px;
		font-size: 14px !important;
	}
	
	#campaign-wrapper section {
		padding: 40px 0;
	}

	#campaign-wrapper section.bgGray {
		background: #f5f5f5;
	}

	#campaign-wrapper nav ul {
		margin: 0;
		padding: 20px 2% 0;
	}

	#campaign-wrapper section .inner {
		border:1px solid #ccc;
		padding: 20px 2%;
		background: #FFF;
		width: 96%;
		margin: 0 auto;
	}

	#campaign-wrapper section.bgGray .inner {
		border: none;
	}

	#campaign-wrapper section h4 {
		font-size: 18px;
		font-weight: bold;
		border-bottom: 1px solid #53565a;
		padding-bottom: 10px;
		letter-spacing: 0.1px !important;
		margin-bottom: 20px;
		text-align: center;
	}

	#campaign-wrapper section h4 strong {
		display: block;
		font-size: 12px;
		background: #eb6112;
		color: #FFF;
		height: 20px;
		line-height: 20px;
		padding: 0 5px;
		margin-right: 15px;
		vertical-align: 1.4;
		width: 85px;
		margin: 0 auto 5px;
		text-align: center;
	}

	#campaign-wrapper section#net h4 strong {
		background: #14254f;
		color: #fff;
	}
	
	#campaign-wrapper section#bed h4 strong {
		display: inline-block;
		width: auto;
		margin: 0 3px;
	}


	#campaign-wrapper section h4 span {
		display: block;
		font-weight: normal;
		font-size: 12px;
		margin-left: 0;
		text-align: center;
	}

	#campaign-wrapper section h5 {
		font-weight: bold;
		font-size: 16px;
		margin-top: 25px;
		margin-bottom: 15px;
		padding-bottom: 10px;
		border-bottom: 1px solid #ccc;
	}

	#campaign-wrapper section h6 {
		font-weight: bold;
		font-size: 16px;
		height: fit-content;
		line-height: 35px;
		text-align: center;
		background: #f5f5f5;
		margin: 0 auto min(30px, calc(100 / 750 * 30vw));
		padding: 0 20px;
	}

	#campaign-wrapper .po dt {
		margin: 10px 0;
		font-size: 14px;
		font-weight: bold;
	}
	
	#campaign-wrapper .po dd {
		font-size: 12px;
	}

	#campaign-wrapper article dt {
		line-height: 1.5;
		padding-top: 5px;
		margin: 8px 0 10px;
		font-size: 14px;
	}

	#campaign-wrapper article dt strong {
		font-size: 14px;
	}
	
	#campaign-wrapper article dd {
		width: 100%;
		text-align: left;
		font-size: 14px;
	}

	#campaign-wrapper article dd > span {
		font-size: 12px;
		display: block;
		margin-top: 10px;
	}
	
	#campaign-wrapper article dd > em {
		font-style: normal;
		text-align: left;
		display: inline-block;
	}

	#net article + article {
		margin-top: 40px;
	}

	#net article:last-of-type {
		border-top: 1px solid #ccc;
		padding-top: 40px;
	}

	#net article dl {
		width: 100%;
		max-width: initial;
	}

	#net article:last-of-type dl {
		max-width: 100%;
	}

/*
	#net article dt {
		padding-left: 50px;
		background: url("../images/icon_03.jpg") no-repeat left top;
		min-height: 65px;
		background-size: 45px auto; 
		margin-top: 10px;
	}

	#net article:first-of-type dt {
		background: url("../images/icon_10.jpg") no-repeat left top;
		background-size: 45px auto; 
	}
*/

	#net article:last-of-type dt {
		background: none;
		padding-left: 0;
		min-height: 0;
	}

	#set .set-tit dt {
		font-weight: bold;
		font-size: 16px;
		margin-bottom: 10px;
		text-align: center;
	}

	#set .set-tit dd {
		font-size: 16px;
		line-height: 1.6;
		margin-bottom: 35px;
	}

	#set .set-tit dd {
		font-size: 12px;
		line-height: 1.4;
		margin-bottom: 15px;
		text-align: center;
	}

	#mat .po + p {
		font-size: 12px !important;
		text-align: center;
		margin: 15px 0;
	}

	#mat article.flx > *,
	#mat div.flx > * {
		width: 100%;
		max-width: 501px;
	}

	#mat .po + p + article {
		border-bottom: 1px solid #ccc;
		padding-bottom: 40px;
		margin-bottom: 40px;
	}
	
	#mat .po + p + article > * {
		width: 49%;
	}

	#piw .inner div.heightline + div.heightline {
		border-top: 0;
		margin-top: 0;
		padding-top: 0;
	}

	#piw .inner div:last-child {
		border-top: 0;
		padding-top: 40px;
		margin-top: 40px;
	}
	
	#faq dl {
		padding: 20px 0;
	}

	#faq dt {
		font-weight: bold;
		font-size: 14px;
	}

	#faq dl dd {
		padding-left: 1em;
		margin-top: 10px;
	}

	#faq dl dd + dt {
		margin-top: 15px;
	}

	#pl {
		padding-top: 0 !important;
	}

	#pl h5 strong {
		text-align: center;
	}

	#pl .send {
		margin: 0 auto;
		width: 100%;
		max-width: 980px;
	}

	#pl .send dt {
		text-align: center;
		font-size: 28px;
		margin-bottom: 30px;
	}

	#pl .send dd {
		font-size: 15px;
	}

	#pl .send dd + dd {
		margin-top: 5px;
	}

	#cmp-shop {
		text-align: center;
		background: #d7d1ca;
		padding: 30px 15px !important;
		font-size: 14px;
	}

	#cmp-shop p {
		font-size: 14px !important;
	}

	#cmp-shop p span {
		display: block;
		margin-top: 5px;
	}

	#cmp-shop dl {
		margin: 30px auto 0;
		max-width:980px;
	}

	#cmp-shop dl dt {
		color: #FFF;
		background: #53565b;
		font-size: 16px !important;
		height: 40px;
		line-height: 40px !important;
		cursor: pointer;
	}

	#cmp-shop dl dt span {
		position: relative;
		display: inline-block;
		font-size: 16px !important;
		line-height: 40px !important;
	}

	#cmp-shop dl dt span::after {
		content: "";
		position: absolute;
		border-top: 1px solid #fff;
		border-right: 1px solid #fff;
		width: 15px;
		height: 15px;
		-webkit-transform: rotate(135deg);
		transform: rotate(135deg);
		right: -30px;
		top: 8px;
	}

	#cmp-shop dl dd {
		display: none;
		background: #FFF;
		padding: 30px 15px;
	}

	#cmp-shop dl dd ul li {
		width:50%;
		float: left;
		margin-top: 15px;
	}

	#cmp-shop dl dd ul li.prefec {
		font-weight: bold;
		margin-top: 0;
		padding-top: 50px;
		clear: both;
		float: none;
		width: 100%;
		font-size: 16px !important;
	}

	#cmp-shop dl dd ul li.prefec:first-of-type {
		padding-top: 0;
	}

	#cmp-shop dl dd ul li a {
		text-decoration: underline;
	}

	#cmp-shop dl dd ul li a:hover {
		text-decoration: none;
	}
	
	#campaign-wrapper #net article.flx > *,
	#campaign-wrapper #piw article.flx > * {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		width: 100%;
		max-width: initial;
		margin: 0 auto;

		& > a {
			& > img {
				max-width: initial;
				width: 100%;
			}
		}
	}
	
	#campaign-wrapper article.flx > figure {
		text-align: center;
		margin-bottom: 15px;
	}
	
	#campaign-wrapper p.cap {
		margin-top: 10px;
		text-align: center;
		font-size: 12px;
	}
	
	#campaign-wrapper p.cap a {
		font-size: 12px;
	}
	
	#campaign-wrapper .flx.po{
		align-items: flex-start;
	}
	
	#campaign-wrapper .flx.po > * {
		width: 32%;
	}
	
	#campaign-wrapper #piw article dd img {
		height: 20px;
		width: auto;
	}

    #campaign-wrapper nav .flx > * {
		 width: 18.5%;
	}
	
	.setTit {
		width: 100% !important;
		max-width: 501px !important;
		margin-left: auto;
		margin-right: auto;
	}
	
	
	
	
	/*ここから追記*/
	.po li {
		position: relative;
	}

	.po li span {
		position: absolute;
		z-index: 10;
		display: block;
		color: #fff;
		width: 20px;
		height: 20px;
		line-height: 20px !important;
		font-size: 13px!important;
		text-align: center;
		background: #eb6112;
	}

	.six-item {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		max-width: 900px;
		margin: 0 auto;
		text-align: center;
		font-weight: bold;
	}

	.six-item li {
		position: relative;
		margin-top: 15px;
		width: 44%;
	}

	.six-item li::after {
		position: absolute;
		content: "";
		width: 32px;
		height: 32px;
		background: url("../images/icon_plus.jpg") no-repeat center center / 20px 20px;;
		top:30px;
		right: -20%;
	}

	.six-item li:nth-child(2)::after,
    .six-item li:nth-child(4)::after,
    .six-item li:nth-child(6)::after {
        display: none;
    }
    
    .six-item li:nth-child(3)::after {
        display: block;
    }

	.six-item li p {
		margin-top: 10px;
		font-size: 14px;
	}

	.set-nav {
		margin-top: 30px;
	}

	.set-nav a {
		margin-top: 30px;
		border:1px solid #53565a;
	}

	.t-set {

		> .t-set__title {
			margin: calc(36px / 2) 0 !important;
			text-align: left;
			font-size: 13px !important;
		}
	}

	.t-set ul.six-item {
		background: url("../images/free02.jpg") no-repeat center bottom / auto 80px;;
		padding-bottom: 100px !important;
	}

	.s-set ul.six-item {
		background: url("../images/free01.jpg") no-repeat center bottom / auto 42px;;
		padding-bottom: 62px !important;
	}

	.priceBox {
		max-width: 975px;
		margin: 30px auto 0;
	}

	.priceBox dl {
		width: 100%;
	}

	.priceBox dl dt {
		font-weight: normal;
		display: inline-block;
		margin-right: 15px;
		padding-top: 0 !important;
		margin-bottom: 0 !important;
		vertical-align: 0.4em;
	}

	.priceBox dl dd {
		display: inline-block;
		font-size:28px !important;
		color: #EB6112;
		font-weight: bold;
		padding-left: 30px;
		background: url("../images/special_l.jpg") no-repeat left center;
		font-family: DaxPro-WideMedium,Dax-Regular,"Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif !important;
	}

	.priceBox dl dd em {
		font-style: normal;
		font-weight: normal;
		display: inline-block;
		margin-left: 15px;
		color: #495057;
		font-size: 12px;
	}

	.priceBox dl dd strong {
		color: #FFF;
		display: inline-block;
		background: #EB6112;
		padding: 2px 10px;
		font-size: 14px;
		font-weight: normal;
		vertical-align: 0.5em;
		margin-right: 10px;
	}

	.priceBox dl dd span {
		font-size: 0.65em !important;
		display: inline !important;
	}

	.priceBox dl + p {
		margin-top: 5px;
		font-size: 12px !important;
	}

	.rice {
		margin-top: 20px !important;
		margin-bottom: 25px !important;
		background: #fafafa;
		text-align: center;
		padding: 10px !important;
	}

	.b-cap {
		text-align: right;
		margin-top: 5px;
		font-size: 10px !important;
	}

	.b-size {
		text-align: left;
		font-size: 12px !important;
		margin: 15px 0;
	}
	
	.free + p {
		font-size: 12px !important;
	}

	.example {
		font-size: 12px !important;
		max-width: 975px;
		margin: 0 auto 10px !important;
	}
	
	#piw div.hlTarget {
		min-height: fit-content;
	}
	
	
/***メディアクエリここまで***/}

@media only screen and (max-width: 640px) {
    
    #campaign-wrapper nav .flx > * {
		 width: 49%;
	}
	
	#campaign-wrapper nav .flx > li:first-child {
		 width: 100%;
	}
	
	
/***メディアクエリここまで***/}

#campaign-wrapper {

	& > section {
		& > .inner {
			& > h4 {
				display: flex;
				align-items: center;
				gap: 18px;

				& > b {
					display: flex;
					flex-direction: column;
					justify-content: center;
					gap: 4px;

					& > strong {
						margin-right: 0;
						text-align: center;
					}
				}
			}
		}

		&#net {
			& > .inner {
				& > h4 {
					& > b {
						& > strong {
							&:last-child {
								border: 1px solid #14254f;
								background: #FFF;
								color: #14254f;
							}
						}
					}
				}
			}
		}
	}

	.l-grid {
		display: grid;
	}

	.l-grid.l-grid--col5 {
		grid-template-columns: repeat(5, 1fr);
		gap: 20px;
	}

	.l-grid.l-grid__item--col2 {
		grid-template-columns: repeat(2, 1fr);
		gap: 40px;
	}

	.l-grid__item--ptn1 {
		.l-grid__item_price {
			display: flex;
			align-items: center;
			margin-top: 16px;
			padding-left: 30px;
			position: relative;

			&::before {
				content: "";
				width: 11.88px;
				height: 14.24px;
				clip-path: polygon(0 0, 100% 50%, 0 100%);
				background: #EB6112;
				position: absolute;
				top: 50%;
				left: 0;
				translate: 0 -50%;
			}
		}

		.l-grid__item_price-head {
			display: flex;
			align-items: center;
		}

		.l-grid__item_tags {
			display: flex;
			flex-direction: column;
			gap: 4px;
		}

		.l-grid__item_off {
			dispaly: block;
			width: fit-content;
			padding: 5px 12px;
			box-sizing: border-box;
			background: #EB6112;
			line-height: 1.2;
			letter-spacing: 0.05em;
			font-size: 14px;
			font-weight: 600;
			color: #FFF;
		}

		.l-grid__item_shipping {
			dispaly: block;
			width: fit-content;
			padding: 5px 12px;
			border: 1px solid #EB6112;
			box-sizing: border-box;
			line-height: 1.2;
			letter-spacing: 0.05em;
			font-size: 14px;
			font-weight: 600;
			color: #EB6112;
		}

		.l-grid__item_num {
			display: block;
			margin-left: 12px;
			line-height: 1.2;
			font-size: 20px;
			font-weight: 700;
			color: #EB6112;

			& > strong {
				font-size: 33px;
			}
		}

		.l-grid__item_difference {
			dispaly: block;
			width: fit-content;
			margin-left: 9px;
			padding: 5px 12px;
			border: 1px solid #EB6112;
			box-sizing: border-box;
			line-height: 1.2;
			letter-spacing: 0.05em;
			font-size: 14px;
			font-weight: 600;
			color: #EB6112;
		}
	}

	.l-grid__item--ptn2 {
		.l-grid__item_price {
			display: flex;
			align-items: center;
			margin-top: 18px;
			padding-left: 30px;
			position: relative;

			&::before {
				content: "";
				width: 11.88px;
				height: 14.24px;
				clip-path: polygon(0 0, 100% 50%, 0 100%);
				background: #14254f;
				position: absolute;
				top: 50%;
				left: 0;
				translate: 0 -50%;
			}
		}

		.l-grid__item_price-head {
			display: flex;
			align-items: center;
		}

		.l-grid__item_tags {
			display: flex;
			flex-direction: column;
			gap: 4px;
		}

		.l-grid__item_off {
			padding: 5px 15px;
			box-sizing: border-box;
			background: #14254f;
			line-height: 1.2;
			letter-spacing: 0.05em;
			font-size: 14px;
			font-weight: 600;
			color: #FFF;
		}

		.l-grid__item_shipping {
			padding: 5px 12px;
			border: 1px solid #14254f;
			box-sizing: border-box;
			line-height: 1.2;
			letter-spacing: 0.05em;
			font-size: 14px;
			font-weight: 600;
			color: #14254f;
		}

		.l-grid__item_num {
			display: block;
			margin-left: 19px;
			line-height: 1.2;
			font-size: 22px;
			font-weight: 700;
			color: #14254f;

			& > strong {
				font-size: 34px;
			}
		}

		.l-grid__item_difference {
			dispaly: block;
			width: fit-content;
			margin-left: 10px;
			padding: 5px 10px;
			border: 1px solid #14254f;
			box-sizing: border-box;
			line-height: 1.2;
			letter-spacing: 0.05em;
			font-size: 14px;
			font-weight: 600;
			color: #14254f;
		}
	}

	.l-title--ptn1 {
		display: block;
		max-width: 1140px;
		width: 100%;
		margin: 0 auto;
		padding: 30px 0;
		background: #D7D2CB;
		line-height: calc(24 / 21.99);
		letter-spacing: 0.1em;
		text-align: center;
		font-size: 21.99px;
		font-weight: 700;
		color: #53565A;

		>small {
			letter-spacing: 0.1em;
			font-size: 13.99px;
		}
	}

	.l-grid-block--ptn1 {
		grid-template-columns: min(509px, calc(100 / 1377 * 509vw)) 1fr;
		gap: 38.7px;

		ul {
			& > a {
				display: flex;
				flex-direction: column;
				gap: 5px;

				& > li {
					& > img {
						margin-left: 5px;
					}
				}
			}
		}

		.default-price {
			margin-top: 30px;
		}

		.l-grid__item_price {
			display: flex;
			align-items: center;
			margin-top: 16px;
			padding-left: 30px;
			position: relative;

			&::before {
				content: "";
				width: 11.88px;
				height: 14.24px;
				clip-path: polygon(0 0, 100% 50%, 0 100%);
				background: #EB6112;
				position: absolute;
				top: 50%;
				left: 0;
				translate: 0 -50%;
			}

			&.is-blue {
				&::before {
					background: #14254f;
				}

				.l-grid__item_off {
					background: #14254f;
				}

				.l-grid__item_num {
					color: #14254f;
				}

				.l-grid__item_difference {
					border-color: #14254f;
					color: #14254f;
				}
			}
		}

		.l-grid__item_price-head {
			display: flex;
			align-items: center;
		}

		.l-grid__item_off {
			dispaly: block;
			padding: 5px 12px;
			box-sizing: border-box;
			background: #EB6112;
			line-height: 1.2;
			letter-spacing: 0.05em;
			font-size: 14px;
			font-weight: 600;
			color: #FFF;
		}

		.l-grid__item_num {
			display: block;
			margin-left: 12px;
			line-height: 1.2;
			font-size: 20px;
			font-weight: 700;
			color: #EB6112;

			& > strong {
				font-size: 33px;
			}
		}

		.l-grid__item_difference {
			dispaly: block;
			width: fit-content;
			margin-left: 9px;
			padding: 5px 12px;
			border: 1px solid #EB6112;
			box-sizing: border-box;
			line-height: 1.2;
			letter-spacing: 0.05em;
			font-size: 14px;
			font-weight: 600;
			color: #EB6112;
		}
	}

	.l-grid-block--ptn2 {
		grid-template-columns: min(604px, calc(100 / 1377 * 604vw)) 1fr;
		gap: 27.9px;

		.l-grid-block__title {
			line-height: calc(30 / 18);
			letter-spacing: 0.1em;
			font-size: 18px;
			font-weight: 700;
		}

		.l-grid-block__default {
			line-height: calc(22 / 16);
			letter-spacing: 0.05em;
			font-size: 15.59px;
			font-weight: 400;
		}
	}

	.present {
		margin: 40px auto 0;
		padding: 42px 0 40px;
		box-sizing: border-box;
		background: #F5F5F5;
	}

	.present__content {
		padding-left: min(243px, calc(100 / 1377 * 243vw));
		position: relative;
	}

	.present__content::before {
		content: "";
		width: min(118px, calc(100 / 1377 * 118vw));
		height: min(155px, calc(100 / 1377 * 155vw));
		background: url(../images/img-03.jpg) 50% 50% / 100% no-repeat;
		position: absolute;
		top: 0;
		left: min(66px, calc(100 / 1377 * 66vw));
	}

	.present__content::after {
		content: "";
		width: min(220px, calc(100 / 1377 * 220vw));
		height: min(155px, calc(100 / 1377 * 155vw));
		background: url(../images/img-04.jpg) 50% 50% / 100% no-repeat;
		position: absolute;
		top: 0;
		right: min(40px, calc(100 / 1377 * 40vw));
	}

	.present__title {
		display: flex;
		flex-direction: column;
		justify-content: flex-start;
		align-items: flex-start;
		gap: 21.5px;
		margin: 0 0 21.2px;
		padding: 0;
		border-bottom: 0;

		> span {
			display: block;
			width: fit-content;
			padding: 5px 10px;
			border: 1px solid #14254f;
			box-sizing: border-box;
			color: #14254f;
		}

		> strong {
			display: block;
			line-height: calc(24 / 17.77);
			letter-spacing: 0.1em;
			font-size: 17.77px;
			font-weight: 700;
		}
	}

	.present__caption {
		line-height: calc(20 / 14);
		letter-spacing: 0.05em;
		font-size: 14px;
		font-weight: 400;
	}

	.present__btn {
		display: flex;
		flex-direction: column;
		align-items: center;
		margin: 25.7px auto 0;
	}

	.l-sign {
		display: flex;
		align-items: center;
		gap: 18px;
	}

	.l-sign__tags {
		display: flex;
		flex-direction: column;
		gap: 4px;
		width: 120px;
		text-align: center;

		& > span {
			display: flex;
			flex-direction: column;
			justify-content: center;
			align-items: center;
			width: 100%;
			height: 26px;
			border-width: 1px;
			border-style: solid;
			box-sizing: border-box;
			line-height: 1.2;
			font-size: 15px;
			font-weight: 500;
		}
	}

	.l-sign.is-blue {
		.l-sign__tags {
			& > span:nth-child(1) {
				border-color: #14254f;
				background: #14254f;
				color: #FFF;
			}

			& > span:nth-child(2) {
				border-color: #14254f;
				color: #14254f;
			}
		}
	}

	.l-sign.is-orange {
		.l-sign__tags {
			& > span:nth-child(1) {
				border-color: #EB6112;
				background: #EB6112;
				color: #FFF;
			}

			& > span:nth-child(2) {
				border-color: #EB6112;
				background: #FFF;
				color: #EB6112;
			}
		}
	}

	.l-sign__main {
		width: calc(100% - 124px);
		line-height: calc(28 / 26);
		letter-spacing: 0.1em;
		font-size: 26px;
		font-weight: 700;
		font-feature-settings: 'palt';

		small {
			font-weight: 400;
		}
	}

	.l-delivery {
		margin: 12px 0 0 32px;
		padding-left: 50px;
		position: relative;
		line-height: 1.6;
		font-size: 14px;
		font-weight: 700;

		&::before {
			content: "";
			width: 39px;
			height: 22px;
			background: 50% 50% / 100% no-repeat;
			position: absolute;
			top: 50%;
			left: 0;
			translate: 0 -50%;
		}

		&.is-blue {
			color: #14254f;

			&::before {
				background-image: url(../images/delivery-blue.png);
			}
		}

		&.is-orange {
			color: #EB6112;

			&::before {
				background-image: url(../images/icon-delivery-orange.png);
			}
		}
	}

	.l-bednav {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: 40px;
		margin: 0 auto 50px;
	}

	.l-itemsize--ptn1 {
		display: block;
		max-width: 609px;
		width: 100%;
		margin: 0 auto;
	}

	.l-delivery--ptn2 {
		max-width: 540px;
		width: 100%;
		margin: 19.5px auto 0;
	}

	.l-pricebox--ptn1 {
		.l-pricebox__caption {
			margin: 0 auto;
			line-height: calc(22 / 14);
			letter-spacing: 0.05em;
			text-align: center;
			font-size: 14px;
			font-weight: 400;
		}

		.l-pricebox__title {
			width: fit-content;
			margin: 38px auto 0;
			padding: 0 0 20px;
			border-bottom: 0;
			box-sizing: border-box;
			position: relative;
			line-height: calc(20 / 18);
			letter-spacing: 0.05em;
			text-align: center;
			font-size: 18px;
			font-weight: 700;

			&::after {
				content: "";
				width: 28px;
				height: 2px;
				background: #EB6112;
				position: absolute;
				left: 50%;
				bottom: 0;
				translate: -50% 0;
			}
		}

		.l-pricebox__name {
			margin: 25.6px auto 0;
			line-height: calc(22 / 15.6);
			letter-spacing: 0.05em;
			font-size: 15.6px;
			font-weight: 400;
		}

		.l-pricebox__content {
			display: flex;
			justify-content: space-between;
			align-items: center;
			margin: 18.5px auto 0;
		}

		.l-pricebox__price {
			display: flex;
			align-items: center;
			width: calc(100% - 165px);
		}

		.l-pricebox__default {
			display: block;
			width: fit-content;
			margin-right: 19px;
			line-height: calc(20 / 14);
			letter-spacing: 0.05em;
			font-size: 14px;
			font-weight: 400;
		}

		.l-pricebox__sale {
			display: flex;
			align-items: center;
		}

		.l-pricebox__sale_off {
			display: block;
			width: fit-content;
			margin-left: 32px;
			padding: 5px 12px;
			box-sizing: border-box;
			background: #EB6112;
			position: relative;
			line-height: 1.4;
			letter-spacing: 0.025em;
			font-size: 14px;
			font-weight: 600;
			color: #FFF;

			&::before {
				content: "";
				width: 11.88px;
				height: 14.24px;
				clip-path: polygon(0 0, 100% 50%, 0 100%);
				background: #EB6112;
				position: absolute;
				top: 50%;
				right: calc(100% + 20px);
				translate: 0 -50%;
			}
		}

		.l-pricebox__sale_num {
			display: block;
			width: fit-content;
			margin-left: 20px;
			line-height: 1;
			font-size: 22px;
			font-weight: 700;
			color: #EB6112;

			& > strong {
				font-size: 34px;
			}
		}

		.l-pricebox__sale_difference {
			display: block;
			width: fit-content;
			margin-left: 10px;
			padding: 5px 12px;
			border: 1px solid #EB6112;
			box-sizing: border-box;
			line-height: 1.2;
			letter-spacing: 0.025em;
			font-size: 14px;
			font-weight: 600;
			color: #EB6112;
		}

		.l-pricebox__btn {
			display: block;
			min-width: 165px;
			width: fit-content;
			padding: 13.5px 0;
			border-radius: 0;
			box-sizing: border-box;
			background: #131313;
			line-height: calc(18 / 16);
			letter-spacing: 0.025em;
			text-decoration: none;
			text-align: center;
			font-size: 16px;
			font-weight: 600;
			color: #FFF;
		}

		.l-pricebox__att {
			margin: 20px 0 0;
			line-height: calc(22 / 14);
			font-size: 14px;
		}
	}

	#bed {
		.l-delivery--ptn2 {
			margin-bottom: 40px;
		}
	}

}

@media screen and (max-width: 810px) {

#campaign-wrapper {

	& > section {
		& > .inner {
			& > h4 {
				flex-direction: column;
				gap: 9.6px;

				& > b {
					flex-direction: row;
					gap: 15px;
				}
			}
		}
	}

	.l-grid {
		display: grid;

		& > dl {
			display: flex;
			flex-direction: column;
			align-items: flex-start;
			width: 100%;
			margin: 0 0;
		}
	}

	.l-grid.l-grid--col5 {
		grid-template-columns: repeat(2, 1fr);
		gap: calc(100 / 750 * 28.6vw) calc(100 / 750 * 18vw);

		& > li:first-child {
			grid-column: 1 / 3;
		}
	}

	.l-grid.l-grid__item--col2 {
		grid-template-columns: 100%;
		gap: min(18px, calc(100 / 375 * 18vw));
		max-width: 501px;
		width: 100%;
		margin-left: auto;
		margin-right: auto;
	}

	.l-grid__item--ptn1 {
		.l-grid__item_price {
			margin-top: 20px;
			position: relative;
		}

		.l-grid__item_off {
			display: grid;
			place-content: center;
			width: fit-content;
			height: 22px;
			padding: 1px 2px 2px;
			font-size: 12px;
		}

		.l-grid__item_num {
			margin-left: 8px;
			line-height: 1;
			font-size: 14px;

			& > strong {
				font-size: 26px;
			}
		}

		.l-grid__item_difference {
			margin: 0 0 0 10px;
			font-size: 12px;
		}
	}

	.l-grid__item--ptn2 {
		& > dt {
			margin: 0;
			box-sizing: border-box;
		}

		.l-grid__item_price {
			margin-top:55px;
			position: relative;
		}

		.l-grid__item_off {
			padding: 8px 10px 5px;
			font-size: 10px;
		}

		.l-grid__item_shipping {
			padding: 8px 10px 5px;
			font-size: 10px;
		}

		.l-grid__item_num {
			margin-left: min(8px, calc(100 / 750 * 8vw));
			line-height: 1;
			font-size: 14px;

			& > strong {
				font-size: 24px;
			}
		}

		.l-grid__item_difference {
			margin: min(10px, calc(100 / 750 * 10vw));
			font-size: 10px;
		}
	}

	.l-title--ptn1 {
		width: 96%;
		padding: 15px 0;
		font-size: 17px;

		& > small {
			font-size: 10px;
		}
	}

	.l-grid-block--ptn1 {
		grid-template-columns: 100%;
		gap: calc(37.4px / 2);
		max-width: 501px;
		width: 100%;
		margin-left: auto;
		margin-right: auto;

		& > figure {
			width: 100%;
			max-width: initial;

			& > a {
				& > img,
				& > picture {
					width: 100%;
					max-width: initial;
				}

				& > picture {
					& > img {
						width: 100%;
						max-width: initial;
					}
				}
			}
		}

		.l-grid__item_price {
			margin-top: min(55px, calc(100 / 750 * 55vw));
			position: relative;
		}

		.l-grid__item_off {
			display: grid;
			place-content: center;
			height: 22px;
			padding: 1px 3px 2px;
			font-size: 12px;
		}

		.l-grid__item_num {
			margin-left: min(8px, calc(100 / 750 * 8vw));
			line-height: 1;
			font-size: 14px;

			& > strong {
				font-size: 26px;
			}
		}

		.l-grid__item_difference {
			margin: 0 0 0 10px;
			font-size: 12px;
		}
	}

	.l-grid-block--ptn2 {
		grid-template-columns: 100%;
		gap: calc(37.4px / 2);

		& > figure {
			width: 100%;
			max-width: initial;

			& > a {
				& > img {
					width: 100%;
					max-width: initial;
				}
			}
		}

		.l-grid-block__title {
			margin-bottom: 14px;
			text-align: center;
			line-height: calc(45 / 30);
			font-size: 15px;
		}

		.l-grid-block__default {
			text-align: center;
			font-size: 12px;
		}
	}

	.present {
		margin: 55px auto 0;
		padding: 60px 30px 40px;
	}

	.present__content {
		max-width: 480px;
		margin: 0 auto;
		padding-left: 0;
		position: relative;
	}

	.present__content::before {
		display: none;
	}

	.present__content::after {
		display: none;
	}

	.present__title {
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		gap: 20px;
		width: fit-content;
		min-height: min(195px, calc(100 / 750 * 195vw));
		margin: 0 0 min(69px, calc(100 / 750 * 69vw)) auto;
		padding: 0;
		border-bottom: 0;

		& > span {
			font-size: 12px;
		}

		& > strong {
			font-size: 15px;
		}

		&::before {
			content: "";
			width: min(148px, calc(100 / 750 * 148vw));
			height: min(195px, calc(100 / 750 * 195vw));
			background: url(../images/img-03.jpg) 50% 50% / 100% no-repeat;
			position: absolute;
			top: 0;
			left: 0;
		}
	}

	.present__caption {
		width: 100%;
		min-height: min(155px, calc(100 / 750 * 155vw));
		position: relative;
		line-height: calc(34 / 24);
		letter-spacing: 0.05em;
		font-size: 12px;
		font-weight: 400;

		&::after {
			content: "";
			width: min(220px, calc(100 / 750 * 220vw));
			height: min(155px, calc(100 / 750 * 155vw));
			background: url(../images/img-04.jpg) 50% 50% / 100% no-repeat;
			position: absolute;
			top: 0;
			right: 0;
		}
	}

	.present__btn {
		margin: 40px auto 0;
	}

	.l-sign {
		flex-direction: column;
		gap: 9.6px;
	}

	.l-sign__tags {
		flex-direction: row;
		justify-content: center;
		gap: 15px;
		width: auto;

		& > span {
			width: fit-content;
			height: 20px;
			padding: 0 min(10px, calc(100 / 750 * 10vw));
			font-size: 11px;
		}
	}

	.l-sign__main {
		width: 100%;
		line-height: calc(44 / 34);
		text-align: center;
		font-size: 17px;
	}

	.l-delivery {
		width: fit-content;
		margin: min(15px, calc(100 / 750 * 15vw)) auto 0;
		padding-left: min(65px, calc(100 / 750 * 65vw));
		font-size: 16.5px;

		&::before {
			content: "";
			width: min(47px, calc(100 / 750 * 47vw));
			height: min(26px, calc(100 / 750 * 26vw));
		}

		&.is-blue {
			color: #14254f;

			&::before {
				background-image: url(../images/delivery-blue.png);
			}
		}
	}

	.l-bednav {
		gap: min(20px, calc(100 / 750 * 20vw));
		margin: 0 auto calc(60px, calc(100 / 750 * 60vw));
	}

	.l-itemsize--ptn1 {
		display: block;
		max-width: min(633.5px, calc(100 / 750 * 633.5vw));
		width: 100%;
		margin: 0 auto;
	}

	.l-delivery--ptn2 {
		max-width: min(583px, calc(100 / 750 * 583vw));
		width: 100%;
		margin: 20px auto 0;
	}

	.l-pricebox--ptn1 {
		.l-pricebox__caption {
			font-size: 9px;
		}

		.l-pricebox__title {
			margin: min(53px, calc(100 / 750 * 53vw)) 0 0;
			padding: 0 0 min(11.5px, calc(100 / 750 * 11.5vw));
			text-align: left;
			font-size: 12px;

			&::after {
				content: "";
				width: min(64px, calc(100 / 750 * 64vw));
				height: min(4px, calc(100 / 750 * 4vw));
			}
		}

		.l-pricebox__name {
			margin: min(30px, calc(100 / 750 * 30vw)) auto 0;
			line-height: calc(36 / 24);
			font-size: 12px;
		}

		.l-pricebox__content {
			flex-direction: column;
			align-items: flex-start;
			gap: min(47.8px, calc(100 / 750 * 47.8vw));
			margin: min(30px, calc(100 / 750 * 30vw)) 0 0;
		}

		.l-pricebox__price {
			flex-direction: column;
			align-items: flex-start;
			gap: min(15px, calc(100 / 750 * 15vw));
			width: 100%;
		}

		.l-pricebox__default {
			margin: 0;
			line-height: calc(36 / 20);
			font-size: 12px;
		}

		.l-pricebox__sale {
			justify-content: center;
		}

		.l-pricebox__sale_off {
			display: grid;
			place-content: center;
			width: fit-content;
			height: 22px;
			padding: 1px 3px 2px;
			box-sizing: border-box;
			background: #EB6112;
			position: relative;
			line-height: 1.4;
			letter-spacing: 0.025em;
			font-size: 12px;
			font-weight: 600;
			color: #FFF;
		}

		.l-pricebox__sale_num {
			margin-left: 10px;
			font-size: 16px;

			& > strong {
				font-size: 26px;
			}
		}

		.l-pricebox__sale_difference {
			margin-left: 10px;
			font-size: 10.5px;
		}

		.l-pricebox__btn {
			display: flex;
			flex-direction: column;
			justify-content: center;
			align-items: center;
			min-width: 200px;
			width: fit-content;
			height: 41px;
			margin: 0 auto;
			padding: 0 0;
			font-size: 14px;
		}

		.l-pricebox__att {
			margin-top: 10px;
			font-size: 12px;
		}
	}

}

}

.l-mv:has(+ .l-item-grid--ptn1) {
	margin-bottom: 42.1px;
}

.l-mv__image figcaption {
	display: block;
	margin: 10px 0 0 auto;
	line-height: 1.6666666667;
	letter-spacing: 0.05em;
	text-align: right;
	font-size: 12px;
	font-weight: 400;
}

.l-mv__title {
	margin: 0 auto 30px !important;
	line-height: 1.2001668057;
	letter-spacing: 0.1em;
	font-size: 24px !important;
	font-weight: 700;
}

@media only screen and (max-width: 810px) {
	.l-mv__title {
		margin-bottom: 20px !important;
		text-align: center;
		font-size: 13px !important;
	}
}

.l-mv__nav {
	margin: 50px auto 0;
}

.l-mv__nav_list {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: min(41px, 2.9839883552vw);
}

.l-mv__lead {
	margin: 30px auto 0;
	line-height: 1.2062893082;
	text-align: center;
	font-size: 15.99px;
	font-weight: 400;
}

@media only screen and (max-width: 810px) {
	.l-mv__lead {
		margin-top: 2.6666666667vw;
		font-size: 3.2vw;
	}
}

.l-mv__shipping {
	width: 540.1px;
	margin: 30px auto 0;
}

@media only screen and (max-width: 810px) {
	.l-mv__shipping {
		width: 77.7333333333vw;
		margin-top: 2.6666666667vw;
	} }


.l-banner {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 40px;
	margin: 80px auto 0;
}

@media screen and (max-width: 810px) {
	.l-banner {
		flex-direction: column;
		gap: 10px;
		max-width: calc(470px + 6%);
		width: 100%;
		margin: 60px auto 0;
		padding: 0 3%;
		box-sizing: border-box;

		.l-banner__item {
			width: 100%;
		}
	}

	#piw .flx > article {
		margin-top: 40px;
	}
}