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

#campaign-wrapper img { -ms-interpolation-mode: bicubic !important; max-width: 100%; }
#campaign-wrapper img { max-width: 100%; height: auto;}
#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;*/
    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 a:link, #campaign-wrapper a:visited {
	color:#53565a;
}

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

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

#campaign-wrapper p {
	font-size:14px;
}

#campaign-wrapper .flex {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
	align-items: center;
}

.more-btn {
	display: block;
	text-align: center;
	color: #FFF !important;
	background: #131313;
	font-weight: bold;
	font-size: 16px;
	height: 50px;
	line-height: 50px;
}

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

.mobile {
	display:none;
}

.pc {
	display:block;
}

.tablet {
	display:none;
}

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

.mini-inner {
	max-width: 940px;
	width: 100%;
	margin: 0 auto !important;
}

.f-left {
	float: left;
}

.f-right {
	float: right;
}

.alignC {
	text-align: center;
}

.item-box {
	display: flex;
	justify-content: space-between;
	flex-flow: row wrap;
    width: 100%;
}

#matt .item-box {
	justify-content: center;
}

@media screen and (max-width: 810px) {
	#matt .item-box {
		justify-content: space-between;
	}

	img {
		max-width: initial;
		width: 100%;
	}
}

@media screen and (max-width: 640px) {
	#matt .inner .item-box .item,
	#bed .inner .item-box .item,
	#campaign-wrapper .item {
		max-width: initial;
		width: 100%;

		img.border {
			max-width: initial;
			width: 100%;
		}

		a:first-of-type {
			text-align: left;
		}

		a.hover.more-btn {
			text-align: center;
		}
	}
}

.item-box.sale {
	justify-content: flex-start;
}

#campaign-wrapper .item {
	width: min(261px, calc(100 / 1375 * 261vw));
}

.item-box.sale .item {
	margin-right: 2.9%;
}

.item-box.sale .item:nth-child(4) {
	margin-right: 0;
}

.item-box.sale .item:nth-child(n+5) {
	margin-top: 40px;
}

.item .hlTarget > span {
	display: block;
	font-size: 13px;
	margin: 5px 0 20px;
}

.item ul li {
	margin-bottom: 5px;
	font-size: 12px;
}

.item ul li span {
	font-weight: bold;
}

.mini-inner .item {
	width: 28%;
	font-weight: normal;
}

.item dl {
	 margin: 15px 0 15px !important;
}

.item dl dt {
	margin-bottom: 15px;
	font-weight: bold;
	font-size: 16px;
    height: 35px;
    line-height: 35px;
    background: #53565a;
    color: #FFF;
    padding: 0 10px;
}

.item dl dt.item-bed_title {
	padding: 0;
	background: transparent;
	color: #495057;
}

.item dt span {
	font-size: 13px;
	display: block;
	margin-top: 3px;
}

.item dl dd {
	font-size: 14px;
}

.label {
	color: #e26e14 !important;
	font-size: 22px;
	display: block;
	padding-bottom: 15px;
	font-family:DaxPro-WideMedium,Dax-Regular;
}

.label.red {
	color: #b81c22 !important;
}

.label span {
	font-size: 0.6em;
}

.label em {
	font-size: 12px;
	color: #FFF;
	background-color: #e26e14;
	font-style: normal;
	display: inline-block;
	padding: 5px 10px;
	margin-right: 10px;
	font-weight: bold;
	vertical-align: 0.3em;
}

.label.red em {
	background-color: #b81c22;
}

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

#campaign-wrapper {
	color:#53565a;
	line-height:1.4;
	-webkit-text-size-adjust: 100%;
	box-sizing: border-box;
}

#campaign-wrapper section {
	padding-top: 0;
	margin-top: 0;
	margin-bottom: 100px;
}

#campaign-wrapper section#futon {
	margin-bottom: 100px;
}

#campaign-wrapper section#campaign-main {
	margin-bottom: 0;
}

#campaign-wrapper section h4 {
	text-align:center;
	background: #E5E5EC;
	font-size: 23.99px;
	padding: 0 2%;
	margin-bottom: 40px;
	font-weight: bold;
	color: #010046;
}

#campaign-wrapper section#futon h4 {
	padding: 45px 2%;
	margin-bottom: 25px;
}

#campaign-wrapper section#futon h4 + p {
	padding: 0 2%;
	margin-bottom: 40px;
	font-size: 16px;
}

#campaign-wrapper section h4 span {
	font-size: 14px;
	display: block;
	margin-top: 20px;
	font-weight: normal;
	color: #010046;
}

#campaign-main > p {
	text-align: center;
}

#campaign-main > p img {
	width:100%;
}

#campaign-main nav {
	background: #edece7;
	padding: 30px 2%;
	margin-bottom: 35px;
}

#campaign-main nav dl {
	margin-bottom: 40px;
	text-align: center;
	font-size: 32px;
}

#campaign-main nav ul {
	display: flex;
	justify-content: space-between;
	max-width: 936px;
	margin: 0 auto;
}

#campaign-main nav ul li {
	width: 31.623%;
}

#campaign-main > dl {
	margin: 40px auto 0;
	max-width: 990px;
	font-size: 16px;
	text-align: center;
}

#campaign-main > dl dt {
	text-align: center;
	margin-bottom: 15px;
    font-size: 18px;
	color: #ee7500;
}

#campaign-main > dl dt a {
	color: #ee7500 !important;
}

#campaign-main > dl dt span {
	display: inline-block;
	font-weight: bold;
	background: url( "../images/icon_caution.jpg") no-repeat;
	padding-left: 30px;
	height: 20px;
	line-height: 20px;
}

#bed div.mini-inner {
	display: flex;
	justify-content: space-between;
	flex-flow: row wrap;
	margin-bottom: 40px;
}

#bed div.mini-inner dl {
	padding: 0;
}

#bed div.mini-inner dl dt,
#futon div.mini-inner dl dt {
	font-size: 16px;
	font-weight: bold;
	margin-bottom: 10px;
    background: none;
    color: #53565a;
    padding: 0;
}

#bed div.mini-inner dl dt span {
	font-size: 13px;
	display: block;
}

#bed div.mini-inner dl dd {
	margin-bottom: 15px;
}

#bed div.mini-inner dl dd:first-of-type {
	margin-bottom: 30px;
}
#bed div.mini-inner dl dd:last-of-type {
	margin-bottom: 0;
}

#bed div.mini-inner dl dd,
#bed div.mini-inner dl dd ul {
	font-size: 13px;
}

#bed div.mini-inner dl dd ul li span {
	font-weight: bold;
}

#bed .item dl {
	background-repeat: no-repeat;
	background-position: right top;
	background-size: 50px auto;
}

#recommend h5 {
	text-align:center;
	background: #ebe8e5;
	font-size: 22px;
	font-weight: bold;
	padding: 15px 2%;
}

#recommend article {
	border: 2px solid #ebe8e5;
	padding: 35px 0;
	margin-bottom: 50px;
}

#recommend article:first-of-type ul li {
	display: flex;
	justify-content: space-between;
}

#recommend article:first-of-type ul li > * {
	width: 50%;
}

#recommend article:first-of-type ul li p {
	padding-left: 50px;
	padding-right: 30px;
}

#recommend article:first-of-type ul li dl {
	text-align: center;
	font-size: 16px;
}

#recommend article:first-of-type ul li dl dt {
	text-align: center;
	font-size: 16px;
	line-height: 1.8;
	margin-bottom: 30px;
}

#recommend ul li dl dd:nth-of-type(2) {
	margin-top: 20px;
}

#recommend article:first-of-type ul li dl dd strong {
    display: block;
    color: #e26e14;
    font-size: 28px;
    position: relative;
    margin-top: 15px;
    padding-top: 18px;
}

#recommend ul li dl dd strong::before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	width: 0px;
	height: 0px;
	margin: auto;
	border-style: solid;
	border-color: #e26e14 transparent transparent transparent;
	border-width: 8px 10px 0 8px;
}

#recommend ul li dl dd strong em {
	font-size: 12px;
	font-style: normal;
	display: inline-block;
	padding: 2px 10px;
	background: #e26e14;
	color: #FFF;
	margin-right: 10px;
	vertical-align: 0.4em;
}

#recommend ul li dl dd strong span {
	font-size: 0.6em;
}

#recommend article:nth-of-type(2) > dl {
	max-width: 920px;
	text-align: center;
	padding-left: 90px;
	background: url("../images/icon_1year.jpg") no-repeat;
	min-height: 103px;
	margin: 0 auto 60px;
}

#recommend article:nth-of-type(2) > dl dt {
	font-size: 16px;
	margin-bottom: 15px;
	font-weight: bold;
}

#recommend article:nth-of-type(2) > dl dd {
	line-height: 1.6;
	font-size: 14px;
}

#recommend article:nth-of-type(2) > p {
	text-align: center;
	font-size: 16px;
	margin-top: 40px;
}

#recommend h6 {
	text-align: center;
	font-size: 22px;
	color: #FFF;
	background: #b81c22;
	padding: 15px 2%;
	letter-spacing: 0;
	font-weight: bold;
	margin-bottom: 50px;
}

#recommend h6 span {
	display: inline-block;
	color: #b81c22;
	background: #FFF;
	font-size: 14px;
	padding: 5px 15px;
	margin-left: 30px;
	letter-spacing: 0;
	font-weight: normal;
	vertical-align: 0.3em
}

.netstore .inner dl dt {
    font-size: 17px;
    margin-bottom: 0.5em;
}

.size-nav {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0 auto 50px !important;
    max-width: 730px;
}

#matt .size-nav {
    max-width: 940px;
}

.size-nav li {
	width: 31%;
	max-width: 220px;
	text-align: center;
	height: 55px;
	line-height: 55px;
	font-size: 16px;
}

.size-nav li a {
	display: block;
	position: relative;
	border: 1px solid #53565a;
}

.size-nav li a::after {
	position: absolute;
	content:"";
	width: 7px;
	height: 7px;
	border: 0px;
	border-top: solid 1px #53565a;
	border-right: solid 1px #53565a;
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	right: 20px;
	margin-top:-4px;
	top:50%;
}

.mini-inner .item > span {
	display: block;
	font-size: 13px;
	margin: 10px 0 15px;
}

#matt .item-box .item {
	justify-content: center;
	margin:0 4% 50px;
}

#matt .item-box .item:nth-child(1) {
	margin-left: 0;
}

