@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Arvo:wght@700&display=swap');

@font-face {
  font-family: "TsukuGo B";
  src: url("../font/FOT-TsukuGoPro-B.otf") format("opentype");
}

@font-face {
  font-family: "TsukuGo D";
  src: url("../font/FOT-TsukuGoPro-D.otf") format("opentype");
}

@font-face {
  font-family: "TsukuGo E";
  src: url("../font/FOT-TsukuGoPro-E.otf") format("opentype");
}

@font-face {
  font-family: "TsukuGo M";
  src: url("../font/FOT-TsukuGoPro-M.otf") format("opentype");
}
@font-face {
  font-family: "TsukuGo R";
  src: url("../font/FOT-TsukuGoPro-R.otf") format("opentype");
}

@font-face {
  font-family: "A1 Gothic";
  src: url("../font/AP-OTF-A1Gothic.otf") format("opentype");
}

html,body{
	margin: 0;
	font-size: 10px;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 400;
	color: #000;
}
*{
	margin: 0;
	padding: 0;
	letter-spacing: 0;
	box-sizing: border-box;
}
img{
	width: 100%;
	vertical-align: bottom;
}
ul{
	list-style: none;
}
a{
	color: inherit;
	text-decoration: none;
}
span{
	display: inline-block;
}
.cont_wrap{
	width: 100vw;
	max-width: 960px;
	margin: 0 auto;
	overflow-x: hidden;
}

h1{
	text-align: center;
	font-family: "fot-tsukuardgothic-std", sans-serif;
	font-weight: 700;
	font-size: clamp(24px, 7.5vw, 72px);
	line-height: 1.3;
	margin: .7em 0 .69em;
}
h2{
	font-size: clamp(16px, 5.1vw, 50px);
	text-align: center;
	line-height: 1.5;
	font-family: "TsukuGo M","Noto Sans JP", sans-serif;
	letter-spacing: -.05em;
	font-weight: 500;
}
.main-read .date-box{
	padding: 0 min(30px, 3vw);
	margin: min(35px, 3.64vw) auto min(72px, 7.5vw);
}
.main-read .date-box .venue{
	background-color: #af5b24;
	font-family: "TsukuGo B","Noto Sans JP", sans-serif;
	font-weight: 700;
	font-size: clamp(15px, 4.89vw, 47px);
	color: #fff;
	padding-left: .6em;
}
_::-webkit-full-page-media, _:future, :root .main-read .date-box .venue{
  font-weight: 500;
}
.main-read .date-box .date{
	display: flex;
	align-items: center;
	margin: min(38px, 3.95vw) 0 min(30px, 3.12vw);
}
.main-read .date-box .parche .days{
	width: 60.88%;
	margin-left: 2.8%;
}
.main-read .date-box .honten .days{
	width: 57.33%;
	margin-left: 2.8%;
}
.main-read .date-box .duration{
	text-align: center;
	font-weight: 500;
	font-size: clamp(14px, 4.37vw, 42px);
	line-height: 1;
	color: #fff;
	background-color: #af5b24;
	width: 6.8em;
	padding: .4em 0;
	border-radius: 2em;
	margin-left: 2.77%;
}
.main-read .btn{
	display: block;
	width: 82%;
	text-align: center;
	color: #fff;
	background-color: #c33d1d;
	font-family: "TsukuGo D","Noto Sans JP", sans-serif;
	font-weight: 600;
	font-size: clamp(16px, 5vw, 48px);
	padding: .35em 0;
	border-radius: 3em;
	margin: 0 auto 1.5em;
	position: relative;
}
_::-webkit-full-page-media, _:future, :root .main-read .btn{
	font-weight: 500;
}
.main-read .btn:after{
	display: block;
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-top: min(22px, 2.29vw) solid transparent;
	border-bottom: min(22px, 2.29vw) solid transparent;
	border-left: min(30px, 3.12vw) solid #ffffff;
	border-right: 0;
	position: absolute;
	right: 4%;
	top: 35%;
}

