@charset "utf-8";
/* --------------------------------
	lower
-------------------------------- */
.container {
	padding: 0 85px;
}

.mv {
	border-top: solid 5px #c6111a;
	text-align: center;
}

/* guide
--------------- */
.guide > h2 {
	font-size: 65px;
	font-weight: 500;
	letter-spacing: 0.2em;
	text-align: center;
	color: #fff;
	background-color: #dab239;
}
.guide > .digicataBtn {
	width: 1009px;
	margin: 40px auto 0;
	position: relative;
}
.guide > .digicataBtn a {
	display: block;
	border: solid 7px #bc261a;
	box-shadow: 10px 10px 0 0 #AF1828;
	border-radius: 20px;
	font-size: 59px;
	font-weight: 600;
	text-align: center;
	color: #bc261a;
	padding: 30px 120px 30px 30px;
	transition: .2s ease-in-out;
	position: relative;
}
.guide > .digicataBtn a:hover {
	box-shadow: 0 0 0 0 #AF1828;
	top: 10px;
	opacity: 1;
}
.guide > .digicataBtn a::after {
	content: "";
	width: 76px;
	height: 76px;
	background: url(/base/pc/store/special/osechi/2027/img/common/arrow.png) no-repeat;
	background-size: contain;
	position: absolute;
	top: 50%;
	right: 40px;
	transform: translate(0 , -50%);
}
.guide > .digicataBtn.comming {
	position: relative;
}
.guide > .digicataBtn.comming a {
	pointer-events: none;
}
.guide > .digicataBtn .commingTxt {
	width: 101%;
	height: 107%;
	font-size: 101px;
	font-weight: 600;
	text-align: center;
	color: #fff;
	background-color: rgba(149,149,149,0.8);
	border-radius: 20px;
	position: absolute;
	top: 0;
	left: 0;
}
/* tp
--------------- */
.tp > h3 {
	margin: 40px auto 0;
	width: 1200px;
	font-size: 55px;
	font-weight: 700;
	letter-spacing: 0.2em;
	text-align: center;
	color: #a7864b;
	border-top: solid 4px #a7864b;
	border-bottom: solid 4px #a7864b;
	padding: 10px 0;
}

.tp .inner > .lead {
	margin-top: 15px;
	font-size: 47px;
	font-weight: 700;
	text-align: center;
}
.tp .inner > .lead .big {
	font-size: 63px;
}

.tp .inner > .lead .txt {
	display: block;
	font-size: 46px;
}

.tp .inner > .lead .note {
	font-size: 38px;
	color: #bc261a;
}

.tp .inner > ul {
	margin-top: 15px;
	padding: 25px 40px;
	font-size: 22px;
	font-weight: 500;
	border: solid 2px #c11e1a;
}

/* stores
--------------- */
.stores {
	margin-top: 30px;
}

.stores dl + dl {
	margin-top: 35px;
}

.stores dl dt {
	color: #fff;
	background-color: #a7864b;
	font-size: 44px;
	font-weight: bold;
	text-align: center;
}

.stores dl dd.box {
	display: flex;
	font-weight: bold;
	font-size: 28px;
	line-height: 1.4;
}

.stores dl dd.box .off {
	padding-left: 0;
	text-indent: 0;
}

.stores dl dd.box .note {
	font-size: 26px;
	font-weight: normal;
}

.freecall {
	position: relative;
	font-size: 23px;
	font-weight: 600;
	line-height: 1.4;
}

.freecall::before {
	content: "通話料無料";
	position: absolute;
	top: 7px;
	left: 0;
	padding: 0 8px;
	font-size: 21px;
	font-weight: 500;
	border: 2px solid #000;
	border-radius: 10px;
	background-color: #fff;
}

.freecall span {
	font-size: 35px;
	font-weight: 700;
}
.freecall .telLink {
	font-size: 29px;
	font-weight: 600;
}

/* request */
.stores dl {
	background-color: #F3EAD6;
}
.stores dl dd.box .request {
	padding: 15px 10px 15px 30px;
	width: 852px;
}

.stores dl dd.box .request .scheduleWrap {
	margin-bottom: 10px;
	padding-bottom: 10px;
	border-bottom: solid 1px #231815;
}

.stores dl dd.box .request .scheduleWrap .schedule {
	margin-bottom: 5px;
}

.stores dl dd.box .requestPeriod {
	font-size: 34px;
	font-weight: 700;
}

.stores dl dd.box .requestPeriod .bold {
	font-weight: 900;
}

.stores dl dd.box .requestPeriod .big {
	font-size: 45px;
}

.stores dl dd.box .requestPeriod .middle {
	font-size: 38px;
}