#matt .item-box .item:nth-child(3) {
	margin-right:  0;
}

#matt .item-box .item:nth-child(4),
#matt .item-box .item:nth-child(5) {
	margin-bottom: 0;
}

#campaign-main > dl dd ul {
	text-align: left;
	background: #fafafa;
	padding: 20px 5%;
	margin-top: 20px;
	font-size: 16px;
	line-height: 1.6;
}

#order.item-box {
	display: flex;
	justify-content: center;
}

#order.item-box .item {
	margin:0 5%;
}

#pillow {
	background: #f5f5f5;
	padding: 60px 0 !important;
}

#pillow .inner {
	background: #FFF;
	border-radius: 15px;
	padding: 50px 5%;
}

#pillow .inner h5 span {
	font-size: 28px;
	display: inline-block;
	font-weight: bold;
	color: #897d76;
	height: 96px;
	padding-left: 250px;
	background: url("../images/icon_with.jpg") no-repeat;
	margin-bottom: 25px;
	line-height: 1.4;
	padding-top: 10px;
}

#pillow .inner h5 + dl {
	text-align: center;
}

#pillow .inner h5 + dl dt {
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 15px;
}

#pillow .inner h5 + dl dd {
	font-size: 16px;
}

#pillow .inner ul:nth-of-type(1) {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 40px;
}

#pillow .inner ul:nth-of-type(1) li {
	width: 33%;
	text-align: center;
}

#pillow .inner ul:nth-of-type(1) li span {
	display: block;
	font-size: 13px;
	margin-top: 5px;
}

#pillow .inner p {
	margin-bottom: 20px;
	text-align: center;
	background: #fafafa;
	padding: 15px 2%;
}

#pillow .inner ul:nth-of-type(2) {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	max-width: 590px;
	margin: 0 auto 50px;
}

#pillow .inner ul:nth-of-type(2) li {
	max-width: 260px;
	width: 100%;
}

#pillow .inner ul:nth-of-type(2) li a {
	display: block;
	height: 50px;
	line-height: 50px;
	text-align: center;
	color: #FFF;
	background: #000;
}

.riceTxt {
    display: block;
    font-size: 12px;
}

.flexTbl {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    border: 1px solid #b3ada6;
    margin-top: 50px;
}

.flexTbl:nth-of-type(2) {
    border-top: none;
    margin-top: 0;
}

.flexTbl dl {
    text-align: center;
}

.flexTbl dl:first-child {
    width: 60.5%;
    border-right: 1px solid #b3ada6;
}

.flexTbl dl:last-child {
    color: #e26e14;
    width: 39.5%;
}

.flexTbl dl:last-child dt {
    color: #e26e14 !important;
}

.flexTbl dl dt {
    height: 60px;
    line-height: 60px;
    font-weight: bold;
    font-size: 22px;
    border-bottom: 1px solid #b3ada6;
    background: #efedea;
}

.flexTbl dl dd {
    padding: 30px 50px !important;
    height: calc(100% - 60px);
}

.flexTbl dl ul li {
    width: 50%;
    text-align: center;
}

.flexTbl dl:last-child dd {
    font-size: 26px;
    font-weight: bold;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family:DaxPro-WideMedium,Dax-Regular;
}


.flexTbl dl:last-child dd strong {
   font-size: 40px;
    display: block;
    margin-bottom: 10px;
}

.flexTbl dl:last-child dd span {
   font-size: 0.7em;
    font-weight: normal;
}

.item em {
    font-style: normal;
    font-size: 14px;
    display: block;
    padding: 15px 0 0;
    
}

.p-tbl {
    width: 100%;
    border-collapse: separate;
    border-top: 1px solid #b3ada6;
    border-spacing: 0;
	font-weight: normal;
}

.p-tbl th, .p-tbl td {
    border-right: 1px solid #b3ada6;
    border-bottom: 1px solid #b3ada6;
    padding: 15px 0;
    text-align: center;
    vertical-align: middle;
    font-size: 16px;
}

.p-tbl .sticky01 {
    border-left: 1px solid #b3ada6;
}

.p-tbl th {
    font-weight: normal;
    background: #efedea;
}

.p-tbl th:nth-child(1) {
    width: 19.3%;
}

.p-tbl th:nth-child(2) {
    width: 14%;
}

.p-tbl th:nth-child(3) {
    width: 7.5%;
}

.p-tbl th:nth-child(4) {
    width: 15.8%;
}

.p-tbl th:nth-child(5) {
    width: 23.7%;
}

.p-tbl .or {
    color: #e26e14;
    font-weight: bold;
}

.p-tbl td:nth-last-child(2) {
    font-size: 30px;
    font-family:DaxPro-WideMedium,Dax-Regular;
}

.p-tbl td span {
    font-size: 16px;
}

#colle {
    border: 1px solid #ccc;
    margin: 60px auto 0;
    padding: 50px 7.5%;
    max-width: 1140px;
	font-weight: normal;
}

#colle > dl dt {
    font-weight: bold;
    font-size: 22px;
    margin-bottom: 20px;
}

#colle > dl dd {
    font-size: 16px;
    padding-right: 100px;
    background: url("../images/icon_1year.jpg") no-repeat right center;
    background-size: 50px auto;
}

#colle .item-box {
    margin: 50px auto 0;
    max-width: 620px;
}

#colle .item-box .item {
    width:41.94%
}

#main dl {
	padding: 0;
}

#main dl dt {
	font-weight: bold;
	text-align: center;
	font-size: 24px;
	margin-bottom: 30px;
}

#main dl dd {
	max-width: 980px;
	margin: 0 auto;
	background: #FFF;
	padding: 30px 50px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

#main dl dd > p {
	width: calc(100% - 150px);
	font-size: 18px;
	line-height: 1.8;
}

#main dl dd figure {
	width: 135px;
	text-align: center;
}

#main dl dd figure img {
	width: 90px;
	height: auto;
}

#main dl dd figure p {
	font-size: 9px;
	line-height: 1.3;
}

#main dl dd figure p strong {
	font-size: 13px;
	display: block;
	margin: 10px 0;
}

.set-area {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	max-width: 1140px;
	margin: 50px auto 0;
	border: 1px solid #ccc;
}

.set-area article:first-child {
	width: 60%;
}

.set-area article:last-child {
	width: 40%;
	border-left: 1px solid #ccc;
}

.set-area article strong {
	color: #FFF;
	display: block;
	background: #53565a;
	height: 60px;
	line-height: 60px;
	font-size: 22px;
	text-align: center;
}

.set-area article div {
	padding: 50px;
}

.set-area article:last-child div {
	padding-left: 100px;
}

.set-area article div ul {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	background: url("../images/plus.png") no-repeat center center;
}

.set-area article div ul li p {
	margin-bottom: 10px;
	font-size: 16px;
}

.set-area article div dl {
	margin-bottom: 30px;
	font-weight: bold;
	line-height: 1.2;
	font-family: DaxPro-WideMedium,Dax-Regular,"Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif !important;
}

.set-area article div dl span {
	font-size: 0.7em;
}

.set-area article div dl dt {
	margin-bottom: 15px;
	font-size: 24px;
}

.set-area article div dl dd {
	font-size: 40px;
	padding-left: 60px !important;
	background: url("../images/arrow.png") no-repeat left center;
}

.set-area article div a {
	font-size: 16px;
}

#campaign-wrapper section h4 strong {
	display: block;
	margin-top: 10px;
	font-size: 16px;
}

.p-tbl td:nth-last-child(1) {
	font-size: 24px;
}

#main p {
    text-align: center;
    font-weight: bold;
    font-size: 20px;
	color: #1c1b42;
    margin: 30px 0 30px;
}

#main p a {
	color: #1c1b42 !important;
}

#main p strong {
    font-size: 22px;
    display: block;
    margin-top: 15px;
}

.top-box {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: center;
    border: 1px solid #CCC;
    padding: 50px 60px;
    width: 100%;
    max-width: 980px;
    margin: 0 auto 30px;
}

.top-box > * {
    width: 50%;
}

.top-box figure {
    text-align: center;
}

.top-box.pre p {
    background-image: url("../images/icon_check.jpg");
}

.top-box.sen p {
    background-image: url("../images/icon_check.jpg");
}

.top-box + p {
    text-align: center;
    font-weight: bold;
    font-size: 18px !important;
    line-height: 1.5;
    margin-bottom: 50px;
}

#ex {
    width: 100%;
    max-width: 1140px;
    margin: 0 auto 30px;
    border: 1px solid #53565a;
}

#ex dt {
    text-align: center;
    background: #53565a;
    height: 60px;
    line-height: 60px;
    font-weight: bold;
    color: #FFF;
    font-size: 22px;
}

#ex dd {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: center;
    padding: 40px 12.6%;
}

#ex dd p {
    width: 50%;
    text-align: center;
}

#ex dd p span {
    display: block;
    margin-top: 5px;
}

.caution {
	margin: 0 auto 30px;
	max-width: 980px;
	font-size: 16px;
	text-align: center;
    background: #fafafa;
    padding: 20px 2%;
}

.caution dt {
	text-align: center;
	margin-bottom: 15px;
}

.caution dt span {
	display: inline-block;
	font-weight: bold;
	background: url( "../images/icon_caution.jpg") no-repeat;
	padding-left: 30px;
	height: 22px;
	line-height: 22px;
}

.caution + ul {
    padding: 20px 2% !important;
    background: #fafafa;
    font-size: 16px;
    max-width: 980px;
    margin: 0 auto 80px !important;
}

.caution + ul li + li {
    margin-top: 5px;
}

.item li span + img,
.item li img + img {
    margin-left: 5px;
    margin-top: 3px;
    max-width: 95px;
}

.btn-list-campaign::after {
    content: "";
    position: absolute;
    top: 50%;
    width: 5px;
    height: 5px;
    margin-top: -2px;
    border-top: solid 1px #333;
    border-right: solid 1px #333;
    transform: rotate(225deg);
}

#other .mini-inner article:first-child {
    width: 26.5%;
}

#other .mini-inner article:last-child {
    width: 63%;
}

#other .mini-inner article:first-child .item {
    width: 100%;
}

#other .mini-inner article:last-child .item {
    width: 42%;
}

#other .mini-inner article > p {
    background: #efeeeb;
    height: 40px;
    line-height: 40px;
    font-size: 16px;
    padding-left: 20px;
    margin-bottom: 30px;
}