h3{
	text-align: center;
	font-family: "Arvo", serif;
	font-weight: 700;
	color: #af5b24;
	font-size: clamp(20px, 6.35vw, 61px);
	letter-spacing: .05em;
	line-height: 1.2;
}

.special .pkg-img{
	width: 44.37%;
	margin: min(45px, 4.68vw) auto min(40px, 4.16vw);
}
.special .sp-text{
	padding: 0 min(30px, 3vw);
	position: relative;
}
.special .sp-text .jp{
	font-family: "TsukuGo D","Noto Sans JP", sans-serif;
	font-weight: 600;
	letter-spacing: -.05em;
	font-size: clamp(24px, 7.7vw, 74px);
	line-height: 1.2;
}
_::-webkit-full-page-media, _:future, :root .special .sp-text .jp{
	font-weight: 500;
}
.special .sp-text .jp span{
	font-size: clamp(15px, 4.79vw, 46px);
	line-height: 1;
}
.special .comment{
	width: 29.11%;
	position: absolute;
	right: 2.88%;
	top: max(-90px, -9.37vw);
}
.special .price_box{
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin: min(50px, 5.2vw) 0;
}
.special .price_box .price{
	font-family: "TsukuGo E","Noto Sans JP", sans-serif;
	letter-spacing: -.05em;
	font-weight: 800;
	font-size: clamp(46px, 14.58vw, 140px);
	color: #c33d1d;
	margin-left: 1.5%;
	line-height: 1;
}
_::-webkit-full-page-media, _:future, :root .special .price_box .price{
  font-weight: 500;
}
.special .price_box .price .yen{
	font-size: clamp(32px, 10vw, 96px);
}
.special .price_box .additional{
	font-size: clamp(12px, 3.75vw, 36px);
	font-family: "TsukuGo M","Noto Sans JP", sans-serif;
	font-weight: 500;
	line-height: 1.4;
	margin-top: .5em;
}