.stores dl dd.box .request .tel > span {
	display: block;
}
.stores dl dd.box .requestPeriod .close {
	display: block;
	font-size: 26px;
	font-weight: 500;
	text-indent: 1em;
}
.stores dl dd.box .requestPeriod .close.indent {
	text-indent: 0;
}

/* deliver */
.stores dl dd.box .deliver {
	padding: 18px 20px 15px;
	background-color: #FBE3EB;
	width: calc(100% - 852px);
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.stores dl dd.box .deliver .card {
	font-size: 31px;
	font-weight: 700;
	text-align: center;
}
.stores dl dd.box .deliver .info {
	margin-top: 10px;
	text-align: center;
}

.stores dl dd.box .deliver .info .period {
	display: block;
	font-size: 35px;
	font-weight: 700;
}

.stores dl dd.box .deliver .info .period + .period {
	display: inline-block;
	margin-top: 10px;
	font-size: 28px;
	text-align: left;
}

.stores dl dd.box .deliver.center .info .period + .period {
	margin-top: 0;
}

.stores dl dd.box .deliver .info .period.left {
	font-size: 28px;
	font-weight: 700;
	text-align: left;
}

.freecall {
	padding-left: 135px;
}

.stores dl dd.box .note {
	margin-top: 10px;
	padding-left: 1em;
	text-indent: -1em;
}
.stores dl dd.box .note + .note {
	margin-top: 0;
}

/* delivery
--------------- */
.delivery {
	margin-top: 50px;
	padding: 40px;
	background-color: #bc261a;
}

.delivery > .inner {
	padding: 20px 0;
	background-color: #fff;
	background-image: url(/base/pc/store/special/osechi/2027/img/lower/bg.png);
	background-repeat: repeat;
	background-size: cover;
	text-align: center;
}

.delivery > .inner > h3 {
	margin: 0 auto;
	width: 1124px;
	font-size: 67px;
	font-weight: 700;
	color: #bc261a;
	border-bottom: solid 5px #bc261a;
	padding-bottom: 10px;
}

.delivery > .inner > h3 > span {
	font-size: 41px;
	font-weight: 600;
}

.delivery > .inner > .date {
	margin-top: 12px;
	font-size: 83px;
	font-weight: 700;
	line-height: 1.1;
}

.delivery > .inner > .date > span {
	font-size: 56px;
}

.delivery > .inner ul {
	margin-top: 20px;
	font-size: 26px;
	font-weight: 500;
	line-height: 1.65;
	display: inline-block;
	text-align: left;
}

.delivery > .inner ul li.fwB {
	font-size: 31px;
}

/* kansai */
.kansai .stores dl dd.box + .box {
	border-top: solid 1px #9d7e52;
}

.kansai .stores dl dd.box .note {
	margin-top: 0;
	font-size: 28px;
	font-weight: 700;
}

.kansai .stores dl dd.box .requestPeriod {
	font-size: 35px;
	font-weight: 600;
}

.kansai .stores dl dd.box .requestPeriod.indent {
	padding-left: 1em;
	text-indent: -1em;
}

.kansai .stores dl dd.box .requestPeriod .big {
	font-size: 45px;
	font-weight: 700;
}

.kansai .stores dl dd.box .requestPeriod .middle {
	font-size: 38px;
	font-weight: 700;
}

.kansai .stores dl dd.box .request .tel > .color1 ,
.kansai .stores dl dd.box .request .tel > .period {
	display: inline-block;
}

.kansai .stores dl dd.box .requestPeriod .close {
	font-size: 35px;
	font-weight: 600;
}

.kansai .stores dl dd.box .requestPeriod .closeNote {
	font-size: 26px;
	font-weight: 500;
}

.kansai .stores dl dd.box .requestPeriod .closeNote.inlineBlock {
	display: inline-block;
}

@media screen and (max-width: 1380px) {
	.container {
		padding: 0 6.159vw;
	}
	
	.mv {
		border-top: solid 0.362vw #c6111a;
	}
	
	/* guide
	--------------- */
	.guide > h2 {
		font-size: 4.71vw;
	}
	.guide > .digicataBtn {
		width: 73.116vw;
		margin: 2.899vw auto 0;
	}
	.guide > .digicataBtn a {
		border: solid 0.507vw #bc261a;
		box-shadow: 0.725vw 0.725vw 0 0 #AF1828;
		border-radius: 1.449vw;
		font-size: 4.275vw;
		padding: 2.174vw 8.696vw 2.174vw 2.174vw;
	}
	.guide > .digicataBtn a:hover {
		top: 0.725vw;
	}
	.guide > .digicataBtn a::after {
		width: 5.507vw;
		height: 5.507vw;
		right: 2.899vw;
	}
	/* .guide > .digicataBtn.comming a::before {
		font-size: 3.043vw;
		padding-bottom: 1.449vw;
	} */
	.guide > .digicataBtn .commingTxt {
		font-size: 7.319vw;
		font-weight: 600;
		border-radius: 1.449vw;
	}
	
	/* tp
	--------------- */
	.tp > h3 {
		margin: 2.899vw auto 0;
		width: 86.957vw;
		font-size: 3.986vw;
		letter-spacing: 0.2em;
		border-top: solid 0.29vw #a7864b;
		border-bottom: solid 0.29vw #a7864b;
		padding: 0.725vw 0;
	}
	
	.tp .inner > .lead {
		margin-top: 1.087vw;
		font-size: 3.406vw;
	}
	.tp .inner > .lead .big {
		font-size: 4.565vw;
	}
	
	.tp .inner > .lead .txt {
		font-size: 3.333vw;
	}
	
	.tp .inner > .lead .note {
		font-size: 2.754vw;
	}
	
	.tp .inner > ul {
		margin-top: 1.087vw;
		padding: 1.812vw 2.899vw;
		font-size: 1.594vw;
		border: solid 0.145vw #c11e1a;
	}
	
	/* stores
	--------------- */
	.stores {
		margin-top: 2.174vw;
	}
	
	.stores dl + dl {
		margin-top: 2.536vw;
	}
	
	.stores dl dt {
		font-size: 3.188vw;
	}
	
	.stores dl dd.box {
		font-size: 2.029vw;
	}
	
	.stores dl dd.box .note {
		font-size: 1.884vw;
	}
	
	.freecall {
		font-size: 1.667vw;
	}
	
	.freecall::before {
		top: 0.507vw;
		padding: 0 0.58vw;
		font-size: 1.522vw;
		border: 0.145vw solid #000;
		border-radius: 0.725vw;
	}
	
	.freecall span {
		font-size: 2.536vw;
	}
	.freecall .telLink {
		font-size: 2.101vw;
	}
	
	/* request */
	.stores dl dd.box .request {
		padding: 1.087vw 0.725vw 1.087vw 2.174vw;
		width: 61.739vw;
	}
	
	.stores dl dd.box .request .scheduleWrap {
		margin-bottom: 0.725vw;
		padding-bottom: 0.725vw;
	}
	
	.stores dl dd.box .request .scheduleWrap .schedule {
		margin-bottom: 0.362vw;
	}
	
	.stores dl dd.box .requestPeriod {
		font-size: 2.464vw;
	}
	
	.stores dl dd.box .requestPeriod .big {
		font-size: 3.261vw;
	}
	
	.stores dl dd.box .requestPeriod .middle {
		font-size: 2.754vw;
	}
	
	.stores dl dd.box .requestPeriod .close {
		font-size: 1.884vw;
	}
	
	/* deliver */
	.stores dl dd.box .deliver {
		padding: 1.304vw 1.449vw 1.087vw;
		width: calc(100% - 61.739vw);
	}
	
	.stores dl dd.box .deliver .card {
		font-size: 2.246vw;
	}

	.stores dl dd.box .deliver .info{
		margin-top: 0.725vw;
	}
	
	.stores dl dd.box .deliver .info .period {
		font-size: 2.536vw;
	}
	
	.stores dl dd.box .deliver .info .period + .period {
		margin-top: 0.725vw;
		font-size: 2.029vw;
	}
	
	.stores dl dd.box .deliver .info .period.left {
		font-size: 2.029vw;
	}
	
	.freecall {
		padding-left: 9.783vw;
	}
	
	.stores dl dd.box .note {
		margin-top: 0.725vw;
	}
	
	/* delivery
	--------------- */
	.delivery {
		margin-top: 3.623vw;
		padding: 2.899vw;
	}
	
	.delivery > .inner {
		padding: 1.449vw 0;
	}
	
	.delivery > .inner > h3 {
		width: 81.449vw;
		font-size: 4.855vw;
		border-bottom: solid 0.362vw #bc261a;
		padding-bottom: 0.725vw;
	}
	
	.delivery > .inner > h3 > span {
		font-size: 2.971vw;
	}
	
	.delivery > .inner > .date {
		margin-top: 0.87vw;
		font-size: 6.014vw;
	}
	
	.delivery > .inner > .date > span {
		font-size: 4.058vw;
	}
	
	.delivery > .inner ul {
		margin-top: 1.449vw;
		font-size: 1.884vw;
	}
	
	.delivery > .inner ul li.fwB {
		font-size: 2.246vw;
	}
	
	/* kansai */
	.kansai .stores dl dd.box + .box {
		border-top: solid 1px #9d7e52;
	}
	
	.kansai .stores dl dd.box .note {
		font-size: 2.029vw;
	}
	
	.kansai .stores dl dd.box .requestPeriod {
		font-size: 2.536vw;
	}
	
	.kansai .stores dl dd.box .requestPeriod .big {
		font-size: 3.261vw;
	}
	
	.kansai .stores dl dd.box .requestPeriod .middle {
		font-size: 2.754vw;
	}
	
	.kansai .stores dl dd.box .requestPeriod .close {
		font-size: 2.536vw;
	}

	.kansai .stores dl dd.box .requestPeriod .closeNote {
		font-size: 1.884vw;
	}
}


@media screen and (max-width: 750px) {
	.container {
		padding: 0;
	}

	.mv {
		border-top: solid 0.4vw #c6111a;
	}

	.tp .inner,
	.digicata {
		padding: 0 4.667vw;
	}

	.guide > h2 {
		font-size: 6vw;
		padding: 0.667vw;
	}

	.guide > .digicataBtn {
		width: 74vw;
		margin: 3.333vw auto 0;
	}
	.guide > .digicataBtn a {
		border: solid 0.667vw #bc261a;
		box-shadow: 1.333vw 1.333vw 0 0 #AF1828;
		border-radius: 2.667vw;
		font-size: 5.2vw;
		padding: 2.667vw 13vw 2.667vw 4vw;
	}
	.guide > .digicataBtn a:hover {
		top: 1.333vw;
	}
	.guide > .digicataBtn a::after {
		width: 6.4vw;
		height: 6.4vw;
		top: 50%;
		right: 4.333vw;
	}
	.guide > .digicataBtn .commingTxt {
		width: 102%;
		height: 110%;
		padding-top: 1.333vw;
	}


		/* tp
		--------------- */
	.tp > h3 {
		margin: 4.667vw auto 0;
		width: 90.8vw;
		font-size: 5.067vw;
		border-top: solid 0.4vw #9d7e52;
		border-bottom: solid 0.4vw #9d7e52;
		padding: 1.333vw 0;
	}

	.tp .inner > .lead {
		margin-top: 0;
		font-size: 4.667vw;
	}
	.tp .inner > .lead .big {
		font-size: 6.267vw;
	}
	
	.tp .inner > .lead .txt {
		font-size: 4.533vw;
	}
	
	.tp .inner > .lead .note {
		font-size: 3.733vw;
	}
	
	.tp .inner > ul {
		margin-top: 2vw;
		padding: 1.333vw 3.333vw;
		font-size: 2.4vw;
		border: solid 0.4vw #bc261a;
	}

	/* stores
	--------------- */
	.stores {
		margin-top: 3.333vw;
	}

	.stores dl dt {
		font-size: 5.2vw;
	}

	.stores dl.otaka dt {
		font-size: 5.867vw;
	}

	.freecall {
		font-size: 3.067vw;
	}

	.freecall::before {
		width: 14.4vw;
		padding: 0 2vw;
		font-size: 2.8vw;
		text-align: center;
		border-radius: 1.067vw;
		box-sizing: border-box;
	}

	.freecall span {
		font-size: 5.333vw;
	}

	.freecall .telLink {
		font-size: 3.733vw;
	}

	.stores dl + dl {
		margin-top: 9.333vw;
	}

	.stores dl dd.box {
		display: block;
		font-size: 3.667vw;
	}

	/* .stores dl dd.box .request .tel {
		position: relative;
		z-index: 1;
	}

	.stores dl dd.box .request .tel::before {
		content: "";
		position: absolute;
		top: 2.933vw;
		right: 0;
		border-top: solid 0.267vw #c11e1a;
		width: 100%;
		height: 0.267vw;
		z-index: -1;
	} */

	.stores dl dd.box .request .tel > span:first-child {
		display: inline-block;
		font-size: 4vw;
		padding-right: 2vw;
		background: #F3EAD6;
	}


	/* request */
	.stores dl dd.box .request {
		padding: 0.667vw 2.667vw 1.333vw;
		width: 100%;
	}

	.stores dl dd.box .requestPeriod {
		font-size: 4.667vw;
		padding-left: 1em;
		text-indent: -1em;
	}
	.stores dl dd.box .requestPeriod .close {
		font-size: 3.467vw;
		text-indent: -0.5em;
	}
	.stores dl dd.box .requestPeriod .close.indent {
		text-indent: -1.3em;
	}
	.stores dl.otaka dd.box .requestPeriod .close {
		margin-top: 1.333vw;
	}
	.stores dl dd.box .requestPeriod .big {
		font-size: 6vw;
	}
	.stores dl dd.box .requestPeriod .middle {
		font-size: 5.2vw;
	}

	/* deliver */
	.stores dl dd.box .deliver {
		padding: 0.667vw 2.667vw 1.333vw;
		width: 100%;
		position: relative;
		z-index: 1;
	}

	.stores dl dd.box .deliver .card {
		display: inline-block;
		font-size: 4vw;
		text-align: left;
		padding-right: 2vw;
		background: #ffe6e6;
	}

	/* .stores dl dd.box .deliver::before {
		content: "";
		position: absolute;
		top: 3.467vw;
		right: 3.333vw;
		border-top: solid 0.267vw #bc261a;
		width: 50%;
		height: 0.267vw;
		z-index: -1;
	} */

	.stores dl dd.box .deliver.noFlex::before {
		content: none;
	}

	/* .stores dl dd.box .deliver .info {
		display: flex;
		align-items: center;
		padding: 0 2vw;
	}
	.stores dl dd.box .deliver.noFlex > .info {
		display: block;
		padding: 0;
	} */

	.stores dl dd.box .deliver .info .period {
		font-size: 5.333vw;
		text-align: left;
		width: 100%;
	}
	.stores dl dd.box .deliver.noFlex .info .period {
		width: 100%;
	}
	.stores dl dd.box .deliver .info .period.left {
		font-size: 3.667vw;
	}
	.stores dl dd.box .deliver .info .period.spCenter {
		text-align: center;
	}

	.stores dl dd.box .deliver .info .period + .period {
		width: 100%;
		/* margin-top: 0; */
		font-size: 4vw;
	}

	.stores dl dd.box .note {
		font-size: 3.067vw;
	}

	.stores dl dd.box .request .tel {
		margin-top: 1.333vw;
	}

	.freecall {
		margin-top: 0.667vw;
		padding-left: 16.667vw;
	}

	.freecall::before {
		top: 1vw;
	}

	.stores dl dd.box .note {
		margin-top: 1.333vw;
		font-size: 3.467vw;
	}

	/* delivery
	--------------- */
	.delivery {
		margin-top: 4vw;
		padding: 2.667vw;
	}

	.delivery > .inner {
		padding: 2.667vw 1.333vw 2.667vw;
	}

	.delivery > .inner > h3 {
		width: 83.467vw;
		font-size: 8.8vw;
		line-height: 1;
		border-bottom: solid 0.667vw #bc261a;
		padding-bottom: 2.667vw;
	}

	.delivery > .inner > h3 span {
		font-size: 5.467vw;
	}

	.delivery > .inner > .date {
		font-size: 11.067vw;
	}

	.delivery > .inner > .date > span {
		font-size: 7.467vw;
	}

	.delivery > .inner > .date > span.middle {
		font-size: 8.4vw;
	}

	.delivery > .inner ul {
		font-size: 3.067vw;
	}
	.delivery > .inner ul li.fwB {
		font-size: 3.867vw;
	}

	/* kansai */
	.kansai .stores dl dd.box + .box {
		border-top: solid 0.933vw #fff;
	}

	.kansai .stores dl dd.box .requestPeriod {
		font-size: 4.533vw;
	}

	.kansai .stores dl dd.box .requestPeriod.noIndent {
		padding-left: 0;
		text-indent: 0;
	}

	.kansai .stores dl dd.box .requestPeriod .big {
		font-size: 6vw;
	}

	.kansai .stores dl dd.box .requestPeriod .middle {
		font-size: 5.2vw;
	}

	.kansai .stores dl dd.box .requestPeriod .close {
		font-size: 4.667vw;
		text-indent: 0;
	}

	.kansai .stores dl dd.box .requestPeriod .close.indent {
		text-indent: 1em;
		padding-left: 0em;
		/* margin-left: -1em; */
	}
	.kansai .stores dl dd.box .requestPeriod .close.spNone {
		text-indent: 0;
		padding-left: 0;
	}

	.kansai .stores dl dd.box .requestPeriod .closeNote {
		font-size: 3.467vw;
	}

	.kansai .stores dl dd.box .request .tel > .period {
		font-size: 4.133vw;
	}

	.kansai .stores dl dd.box .deliver .info .period + .period.center {
		text-align: center;
		padding: 2.667vw;
	}

	.kansai .stores dl dd.box .note {
		margin-top: 1.333vw;
		font-size: 3.733vw;
	}

	.kansai .stores dl dd.box .requestPeriod.indent + .note {
		margin-top: 0;
	}
}