.top-box.pre p {
    width: 70%;
    background-position: left top;
}

.top-box.pre figure {
    width: 30%;
    text-align: right;
}

.top-box p {
    padding-left: 60px;
    background-position: center left;
    background-repeat: no-repeat;
    font-weight: bold;
    font-size: 24px !important;
    line-height: 1.5;
    min-height: 37px;
}

.top-box p span {
    display: block;
    font-style: normal;
    font-size: 16px;
    margin-top: 20px;
    font-weight: normal;
}

#main p + ul {
    max-width: 500px;
    margin: 0 auto;
    font-size: 22px;
}

#main p + ul li {
    margin-top: 10px;
    background: url("../images/check.jpg") no-repeat left center;
    padding-left: 30px;
    height: 25px;
    line-height: 25px;
}

#main p + ul li + li {
    margin-top: 10px;
}

#main p + ul li span {
    font-size: 16px;
}

#campaign-wrapper h4 div {
	display: inline-block;
	padding: 30px 0 30px;
}

#tbl-box {
	border: 1px solid #1c1b42;
	width: 100%;
	max-width: 1140px;
	margin: 0 auto 80px;
	padding: 40px 70px 40px;
}

#tbl-box dt {
	font-weight: bold;
	color: #1c1b42;
	font-size: 28px;
	margin-bottom: 30px;
	text-align: center;
}

#tbl-box dt span {
	display: inline-block;
	padding-left: 100px;
	height: 50px;
	line-height: 50px;
	padding: 0 0 0 65px;
	background: url("../images/num01.jpg") no-repeat left center / 50px 50px;
}

#tbl-box dt strong {
	font-size: 28px;
	display: block;
}

#tbl-box dt a {
	color: #1c1b42 !important;
}

#tbl-box dd > p {
	text-align: center;
}

#tbl-box dd p strong {
	font-size: 20px;
	display: inline-block;
	padding-left: 35px;
	background: url("../images/icon_check.jpg") no-repeat left center;
	height: 32px;
	line-height: 32px;
}

#tbl-box dd p strong + strong {
	margin-left: 25px;
	background: url("../images/icon_check.jpg") no-repeat left center;
}

#tbl-box dd figure {
	width: 100%;
	max-width: 800px;
	margin: 25px auto 30px;
}

#tbl-box dd figure span {
	display: block;
	margin-bottom: 10px;
}


#tbl-box dd figure p {
	font-size: 16px;
	margin-top: 30px;
	letter-spacing: 0.02em !important;
}

#tbl-box dd > span {
	display: block;
	padding-left: 1em;
}

.sashie {
	width:100%;
	text-align: center;
	margin-bottom: 50px !important;
}

.c-nav {
	width: 100%;
	max-width: 980px;
	margin: 0 auto 80px;
}

.c-nav ul li {
	width: 49%;
	max-width: 470px;
}

#tbl-box dl:first-child {
	padding-bottom: 40px;
	margin-bottom: 40px;
	border-bottom: 1px solid #d7d2cb;
}

#tbl-box dl:nth-of-type(2) {
	padding-bottom: 40px;
	margin-bottom: 40px;
	border-bottom: 1px solid #d7d2cb;
}

#tbl-box dl:nth-of-type(2) dt span {
	background-image: url("../images/num02.jpg");
}

#tbl-box dl:nth-of-type(3) dt span {
	background-image: url("../images/num03.jpg");
}

#tbl-box dl:nth-of-type(2) dd p,
#tbl-box dl:nth-of-type(3) dd p {
	font-size: 16px;
	width: calc(100% - 415px);
	text-align: left;
	line-height: 1.5;
}

#tbl-box dl:nth-of-type(2) dd p span {
	font-weight: bold;
	font-size: 22px;
	display: block;
	margin-bottom: 10px;
}

#campaign-wrapper #futon h4 div {
  background-image: url("../images/free03.jpg");
}

#campaign-wrapper section h4 + p {
	max-width: 940px;
	margin: 0 auto 30px;
	font-size: 16px;
	line-height: 1.6;
}

#campaign-wrapper section h4 + p span {
	display: block;
	font-size: 14px;
	margin-top: 5px;
}

#campaign-wrapper h4 div a {
	color: #1c1b42 !important;
}

.item > p:last-child {
	font-size: 14px;
	margin-top: 15px !important;
}

.c-nav ul li span {
	min-height: 110px;
	background-color: #e1f4f6;
	background-repeat: no-repeat;
	color: #1c1b42;
	display: flex;
	align-items: center;
	font-size: 20px;
	border: 1px solid #53565a;
}

.c-nav ul li:first-child span {
	background-image: url("../images/bg01.jpg");
	background-position: right 25px center;
	padding: 0 30px;
}

.c-nav ul li:last-child span {
	background-image: url("../images/bg02.jpg");
	background-position: right 15px center;
	padding: 0 15px;
}

.c-nav ul li span strong {
	display: block;
	padding-left: 55px;
	text-align: center;
}

.c-nav ul li span strong a {
	color: #1c1b42 !important;
}

.c-nav ul li:first-child span strong {
	display: block;
	background: url("../images/n01.jpg") no-repeat left center;
}

.c-nav ul li:last-child span strong {
	display: block;
	background: url("../images/n02.jpg") no-repeat left center;
}

.c-nav ul li span strong em {
	font-style: normal;
	font-size: 16px;
	letter-spacing: -0.04em !important;
}

.c-nav ul li span strong small {
	display: inline-block;
	border: 1px solid #ec6941;
	font-size: 12px;
	color: #ec6941;
	font-weight: bold;
	padding: 0 5px;
}

#main figure {
	border: 1px solid #d7d2cb;
}

#tbl-box dd {
	max-width: 800px;
	margin:  0 auto;
}




/*ここから追記*/
.f-nav .pc {
	display: flex !important;
	justify-content: space-between;
	margin: 0 auto 50px !important;
	max-width: 1140px;
	width: 100%;
}

.tbl-tit {
	max-width: 1140px;
	width: 100%;
	margin: 0 auto !important;
	font-size: 20px !important;
	font-weight: bold;
	color: #FFF;
	text-align: center;
	background: #1c1b42;
	height: 55px;
	line-height: 55px;
}

.tbl-tit a {
	color: #FFF !important;
}

#tbl-box dl:nth-of-type(2) dd p strong {
	color: #081342;
	font-size: 14px;
	display: block;
	width: 80px;
	height: 28px;
	line-height: 28px;
	background: #fbb615;
	font-weight: bold;
	text-align: center;
	margin-bottom: 10px;
	padding-left: 0 !important;
}

#tbl-box dl:nth-of-type(2) dd p em {
	font-style: normal;
	font-size: 14px;
	display: block;
	margin-top: 15px;
}

#tbl-box dl:nth-of-type(2) dd p span em {
	font-size: 18px;
	display: inline-block;
	margin-top: 0;
}

#tbl-box h6 {
	width: 100%;
	margin-top: 50px;
	font-size: 16px;
	font-weight: bold;
	height: 40px;
	line-height: 40px;
	background: #f5f5f5;
	padding: 0 20px;
}

#tbl-box h6 + p {
	width: 100%;
	margin-top: 25px;
	font-size: 16px;
	line-height: 1.5;
}

#tbl-box h6 + p span {
	font-size: 14px;
}

.bed-rice {
	font-size: 12px !important;
	letter-spacing: -0.01em!important;
}

.f-nav .mobile {
	display: none;
}

.flex.pc {
	display: flex !important;
}

.flex.mobile {
	display: none !important;
}

#tbl-box dl:nth-of-type(3) dt span em {
	font-style: normal;
}

@media only screen and (max-width: 810px) {
	#campaign-wrapper ul.item-box {
		max-width: 540px;
		margin: 0 auto;
		box-sizing: border-box;
	}
}

@media only screen and (max-width: 680px) {
	#campaign-wrapper ul.item-box {
		padding: 0;
	}
}