.bonus{
	position: relative;
	margin-bottom: min(90px, 9.37vw);
}
.bonus:after{
	display: block;
	content: "";
	width: min(194px, 20.2vw);
	height: min(98px, 10.2vw);
	background: no-repeat center/100% url(../img/bonus_text.png);
	position: absolute;
	left: 7.29%;
	top: 17.23%;
}
.bonus .box_inner{
	padding-top: min(180px, 18.75vw);
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
.bonus .box-ttl{
	text-align: center;
	color: #fff;
}
.bonus .box-ttl *{
	line-height: 1.35;
}
.bonus .box-ttl .jp-s{
	font-family: "TsukuGo B","Noto Sans JP", sans-serif;
	font-weight: 700;
	font-size: clamp(13px, 4.16vw, 40px);
}
.bonus .box-ttl .jp-m{
	font-family: "TsukuGo B","Noto Sans JP", sans-serif;
	font-weight: 700;
	font-size: clamp(20px, 6.25vw, 60px);
}
.bonus .box-ttl .jp-l{
	font-family: "TsukuGo B","Noto Sans JP", sans-serif;
	font-weight: 700;
	font-size: clamp(23px, 7.29vw, 70px);
}
_::-webkit-full-page-media, _:future, :root .bonus .box-ttl *{
  font-weight: 500;
}
.bonus .label{
	display: block;
	font-family: "TsukuGo B","Noto Sans JP", sans-serif;
	font-weight: 700;
	line-height: 1;
	font-size: clamp(14px, 4.58vw, 44px);
	color: #fff;
	text-align: center;
	width: 10.5em;
	padding: .4em 0 .3em;
	border: 1px solid #fff;
	border-radius: 2em;
	margin: .5em auto .8em;
}
_::-webkit-full-page-media, _:future, :root .bonus .label{
	font-weight: 500;
}
.bonus .read{
	text-align: center;
	font-family: "TsukuGo M","Noto Sans JP", sans-serif;
	font-weight: 500;
	font-size: clamp(13px, 4.16vw, 40px);
	color: #fff;
	line-height: 1.4;
}
.bonus .note{
	text-align: center;
	color: #fff;
	font-family: "TsukuGo M","Noto Sans JP", sans-serif;
	font-weight: 500;
	font-size: clamp(10px, 3.12vw, 30px);
	line-height: 1;
	margin-top: 1em;
}

h4{
	text-align: center;
	font-family: "TsukuGo M","Noto Sans JP", sans-serif;
	font-weight: 500;
	font-size: clamp(16px, 5.2vw, 50px);
	line-height: 1.5;
	margin-top: .45em;
}

.ranking .rank-box{
	position: relative;
	padding: 0 min(30px, 3vw);
}
.ranking .box_1{
	margin-top: min(65px, 6.77vw);
}
.ranking .box_2{
	margin-top: min(200px, 20.83vw);
}
.ranking .box_3{
	margin-top: min(90px, 9.37vw);
}
.ranking .box_4{
	margin-top: min(210px, 21.87vw);
}
.ranking .box_5{
	margin: min(95px, 9.89vw) 0 min(95px, 9.89vw);
}
.ranking .item-box, .ranking .pic{
	position: absolute;
}
.ranking .box_1 .item-box{
	width: 52.7%;
	left: -10%;
	top: min(5px, 0.52vw);
}
.ranking .box_1 .pic{
	width: 16.45%;
	right: 0;
	top: max(-368px, -38.33vw);
}
.ranking .box_2 .item-box{
	width: 55%;
	right: -9%;
	top: max(-80px, -8.33vw);
}
.ranking .box_2 .pic{
	width: 21.04%;
	left: 3.22%;
	top: max(-218px, -22.7vw);
}
.ranking .box_3 .item-box{
	width: 52.7%;
	left: -7.91%;
	top: min(35px, 3.64vw);
}
.ranking .box_3 .pic-1{
	width: 13.95%;
	right: 6.77%;
	top: max(-28px, -2.91vw);
}
.ranking .box_3 .pic-2{
	width: 32.08%;
	left: 3.12%;
	bottom: max(-194px, -20.2vw);
}
.ranking .box_4 .item-box{
	width: 55%;
	right: -8.43%;
	top: max(-130px, -13.54vw);
}
.ranking .box_4 .pic{
	width: 21.66%;
	left: 35.93%;
	top: max(-145px, -15.1vw);
}
.ranking .box_5 .item-box{
	width: 53.12%;
	left: -8.12%;
	top: min(35px, 3.64vw);
}
.ranking .box_5 .pic{
	width: 14.16%;
	right: 7.29%;
	top: max(-38px, -3.95vw);
}
.ranking .odd .rank_inner{
	width: 60%;
	margin: 0 0 0 auto;
}
.ranking .rank_no img{
	display: block;
	width: auto;
	height: min(126px, 13.12vw);
}
.ranking .item-name{
	font-family: "TsukuGo D","Noto Sans JP", sans-serif;
	font-weight: 600;
	font-size: clamp(14px, 4.58vw, 44px);
	line-height: 1.3;
	margin: 1em 0 .6em;
}
_::-webkit-full-page-media, _:future, :root .ranking .item-name{
	font-weight: 500;
}
.ranking .text{
	font-family: "TsukuGo M","Noto Sans JP", sans-serif;
	font-weight: 500;
	font-size: clamp(11px, 3.63vw, 36px);
	line-height: 1.2;
}

.ph{
	margin-bottom: min(65px, 6.77vw);	
}
.sec-read{
	font-family: "TsukuGo M","Noto Sans JP", sans-serif;
	font-weight: 500;
	letter-spacing: -.05em;
	font-size: clamp(11px, 3.6vw, 30px);
	padding: 0 min(30px, 3vw);
	line-height: 1.4;
	margin-top: 1.2em;
}

.set-wrap{
	padding: min(578px, 60vw) 0 min(54px, 5.62vw);
	background: no-repeat top center/cover;
}
.set-wrap.classic{
	background-image: url(../img/bg_set-classic.jpg);
	margin-top: min(65px, 6.77vw);
}
.set-wrap.potage{
	background-image: url(../img/bg_set-potage.jpg);
}
.set-wrap.cold{
	background-image: url(../img/bg_set-cold.jpg);
}
.set-wrap.vegan{
	background-image: url(../img/bg_set-vegan.jpg);
}
.set-wrap.curry{
	background-image: url(../img/bg_set-curry.jpg);
}
.set-wrap.deli{
	background-image: url(../img/bg_set-deli.jpg);
}
.set-wrap.separate{
	background-image: url(../img/bg_set-separate.jpg);
}

.set-wrap .flex-list{
	display: flex;
	flex-wrap: wrap;
}
.set-wrap .set-list:not(.set-sld_wrap) .flex-list{
	justify-content: space-between;
}
.set-wrap .set-sld_wrap{
	overflow-x: scroll;
}
.set-wrap .set-cont{
	background-color: rgba(255, 255, 255, .76);
	margin: 0 min(30px, 3vw);
	border-radius: min(20px, 2.08vw);
	padding: min(65px, 6.77vw) min(65px, 6.77vw) min(100px, 10.41vw);
}
.set-wrap.potage .set-cont{
	padding: min(65px, 6.77vw) min(65px, 6.77vw) min(45px, 4.68vw);
}
.set-wrap.separate .set-cont{
	padding: min(65px, 6.77vw) 0 min(45px, 4.68vw);
}
.set-wrap .soup_cont{
	width: min(430px, 44.79vw);
	margin-right: min(26px, 2.7vw);
}
.set-wrap.classic .soup_cont:nth-of-type(6), .set-wrap.potage .soup_cont:nth-of-type(4), .set-wrap .soup_cont:last-of-type{
	margin-right: 0;
}
.set-wrap.classic .soup_cont:nth-of-type(n + 7), .set-wrap.potage .soup_cont:nth-of-type(n + 5){
	margin-top: min(70px, 7.29vw);
}
.set-wrap.classic .set-cont{
	width: calc((min(65px, 6.77vw) * 2) + (min(430px, 44.79vw) * 6) + (min(26px, 2.7vw) *5));
}
.set-wrap.potage .set-cont, .set-wrap.cold .set-cont, .set-wrap.deli .set-cont{
	width: calc((min(65px, 6.77vw) * 2) + (min(430px, 44.79vw) * 4) + (min(26px, 2.7vw) *3));
}
.set-wrap.vegan .set-cont, .set-wrap.curry .set-cont{
	width: calc((min(65px, 6.77vw) * 2) + (min(430px, 44.79vw) * 3) + (min(26px, 2.7vw) *2));
}

.set-wrap:not(.separate) .ttl_cont{
	width: min(814px, 84.79vw);
}
h5{
	text-align: center;
	font-family: "futura-pt", sans-serif;
	font-weight: 500;
	font-size: clamp(21px, 6.66vw, 64px);
	line-height: 1;
	letter-spacing: .04em;
}
.set-wrap .ttl_cont p{
	text-align: center;
	font-family: "A1 Gothic", "Noto Sans JP", sans-serif;;
	line-height: 1;
	font-size: clamp(16px, 5.5vw, 50px);
	margin: .8em 0 1.4em;
	width: calc(100% + (min(65px, 6.77vw) * 2));
	margin-left: max(-65px, -6.77vw);
}
.set-wrap .ttl_cont p .price .normal{
	font-size: clamp(13px, 4.16vw, 40px);
	vertical-align: .08em;
	margin: 0 .15em 0 .3em;
}
.set-wrap .ttl_cont p .price .jp{
	font-size: clamp(13px, 4.16vw, 40px);
	vertical-align: .08em;
	margin: 0 .15em 0 0;
}
.set-wrap .ttl_cont p .price .num{
	font-size: clamp(16px, 5.2vw, 50px);
}
.set-wrap .ttl_cont p .price .tax{
	font-size: clamp(11px, 3.54vw, 34px);
	vertical-align: .13em;	
	margin-left: .2em;
}
.set-wrap .soup_cont p{
	text-align: center;
	font-family: "TsukuGo M","Noto Sans JP", sans-serif;
	font-weight: 500;
	font-size: clamp(10px, 3vw, 31px);
    line-height: 1.3;
    white-space: nowrap;
}
.set-wrap .soup_cont p.price{
	font-family: "A1 Gothic", "Noto Sans JP", sans-serif;;
	font-size: clamp(11px, 3.54vw, 34px);
	margin-top: .3em;
}
.set-wrap .soup_cont p.price .normal{
	font-size: clamp(10px, 3.12vw, 30px);
	vertical-align: .05em;
	margin-right: .2em;
}
.set-wrap .soup_cont p.price .tax{
	font-size: clamp(7px, 2.29vw, 22px);
	vertical-align: .05em;
	margin-left: .4em;
}

.shop-list h4{
	margin-bottom: 1em;
}
.shop-list .sec-read{
	text-align: center;
	margin-bottom: .8em;
}
.shop-list .duration{
	display: flex;
	justify-content: center;
	align-items: center;
}
.shop-list > .duration{
	padding: 0 min(30px, 3vw);
	margin-bottom: min(70px, 7.29vw);
}
.shop-list .duration .label{
	font-size: 500;
	font-size: clamp(15px, 4.79vw, 46px);
	width: 34%;
	text-align: center;
	background-color: #af5b24;
	color: #fff;
	line-height: 1;
	padding: .3em 0 .4em;
	border-radius: 2em;
	margin-right: 2.22%;
}
.shop-list .duration .date{
	width: 60.22%;
}
.shop-list .duration .date img{
	height: min(62px, 6.45vw);
	width: auto;
}
.shop-list .shop-data{
	padding: 0 min(30px, 3vw);
	margin-bottom: min(115px, 11.97vw);	
}
.shop-list .shop-name{
	font-family: "TsukuGo D","Noto Sans JP", sans-serif;
	font-weight: 600;
	font-size: clamp(17px, 5.41vw, 52px);
	line-height: 1.4;
	margin: .8em 0 .5em;
}
_::-webkit-full-page-media, _:future, :root .shop-list .shop-name{
	font-weight: 500;
}
.shop-list .add{
	font-family: "TsukuGo R","Noto Sans JP", sans-serif;
	font-size: clamp(12px, 3.95vw, 38px);
	line-height: 1.5;
	margin-bottom: .4em;
}
.shop-list .add a{
	text-decoration: underline;
}
.shop-list .data_wrap, .shop-list .data_cont{
	display: flex;
	align-items: center;
}
.shop-list .data_wrap p{
	font-family: "TsukuGo R","Noto Sans JP", sans-serif;
	font-size: clamp(12px, 3.95vw, 38px);
	line-height: 1;
}
.shop-list .data_wrap .label{
	border: 1px solid #000;
	padding: .2em 0 .3em;
	text-align: center;
	width: 5em;
	margin-right: .4em;
}
.shop-list .data_wrap .data_cont:first-of-type{
	width: 51%;
}
.shop-list .shop-data .duration{
	justify-content: flex-start;
	margin-bottom: min(50px, 5vw);
}

footer{
	background-color: #f2f2f2;
	padding: min(70px, 7.29vw) min(30px, 3vw) min(40px, 4.16vw);
}
footer li{
	font-size: clamp(12px, 3.65vw, 36px);
	line-height: 1.4;
	margin-bottom: .5em;
	padding-left: 1em;
	text-indent: -1em;
}