@media only screen and (max-width: 810px) {
    
    .pc {
        display: none;
    }
    
    .mobile {
        display: block;
    }
	
	.inner, .mini-inner {
		padding: 0 2% !important;
	}
	
	.label em {
		font-size: 12px;
		padding: 2px 5px;
		margin-right: 5px;
	}
	
	.item dl dt {
		font-size: 15px;
	}
	
	.mini-inner .item > span {
		height: 37px;
	}
	
	.item ul li:last-child {
		height: 34px;
	}
	
	.label {
		font-size: 20px;
	}
	
	.more-btn {
		display: block;
		max-width: 260px;
		margin: 0 auto;
		text-align: center;
		color: #FFF !important;
		background: #131313;
		font-weight: bold;
		font-size: 14px;
		height: 45px;
		line-height: 45px;
	}
	
	#pillow .inner h5 span {
		font-size: 22px;
		height: 96px;
		padding-left: 220px;
		background: url("../images/icon_with.jpg") no-repeat;
		background-size: 200px auto;
		padding-top: 15px;
	}
    
    .riceTxt {
        display: block;
        font-size: 11px;
    }
    
    #campaign-main > dl dt {
        text-align: center;
        font-size: 16px;
    }

    .flexTbl {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        border: 1px solid #b3ada6;
    }
    
    .flexTbl.inner {
        padding: 0 !important;
        margin: 25px 2% 0;
        width: 96%;
    }

    .flexTbl:nth-of-type(2) {
        border-top: none;
        margin-top: 0;
    }

    .flexTbl dl {
        text-align: center;
    }

    .flexTbl dl:first-child {
        width: 100%;
        border-right: none;
        border-bottom: 1px solid #b3ada6;
    }

    .flexTbl dl:last-child {
        color: #e26e14;
        width: 100%;
    }

    .flexTbl dl:last-child dt {
        color: #e26e14 !important;
    }

    .flexTbl dl dt {
        height: 40px;
        line-height: 40px;
        font-weight: bold;
        font-size: 16px;
        border-bottom: 1px solid #b3ada6;
        background: #efedea;
    }

    .flexTbl dl dd {
        padding: 15px 2% !important;
        height: auto;
    }

    .flexTbl dl ul li {
        width: 50%;
        text-align: center;
    }

    .flexTbl dl:last-child dd {
        font-size: 20px;
        font-weight: bold;
        display: flex;
        align-items: center;
        justify-content: center;
    }


    .flexTbl dl:last-child dd strong {
       font-size: 30px;
        display: block;
        margin-bottom: 10px;
    }

    .flexTbl dl:last-child dd span {
       font-size: 0.7em;
        font-weight: normal;
    }

    .item em {
        font-style: normal;
        font-size: 14px;
        display: block;
        padding: 0 0 15px;
    }
    
    #price .inner .tblWrap {
        overflow: scroll;
    }

    .p-tbl th, .p-tbl td {
        border-right: 1px solid #b3ada6;
        border-bottom: 1px solid #b3ada6;
        padding: 7px 0;
        text-align: center;
        vertical-align: middle;
        font-size: 12px;
        background-color: #FFF;
        box-sizing: border-box;
    }

    .p-tbl th {
        font-weight: normal;
        background: #efedea;
    }

    .p-tbl th:nth-child(1) {
        width: 110px;
    }

    .p-tbl th:nth-child(2) {
        width: 90px;
    }

    .p-tbl th:nth-child(3) {
        width: 45px;
    }

    .p-tbl th:nth-child(4) {
        width: 14%;
    }

    .p-tbl th:nth-child(5) {
        width: 18%;
    }
	
	.p-tbl th:nth-child(6) {
        width: 12%;
    }

    .p-tbl .or {
        color: #e26e14;
        font-weight: bold;
    }

    .p-tbl td:nth-last-child(2) {
        font-size: 18px;
    }

    .p-tbl td span {
        font-size: 12px;
    }
    
    .p-tbl .sticky01 {
        left: 0;
        position: sticky;
        background-clip: padding-box;
        border-left: 1px solid #b3ada6;
		z-index: 1;
    }
    
    .p-tbl .sticky02 {
        left: 110px;
        position: sticky;
        background-clip: padding-box;
    }
    
    .p-tbl .sticky03 {
        left: 200px;
        position: sticky;
        background-clip: padding-box;
    }

	#matt .size-nav,
	.size-nav {
		max-width: 580px;
	}
    
    .size-nav li {
        width: 24%;
        max-width: 225px;
        text-align: center;
        height: 55px;
        line-height: 55px;
    }
    
    #bed .mini-inner .item {
        width: 28%;
    }

	#main dl {
		padding: 0;
	}
	
	#main dl ul li a {
		position: relative;
		text-align: center;
		display: block;
		color: #FFF !important;
		font-size: 14px;
		font-weight: bold;
		height: 44px;
		line-height: 44px;border-bottom: 1px solid #FFF;
		background: #53565a;
	}
	
	#main dl ul li a::after {
		position: absolute;
		top: 0;
		bottom: 0;
		right: 20px;
		margin: auto;
		content: "";
		vertical-align: middle;
		width: 0.8em;   /* arrow size */
		height: 0.8em;  /* arrow size */
		border-top: 2px solid #FFF;
		border-right: 2px solid #FFF;
		-webkit-transform: rotate(135deg);
		transform: rotate(135deg);

	}

	#main dl dt {
		font-weight: bold;
		text-align: center;
		font-size: 16px;
		margin-bottom: 15px;
	}

	#main dl dd {
		max-width: 980px;
		width: calc(100% - 40px);
		margin: 20px auto 0;
		background: #FFF;
		padding: 20px;
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}

	#main dl dd > p {
		width: calc(100% - 120px);
		font-size: 12px;
		line-height: 1.8;
	}

	#main dl dd figure {
		width: 100px;
		text-align: center;
	}
	
	#main dl dd figure img {
		width: 70px;
		height: auto;
	}

	#main dl dd figure p {
		font-size: 9px;
		line-height: 1.3;
	}

	#main dl dd figure p strong {
		font-size: 13px;
		display: block;
		margin: 10px 0;
	}

	.set-area {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		max-width: 1140px;
		margin: 20px auto 0;
		border: 1px solid #ccc;
		width: calc(100% - 20px);
	}

	.set-area article:first-child {
		width: 100%;
	}

	.set-area article:last-child {
		width: 100%;
		border-left: 1px solid #ccc;
	}

	.set-area article strong {
		color: #FFF;
		display: block;
		background: #53565a;
		height: 40px;
		line-height: 40px;
		font-size: 16px;
		text-align: center;
	}

	.set-area article div {
		padding: 20px 10px;
	}

	.set-area article:last-child div {
		padding-left: 10px;
		text-align: center;
	}

	.set-area article div ul {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		background: url("../images/plus.png") no-repeat center center;
		background-size: 20px auto;
	}
	
	.set-area article div ul li {
		width: 43%;
		text-align: center;
	}

	.set-area article div ul li p {
		margin-bottom: 10px;
		font-size: 16px;
	}

	.set-area article div dl {
		margin-bottom: 20px;
		font-weight: bold;
		line-height: 1.2;
		font-family: DaxPro-WideMedium,Dax-Regular,"Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif !important;
	}

	.set-area article div dl span {
		font-size: 0.7em;
	}

	.set-area article div dl dt {
		margin-bottom: 0;
		font-size: 16px;
		display: inline-block;
	}

	.set-area article div dl dd {
		font-size: 24px;
		padding-left: 60px !important;
		background: url("../images/arrow.png") no-repeat left center;
		display: inline-block;
	}

	.set-area article div a {
		font-size: 14px;
	}

	#campaign-wrapper section h4 strong {
		display: block;
		margin-top: 10px;
		font-size: 16px;
	}

	.p-tbl td:nth-last-child(1) {
		font-size: 12px;
	}
    
    
    #bed div.mini-inner dl dt, #futon div.mini-inner dl dt {
        font-size: 15px;
        font-weight: bold;
        margin-bottom: 10px;
        background: none;
        color: #53565a;
        padding: 0;
    }
	
	.c-nav {
		width: 100%;
		max-width: 980px;
		margin: 0 auto 80px;
	}

	.c-nav ul li {
		width: 49%;
		max-width: 470px;
	}
    
    .c-nav ul li span {
		min-height: 110px;
		background-color: #e1f4f6;
		background-repeat: no-repeat;
		color: #1c1b42;
		display: flex;
		align-items: center;
		font-size: 16px;
		border: 1px solid #53565a;
	}

	.c-nav ul li:first-child span {
		background-image: url("../images/bg01.jpg");
		background-position: right 25px center;
		padding: 0 15px;
		background-size: 70px auto;
	}

	.c-nav ul li:last-child span {
		background-image: url("../images/bg02.jpg");
		background-position: right 15px center;
		padding: 0 15px;
		background-size: 60px auto;
	}

	.c-nav ul li span strong {
		display: block;
		padding-left: 40px;
		text-align: center;
	}

	.c-nav ul li span strong a {
		color: #1c1b42 !important;
	}

	.c-nav ul li:first-child span strong {
		display: block;
		background: url("../images/n01.jpg") no-repeat left center;
		background-size: 35px auto;
	}

	.c-nav ul li:last-child span strong {
		display: block;
		background: url("../images/n02.jpg") no-repeat left center;
		background-size: 35px auto;
	}

	.c-nav ul li span strong em {
		font-style: normal;
		font-size: 13px;
		letter-spacing: -0.04em !important;
	}

	.c-nav ul li span strong small {
		display: inline-block;
		border: 1px solid #ec6941;
		font-size: 12px;
		color: #ec6941;
		font-weight: bold;
		padding: 0 5px;
	}
/***メディアクエリここまで***/}





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

	.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;
	}
	
	.item-box {
		display: block;;
	}
	
	#campaign-wrapper .item {
		max-width: 260px;
		width: 48%;
		margin: 0 0 50px;
	}
	
	.item:last-child {
		margin-bottom: 0;
	}

	.item-box.sale .item {
		margin-right: 0;
	}

	.item-box.sale .item:nth-child(n+5) {
		margin-top: 0;
	}

	.item .hlTarget > span {
		display: block;
		font-size: 13px;
		margin: 5px 0 10px;
        min-height: 20px;
	}

	.item ul li {
		margin-bottom: 5px;
		font-size: 14px;
	}
	
	.item ul li:last-child {
		height: auto;
	}

	#matt .inner .item,
	#bed .inner .item {
		width: 48%;
	}

	.item dl {
		 margin: 10px 0 10px !important;
	}

	.item dl dt {
		margin-bottom: 10px;
		font-size: 13px;
		letter-spacing: 0 !important;
		padding: 0 5px;
		overflow: visible;
		text-align: center;
	}

	.item dt span {
		font-size: 11px;
		margin-top: 2px;
	}

	 .item dl dd {
		font-size: 13px;
		 text-align: left;
	}

	.label {
		font-size: 22px;
		padding-bottom: 10px;
	}

	.label span {
		font-size: 0.6em;
	}

	.label em {
		font-size: 12px;
		padding: 2px 10px;
		margin-right: 10px;
		vertical-align: 0.3em;
	}
	
	#campaign-wrapper {
		font-size:12px;
		line-height:1.5;
	}
	
	#campaign-wrapper section,
	#campaign-wrapper section#futon {
		margin-bottom: 40px;
	}

	#campaign-wrapper section#campaign-main {
		margin-bottom: 25px;
	}

	#campaign-wrapper section h4 {
		font-size: 18px;
		padding: 15px 2%;
		margin-bottom: 20px;
	}

	#campaign-wrapper section h4 span {
		font-size: 12px;
		margin-top: 3px;
		line-height: 1.4;
	}
	
	#campaign-wrapper section#futon h4 {
		padding: 27px 2%;
		margin-bottom: 15px;
	}

	#campaign-wrapper section#futon h4 + p {
		padding: 0 2%;
		margin-bottom: 20px;
		font-size: 14px;
	}

	#campaign-main nav {
		padding: 15px 2%;
		margin-bottom: 20px;
	}

	#campaign-main nav dl {
		width: 100%;
		font-size: 18px;
		font-weight: bold;
		margin-bottom: 25px;
	}

	#campaign-main nav ul {
		width: 100%;
		flex-wrap: wrap;
	}
	
	#campaign-main nav ul li {
		width:48.6%;
	}
	
	#campaign-main nav ul li:last-child {
		margin: 10px auto 0;
	}

	#campaign-main > dl {
		width: 100%;
		font-size: 14px;
		padding: 0 2%;
	}

	#campaign-main > dl dt {
		margin-bottom: 15px;
	}

	#campaign-main > dl dt span {
		background-size: 14px auto;
		padding-left: 20px;
		height: 14px;
		line-height: 14px;
	}

	#bed div.mini-inner {
		display: block;
		margin-bottom: 50px;
	}

	#bed div.mini-inner > * {
		width: 100%;
	}

	#bed div.mini-inner dl {
		margin-top: 15px;
		padding: 0;
		background-size: 50px auto;
	}

	#bed div.mini-inner dl dt,
    #futon div.mini-inner dl dt {
		font-size: 14px;
		background-size: 40px auto;
		min-height: 0;
		margin-bottom: 10px;
        height: auto;
        line-height: 1.5;
	}

	#bed div.mini-inner dl dt span {
		font-size: 12px;
	}

	#bed div.mini-inner dl dd {
		margin-bottom: 10px;
	}

	#bed div.mini-inner dl dd:first-of-type {
		margin-bottom: 15px;
		font-size: 13px;
	}

	#bed div.mini-inner dl dd,
	#bed div.mini-inner dl dd ul {
		font-size: 14px;
	}

	#bed .item dl {
		background-size: 50px auto;
	}

	#bed .item:last-child dl {
		background-size: 50px auto;
	}

	#recommend h5 {
		font-size: 18px;
		padding: 10px 2%;
	}

	#recommend article {
		border: none;
		padding: 0;
		margin-bottom: 50px;
	}

	#recommend article:first-of-type ul li {
		display: block;
	}

	#recommend article:first-of-type ul li > * {
		width: 100%;
	}

	#recommend article:first-of-type ul li p {
		padding-left: 0;
		padding-right: 0;
		margin-bottom: 20px;
	}

	#recommend article:first-of-type ul li dl {
		font-size: 14px;
	}

	#recommend article:first-of-type ul li dl dt {
		font-size: 14px;
		line-height: 1.6;
		margin-bottom: 10px;
	}

	#recommend ul li dl dd:nth-of-type(2) {
		margin-top: 10px;
	}

	#recommend article:first-of-type ul li dl dd strong {
		font-size: 22px;
		margin-top: 10px;
		padding-top: 11px;
	}

	#recommend ul li dl dd strong::before {
		border-width: 7px 7px 0 7px;
	}

	#recommend ul li dl dd strong em {
		vertical-align: 0.3em;
	}

	#recommend ul li dl dd strong span {
		font-size: 0.6em;
	}

	#recommend article:nth-of-type(2) > dl {
		width: 96%;
		padding-left: 55px;
		text-align: left;
		background-size: 50px auto;
		min-height: 0;
		margin: 0 2% 20px;
	}

	#recommend article:nth-of-type(2) > dl dt {
		font-size: 14px;
		margin-bottom: 10px;
	}

	#recommend article:nth-of-type(2) > dl dd {
		line-height: 1.5;
		font-size: 12px;
	}

	#recommend article:nth-of-type(2) > p {
		font-size: 12px;
		margin-top: 20px;
	}

	#recommend h6 {
		font-size: 18px;
		padding: 10px 2%;
		margin-bottom: 20px;
	}

	#recommend h6 span {
		display: inline-block;
		margin-top: 10px;
		font-size: 12px;
		padding: 3px 10px;
		margin-left: 0;
		vertical-align: 0.3em
	}

	.size-nav {
		margin-bottom: 25px !important;
	}

	.size-nav li {
		width: 32%;
		height: 40px;
		line-height: 40px;
		margin-bottom: 10px;
	}
	
	.size-nav li:nth-of-type(3),
	.size-nav li:nth-of-type(4) {
		margin-bottom: 0;
	}

	.mini-inner .item > span {
		font-size: 12px;
		margin: 5px 0 5px;
		height: auto;
	}


	#matt .item-box .item {
		margin: 0 0 50px;
	}

	#matt .item-box .item:nth-child(4) {
		margin-bottom: 50px;
	}

	#campaign-main > dl dd ul {
		padding: 10px;
		margin-top: 10px;
		font-size: 12px;
	}

	#order.item-box .item {
		margin:0;
	}
	
	#order.item-box .item:first-child {
		margin-bottom: 50px;
	}

	#pillow {
		padding: 10px 2% !important;
	}

	#pillow .inner {
		border-radius: 10px;
		padding: 25px 2%;
	}

	#pillow .inner h5 span {
		font-size: 15px;
		height: 96px;
		padding-left: 105px;
		background-size: 100px auto;
		margin-bottom: 15px;
		padding-top: 0;
		background-position: left center;
	}
	
	#pillow .inner h5 span .mobile {
		display: inline;
	}
	
	#pillow .inner h5 + dl dt {
		font-size: 15px;
		margin-bottom: 10px;
	}

	#pillow .inner h5 + dl dd {
		font-size: 13px;
	}

	#pillow .inner ul:nth-of-type(1) {
		margin-bottom: 20px;
	}

	#pillow .inner ul:nth-of-type(1) li span {
		font-size: 12px;
		margin-top: 3px;
	}

	#pillow .inner p {
		margin-bottom: 15px;
		padding: 10px;
		font-size: 13px;
	}

	#pillow .inner ul:nth-of-type(2) {
		display: block;
		margin-bottom: 25px;
	}

	#pillow .inner ul:nth-of-type(2) li {
		margin: 0 auto;
	}
	
	#pillow .inner ul:nth-of-type(2) li:first-child {
		margin-bottom: 15px;
	}

	#pillow .inner ul:nth-of-type(2) li a {
		height: 40px;
		line-height: 40px;
	}
	
	#futon .item dl {
		padding-right: 0;
		background-repeat: no-repeat;
		background-position: right top;
		background-size: 50px auto;
	}
	
	#futon .item dl dd {
		padding-right: 0;
		background: none;
	}

	#futon .item:nth-child(1) dl dd {
		background: none;
	}
	
	#futon .item:nth-child(1) dl {
		background-image: url("../images/icon_5year.jpg");
	}

	#futon .item:nth-child(2) dl dd {
		background: none;
	}
	
	#futon .item:nth-child(2) dl {
		background-image: url("../images/icon_2year.jpg");
	}

	#futon .item:nth-child(3) dl dd {
		background: none;
		padding-right: 0;
	}
	
	#futon .item:nth-child(3) dl {
		background-image: url("../images/icon_15year.jpg");
		background-size: auto 70px;
		padding-right: 0;
	}

    .p-tbl {
        width: 450px;
        border-collapse: separate;
        border-top: 1px solid #b3ada6;
        border-spacing: 0;
    }
    
    .p-tbl td:nth-last-child(2) {
        font-size: 12px;
    }

    .p-tbl td:nth-last-child(2) {
        font-size: 12px;
    }

    #colle {
        border: 1px solid #eeede9;
        margin: 30px auto 0;
        padding: 25px 5%;
        max-width: 1140px;
    }

    #colle > dl dt {
        font-weight: bold;
        font-size: 18px;
        margin-bottom: 20px;
    }

    #colle > dl dd {
        font-size: 12px;
        padding-right: 60px;
        background: url("../images/icon_1year.jpg") no-repeat right center;
        background-size: 50px auto;
    }

    #colle .item-box {
        margin: 25px auto 0;
        max-width: 620px;
    }

    #colle .item-box .item {
        width:100%
    }
    
    #bed .mini-inner .item {
        width: 49%;
    }
    
    .p-tbl th {
        font-weight: normal;
        background: #efedea;
    }

    .p-tbl th:nth-child(1) {
        width: 100px;
    }

    .p-tbl th:nth-child(2) {
        width: 70px;
    }

    .p-tbl th:nth-child(3) {
        width: 35px;
    }

    .p-tbl th:nth-child(4) {
        width: 45px;
    }

    .p-tbl th:nth-child(5) {
        width: 55px;
    }
	
	.p-tbl th:nth-child(6) {
        width: 13%;
    }
    
    #campaign-wrapper p {
        font-size: 12px;
    }
    
    


    /*ここから追記*/
    #main p {
        text-align: center;
        font-weight: bold;
        font-size: 12px;
        margin: 15px 0 15px;
    }

    #main p strong {
        font-size: 14px;
        display: block;
        margin-top: 10px;
    }

    .top-box {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        align-items: center;
        border: 1px solid #CCC;
        padding: 15px;
        width: 96%;
        max-width: 980px;
        margin: 0 auto 15px;
    }

    .top-box > * {
        width: auto;
    }

    .top-box figure {
        text-align: center;
        width: 35%;
    }

    .top-box.pre p {
        background-image: url("../images/icon_check.jpg");
    }

    .top-box.sen p {
        background-image: url("../images/icon_check.jpg");
    }
    
    .top-box.sen figure img {
        width: 85%;
        height: auto;
    }

    .top-box + p {
        text-align: center;
        font-weight: bold;
        font-size: 12px !important;
        line-height: 1.5;
        margin-bottom: 25px;
        padding: 0 2%;
    }

    #ex {
        width: 96%;
        max-width: 1140px;
        margin: 0 auto 20px;
        border: 1px solid #53565a;
    }

    #ex dt {
        text-align: center;
        background: #53565a;
        height: 30px;
        line-height: 30px;
        font-weight: bold;
        color: #FFF;
        font-size: 14px;
    }

    #ex dd {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        align-items: center;
        padding: 15px 25px;
        font-size: 12px;
    }

    #ex dd p {
        width: 46%;
        text-align: center;
    }

    #ex dd p span {
        display: block;
        margin-top: 5px;
    }

    .caution {
        margin: 0 auto 15px;
        max-width: 980px;
        font-size: 12px;
        text-align: center;
        background: #fafafa;
        padding: 15px 2%;
        width: 96%;
    }

    .caution dt {
        text-align: center;
        margin-bottom: 15px;
    }

    .caution dt span {
        display: inline-block;
        font-weight: bold;
        background: url( "../images/icon_caution.jpg") no-repeat;
        padding-left: 22px;
        height: 18px;
        line-height: 18px;
        background-size: auto 18px;
    }

    .caution + ul {
        padding: 15px 2% !important;
        background: #fafafa;
        font-size: 16px;
        max-width: 980px;
        margin: 0 auto 40px !important;
        width: 96%;
    }

    .caution + ul li + li {
        margin-top: 5px;
    }
	
	.item li span + img,
    .item li img + img {
        margin-left: 5px;
        margin-top: 3px;
        max-width: 100%;
    }
    
    .size-nav li a::after {
        right: 15px;
    }
    
    .item-box {
        display: flex;
        justify-content: space-between !important;
    }

    #matt .item ul li:nth-child(3) img {
        width: 80px;
    }
    
    /*ここから追記*/
    #other .mini-inner article:first-child {
        width: 100%;
        margin-bottom: 50px;
    }

    #other .mini-inner article:last-child {
        width: 100%;
    }

    #other .mini-inner article:first-child .item {
        width: 49%;
    }

    #other .mini-inner article:last-child .item {
        width: 49%;
    }

    #other .mini-inner article > p {
        background: #efeeeb;
        height: 30px;
        line-height: 30px;
        font-size: 14px;
        padding-left: 10px;
        margin-bottom: 15px;
    }
    
    #campaign-wrapper section#other h4 span {
        text-align: left;
    }
    
    
    .top-box.pre p {
        width: 70%;
        background-position: left top;
    }

    .top-box.pre figure {
        width: 30%;
        text-align: right;
    }

    .top-box p {
        padding-left: 25px;
        background-position: center left;
        background-repeat: no-repeat;
        font-weight: bold;
        font-size: 14px !important;
        line-height: 1.5;
        min-height: 18px;
        background-size: 18px auto;
        width: 65%;
    }

    .top-box p span {
        display: block;
        font-style: normal;
        font-size: 14px;
        margin-top: 10px;
        padding-right: 10px;
        font-weight: normal;
    }

    #main p + ul {
        max-width: 500px;
        margin: 0 auto 20px;
        font-size: 14px;
        padding-left: 7%;
    }

    #main p + ul li {
        margin-top: 10px;
        background: url("../images/check.jpg") no-repeat left center;
        padding-left: 25px;
        height: 20px;
        line-height: 20px;
        background-size: 20px;
    }

    #main p + ul li + li {
        margin-top: 5px;
    }

    #main p + ul li span {
        font-size: 12px;
    }

	#campaign-wrapper h4 div {
		display: inline-block;
		padding: 15px 0 15px;
	}

	#tbl-box {
		border: 1px solid #1c1b42;
		width: 96%;
		max-width: 1140px;
		margin: 0 auto 40px;
		padding: 20px 2% 20px;
	}

	#tbl-box dt {
		font-weight: bold;
		color: #1c1b42;
		font-size: 13px;
		margin-bottom: 15px;
		text-align: center;
	}

	#tbl-box dt span {
		display: inline-block;
		padding-left: 100px;
		height: 35px;
		padding: 0 0 0 45px;
		background: url("../images/num01.jpg") no-repeat left center;
		background-size: 35px auto;
		line-height: 35px;
	}

	#tbl-box dt strong {
		font-size:20px;
		display: block;
	}

	#tbl-box dt a {
		color: #1c1b42 !important;
	}

	#tbl-box dd > p {
		text-align: center;
	}

	#tbl-box dd p strong {
		font-size: 14px;
		display: inline-block;
		padding-left: 25px;
		background: url("../images/icon_check.jpg") no-repeat left center;
		height: 20px;
		line-height: 20px;
		background-size: 20px auto;
		letter-spacing: 0;
	}

	#tbl-box dd p strong + strong {
		margin-left: 0;
		background: url("../images/icon_check.jpg") no-repeat left center;
		background-size: 20px auto;
		margin-top: 10px;
	}

	#tbl-box dd figure {
		width: 100%;
		max-width: 800px;
		margin: 15px auto 20px;
	}

	#tbl-box dd figure span {
		display: block;
		margin-bottom: 10px;
		text-align: center;
	}


	#tbl-box dd figure p {
		font-size: 12px;
		margin-top: 15px;
		letter-spacing: 0.02em !important;
	}

	#tbl-box dd > span {
		display: block;
		padding-left: 1em;
	}

	.sashie {
		width:100%;
		text-align: center;
		margin-bottom: 25px !important;
	}
	
	#bed .item:nth-child(n+5) {
		margin-bottom: 0;
	}
	
	#matt .size-nav li,
	#bed .size-nav li {
		max-width: 50%;
		width: 49%;
		text-align: left;
		font-size: 14px;
	}
	
	#matt .size-nav li a,
	#bed .size-nav li a {
		padding-left: 1em;
	}
	
	.c-nav {
		width: 100%;
		max-width: 980px;
		margin: 0 auto 20px;
		padding: 0 2%;
	}
	
	.c-nav.mobile {
		margin: 0 auto 40px;
	}
	
	.c-nav p {
		text-align: center;
		color: #FFF;
		font-weight: bold;
		background: #1c1b42;
		margin-bottom: 10px;
		height: 30px;
		line-height: 30px;
		font-size: 14px !important;
	}
	
	.c-nav ul li {
		width: 49%;
	}
	
	.c-nav.mobile ul li {
		width: 32%;
	}
	
	#tbl-box dl:first-child {
		padding-bottom: 30px;
		margin-bottom: 30px;
		border-bottom: 1px solid #d7d2cb;
	}

	#tbl-box dl:nth-of-type(2) {
		padding-bottom: 30px;
		margin-bottom: 30px;
		border-bottom: 1px solid #d7d2cb;
	}

	#tbl-box dl:nth-of-type(2) dt span {
		background-image: url("../images/num02.jpg");
		background-position: left 12px;
		line-height: 1.4;
		text-align: left;
		height: 55px;
	}
	
	#tbl-box dl:nth-of-type(3) dt span {
		background-image: url("../images/num03.jpg");
		background-position: left 12px;
		line-height: 1.4;
		text-align: left;
		height: 55px;
	}
	
	#tbl-box dl:nth-of-type(3) dt span em {
		font-style: normal;
		font-size: 16px;
	}

	
	#tbl-box dl:nth-of-type(2) dd div {
		width: 49%;
	}
	
	#tbl-box dl:nth-of-type(2) dd p {
		font-size: 12px;
		width: 49%;
		text-align: left;
	}

	#tbl-box dl:nth-of-type(2) dd p span {
		font-weight: bold;
		font-size: 14px;
		display: block;
		margin-bottom: 20px;
	}

	#campaign-wrapper section h4 + p {
		max-width: 980px;
		margin: 0 2% 15px;
		font-size: 12px;
		line-height: 1.4;
	}

	#campaign-wrapper section h4 + p span {
		display: block;
		font-size: 14px;
		margin-top: 15px;
		text-align: center;
	}

	#campaign-wrapper h4 div a {
		color: #1c1b42 !important;
	}

	.item > p:last-child {
		font-size: 14px;
		margin-top: 15px !important;
	}

	.c-nav ul li span {
		display: none;
	}
	
	
	
	
	/*ここから追記*/
	.f-nav .pc {
		display: none !important;
	}
	
	.f-nav .mobile {
		display: flex !important;
		justify-content: space-between;
		margin: 0 auto 25px !important;
		width: 96%;
		flex-wrap: wrap;
	}
	
	.f-nav .mobile li:nth-child(1),
	.f-nav .mobile li:nth-child(2) {
		width: 49%;
		text-align: center;
	}
	
	.f-nav .mobile li:nth-child(3) {
		margin: 10px auto 0 !important;
		width: 100%;
		text-align: center;
	}

	.tbl-tit {
		max-width: 1140px;
		width: 96%;
		margin: 0 auto;
		font-size: 14px !important;
		font-weight: bold;
		color: #FFF;
		text-align: center;
		background: #1c1b42;
		height: 35px;
		line-height: 35px;
	}

	.tbl-tit a {
		color: #FFF !important;
	}

	#tbl-box dl:nth-of-type(2) dd p strong {
		color: #081342;
		font-size: 12px;
		display: block;
		width: 60px;
		height: 22px;
		line-height: 22px;
		background: #fbb615;
		font-weight: bold;
		text-align: center;
		margin-bottom: 10px;
		padding-left: 0 !important;
	}
	
	#tbl-box dl:nth-of-type(2) dd div:last-child {
		width: 100%;
	}

	#tbl-box dl:nth-of-type(2) dd div:last-child em {
		font-style: normal;
		font-size: 12px;
		display: block;
		margin-top: 15px;
	}
	
	#tbl-box dl:nth-of-type(2) dd p span em {
		display: block;
		font-size: 12px;
	}

	#tbl-box h6 {
		width: 100%;
		margin-top: 30px;
		font-size: 13px;
		font-weight: bold;
		height: 30px;
		line-height: 30px;
		background: #f5f5f5;
		padding: 0 10px;
	}

	#tbl-box h6 + p {
		width: 100%;
		margin-top: 15px;
		font-size: 12px;
		line-height: 1.5;
	}

	#tbl-box h6 + p span {
		font-size: 12px;
	}

	.bed-rice {
		font-size: 12px !important;
		letter-spacing: -0.01em!important;
	}
	
	.i-nav {
		margin: 0 0 30px !important;
	}
	
	.i-nav dt {
		font-size: 14px;
		font-weight: bold;
		color: #FFF !important;
		background: #1c1b42;
		height: 35px;
		line-height: 35px;
	}
	
	.i-nav dd > * {
		width: 49%;
	}
	
	.flex.pc {
		display: none !important;
	}
	
	.flex.mobile {
		display: flex !important;
	}

	#tbl-box dl:nth-of-type(3) dd p {
		width:100%;
		font-size: 12px;
	}
	
	#tbl-box dl:nth-of-type(3) dd figure {
		width:100%;
		font-size: 12px;
		margin: 0 0 15px !important;
	}
	
	#tbl-box .hs {
		width: 100%;
		text-align: center;
	}
	
	#campaign-wrapper .item a:first-of-type {
		display: block;
		text-align: center;
	}
	
	#campaign-wrapper .item a:first-of-type > img {
		width: 100%;
		max-width: 262px;
		margin: 0 auto;
	}
	
/***メディアクエリここまで***/}

.p-mv {
	max-width: 1375px;
	width: 100%;
	margin: 0 auto 50px;
	position: relative;

	.p-mv__contents {
		width: min(1140px, calc(100 / 1375 * 1140vw));
		position: absolute;
		left: 50%;
		bottom: min(25px, calc(100 / 1375 * 25vw));
		translate: -50% 0;

		& > h2 {
			display: flex;
			flex-direction: column;
			justify-content: center;
			align-items: center;
			width: 100%;
			height: min(40px, calc(100 / 1375 * 40vw));
			margin: 0 auto;
			background: url(../images/mv_title-bg.jpg) 50% 50% / cover no-repeat;
			line-height: calc(28 / 22);
			letter-spacing: 0.1em;
			text-align: center;
			font-size: min(22px, calc(100 / 1375 * 22vw));
			font-weight: 700;
			color: #FFF;
		}
	}

	.p-mv__contents_grid {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
	}

	.p-mv__contents_item {
		position: relative;
	}

	.p-mv__contents_link {
		display: block;
		position: absolute;

		&.item-1 {
			width: min(274px, calc(100 / 1375 * 274vw));
			height: min(51px, calc(100 / 1375 * 51vw));
			top: min(101px, calc(100 / 1375 * 101vw));
			left: min(40px, calc(100 / 1375 * 40vw));
		}

		&.item-2 {
			width: min(150px, calc(100 / 1375 * 150vw));
			height: min(26px, calc(100 / 375 * 26vw));
			top: min(98px, calc(100 / 1375 * 98vw));
			left: min(40px, calc(100 / 1375 * 40vw));
		}

		&.item-3 {
			width: min(358px, calc(100 / 1375 * 358vw));
			height: min(26px, calc(100 / 1375 * 26vw));
			top: min(134px, calc(100 / 1375 * 134vw));
			left: min(40px, calc(100 / 1375 * 40vw));
		}
	}
}

@media screen and (max-width: 810px) {
	.p-mv {
		margin-bottom: 40px;

		.p-mv__contents {
			width: calc(100vw - 40px);
			bottom: min(62px, calc(100 / 720 * 62vw));

			& > h2 {
				height: min(64px, calc(100 / 720 * 64vw));
				font-size: min(29px, calc(100 / 720 * 29vw));
			}
		}

		.p-mv__contents_grid {
			grid-template-columns: 100%;
		}

		.p-mv__contents_link {
			&.item-1 {
				width: min(395px, calc(100 / 720 * 395vw));
				height: min(74px, calc(100 / 720 * 74vw));
				top: min(98px, calc(100 / 720 * 98vw));
				left: min(20px, calc(100 / 720 * 20vw));
			}

			&.item-2 {
				width: min(221px, calc(100 / 720 * 221vw));
				height: min(46px, calc(100 / 720 * 46vw));
				top: min(84px, calc(100 / 720 * 84vw));
				left: min(20px, calc(100 / 720 * 20vw));
			}

			&.item-3 {
				width: min(406px, calc(100 / 720 * 406vw));
				height: min(59px, calc(100 / 720 * 59vw));
				top: min(138px, calc(100 / 720 * 138vw));
				left: min(20px, calc(100 / 720 * 20vw));
			}
		}
	}
}

.l-block {
	max-width: 1140px;
	width: 100%;
	margin: 0 auto;
	border: 1px solid #010046;
	box-sizing: border-box;

	& + .l-block {
		margin-top: 40px;
	}

	h3 {
		padding: 15px 0;
		background: #010046;
		line-height: calc(28 / 22);
		letter-spacing: 0.1em;
		text-align: center;
		font-size: 22px !important;
		font-weight: 700;
		color: #FFF;

		& > .l-block__title_inner {
			display: block;
			width: fit-content;
			margin: 0 auto;
			position: relative;

			& >.l-block__title_num {
				display: flex;
				flex-direction: column;
				justify-content: center;
				align-items: center;
				width: 26px;
				padding-bottom: 4px;
				aspect-ratio: 1 / 1;
				border-radius: 100%;
				box-sizing: border-box;
				background: #FFF;
				overflow: hidden;
				position: absolute;
				top: 50%;
				left: 100%;
				translate: 0 -50%;
				line-height: 1.1;
				letter-spacing: 0;
				color: #002870;
			}

			& > .l-block__title_badge {
				width: 80px;
				position: absolute;
				top: 50%;
				right: calc(100% + 14.8px);
				translate: 0 -50%;
			}
		}
	}

	& > .l-block__content {
		padding: 50px 20px;
		box-sizing: border-box;
		background: #FFF;

		& > .l-block__lead {
			margin: 0 auto 46px !important;
			line-height: calc(44 / 28);
			letter-spacing: 0.1em;
			text-align: center;
			font-size: 28px !important;
			font-weight: 700;
			color: #010046;

			& > a {
				font-weight: inherit !important;
				color: inherit !important;
			}
		}

		& > .l-block__image {
			max-width: 800px;
			width: 100%;
			margin: 0 auto;

			figcaption {
				display: block;
				margin: 46px auto 0;
				line-height: calc(30 / 16);
				letter-spacing: 0.1em;
				font-size: 16px;
				font-weight: 400;
			}

			& > .l-block__image_caption {
				margin: 0 auto 55px !important;
				line-height: calc(34 / 20);
				letter-spacing: 0.05em;
				font-size: 20px !important;
				font-weight: 500;

				& > span {
					display: block;
					padding-left: calc(88px + 7.3px);
					position: relative;

					&::before {
						content: "";
						width: 88px;
						aspect-ratio: 1 / 1;
						background: url(../images/decoration-02.png) 50% 50% / 100% no-repeat;
						position: absolute;
						top: 50%;
						left: 0;
						translate: 0 -50%;
					}
				}
			}
		}

		& > .l-block__flow {
			max-width: 980px;
			width: 100%;
			margin: 50px auto 0;

			& > h4 {
				padding: 15px 0 !important;
				box-sizing: border-box;
				background: #002870 !important;
				line-height: calc(28 / 20);
				letter-spacing: 0.1em;
				text-align: center;
				font-size: 20px !important;
				font-weight: 700;
				color: #FFF !important;
			}

			.l-block__flow_grid {
				display: grid;
				grid-template-columns: repeat(3, 1fr);
				gap: 40px;
			}

			.l-block__flow_item {
				padding: 30px 20px;
				box-sizing: border-box;
				background: #E5E9F0;
				position: relative;
				text-align: center;

				&::before {
					content: "";
					width: 110px;
					aspect-ratio: 1 / 1;
					background: 50% 50% / 100% no-repeat;
					position: absolute;
					top: 70px;
					left: 50%;
					translate: -50% 0;
				}

				&.item-1 {
					&::before {
						background-image: url(../images/flow-01.png);
					}
				}

				&.item-2 {
					&::before {
						background-image: url(../images/flow-02.png);
					}
				}

				&.item-3 {
					&::before {
						background-image: url(../images/flow-03.png);
					}
				}

				& + .l-block__flow_item {
					position: relative;

					&::after {
						content: "";
						width: 23.36px;
						height: 64.86px;
						clip-path: polygon(0 0, 100% 50%, 0 100%);
						background: rgba(0,40,112,.3);
						position: absolute;
						top: 50%;
						right: calc(100% + 6.7px);
						translate: 0 -50%;
					}
				}
			}

			.l-block__flow_step {
				margin: 0 auto 144.7px !important;
				line-height: calc(28 / 24);
				letter-spacing: 0.1em;
				font-size: 24px !important;
				font-weight: 700;
				color: #002870;
			}

			.l-block__flow_caption {
				line-height: calc(24 / 16);
				letter-spacing: 0.1em;
				font-size: 16px !important;
				font-weight: 500;
				color: #002870;
			}

			.l-block__flow_btn {
				display: block;
				margin: 30px auto 0;
				padding: 13px 0;
				background: #002870;
				line-height: 1.4;
				letter-spacing: 0.1em;
				font-size: 14px;
				font-weight: 700;
				color: #FFF !important;
			}
		}

		.l-block__list {
			margin: 30px auto 0 !important;
			line-height: calc(20 / 12);
			letter-spacing: 0.05em;
			font-size: 12px !important;
			font-weight: 400;

			li {
				padding-left: 1em;
				text-indent: -1em;

				&::before {
					content: "※";
				}
			}
		}

		.l-block__wrap {
			display: grid;
			grid-template-columns: 1fr min(490px, calc(100 / 1375 * 490vw));
			gap: min(40px, calc(100 / 1375 * 40px));
			max-width: 980px;
			margin: 0 auto;
			padding: 0 min(60px, calc(100 / 1375 * 60px));
			
			.l-block__wrap_content {
				& > p {
					line-height: calc(30 / 16);
					letter-spacing: 0.05em;
					font-size: 16px;
					font-weight: 400;

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

.l-block__att {
	max-width: 1140px;
	width: 100%;
	margin: 20px auto 0;
	line-height: calc(20 / 12);
	letter-spacing: 0.05em;
	font-size: 12px;
	font-weight: 400;

	& > p {
		display: flex;
		gap: .5em;

		& > span {
			flex: 0 0 auto;
		}
	}
}

@media screen and (max-width: 810px) {
	.l-block {
		width: calc(100% - 20px);
		margin: 0 10px;
		box-sizing: border-box;

		& + .l-block {
			margin-top: 20px;
		}

		& > h3 {
			padding: 7px 0;
			line-height: calc(28 / 28);
			font-size: 14px !important;

			& > .l-block__title_inner {
				& > .l-block__title_num {
					width: calc(36px / 2);
					aspect-ratio: 1 / 1;
					padding-bottom: 1px;
				}

				& > .l-block__title_badge {
					width: calc(80px / 2);
					right: calc(100% + (16.7px / 2));
				}
			}
		}

		& > .l-block__content {
			padding: 20px 10px !important;

			& > .l-block__lead {
				margin-bottom: 20px !important;
				line-height: calc(50 / 30);
				font-size: 15px !important;
			}

			& > .l-block__image {
				max-width: min(640px, calc(100 / 720 * 640vw));
				width: 100%;
				margin: 0 auto;

				img {
					display: block;
					margin: 0 auto;
				}

				figcaption {
					margin-top: 20px !important;
					line-height: calc(40 / 24);
					font-size: 12px !important;
				}

				& > .l-block__image_caption {
					margin-bottom: 20px !important;
					font-size: 12px !important;

					& > span {
						padding-left: calc((100px + 4.3px) / 2);

						&::before {
							width: 50px;
						} 
					}
				}
			}

			& > .l-block__flow {
				margin-top: 25px;

				& > h4 {
					padding: 8.5px 0 !important;
					font-size: 13px !important;
				}

				.l-block__flow_grid {
					grid-template-columns: 100%;
					gap: 32px;
				}

				.l-block__flow_item {
					padding: 12.5px 15px 12.5px calc(168.4px / 2);
					text-align: left;

					&::before {
						width: 55px;
						top: 50%;
						left: 15px;
						translate: 0 -50%;
					}

					& + .l-block__flow_item {
						&::after {
							width: calc(64.86px / 2);
							height: calc(23.36px / 2);
							clip-path: polygon(0 0, 100% 0, 50% 100%);
							top: auto;
							left: 50%;
							right: auto;
							bottom: calc(100% + 12px);
							translate: -50% 0;
						}
					}
				}

				.l-block__flow_step {
					margin-bottom: calc(17.1px / 2) !important;
					font-size: 15px !important;
				}

				.l-block__flow_caption {
					line-height: calc(40 / 24);
					font-size: 12px !important;
				}

				.l-block__flow_btn {
					margin-top: 15px;
					padding: 10px 0;
					text-align: center;
					font-size: 12px;
				}
			}

			.l-block__list {
				margin-top: 15px !important;
				line-height: calc(30 / 18);
				font-size: 9px !important;
			}

			& > .l-block__wrap {
				display: flex;
				flex-direction: column-reverse;
				gap: min(40px, calc(100 / 720 * 40vw));
				max-width: initial;
				width: 100%;
				padding: 0 min(20px, calc(100 / 720 * 20vw));
				box-sizing: border-box;

				.l-block__wrap_content {
					& > p {
						font-size: calc(24px / 2);

						& > small {
							font-size: calc(18px / 2);
						}
					}
				}
			}
		}
	}

	.l-block__att {
		padding: 0 20px;
		box-sizing: border-box;
		font-size: calc(18px / 2);
	}
}

.p-present__ribon {
	display: flex;
	justify-content: center;
	padding: 32.5px 0;
	box-sizing: border-box;
	background: #010046;
	
	& > p {
		display: block;
		width: fit-content;
		margin: 0 auto;
		padding-left: min(110px, calc(100 / 1375 * 110vw));
		position: relative;
		line-height: calc(44 / 22) !important;
		letter-spacing: 0.1em;
		text-align: center;
		font-size: 22px !important;
		font-weight: 700;
		color: #FFF;

		&::before {
			content: "";
			width: min(90px, calc(100 / 1375 * 90vw));
			aspect-ratio: 1 / 1;
			background: url(../images/decoration-04.png.png) 50% 50% / 100% no-repeat;
			position: absolute;
			top: 50%;
			left: 0;
			translate: 0 -50%;
		}

		& > a {
			font-weight: 700;
			color: #FFF !important;
		}
	}
}

@media screen and (max-width: 810px) {
	.p-present__ribon {
		padding: 20px 0;

		& > p {
			font-size: 16px !important;

			&::before {
				width: 45px;
				top: 2.3em;
			}
		}
	}
}

.p-set {
	max-width: 1140px;
	width: 100%;
	margin: 50px auto 80px;
	border: 1px solid #CCCCCC;
	box-sizing: border-box;
	
	& > .p-set__title {
		display: flex;
		justify-content: center;
		gap: 20px;
		padding: 8px 20px;
		box-sizing: border-box;
		background: #495057;
		line-height: 1.4;
		letter-spacing: 0.1em;
		font-size: 20px;
		font-weight: 700;
		color: #FFF;

		& > .p-set__title_tag {
			display: block;
			width: fit-content;
			padding: 5px 9.5px;
			box-sizing: border-box;
			background: #C09A28;
			line-height: 1.2;
			font-size: 16px;
			font-weight: 500;
			color: #FFF;
		}
	}

	& > .p-set__body {
		padding: 30px 40px;
		box-sizing: border-box;

		& > .p-set__wrap {
			display: flex;
			justify-content: center;
			align-items: center;
			gap: min(80px, calc(100 / 1140 * 80vw));

			& > .p-set__image {
				width: min(490px, calc(100 / 1140 * 490vw));
			}

			& > .p-set__content {
				width: calc(100% - min(calc(490px + 80px), calc(100 / 1140 * (490vw + 80vw))));
			}
		}

		.p-set__name {
			margin: 0 0 30px !important;
			padding: 0 !important;
			background: none !important;
			line-height: calc(30 / 18);
			letter-spacing: 0.1em;
			text-align: left !important;
			font-size: 18px !important;
			color: #495057 !important;
		}

		.p-set__caption {
			margin: 0 0 15.7px !important;
			line-height: calc(40 / 16) !important;
			font-size: 14px !important;
			font-weight: 400;
		}

		.p-set__price {
			display: flex;
			align-items: center;
			gap: 17.5px;
			margin: 0 0 30px;
			padding-left: 32px;
			box-sizing: border-box;
			position: relative;

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

			& > .p-set__price_tag {
				display: block;
				width: fit-content;
				padding: 5px 15px;
				border: 1px solid #010046;
				box-sizing: border-box;
				line-height: 1.2;
				letter-spacing: 0.025em;
				font-size: 14px;
				font-weight: 600;
				color: #010046;
			}

			& > .p-set__price_num {
				line-height: calc(46.33 / 34);
				font-size: 22px;
				font-weight: 700;
				color: #010046;

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

		.p-set__btn {
			display: block;
			max-width: 260px;
			width: 100%;
			margin: 0 auto;
			padding: 15px 0;
			box-sizing: border-box;
			background: #000;
			line-height: 1.4;
			letter-spacing: 0.1em;
			text-align: center;
			font-size: 16px;
			font-weight: 600;
			color: #FFF !important;
		}
	}
}

@media screen and (max-width: 810px) {
	.p-set {
		width: calc(100% - 20px);
		margin: 30px auto 0;

		& > .p-set__title {
			flex-direction: column;
			gap: 8px;
			font-size: 13px !important;
			text-align: center;

			& > .p-set__title_tag {
				padding: 3.5px 10px;
				font-size: 12px;
			}
		}

		& > .p-set__body {
			padding: 15px 10px;

			& > .p-set__wrap {
				flex-direction: column;
				gap: 15px;

				& > .p-set__image {
					width: 100%;
					
					> img {
						display: block;
						margin: 0 auto;
					}
				}

				& > .p-set__content {
					width: 100%;
					text-align: center;
				}
			}

			.p-set__name {
				margin-bottom: 14px !important;
				line-height: calc(45 / 28) !important;
				text-align: center !important;
				font-size: 14px !important;
			}

			.p-set__caption {
				margin-bottom: 12.5px !important;
				line-height: calc(40 / 24) !important;
				text-align: center !important;
				font-size: 12px !important;
			}

			.p-set__price {
				width: fit-content;
				margin: 0 auto 15px;

				& > .p-set__price_tag {
					font-size: 3px 15px;
				}

				& > .p-set__price_num {
					font-size: 16px;

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

			.p-set__btn {
				margin: 0 auto;
			}
		}
	}
}

.l-container {
	width: 100%;
	margin: 0 auto;
	padding: 0 20px;
	box-sizing: border-box;
}

@media only screen and (max-width: 810px) {
	.l-container {
		padding: 0 2.6041666667vw;
	}
}

.l-container--ptn1 {
	max-width: 1020px;
}

.l-container--ptn2 {
	max-width: 1180px; }

.p-update {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 100%;
	min-height: 290px;
	aspect-ratio: 1374 / 290;
	margin: 80px auto !important;
	background: url(../images/bg-03.jpg) 0 50%/cover no-repeat;
}

@media only screen and (max-width: 810px) {
	.p-update {
		min-height: initial;
		aspect-ratio: unset;
		margin-bottom: min(20px, 5.2083333333vw) !important;
		padding: min(332px, calc(100 / 720 * 332vw)) 10px min(40px, calc(100 / 720 * 40vw)) !important;
		background-image: url(../images/bg-03-sp.jpg);
		background-position: 0 0;
	}
}

.p-update__content {
	width: -moz-fit-content;
	width: fit-content;
	margin: 0 0 0 auto;
	padding: 37.5px 12px 37.5px;
	box-sizing: border-box;
	background: rgba(255, 255, 255, 0.9);
	text-align: center;
}

@media only screen and (max-width: 810px) {
	.p-update__content {
		width: 100%;
		padding: 3.90625vw 3.2552083333vw 3.90625vw;
	}
}

.p-update__title {
	margin: 0 auto 29.5px;
	line-height: calc(29.97 / 22);
	letter-spacing: 0.1em;
	font-size: 22px;
	font-weight: 700;
}

@media only screen and (max-width: 810px) {
	.p-update__title {
		margin-bottom: min(15px, 3.90625vw);
		font-size: min(18px, 3.3854166667vw);
	}
}

.p-update__caption {
	line-height: 1.875;
	letter-spacing: 0.1em;
	font-size: 16px;
	font-weight: 400;
}

@media only screen and (max-width: 810px) {
	.p-update__caption {
		font-feature-settings: "palt";
		font-size: min(14px, 3.125vw);
	}
}

.p-update__box {
	display: flex;
	flex-direction: column;
	align-items: center;
	margin: 30px auto 0;
}

@media only screen and (max-width: 810px) {
	.p-update__box {
		margin-top: min(17.5px, 4.5572916667vw);
	}
}

.p-update__box_title {
	margin: 0 auto 15px;
	line-height: 1.25;
	letter-spacing: 0.1em;
	font-size: 16px;
	font-weight: 700;
}

@media only screen and (max-width: 810px) {
	.p-update__box_title {
		margin-bottom: min(10.5px, 2.734375vw);
		font-size: min(18px, 3.125vw);
	}
}

.p-update__box_item {
	margin: 0 auto 12px;
}

@media only screen and (max-width: 810px) {
	.p-update__box_item {
		margin-bottom: min(8.5px, 2.2135416667vw);
	}
}

.p-update__box_item,
.p-update__box_price {
	line-height: 1.4285714286;
	letter-spacing: 0.1em;
	font-size: 14px;
	font-weight: 400;
}

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

	.p-update__box_item,
	.p-update__box_price {
		font-size: min(14px, 2.8645833333vw);
	}
}

.p-update__box_btn {
	width: 100%;
	margin: 30.9px auto 0;
}

@media only screen and (max-width: 810px) {
	.p-update__box_btn {
		margin-top: min(15px, 3.90625vw);
	}
}

.p-update__box_btn .c-btn {
	margin: 0 auto; }

.c-btn {
  text-decoration: none;
  cursor: pointer;
}
.c-btn--ptn1 {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  max-width: 260px;
  width: 100%;
  height: 48px;
  background: #000;
  line-height: 1.4;
  letter-spacing: 0.1em;
  font-size: 16px;
  font-weight: 500;
  color: #FFF !important;
}
@media only screen and (max-width: 810px) {
  .c-btn--ptn1 {
    max-width: min(165.5px, 43.0989583333vw);
    height: min(42px, 10.9375vw);
    font-size: min(15.5px, 4.0364583333vw);
  }
}