/*--------------------------------------------------------------
 Typography
--------------------------------------------------------------*/

h1 {
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 38px;
	padding-block: 45px;
}

h2 {
	font-size: 28px;
	border-bottom: 2px solid #f32313;
	padding-bottom: 20px;
	margin-bottom: 35px;
}

h3 {
	font-size: 22px;
	background: #fcf9d2;
	padding: 9px 10px 10px;
}

h4 {
	font-size: 26px;
}

@media screen and (max-width: 768px) {
	h1 {	
		font-size: 28px;
		padding-block: 35px;
	}
}

/*--------------------------------------------------------------
 Links
--------------------------------------------------------------*/

a {
	color: #333;
}

a:hover {
	color: #f32313;
	text-decoration: none;
}

/*--------------------------------------------------------------
 Header
--------------------------------------------------------------*/

.header-inner_block {
	height: 110px;
	max-width: 1400px;
	padding-inline: 20px;
}

.header-inner_block .header-logo {
	width: 220px;
}

.header-inner_block .header-logo .logo {
	padding: 0;
}

.header-gnavi_list li {
  min-width: 90px;
  text-align: center;
}
.header-gnavi_list li a {
  display: block;
}
.header-gnavi_list li a:before {
  content: "";
  display: block;
  margin: 0 auto;
  width: 40px;
  height: 40px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

.header-gnavi_list li:nth-child(1) a:before {
  background-image: url("../images/nav-chirasi.png");
}
.header-gnavi_list li:nth-child(2) a:before {
  background-image: url("../images/nav-store.png");
}
.header-gnavi_list li:nth-child(3) a:before {
  background-image: url("../images/nav-feature.png");
}
.header-gnavi_list li:nth-child(4) a:before {
  background-image: url("../images/nav-info.png");
}
.header-gnavi_list li:nth-child(5) a:before {
  background-image: url("../images/nav-e-money.png");
}
.header-gnavi_list li:nth-child(6) a:before {
  background-image: url("../images/nav-company.png");
}
.header-gnavi_list li:nth-child(7) a:before {
  background-image: url("../images/nav-recruit.png");
}

@media screen and (max-width: 1100px) {
.header-gnavi_list li {
  min-width: 65px;
  font-size: 15px;
}
.header-gnavi_list li a:before {
  width: 36px;
  height: 36px;
}
}

/*--------------------------------------------------------------
 mean menu
--------------------------------------------------------------*/
@media screen and (max-width: 900px) {
	header.scrolled,
	header:has(.meanclose) {
		background: #fff;
	}
	
	header .header-inner_block {
		padding: 0 95px 0 10px;
		height: 60px;
	}
	
	header .header-inner_block #header-navigation {
		position: absolute;
		width: 100%;
		right: 0;
		top: 0;
	}
	
	header .logo {
		position: relative;
    	z-index: 1000000;
		width: 180px;
	}
	
	.mean-container .mean-bar {
		background: transparent;
		padding: 0;
	}
	
	.mean-container a.meanmenu-reveal {
		width: 31px;
		height: 40px;
		padding: 8px 17px 12px 17px;
		text-indent: 0;
	}
	
	.mean-container a.meanmenu-reveal span {
		background: #333;
		margin-top: 7px;
		height: 1px;
	}
	
	.mean-container a.meanmenu-reveal.meanclose span:nth-of-type(1){
		transform: rotate(35deg);
	    position: relative;
		top: 8px;
	}
	
	.mean-container a.meanmenu-reveal.meanclose span:nth-of-type(2){
		transform: rotate(-35deg);		
	}
	
	.mean-container a.meanmenu-reveal div {
		color: #333;
		text-align: center;
		font-size: 10px;
		font-weight: 400;
		margin-top: 3px
	}
	
	.mean-container a.meanmenu-reveal.meanclose div {
		font-size: 10px;
	    position: relative;
		top: 11px;
		width: 34px;
        left: 50%;
        transform: translateX(-50%);
	}
	
	.mean-container .mean-nav {
		margin-top: 60px;
		background: #fff;
	}
	
	.mean-container a.meanclose + .mean-nav,
	.header-inner_block #header-navigation .header-global_navi a.meanclose + nav{
		height: calc(100vh - 60px);
	}
	
	.mean-container .mean-nav ul,
	.header-inner_block #header-navigation .header-global_navi nav ul {
		display: flex;
		flex-wrap: wrap;
		margin-top: 20px;
		margin-inline: auto;
		padding-bottom: 45px;
		justify-content: center;
		width: 70%;
		min-width: 265px;
		align-content: flex-start;
		gap: 0px;
	}
	
	.mean-container .mean-nav ul li {
		display: flex;
		justify-content: center;
	}

	.mean-container .mean-nav ul li:nth-child(1),
	.mean-container .mean-nav ul li:nth-child(2) {
		width: fit-content;
		margin-inline: auto;
	}
	
	.mean-container .mean-nav ul li.sp {
		display: none;
	}

	.mean-container .mean-nav ul li:after {
		display: none;
	}

	.mean-container .mean-nav ul li a {
		color: inherit;
		width: 100%;
		min-width: 265px;
		padding: 20px 0;
		line-height: 20px;
		border-bottom: 1px solid #ccc;
		font-size: 16px;
		font-weight: bold;
		text-align: center;
	}
	
	.mean-container .mean-nav ul li:nth-child(1) a,
	.mean-container .mean-nav ul li:nth-child(2) a {
		margin-inline: auto;
		padding: 0;
		min-width: inherit;
		border-bottom: none;
	}
	
	.mean-container .mean-nav ul li:nth-child(3) a {
		border-top: 1px solid #ccc;
		margin-top: 20px;
	}
	
	.mean-container .mean-nav ul li.mean-last a {
		border-bottom: 1px solid #ccc;
	}
	
	.header-gnavi_list li:nth-child(1) a::before {
		width: 41px;
		height: 46px;
		margin-block: 4.5px;
	}
	
	.header-gnavi_list li:nth-child(2) a::before {
		width: 66px;
		height: 47px;
		margin-block: 4px;
		background: url("../images/nav-shizuoka.png");
		background-position-x: 0%;
		background-position-y: 0%;
		background-repeat: repeat;
		background-size: auto;
		background-size: contain;
		background-position: center;
	}
	
	.mean-container .mean-nav ul li:nth-child(n+3) a::before {
		display: none;
	}
}

/*--------------------------------------------------------------
 TOP PAGE
--------------------------------------------------------------*/
#page-home h2 {
	border-bottom: none;
	padding-bottom: 0;
	margin-bottom: 0;
}

#page-home h3 {
	position: relative;
	width: fit-content;
	margin: 0 auto 35px;
	font-size: 38px;
	text-align: center;
	padding: 0;
	background: inherit;
}

#page-home h3:before,
#page-home h3:after {
	display: block;
	content: "";
	width: 33px;
	height: 33px;
	position: absolute;
	top: -5px;
}

#page-home h3:before {
	background: url("../images/top/top-h3_before.png");
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	left: -50px;
}

#page-home h3:after {
	background: url("../images/top/top-h3_after.png");
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	right: -50px;
}

@media screen and (max-width: 768px) {
	#page-home h3 {
		font-size: min(38px, calc((24/375)*100vw));
	}
	
	#page-home h3:before,
	#page-home h3:after {
		width: 20px;
		height: 20px;
		top: 0px;
	}	
	
	#page-home h3:before {
		left: -30px;
	}
	
	#page-home h3:after {
		right: -30px;
	}
}

/*--------------------------------------------------------------
 MV
--------------------------------------------------------------*/
#mv {
	position: relative;
}

.mv-inner h2 {
	max-width: max(445px, calc((639/1920)*100vw));
	text-align: center;
	font-size: max(34px, calc((50/1920)*100vw));
	padding-bottom: 0;
	margin-bottom: 0;
}
.mv-inner h2 span {
	color: #fff;
	font-size: max(24px, calc((34/1920)*100vw));
}

.mv-inner h2 p {
	width: max(405px, calc((600/1920)*100vw));
	margin: 0 auto max(30px, calc((45/1920)*100vw));
	background: #fff;
	color: #f32313;
	display: flex;
	justify-content: center;
	align-items: center;
	height: max(60px, calc((86/1920)*100vw));
	border-radius: max(15px, calc((20/1920)*100vw));
}

#mv-slider {
	width: calc(100% - 80px);
	height: 650px;
	margin-left: 80px;
	border-top-left-radius: 100px;
	border-bottom-left-radius: 100px;
	overflow: hidden;
}

#mv-slider .slick-slide img {
	width: 100%;
	height: 650px;
	object-fit: cover;
}

#mv-slider .slick-slide.pc {
	display: block;
}

#mv-slider .slick-slide.sp {
	display: none;
	width: 0; 
}

.mv-bottom {
	display: flex;
	justify-content: center;
	gap: 0 min(115px, calc((115/1920)*100vw));
	padding: 40px 0 50px;
}

.mv-bottom:before {
	content: "";
	position: absolute;
	background: url("../images/top/mv-h2_bg.png");
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	width: min(1476px, calc((1476/1920) * 100vw));
	height: min(419px, calc((419/1920) * 100vw));
	bottom: 200px;
	left: calc(50% - 20px);
	transform: translateX(-50%);
}


.mv-bottom li dl {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 0 45px;
	height: 100%;
}

.mv-bottom li dl dt img {
	width: 200px;
	height: 140px;
	object-fit: cover;
	border-radius: 30px;
}

.mv-bottom li dl dd {
	width: 130px;
	display: flex;
	flex-direction: column;
	font-size: 26px;
	text-align: center;
	line-height: 1.16;
	gap: 15px 0;
}

.mv-bottom li dl dd img {
	object-fit: contain;
	object-position: center;
	margin: 0 auto;
}

.mv-bottom li:nth-child(1) a dl dd img {
	width: 69px;
	height: 76px;
}

.mv-bottom li:nth-child(2) a dl dd img {
	width: 110px;
	height: 78px;
}

@media screen and (max-width: 1300px) {
	#mv-slider {
		width: calc(100% - (80/1300)*100vw);
		height: calc((650/1300)*100vw);
		margin-left: calc((80/1300)*100vw);
		border-top-left-radius: calc((100/1300)*100vw);
		border-bottom-left-radius: calc((100/1300)*100vw);
	}
	
	.mv-bottom {
		width: calc(100% - (160/1300)*100vw);
		margin-inline: auto;
		padding-left: calc((80/1300)*100vw);
	}
	
	.mv-bottom li dl dd {
		font-size: max(22px, calc((26/1300)*100vw));
	}
}

@media screen and (max-width: 900px) {	
	.mv-bottom:before {
		left: calc(50% - calc((20/900)*100vw));
		bottom: calc((240/900)*100vw);
	}
	
	.mv-bottom li dl {
		gap: 0 calc((45/900)*100vw);
	}
	
	.mv-bottom li dl dt img {
		width: calc((250/900)*100vw);
		min-width: 135px;
		height: auto;
		border-radius: calc((30/900)*100vw);
	}
	
	.mv-bottom li dl dd {
		font-size: max(18px, calc((22/900)*100vw));
		flex-shrink: 0;
	}
		
	.mv-bottom li:nth-child(1) a dl dd img {
		width: calc((100/900)*100vw);
		min-width: 65px;
		height: calc((130/900)*100vw);
	}
	
	.mv-bottom li:nth-child(2) a dl dd img {
    	width: calc((120/900)*100vw);
		min-width: 75px;
    	height: calc((130/900)*100vw);
	}
}

@media screen and (max-width: 768px) {
	#mv-slider {
		width: 100%;
		height: calc((330/375)*100vw);
		margin-left: 0;
		border-radius: 0;
	}
	
	#mv-slider .slick-slide img {
		height: calc((330/375)*100vw);
	}

	#mv-slider .slick-slide.pc {
		display: none;
		width: 0; 
	}

	#mv-slider .slick-slide.sp {
		display: block;
	}

	.mv-inner h2 {
		font-size: min(50px, calc((23/375)*100vw));
	}
	
	.mv-inner h2 span {
		display: block;
		font-size: min(34px, calc((16/375)*100vw));
		margin-bottom: calc((20/375)*100vw);
	}
	
	.mv-inner h2 p {
		width: min(600px, calc((280/375)*100vw));
		height: min(86px, calc((40/375)*100vw));
		border-radius: min(20px, calc((18/375)*100vw));
		margin-bottom: calc((30/375)*100vw);
	}
	
	.mv-bottom {
		padding-left: 0;
	}
	
	.mv-bottom:before {
		display: none;
	}
	
	.mv-inner h2 {
		max-width: 100%;
	}
	
	.mv-inner h2 img {
		width: calc((220/375)*100vw);
	}
	
	.mv-bottom li dl {
		flex-direction: column-reverse;
		gap: calc((10/375)*100vw);
	}
	
	.mv-bottom li dl dd {
        font-size: min(18px, calc((16/375) * 100vw));
		font-weight: bold;
		width: 100%;
    }
	
	.mv-bottom li dl dd br {
		display: none;
	}
}

/*--------------------------------------------------------------
 Main
--------------------------------------------------------------*/

.site-main section:nth-of-type(2n) {
	background: transparent;
}

.slick-dots {
	bottom: -40px;
}

.slick-dots li {
	width: 28px !important;
	height: 28px !important;
	margin-inline: 5px !important;
	background: transparent !important;
}

.slick-dots li button {
	position: relative;
	width: 28px;
    height: 28px;
}

.slick-dots li button::before {
	width: 14px;
	height: 14px;
	content: "";
	opacity: 1;
	background: #fff;
	border: 1px solid #f32313;
	border-radius: 50%;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.slick-dots li.slick-active button::before {
	background: #f32313;
}

/*--------------------------------------------------------------
.top-feature_block
--------------------------------------------------------------*/
.site-main .top-feature_block {
	background: #fcf9d2;
	margin-right: min(80px, calc((80/1920)*100vw));
	padding-left: min(80px, calc((80/1920)*100vw));
	border-bottom-right-radius: 100px;
	border-top-right-radius: 100px;
	padding-bottom: 70px;
}

.top-feature_block .inner-block {
	max-width: 1180px;
}

.top-feature_block h3 + p {
	text-align: center;
	font-size: 30px;
	font-weight: bold;
	margin: 35px auto 55px;
}

.top-feature_block .slick-list {
	margin-inline: -17.5px;
}

.top-feature_block ul li {
	width: calc((100% - 70px) / 3);
	height: 440px;
	background: #fff;
	border-radius: 30px;
	position: relative;
	margin-inline: 17.5px;
	margin-block: 25px 40px;
}

.top-feature_block ul li dt {
	padding-block: 40px 20px;
	font-size: 32px;
	color: #f32313;
	font-weight: bold;
	text-align: center;
	position: relative
}

.top-feature_block ul li dt:before {
	display: block;
	content: "";
	margin-inline: auto;
	position: absolute;
	left: 50%;
	top: -20px;
	transform: translateX(-50%);
}

.top-feature_block ul li.meat dt:before {
	width: 131px;
	height: 49px;
	background: url("../images/top/top-feature_meat-before.png");
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}

.top-feature_block ul li.fish dt:before {
	width: 132px;
	height: 48px;
	background: url("../images/top/top-feature_seafood-before.png");
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}

.top-feature_block ul li.vegi dt:before {
	width: 124px;
	height: 46px;
	background: url("../images/top/top-feature_vegi-before.png");
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}

.top-feature_block ul li dd {
	padding-inline: 20px;
	font-size: 18px;
}

.top-feature_block ul li dd span {
	color: #f32313;
}

.top-feature_block ul li img {
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	max-width: inherit;
}

.top-feature_block ul li.meat img {
	bottom: -32px;
	width: 375px;
}

.top-feature_block ul li.fish img {
	bottom: -34px;
	width: 394px;
}

.top-feature_block ul li.vegi img {
	bottom: -37px;
	width: 372px;
}

@media screen and (max-width: 1300px) {
	.site-main .top-feature_block {
		margin-right: 0;
		padding-left: 0;
		border-radius: 0;
	}
	
	.top-feature_block ul li {
		margin-inline: max(10px, calc((17.5/1300)*100vw));
		height: max(300px, calc((440/1300)*100vw));
	}
	
	.top-feature_block .slick-list {
		margin-inline: max(-10px, calc((-17.5/1300)*100vw));
	}
	
	.top-feature_block ul li dt {
    	font-size: max(20px, calc((32/1300)*100vw));
		padding-block: max(25px, calc((40/1300)*100vw)) max(5px, calc((20/1300)*100vw));
	}
	
	.top-feature_block ul li dt:before {
		top: min(-15px, calc((-20/1300)*100vw));
	}
	
	.top-feature_block ul li.meat dt:before {
		width: max(84px, calc((131/1300)*100vw));
		height: max(32px, calc((49/1300)*100vw));
	}
	
	.top-feature_block ul li.fish dt:before {
		width: max(85px, calc((132/1300)*100vw));
		height: max(32px, calc((48/1300)*100vw));
	}
	
	.top-feature_block ul li.vegi dt:before {
		width: max(80px, calc((124/1300)*100vw));
		height: max(30px, calc((46/1300)*100vw));
	}
	
	.top-feature_block ul li dd {
		font-size: max(14px, calc((18/1300)*100vw));
		padding-inline: 15px;
		line-height: 1.5;
	}
	
	.top-feature_block ul li.meat img {
		width: max(232px, calc((375/1300)*100vw));
	}
	
	.top-feature_block ul li.fish img {
		width: max(252px, calc((394/1300)*100vw));
	}
	
	.top-feature_block ul li.vegi img {
		width: max(230px, calc((372/1300)*100vw));
	}
}

@media screen and (max-width: 768px) {
	.top-feature_block .slick-list {
		width: max(335px, calc((620/768)*100vw));
		max-width: 620px;
		margin-inline: auto;
	}
	
		
	.top-feature_block h3 + p {
		font-size: 18px;
	}
	
	.top-feature_block ul li {
		min-height: 370px;
	}
		
	.top-feature_block ul li.meat img {
    	width: max(330px, calc((396/768)*100vw));
		bottom: -15px;
	}
	
	.top-feature_block ul li.fish img {
    	width: max(335px, calc((416/768)*100vw));
		bottom: -16px;
	}
	
	.top-feature_block ul li.vegi img {
    	width: max(327px, calc((396/768)*100vw));
		bottom: -17px;
	}
	
	.top-feature_block ul li dt {
    	font-size: 26px;
	}
	
	.top-feature_block ul li dt:before {
		top: -25px;
	}
	
	.top-feature_block ul li.meat dt:before {
		width: min(131px, calc((93/375)*100vw));
    	height: 49px;
	}
	
	.top-feature_block ul li.fish dt:before {
    	width: min(132px, calc((93/375)*100vw));
    	height: 48px;
	}
	
	.top-feature_block ul li.vegi dt:before {
    	width: min(124px, calc((88/375)*100vw));
    	height: 46px;
	}
	
	.top-feature_block ul li dd {
    	padding-inline: 20px;
    	font-size: 16px;
	}
	
	.slick-dots {
		bottom: -65px !important;
	}
	
	.slick-dots li {
		min-height: inherit !important;
	}
}

@media screen and (max-width:375px) {
	.top-feature_block .slick-list {
		width: calc((335/375)*100vw);
	}
	
	.top-feature_block ul li.meat img {
		width: calc((330/375)*100vw);
	}
	
	.top-feature_block ul li.fish img {
		width: calc((335/375)*100vw);
	}
	
	.top-feature_block ul li.vegi img {
	    width: calc((327/375)*100vw);
	}
}

/*--------------------------------------------------------------
 .top-info_block
--------------------------------------------------------------*/

.top-info_block .inner-block > ul {
	display: flex;
	padding-inline: 45px;
	justify-content: space-between;
	position: relative;
    top: 3px;
}

.top-info_block .inner-block > ul li input {
	display: none;
}

.top-info_block .inner-block > ul li label {
	width: 350px;
	height: 70px;
	border: 3px solid #f32313;
	border-top-left-radius: 30px;
	border-top-right-radius: 30px;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 28px;
	font-weight: bold;
	cursor: pointer;
	border-bottom: none;
	color: #fff;
	background: #f32313;
}

.top-info_block .inner-block > ul li input:checked + label {
	color: #f32313;
	background: #fff;	
}

.top-info_block .inner-block > ul li label br {
	display: none;
}

.top-info_block .inner-block > div {
	display: none;
}

.top-info_block .inner-block > ul:has(li input:checked) ~ div {
	border: 3px solid #f32313;
	border-radius: 30px;
	padding: 20px 30px 25px
}

.top-info_block .inner-block > ul:has(li input#new-info:checked) ~ div.new-info,
.top-info_block .inner-block > ul:has(li input#product-info:checked) ~ div.product-info,
.top-info_block .inner-block > ul:has(li input#campaign:checked) ~ div.campaign {
	display: block;
}

.new-info ul li,
.top-info_block .inner-block > div.campaign ul li {
	border-bottom: 1px solid #f32313;
	padding-top: 15px;
}

.new-info ul li > dl,
.top-info_block .inner-block > div.campaign ul li > dl {
	display: block;
	padding: 15px 5px 15px;
}

.new-info ul li dl dt,
.top-info_block .inner-block > div.campaign ul li dl dt {
	display: flex;
	align-content: center;
	gap: 20px;
}

.new-info ul li dl dt > *,
.top-info_block .inner-block > div.campaign ul li dl dt > * {
	margin: 0;
}

.new-info ul li dl dt span.date,
.top-info_block .inner-block > div.campaign ul li dl dt span.date {
    line-height: 1;
    align-self: center;
}

.new-info ul li dl dt > a.category,
.top-info_block .inner-block > div.campaign ul li dl dt > a.category {
	border: 1px solid #f32313;
	border-radius: 15px;
	font-size: 13px;
	font-weight: bold;
	padding-inline: clamp(15px, calc((30/1920)*100vw), 30px);
	height: 30px;
	line-height: 1;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #f32313;
}

.new-info ul li dl dt > a.category:hover,
.top-info_block .inner-block > div.campaign ul li dl dt > a.category:hover {
	background: #f32313;
	color: #fff;
}

.new-info ul li dl dt > .title,
.top-info_block .inner-block > div.campaign ul li dl dt > .title {
	font-size: 18px;
	font-weight: bold;
	color: #f32313;
}

.new-info ul li dl dd,
.top-info_block .inner-block > div.campaign ul li dl dd {
	padding-block: 15px 5px;
	text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    max-width: 64em;
}

.top-info_block .inner-block > div > a {
	display: flex;
	width: 180px;
	height: 60px;
	align-items: center;
	justify-content: center;
	font-size: 18px;
	font-weight: bold;
	border-radius: 30px;
	margin: 30px auto 0;
	color: #f32313;
	border: 2.5px solid #f32313;
}

.top-info_block .inner-block > div > a:hover {
	background: #f32313;
	color: #fff;	
}

.top-info_block .inner-block > div.product-info ul {
	display: flex;
	justify-content: space-around;
	gap: 15px;
}

.top-info_block .inner-block > div.product-info ul li {
	max-width: 330px;
}

.top-info_block .inner-block > div.product-info ul li dl dt img {
	width: 100%;
	height: 310px;
	object-fit: contain;
}

.top-info_block .inner-block > div.product-info ul li dl dd {
	font-size: 18px;
	font-weight: bold;
	text-align: center;	
}

@media screen and (max-width: 1300px) {
	.top-info_block .inner-block > ul li label {
		width: max(245px, calc((350/1300)*100vw));
	}
}

@media screen and (max-width: 900px) {
	.top-info_block .inner-block > ul li label {
		width: min(245px, calc((200/768)*100vw));
	}
	
}

@media screen and (max-width: 768px) {
	.top-info_block .inner-block {
		padding-inline: 0;
	}
	
	.top-info_block .inner-block > ul {
		padding-inline: min(45px, calc((20/375)*100vw));
	}
	
	.top-info_block .inner-block > ul li label {
		height: min(110px, calc((60/375)*100vw));
		font-size: min(28px, calc((18/375)*100vw));
		line-height: min(50px, calc((20/375)*100vw));
		width: min(210px, calc((105/375)*100vw));
		text-align: center;
		border-top-left-radius: min(30px, calc((15/375)*100vw));
		border-top-right-radius: min(30px, calc((15/375)*100vw));
	}
	
	.top-info_block .inner-block > ul li label br {
		display: block;
	}
	
	.top-info_block .inner-block > ul:has(li input:checked) ~ div {
		border-left: none;
		border-right: none;
		border-bottom: none;
		border-radius: 0;
	}
	
	.new-info ul li dl dt,
	.top-info_block .inner-block > div.campaign ul li dl dt {
		flex-wrap: wrap;
		gap: 10px 20px;
	}
	
	.new-info ul li dl dd {
		text-overflow: inherit;
		white-space: inherit;
		overflow: inherit;
	}	
	
	.top-info_block .inner-block > div.product-info ul {
		display: block;
	}
	
	.top-info_block .inner-block > div.product-info ul li {
		max-width: inherit;
	}
	
	.top-info_block .inner-block > div.product-info ul li dl {
		display: flex;
		border-bottom: 1px solid #f32313;
		padding-block: 20px;
		gap: 20px;
	}
	
	.top-info_block .inner-block > div.product-info ul li:first-child dl {
		padding-top: 0;
	}
	
	.top-info_block .inner-block > div.product-info ul li dl dt {
		width: calc((280/768)*100vw);
		flex-shrink: 0;
	}	
	
	.top-info_block .inner-block > div.product-info ul li dl dt img {
		max-height: calc((200/768)*100vw);
	}
	
	.top-info_block .inner-block > div.product-info ul li dl dd {
		display: flex;
		align-items: center;
		text-align: left;
		line-height: 1.4;
		font-size: max(16px, calc((18/768)*100vw));
	}
}

/*--------------------------------------------------------------
 .top-pickup_block
--------------------------------------------------------------*/

.top-pickup_block .inner-block {
	max-width: 1590px;
}

.top-pickup_block {
	background: #fcf9d2;
	margin-left: 80px;
	padding-right: 80px;
	border-bottom-left-radius: 100px;
	border-top-left-radius: 100px;
}

.top-pickup_block .slick-arrow {
	background: rgba(253, 34, 19, 0.75);
	width: 20px;
	height: 20px;
	border-radius: 50%;
}

.top-pickup_block .slick-arrow:hover {
	background: #f32313;
}

.top-pickup_block .pickup-slider:not(:has(li:nth-child(4))) .slick-arrow {
	display: none;
}

.top-pickup_block .slick-prev:before,
.top-pickup_block .slick-next:before {
	font-family: "Font Awesome 7 Free";
	font-size: 14px;
}

.top-pickup_block .slick-prev:before {
	content: "\f053";
}

.top-pickup_block .slick-next:before {
	content: "\f054";
}

.top-pickup_block .pickup-slider li {
	height: min(310px, calc((310/1920)*100vw));
	margin-inline: 20px;
}

.top-pickup_block .pickup-slider li img {
	height: 100%;
	object-fit: cover;
	margin-inline: auto;
}

.top-pickup_block .pickup-slider li:has(.net-super) {
	background: #fff;
}

.top-pickup_block .pickup-slider li dl.net-super {
	padding: min(20px, calc((20/1920)*100vw)) min(15px, calc((15/1920)*100vw)) min(15px, calc((15/1920)*100vw));
}

.top-pickup_block .pickup-slider li dl.net-super dt {
	display: flex;
	gap: min(15px, calc((15/1920)*100vw));
	margin-bottom: min(15px, calc((15/1920)*100vw));
}

.top-pickup_block .pickup-slider li dl.net-super dt > span {
	width: min(85px, calc((85/1920)*100vw));
	height: min(85px, calc((85/1920)*100vw));
	border-radius: 50%;
	border: 1px solid #f32313;
	color: #f32313;
	font-size: min(16px, calc((16/1920)*100vw));
	font-weight: bold;
	display: flex;
	justify-content: center;
	align-items: center;
	line-height: 1.4;
}

.top-pickup_block .pickup-slider li dl.net-super dt > p {
	font-size: min(48px, calc((48/1920)*100vw));
	font-weight: bold;
	margin: 0;
	line-height: 1.1;
	color: #2a7e52;
}

.top-pickup_block .pickup-slider li dl.net-super dt > p span {
	display: block;
	font-size: min(25px, calc((25/1920)*100vw));
}

.top-pickup_block .pickup-slider li dl.net-super dd {
	display: flex;
	flex-wrap: wrap;
	gap: min(10px, calc((10/1920)*100vw));;
}

.top-pickup_block .pickup-slider li dl.net-super dd > a {
	width: calc((100% - min(10px, calc((10/1920)*100vw)))/2);
	height: min(80px, calc((80/1920)*100vw));;
	border-radius: min(10px, calc((10/1920)*100vw));;
	background: #e84e1a;
	color: #fff;
	font-size: min(18px, calc((18/1920)*100vw));
	font-weight: bold;
	line-height: 1.3;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding-inline: min(12.5px, calc((12.5/1920)*100vw));
}

.top-pickup_block .pickup-slider li dl.net-super dd > a:hover {
	opacity: 0.7;
}

.top-pickup_block .pickup-slider li dl.net-super dd > a:after {
	content: "";
	width: min(25px, calc((25/1920)*100vw));
	height: min(28px, calc((28/1920)*100vw));
	background: url("../images/top/pickup-netsuper-pdf.png");
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}

.top-pickup_block .pickup-slider li dl.net-super dd > a.entry {
	width: 100%;
	background: #2a7e52;
}

.top-pickup_block .pickup-slider li dl.net-super dd > a.entry:after {
	content: "";
	width: min(28px, calc((28/1920)*100vw));
	height: min(28px, calc((28/1920)*100vw));
	background: url("../images/top/pickup-netsuper-arrow.png");
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}

@media screen and (max-width: 1300px) {
	.top-pickup_block {
		margin-left: 0px;
    	padding-right: 0px;
		border-radius: 0;
	}
	
	.top-pickup_block .inner-block {
		max-width: 860px;
		padding-inline: 25px;
	}
	
	.top-pickup_block .pickup-slider li {
    	height: 235px;
	}
	
	.top-pickup_block .pickup-slider li dl.net-super {
		padding: 20px 15px 15px;
	}

	.top-pickup_block .pickup-slider li dl.net-super dt {
		gap: 15px;
		margin-bottom: 15px;
	}

	.top-pickup_block .pickup-slider li dl.net-super dt > span {
		width: 60px;
		height: 60px;
		font-size: 12px;
	}

	.top-pickup_block .pickup-slider li dl.net-super dt > p {
		font-size: 35px;
	}

	.top-pickup_block .pickup-slider li dl.net-super dt > p span {
		font-size: 19px;
	}

	.top-pickup_block .pickup-slider li dl.net-super dd {
		gap: min(10px, calc((10/1300)*100vw));
	}

	.top-pickup_block .pickup-slider li dl.net-super dd > a {
		width: calc((100% - min(10px, calc((10/1300)*100vw)))/2);
		border-radius: min(10px, calc((10/1300)*100vw));
		padding-inline: min(12.5px, calc((12.5/1300)*100vw));
		height: 60px;
		font-size: 12px;
	}

	.top-pickup_block .pickup-slider li dl.net-super dd > a:after {
		width: 20px;
		height: 23px;
	}

	.top-pickup_block .pickup-slider li dl.net-super dd > a.entry:after {
		width: 23px;
		height: 23px;
	}
}

@media screen and (max-width: 900px) {
    .top-pickup_block .inner-block {
		max-width: 450px;
	}
}

@media screen and (max-width: 568px) {
    .top-pickup_block .inner-block {
		max-width: 450px;
		padding-inline: 35px;
	}
	
    .top-pickup_block .pickup-slider li {
        height: max(140px, calc((230/568)*100vw));
		margin-inline: max(10px, calc((15/568)*100vw));
    }
	
	.top-pickup_block .pickup-slider li dl.net-super {
		padding: max(10px, calc((15/568)*100vw)) max(5px, calc((15/568)*100vw)) max(5px, calc((10/568)*100vw));
	}

	.top-pickup_block .pickup-slider li dl.net-super dt {
		display: flex;
		gap: max(5px, calc((10/568)*100vw));
		margin-bottom: max(5px, calc((10/568)*100vw));
	}

	.top-pickup_block .pickup-slider li dl.net-super dt > span {
		width: max(45px, calc((65/568)*100vw));
		height: max(45px, calc((65/568)*100vw));
		font-size: max(8px, calc((12/568)*100vw));
	}

	.top-pickup_block .pickup-slider li dl.net-super dt > p {
		font-size: max(21px, calc((32/568)*100vw));
		display: flex;
		flex-direction: column;
		justify-content: center;
	}

	.top-pickup_block .pickup-slider li dl.net-super dt > p span {
		font-size: max(11px, calc((17/568)*100vw));
	}

	.top-pickup_block .pickup-slider li dl.net-super dd {
		gap: max(5px, calc((10/568)*100vw));
	}

	.top-pickup_block .pickup-slider li dl.net-super dd > a {
		width: calc((100% - max(5px, calc((10/568)*100vw)))/2);
		height: max(33px, calc((59/568)*100vw));
		border-radius: max(5px, calc((10/568)*100vw));
		font-size: max(8px, calc((12/568)*100vw));
		padding-inline: max(3px, calc((7.5/568)*100vw));
	}

	.top-pickup_block .pickup-slider li dl.net-super dd > a:after {
		width: max(12px, calc((22/568)*100vw));
		height: max(14px, calc((24/568)*100vw));
	}

	.top-pickup_block .pickup-slider li dl.net-super dd > a.entry:after {
		width: max(14px, calc((24/568)*100vw));
		height: max(14px, calc((24/568)*100vw));
	}
}

/*--------------------------------------------------------------
 .top-ext-link_block
--------------------------------------------------------------*/

.site-main .top-ext-link_block {
  padding-block: 90px 130px;
}

.top-ext-link_block .inner-block {
	max-width: min(1396px, calc((1396/1920)*100vw));
}

.top-ext-link_block ul {
	display: flex;
	justify-content: space-between;
}

.top-ext-link_block ul li {
	width: min(250px, calc((250/1920)*100vw));
}

.top-ext-link_block ul li a {
	display: block;
	text-align: center;
	font-size: clamp(18px, calc((20/1920)*100vw), 20px);
	font-weight: bold;
}

.top-ext-link_block ul li a span {
	display: block;
	margin-bottom: min(30px, calc((30/1920)*100vw));
}

@media screen and (max-width: 1300px) {
	.top-ext-link_block .inner-block {
		max-width: min(1070px, calc((1070/1300)*100vw));
	}
}

@media screen and (max-width: 900px) {
	.top-ext-link_block ul {
		flex-wrap: wrap;
		justify-content: center;
		gap: 40px 20px;
	}
	
	.top-ext-link_block ul li {
		width: calc((100% - 40px)/3);
	}
	.site-main .top-ext-link_block {
	padding-block: 80px;
	}
}

@media screen and (max-width: 568px) {
	.top-ext-link_block ul li {
		width: calc((100% - 20px)/2);
	}
	
	.top-ext-link_block ul li a {
		font-size: 16px;
	}
}

/*--------------------------------------------------------------
 .breadcrumbs
--------------------------------------------------------------*/
.breadcrumbs-area {
	background: #f32313;
	margin: 0;
}

.breadcrumbs-area .breadcrumbs,
.breadcrumbs a {
	color: #fff;
}

.breadcrumbs-area .breadcrumbs {
	padding-block: 21px;
	max-width: 1080px;
}

.breadcrumbs-area .breadcrumbs a:hover {
	text-decoration: underline;
	text-underline-offset: 5px;
}

@media screen and (max-width: 900px) {
	.breadcrumbs-area .breadcrumbs {
		padding-block: 15px;
	}
}

/*--------------------------------------------------------------
 内部ページ共通
--------------------------------------------------------------*/
body:not(#page-home) .inner-block {
	max-width: 1040px;
	padding: 0 20px 105px;
	min-height: 540px;
}

/*--------------------------------------------------------------
 個人情報保護方針
--------------------------------------------------------------*/
#page-privacy h1 + p {
	margin-block: 5px 45px;
}

#page-privacy p {
	margin-bottom: 35px;
}

#page-privacy p a {
	color: #f32313;
    text-decoration: underline;
	text-underline-offset: 5px;
}

#page-privacy p a:hover {
    text-decoration: none;
}

#page-privacy p.update-info {
	text-align: right;
}

/*--------------------------------------------------------------
 最新情報（詳細ページ）
--------------------------------------------------------------*/
.site-main:has(.post) {
	margin-bottom: 75px;
}

.post-meta .post-cat {
	color: #f32313;
	border-color: #f32313;
}

.post-meta .post-cat:hover {
	background: #f32313;
	color: #fff;
}

.post-meta h1 {
	border-color: #f32313;
	justify-content: flex-start;
	align-items: flex-start;
}

.post-meta h1:before {
	content: "";
	display: inline-block;
	width: 40px;
	height: 40px;
	background: url("../images/nav-info.png");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	flex-shrink: 0;
	margin-right: 10px;
}

.post-contents h1,
.post-contents h2,
.post-contents h3 {
	background: #fcf9d2;
	justify-content: flex-start;
}

.post-contents h1 {
	justify-content: flex-start;
}

.post-contents h4 {
	border-color: #f32313;
}

.post-contents ul li:before {
	background: #f32313;
}

.post-contents table,
.post-contents table tr,
.post-contents table tr th,
.post-contents table tr td {
	border-color: #f32313;
}

.post-contents table tr th {
	background: #fcf9d2;
}

.post-contents a {
	color: #f32313;
	text-decoration: underline;
	text-underline-offset: 5px;
}

.post-contents a:hover {
	text-decoration: none;
}

.site-main .navigation .nav-list a {
	font-size: 18px;
	font-weight: bold;
	color: #f32313;
	border: 2.5px solid #f32313;
	border-radius: 30px;
	height: 60px;
	width: 240px;
	display: flex;
	justify-content: center;
	align-items: center;
	line-height: 1;
	margin-inline: auto;
}

.site-main .navigation .nav-list a:hover {
	color: #fff;
	background: #f32313;	
}

/*--------------------------------------------------------------
 最新情報（一覧ページ）
--------------------------------------------------------------*/
#info.archive main h1:before {
	content: "";
	display: inline-block;
	width: 60px;
	height: 60px;
	background: url("../images/nav-info.png");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	flex-shrink: 0;
	margin-right: 10px;
	margin-left: -10px;
}

#info.archive .new-info ul {
	border-top: 1px solid #f32313;
	margin-bottom: 70px;
}

#info.archive .new-info ul li {
	padding-top: 0;
}

#info.archive .new-info ul li > dl {
	padding: 20px 0 15px;
}

#info.archive .new-info ul li dl dd {
	max-width: 60em;
}

.navigation .nav-links .page-numbers.current {
    background: #f32313;
}

/*--------------------------------------------------------------
 店舗情報（詳細）
--------------------------------------------------------------*/
#archive-store.single .inner-block {
    max-width: 1040px;
}

#archive-store.single main h1 {
	padding-block: 50px 20px;
	font-size: 30px;
	border-bottom: 5px solid #f32313;
	flex-direction: column;
	margin-bottom: 40px;
}

#archive-store.single main h1:before {
	content: "";
	display: block;
	width: 220px;
	height: 76px;
	background: url("../images/store/store_logo.png");
	background-repeat: no-repeat;
	background-size: contain;
}

#archive-store.single main h1 + a {
	background: #ff2208;
	max-width: 300px;
	height: 60px;
	border: 2.5px solid #ff2208;
	border-radius: 30px;
	display: flex;
	line-height: 1;
	justify-content: center;
	align-items: center;
	margin-inline: auto;
	color: #fff;
	font-size: 18px;
	font-weight: bold;
}

#archive-store.single main h1 + a:hover {
	color: #ff2208;
	background: #fff;
}

#archive-store.single main .store_info {
	padding-block: 40px 50px;
}

#archive-store.single main .store_info .store_info-block {
	display: flex;
	gap: 0 30px;
	margin-bottom: 50px;
}

#archive-store.single main .store_info .pic {
	flex: 0 0 490px;
}

#archive-store.single main .store_info .pic img {
	width: 100%;
	height: auto;
}

#archive-store.single main .store_info .detail {
	padding: 0;
	margin-top: 0;
	width: 100%;
	border-bottom: 1px solid #f32313;
}

#archive-store.single main .store_info .detail dt,
#archive-store.single main .store_info .detail dd {
	border-top: 1px solid #f32313;
	min-height: 60px;
	padding-block: 0.5em;
}

#archive-store.single main .store_info .detail dt:first-of-type,
#archive-store.single main .store_info .detail dd:first-of-type {
	border-top: none;
}

#archive-store.single main .store_info .detail dt {
	width: 90px;
	float: left;
	font-weight: bold;
	line-height: 1;
	display: flex;
	align-items: center;
}

#archive-store.single main .store_info .detail dd {
	margin-left: 90px;  /* ← これでOK */
	display: flex;
	align-items: center;
	width: auto;
}

#archive-store.single main .store_info .detail dd .address-wrap {
	display: flex;
	flex-wrap: wrap;
	gap: 0.25em;
}

#archive-store.single main .store_info .detail dd .zip {
	white-space: nowrap;
	flex: 0 0 auto;
}

#archive-store.single main .store_info .detail dd .address {
	white-space: normal;
	flex: 1 1 auto;
}

#archive-store.single main .store_info .detail dd a {
	text-decoration: underline;
	text-underline-offset: 5px;
}

#archive-store.single main .store_info .detail dd a:hover {
	text-decoration: none;
}

#archive-store.single main .store_info .detail dd a.tel {
	font-size: 18px;
	font-weight: bold;
	text-decoration: none;
}

#archive-store.single main .store_info iframe {
  width: 100%;
  height: 450px;
  display: block;
}

#archive-store.single main .store_info + a {
	background: #fff;
	width: 210px;
	height: 50px;
	border: 2.5px solid #ff2208;
	border-radius: 25px;
	display: flex;
	line-height: 1;
	justify-content: center;
	align-items: center;
	margin-inline: auto;
	color: #ff2208;
	font-size: 18px;
	font-weight: bold;
}

#archive-store.single main .store_info + a:hover {
	color: #fff;
	background: #ff2208;
}

@media screen and (max-width: 1300px) {
	#archive-store.single main .store_info {
		grid-template-columns: min(490px, calc((413/900)*100vw)) min(480px, calc((402/900)*100vw));
	}
}

@media screen and (max-width: 900px) {
	#archive-store.single main .store_info .store_info-block {
		flex-direction: column;
	}

	#archive-store.single main .store_info .pic {
		flex: 0 0 auto;
		width: 100%;
		max-width: 490px;
		margin: 0 auto;
	}

	#archive-store.single main .store_info .detail {
		width: 100%;
		margin-top: 30px;
	}
}

@media screen and (max-width: 768px) {
	#info.archive main h1:before {
		width: 40px;
	    height: 40px;
	}
	
	#archive-store.single main .store_info .store_info-block {
		padding: 0 20px;
	}
}

/*--------------------------------------------------------------
 店舗情報（一覧）
--------------------------------------------------------------*/
body#archive-store .inner-block {
    max-width: 1280px;
    padding: 0 20px 105px;
}

#archive-store main h1:before {
	content: "";
	display: inline-block;
	width: 60px;
	height: 60px;
	background: url("../images/nav-store.png");
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
    flex-shrink: 0;
	margin-right: 10px;
	margin-left: -10px;
}

#archive-store .area-tab {
	display: flex;
    padding-inline: 45px;
    justify-content: space-between;
    position: relative;
    top: 3px;
}

#archive-store .area-tab a {
    width: 350px;
    height: 70px;
    border: 3px solid #f32313;
    border-top-left-radius: 30px;
    border-top-right-radius: 30px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 28px;
    font-weight: bold;
    cursor: pointer;
    border-bottom: none;
    color: #fff;
    background: #f32313;
}

#archive-store .area-tab a br {
	display: none;
}

#archive-store .area-tab a.active,
#archive-store .area-tab a:hover {
    color: #f32313;
    background: #fff;
}

#archive-store .area-tab a.active {
	pointer-events: none;
}

#archive-store .area-store_list {
	border: 3px solid #f32313;
    border-radius: 30px;
    padding: 45px 40px;
	display: flex;
	flex-wrap: wrap;
	gap: 35px;
}

#archive-store .area-store_list li {
	width: calc((100% - 70px)/3);
}

#archive-store .area-store_list li a {
	display: block;
	height: 100%;
	padding: 10px 15px 20px;
	background: #fcf8d0;
	border: 3px solid #fcf8d0;
	border-radius: 30px;
}

#archive-store .area-store_list li a:hover {
	border: 3px solid #f7cf3a;
	color: inherit;
}

#archive-store .area-store_list li dl dt {
	font-size: 24px;
	font-weight: bold;
	margin-bottom: 10px;
	position: relative;
}

#archive-store .area-store_list li dl dt:before {
	content: "";
	display: inline-block;
	background: #f32313;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	margin: 0 5px -2px 0;
}

#archive-store .area-store_list li dl dt:after {
	content: "";
	display: inline-block;
	background: #ffffff;
	height: 11px;
	width: 7px;
	clip-path: polygon(0 0, 100% 50%, 0 100%);
	position: absolute;
	left: 8.5px;
	top: 17px;
}

#archive-store .area-store_list li dl dd p {
	margin: 0;
}

@media screen and (max-width: 1300px) {
	#archive-store .area-tab a {
		width: max(245px, calc((350/1300)*100vw));
	}
}

@media screen and (max-width: 900px) {
	#archive-store .area-tab a {
		width: min(245px, calc((200/768)*100vw));
	}
}

@media screen and (max-width: 768px) {
	body#archive-store .inner-block {
		padding-inline: 0;
	}
	
	#archive-store main h1:before {
		width: 40px;
		height: 40px;
	}
	
	#archive-store .area-tab {
        padding-inline: min(45px, calc((20 / 375) * 100vw));
    }
	
	#archive-store .area-tab a {
		height: min(90px, calc((60 / 375) * 100vw));
		font-size: min(22px, calc((18 / 375) * 100vw));
        line-height: min(50px, calc((20 / 375) * 100vw));
        width: min(210px, calc((105 / 375) * 100vw));
        text-align: center;
        border-top-left-radius: min(30px, calc((15 / 375) * 100vw));
        border-top-right-radius: min(30px, calc((15 / 375) * 100vw));
    }
	
	#archive-store .area-tab a br {
		display: block;
	}
	
	#archive-store .area-store_list {
        border-left: none;
        border-right: none;
        border-bottom: none;
        border-radius: 0;
    }
	
	#archive-store .area-store_list li {
		width: calc((100% - 35px) / 2);
	}
}

@media screen and (max-width: 568px) {
	#archive-store .area-store_list li {
		width: 100%;
	}
}

/*--------------------------------------------------------------
 チラシ情報（一覧）
--------------------------------------------------------------*/
body#archive-chirasi .inner-block {
    max-width: 1240px;
    padding: 0 20px 105px;
}

#archive-chirasi main h1 {
	padding-bottom: 25px;
}

#archive-chirasi main h1:before {
	content: "";
	display: inline-block;
	width: 60px;
	height: 60px;
	background: url("../images/nav-chirasi.png");
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
    flex-shrink: 0;
	margin-right: 10px;
	margin-left: -10px;
}

#archive-chirasi .chirashi-logo {
	display: block;
	width: 330px;
	height: 112px;
	margin: 0 auto 30px;
}

#archive-chirasi .area-tab {
	display: flex;
    padding-inline: 45px;
    justify-content: space-between;
    position: relative;
    top: 3px;
}

#archive-chirasi .area-tab a {
    width: 350px;
    height: 70px;
    border: 3px solid #f32313;
    border-top-left-radius: 30px;
    border-top-right-radius: 30px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 28px;
    font-weight: bold;
    cursor: pointer;
    border-bottom: none;
    color: #fff;
    background: #f32313;
}

#archive-chirasi .area-tab a br {
	display: none;
}

#archive-chirasi .area-tab a.active,
#archive-chirasi .area-tab a:hover {
    color: #f32313;
    background: #fff;
}

#archive-chirasi .area-tab a.active {
	pointer-events: none;
}

#archive-chirasi .area-chirashi_list {
	border: 3px solid #f32313;
    border-radius: 30px;
    padding: 35px 45px 25px;
	display: flex;
	flex-wrap: wrap;
}

#archive-chirasi .area-chirashi_list li {
	width: 100%;
	padding: 55px 15px 55px 5px;
	border-bottom: 1px solid #ff1e0a;
}

#archive-chirasi .area-chirashi_list li:last-child {
	border-bottom: none;
}

#archive-chirasi .area-chirashi_list li dl {
	display: flex;
	justify-content: space-between;
	gap: 30px;
}

#archive-chirasi .area-chirashi_list li dl dt {
	width: 100%;
	max-width: 320px;
	flex-shrink: 0;
}

#archive-chirasi .area-chirashi_list li dl dt p {
	margin: 0;
}

#archive-chirasi .area-chirashi_list li dl dt .title {
	font-size: 24px;
	margin-bottom: 5px;
}

#archive-chirasi .area-chirashi_list li dl dt .schedule {
	color: #ff1e0a;
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 20px;
}

#archive-chirasi .area-chirashi_list li dl dt .target-stores {
	display: flex;
	gap: 7px;
	flex-wrap: wrap;
}

#archive-chirasi .area-chirashi_list li dl dt .target-stores span {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	background: #A5A5A5;
	min-width: 90px;
	padding-inline: 15px;
	line-height: 1;
	height: 26px;
	border-radius: 13px;
	color: rgba(255, 255, 255, 0.65);
	white-space: nowrap;
	font-size: 12px;
	font-weight: bold;
}

#archive-chirasi .area-chirashi_list li dl dt .target-stores span.all {
	width: 100px;
	height: 40px;
	border-radius: 20px;
	font-size: 18px;
}

#archive-chirasi .area-chirashi_list li dl dt .target-stores span.active {
	background: #ff1e0a;
	color: #fff;
}

#archive-chirasi .area-chirashi_list li dl dd {
	display: flex;
	gap: 30px;
	max-width: 670px;
}

#archive-chirasi .area-chirashi_list li dl dd a {
	position: relative;
	max-width: 320px;
	height: fit-content;
	margin: auto;
}

#archive-chirasi .area-chirashi_list li dl dd a span {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	background: rgba(255, 255, 255, 0.9);
	width: 120px;
	height: 50px;
	border-radius: 25px;
	color: #f32313;
	font-size: 18px;
	font-weight: bold;
	display: flex;
	justify-content: center;
	align-items: center;
	z-index: 1;
	padding-inline: 40px 10px;
}

#archive-chirasi .area-chirashi_list li dl dd a span:before {
	content: "";
	display: inline-block;
	width: 30px;
	height: 30px;
	background: url("../images/chirashi/expand.png");
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	left: 10px;
	top: 50%;
	transform: translateY(-50%);
}

@media screen and (max-width: 1300px) {
	#archive-chirasi .area-tab a {
		width: max(245px, calc((350/1300)*100vw));
	}
}

@media screen and (max-width: 900px) {
	#archive-chirasi .area-tab a {
		width: min(245px, calc((200/768)*100vw));
	}
	
	#archive-chirasi .area-chirashi_list li dl dd {
		flex-wrap: wrap;
	}
}

@media screen and (max-width: 768px) {
	body#archive-chirasi .inner-block {
		padding-inline: 0;
	}
	
	#archive-chirasi main h1:before {
		width: 40px;
		height: 40px;
	}
	
	#archive-chirasi .chirashi-logo {
		width: 230px;
		height: 79px;
	}
	
	#archive-chirasi .area-tab {
        padding-inline: min(45px, calc((20 / 375) * 100vw));
    }
	
	#archive-chirasi .area-tab a {
		height: min(90px, calc((60 / 375) * 100vw));
		font-size: min(22px, calc((18 / 375) * 100vw));
        line-height: min(50px, calc((20 / 375) * 100vw));
        width: min(210px, calc((105 / 375) * 100vw));
        text-align: center;
        border-top-left-radius: min(30px, calc((15 / 375) * 100vw));
        border-top-right-radius: min(30px, calc((15 / 375) * 100vw));
    }
	
	#archive-chirasi .area-tab a br {
		display: block;
	}
	
	#archive-chirasi .area-chirashi_list {
        border-left: none;
        border-right: none;
        border-bottom: none;
        border-radius: 0;
		padding: 20px 25px;
    }
	
	#archive-chirasi .area-chirashi_list li {
		padding: 20px 0;
	}
	
	#archive-chirasi .area-chirashi_list li dl {
		flex-direction: column-reverse;
		gap: 10px;
	}
	
	#archive-chirasi .area-chirashi_list li dl dt {
		max-width: 100%;
	}
	
	#archive-chirasi .area-chirashi_list li dl dt .title {
		font-size: 20px;
		margin-bottom: 0;
	}
	
	#archive-chirasi .area-chirashi_list li dl dt .schedule {
		font-size: 16px;
		margin-bottom: 10px;
	}
	
	#archive-chirasi .area-chirashi_list li dl dt .target-stores span {
		padding-inline: 10px;
		min-width: 60px;
		height: 23px;
		font-weight: normal;
	}
	
	#archive-chirasi .area-chirashi_list li dl dt .target-stores span.all {
		width: 80px;
		height: 32px;
		border-radius: 16px;
		font-size: 16px;
	}
	
	#archive-chirasi .area-chirashi_list li dl dd {
		flex-wrap: nowrap;
		max-width: 100%;
		gap: 10px;
	}
	
	#archive-chirasi .area-chirashi_list li dl dd a {
		max-width: 100%;
	}
	
	#archive-chirasi .area-chirashi_list li dl dd a span {
		width: 86px;
		height: 36px;
		font-size: 14px;
		padding-inline: 25px 10px;
	}
	#archive-chirasi .area-chirashi_list li dl dd a span:before {
		width: 18px;
		height: 20px;		
	}
}

/*--------------------------------------------------------------
 会社情報
--------------------------------------------------------------*/
body#page-company.page .inner-block {
    max-width: 1240px;
    padding: 0 20px 30px;
}

#page-company main h1:before {
	content: "";
	display: inline-block;
	width: 60px;
	height: 60px;
	background: url("../images/nav-company.png");
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
    flex-shrink: 0;
	margin-right: 10px;
	margin-left: -10px;
}

#page-company.page .inner-block > ul {
	display: flex;
	justify-content: center;
	gap: 100px;
	margin-block: 40px 70px;
}

#page-company.page .inner-block > ul li {
	position: relative;
}

#page-company.page .inner-block > ul li:before {
	content: "";
	display: inline-block;
	background: #f32313;
	height: 10px;
	width: 16px;
	clip-path: polygon(0 0, 100% 0, 50% 100%);
	position: absolute;
	left: -25px;
	top: 15px;
}

#page-company.page .inner-block > ul li a {
	font-size: 18px;
	font-weight: bold;
}

#page-company.page .inner-block section {
	padding-block: 0 90px;
	max-width: 1000px;
	margin-inline: auto;
}

#page-company.page .inner-block #top-message > div {
	display: flex;
	gap: 40px;
}

#page-company.page .inner-block #top-message > div p.vertical {
	writing-mode: vertical-rl;
	text-orientation: upright;
	background: #f32313;
	color: #fff;
	font-weight: bold;
	padding: 30px 18px;
	font-size: 28px;
	margin: 0;
}

#page-company.page .inner-block #top-message div div p {
	margin: 0;
	line-height: 1.875;
}

#page-company.page .inner-block #top-message div div img {
	display: block;
	width: 385px;
	margin: 15px 0 0 auto;
}

#page-company.page .inner-block #corp-info h2 {
	margin-bottom: 25px;
}

#page-company.page .inner-block #corp-info dl {
	display: flex;
	flex-wrap: wrap;
}

#page-company.page .inner-block #corp-info dl dt,
#page-company.page .inner-block #corp-info dl dd {
	border-bottom: 1px solid #ccc;
	min-height: 60px;
	padding-block: 15px;
}

#page-company.page .inner-block #corp-info dl dt {
	width: 155px;
	font-weight: bold;
	padding-inline: 10px;
}

#page-company.page .inner-block #corp-info dl dd {
	width: calc(100% - 155px);
}

#page-company.page .inner-block #corp-info dl dd ul {
	padding-left: 20px;
	margin-top: 5px;
}

#page-company.page .inner-block #corp-info dl dd ul li {
	padding-right: 20px;
}

#page-company.page .inner-block #corp-info dl dd ul li:before {
	display: inline-block;
	content: "";
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background: #f32313;
	margin-right: 8px;
	margin-left: -18px;
}

#page-company.page .inner-block #philosophy {
	display: flex;
	gap: 40px;
}

#page-company.page .inner-block #philosophy div {
	width: calc((100% - 40px)/2);
}

#page-company.page .inner-block #philosophy div h3 {
	font-size: 30px;
	background: transparent;
	text-align: center;
	padding: 0;
	margin-bottom: 15px;
}

#page-company.page .inner-block #philosophy div p {
	border: 1px solid #f32313;
	display: flex;
	min-height: 240px;
	justify-content: center;
	align-items: center;
	font-size: 20px;
	padding-inline: 30px;
}

#page-company.page .inner-block #history ul li {
	display: flex;
	flex-wrap: wrap;
}

#page-company.page .inner-block #history ul li span {
	display: block;
	width: 90px;
	font-size: 18px;
	color: #f32313;
	font-weight: bold;
	padding-left: 10px;
}

#page-company.page .inner-block #history ul li dl {
	width: calc(100% - 90px);
	display: flex;
	flex-wrap: wrap;
	border-left: 1px solid #ccc;
}

#page-company.page .inner-block #history ul li dl dt,
#page-company.page .inner-block #history ul li dl dd {
	line-height: 32px;
}

#page-company.page .inner-block #history ul li dl dt {
	width: 145px;
	padding-left: 30px;
}

#page-company.page .inner-block #history ul li dl dd {
	width: calc(100% - 145px);
}

@media screen and (max-width: 1300px) {
	#page-company.page .inner-block > ul {
		gap: calc((100/1300)*100vw);
	}
}

@media screen and (max-width: 768px) {	
	#page-company main h1:before {
		width: 40px;
		height: 40px;
	}
	
	#page-company.page .inner-block > ul li a {
		font-size: 16px;
	}

	#page-company.page .inner-block #philosophy {
		flex-direction: column;
	}
	
	#page-company.page .inner-block #philosophy div {
		width: 100%;
	}
}

@media screen and (max-width: 568px) {
	#page-company.page .inner-block > ul {
		max-width: 335px;
		margin-inline: auto;
		flex-wrap: wrap;
		gap: 1em 50px;
	}
	
	#page-company.page .inner-block > ul li:before {
		top: 10px;
	}
	
	#page-company.page .inner-block > ul li {
		white-space: nowrap;
	}
	
	#page-company.page .inner-block #top-message > div {
		flex-direction: column;
	}
	
	#page-company.page .inner-block #top-message > div p.vertical {
		writing-mode: inherit;
		font-size: 20px;
	}
	
	#page-company.page .inner-block #top-message div div img {
		max-width: 240px;
	}
	
	#page-company.page .inner-block #corp-info dl {
		flex-wrap: wrap;
		text-align: center;
	}
	
	#page-company.page .inner-block #corp-info dl dt,
	#page-company.page .inner-block #corp-info dl dd {
		width: 100%;
		min-height: 0;
	}
	#page-company.page .inner-block #corp-info dl dd {
		padding-inline: 10px;
	}

	#page-company.page .inner-block #corp-info dl dt {
		padding-bottom: 0;
		border-bottom: none;
	}
	
	#page-company.page .inner-block #corp-info dl dd ul li {
		text-align: left;
		margin-top: 10px;
		padding-right: 0;
	}

	#page-company.page .inner-block #history ul li span {
		width: 70px;
	}
	
	#page-company.page .inner-block #history ul li dl {
		width: calc(100% - 70px);
	}
	
	#page-company.page .inner-block #history ul li dl dt,
	#page-company.page .inner-block #history ul li dl dd {
		width: 100%;
		padding-left: 20px;
	}
	
	#page-company.page .inner-block #history ul li dl dd {
		margin-bottom: 2em;
	}

}

/*--------------------------------------------------------------
 ポイントカード
--------------------------------------------------------------*/
body#page-e-money.page .inner-block {
	padding-bottom: 0 40px;
}

#page-e-money.page main h1:before {
	content: "";
	display: inline-block;
	width: 60px;
	height: 60px;
	background: url("../images/nav-e-money.png");
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
    flex-shrink: 0;
	margin-right: 10px;
	margin-left: -10px;
}

#page-e-money.page .inner-block section {
	padding-block: 0 60px;
}

#page-e-money.page .inner-block .intro {
	display: flex;
	gap: 50px;
}

#page-e-money.page .inner-block .intro img {
	height: 300px;
}

#page-e-money.page .inner-block .intro div {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
}

#page-e-money.page .inner-block .intro div h2 {
	margin-bottom: 0;
	text-align: center;
	border-bottom: none;
	color: #f32313;
	padding: 0;
	display: flex;
	position: relative;
}

#page-e-money.page .inner-block .intro div h2:before {
	content: "";
	display: inline-block;
	width: 27px;
	height: 27px;
	background: url("../images/e-money/h2-before.png");
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
	position: absolute;
	left: -42.5px;
}

#page-e-money.page .inner-block .intro div h2:after {
	content: "";
	display: inline-block;
	width: 27px;
	height: 27px;
	background: url("../images/e-money/h2-after.png");
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
	position: absolute;
	right: -42.5px;
}

#page-e-money.page .inner-block .intro div p {
	align-self: flex-start;
	margin: 0;
	font-size: 22px;
	font-weight: bold;
}

#page-e-money.page .inner-block .card-info div {
	border-top: 2px solid #f32313;
	border-bottom: 2px solid #f32313;
	padding-block: 10px 25px;
}

#page-e-money.page .inner-block .card-info div h3 {
	background: none;
	text-align: center;
	padding: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 26px;
	color: #f32313;
	margin-bottom: 5px;
}

#page-e-money.page .inner-block .card-info div h3 span {
	font-size: 40px;
	margin: 0 10px 5px;
}

#page-e-money.page .inner-block .card-info div p {
	margin: -5px 0 0;
	text-align: center;
}

#page-e-money.page .inner-block .card-info ul {
	margin-top: 70px;
	display: flex;
	gap: 100px;
	justify-content: center;
}

#page-e-money.page .inner-block .card-info ul li {
	width: 220px;
}

#page-e-money.page .inner-block .card-info ul li img {
	display: block;
	max-width: 140px;
	margin-inline: auto;
}

#page-e-money.page .inner-block .card-info ul li p {
	font-size: 22px;
	line-height: 1.36;
	text-align: center;
	margin-block: 20px 0;
}

#page-e-money.page .inner-block .five-points:before {
	content: "";
	display: block;
	background: url("../images/e-money/five-points.png");
	max-width: 565px;
	height: 300px;
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	margin: 0 auto 15px;
}

#page-e-money.page .inner-block .five-points h4 {
	background: #2a7e52;
	color: #fff;
	text-align: center;
	font-size: 28px;
	line-height: 1;
	height: 65px;
	max-width: 730px;
	margin-inline: auto;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 32.5px;
	position: relative;
	margin-bottom: 50px;
}

#page-e-money.page .inner-block .five-points h4:after {
	content: "";
	display: block;
	background: #2a7e52;
	width: 40px;
	height: 20px;
	clip-path: polygon(0 0, 100% 0%, 50% 100%);
	position: absolute;
	bottom: -19px;
}

#page-e-money.page .inner-block .five-points ul {
	width: fit-content;
	margin-inline: auto;
	padding-left: 70px;
}

#page-e-money.page .inner-block .five-points ul li {
	font-size: 22px;
	margin-bottom: 15px;
	width: fit-content;
	font-weight: bold;
}

#page-e-money.page .inner-block .five-points ul li:before {
	content: "";
	display: inline-block;
	width: 50px;
	height: 50px;
	border-radius: 50%;
	background: #f32313;
	vertical-align: middle;
	margin-right: 20px;
	text-align: center;
	align-items: center;
	line-height: 40px;
	padding-top: 3px;
	color: #fff;
	margin-left: -70px;
}

#page-e-money.page .inner-block .five-points ul li:nth-child(1):before {
	content: "1";
}

#page-e-money.page .inner-block .five-points ul li:nth-child(2):before {
	content: "2";
}

#page-e-money.page .inner-block .five-points ul li:nth-child(3):before {
	content: "3";
}

#page-e-money.page .inner-block .five-points ul li:nth-child(4):before {
	content: "4";
}

#page-e-money.page .inner-block .five-points ul li:nth-child(5):before {
	content: "5";
}

#page-e-money.page .inner-block .five-points ul li em {
	font-size: 26px;
	color: #f32313;
	margin-inline: 0.15em;
}

#page-e-money.page .inner-block .five-points > p {
	color: #f32313;
	font-size: 26px;
	text-align: center;
	margin-block: 50px;
	font-weight: bold;
}

#page-e-money.page .inner-block .five-points > p span {
	color: initial;
	font-size: initial;
	display: block;
	margin-top: 15px;
	font-weight: normal;
}

#page-e-money.page .inner-block .five-points .documents {
	display: flex;
	justify-content: center;
	gap: 40px;
}

#page-e-money.page .inner-block .five-points .documents a {
	background: #f32313;
	color: #fff;
	border: 1px solid #f32313;
	border-radius: 32.5px;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	width: 100%;
	max-width: 400px;
	height: 65px;
	position: relative;
}

#page-e-money.page .inner-block .five-points .documents a.pdf:after {
	content: "";
	display: block;
	background: url("../images/e-money/pdf-white.png");
	width: 24px;
	height: 27px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	position: absolute;
	right: 20px;
	top: 50%;
	transform: translateY(-50%);
}

#page-e-money.page .inner-block .five-points .documents a:hover {
	background: #fff;
	color: #f32313;
}

#page-e-money.page .inner-block .five-points .documents a:hover.pdf:after {
	background: url("../images/e-money/pdf-red.png");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}

#page-e-money.page .inner-block .five-points .documents a div {
	line-height: 24px;
	font-size: 24px;
	font-weight: bold;
	display: flex;
	align-items: flex-end;
}

#page-e-money.page .inner-block .five-points .documents a:nth-of-type(2) div {
	font-size: 18px;
	line-height: 26px;
}

#page-e-money.page .inner-block .five-points .documents a div span {
	font-size: 12px;
	margin-left: 10px;
}

#page-e-money.page .inner-block .card-stores {
	border: 1px solid #f32313;
	background: #fcf9d2;
	padding: 15px 20px;
}

#page-e-money.page .inner-block .card-stores h5 {
	font-size: 22px;
	color: #f32313;
	text-align: center;
	margin-bottom: 15px;
}

#page-e-money.page .inner-block .card-stores dl {
	margin-block: 0;
	display: flex;
	flex-wrap: wrap;
}

#page-e-money.page .inner-block .card-stores dl dt,
#page-e-money.page .inner-block .card-stores dl dd {
	margin-bottom: 15px;
}

#page-e-money.page .inner-block .card-stores dl dt {
	width: 80px;
	padding-left: 10px;
	font-size: 18px;
	line-height: 1.33;
	color: #f32313;
}

#page-e-money.page .inner-block .card-stores dl dd {
	width: calc(100% - 80px);
	display: flex;
	flex-wrap: wrap;
	line-height: 24px;
	gap: 5px 1%;
}

#page-e-money.page .inner-block .card-stores dl dd span {
	display: block;
	width: 13%;
	flex-shrink: 0;
}

#page-e-money.page .inner-block .card-stores dl dd span.eight {
	width: 27%;
}

@media screen and (max-width: 1300px) {	
	#page-e-money.page .inner-block .card-info div p {
		font-size: 14px;
	}
}

@media screen and (max-width: 900px) {	
	#page-e-money.page .inner-block section {
		padding-bottom: 45px;
	}
	
	#page-e-money.page .inner-block .intro {
		flex-direction: column;
		gap: 35px;
	}
	
	#page-e-money.page .inner-block .intro img {
    	width: 480px;
		height: auto;
		margin-inline: auto;
	}
	
	#page-e-money.page .inner-block .intro div {
		flex-direction: column;
		align-content: center;
	}	

	#page-e-money.page .inner-block .intro div h2 {
		margin-bottom: 15px;
	}
	
	#page-e-money.page .inner-block .card-info div p {
		font-size: 12px;
	}
	
	#page-e-money.page .inner-block .card-info ul {
		flex-direction: column;
		gap: 20px;
		margin-top: 55px;
	}
	
	#page-e-money.page .inner-block .card-info ul li {
		display: flex;
		width: 340px;
		gap: 20px;
		margin-inline: auto;
		align-content: flex-start;
	}
	
	#page-e-money.page .inner-block .card-info ul li img {
		width: 100px;
		height: 87.5px;
	}
	
	#page-e-money.page .inner-block .card-info ul li p {
		font-weight: bold;
		margin-block: 12.5px 0;
		width: 220px;
		text-align: left;
	}
	
	#page-e-money.page .inner-block .five-points::before {
		height: 200px;
	}
	
	#page-e-money.page .inner-block .five-points ul {
		padding-left: 45px;
	}
	
	#page-e-money.page .inner-block .five-points ul li {
		font-size: 16px;
	}
	
	#page-e-money.page .inner-block .five-points ul li:before {
		width: 35px;
		height: 35px;     
		font-size: 20px;
        line-height: 27px;
		margin-right: 10px;
		margin-left: -45px;
	}

	#page-e-money.page .inner-block .five-points ul li em {
		font-size: 18px;
	}
	
	#page-e-money.page .inner-block .card-stores dl dd span {
		width: 24%;
	}

	#page-e-money.page .inner-block .card-stores dl dd span.eight {
		width: 49%;
	}
}

@media screen and (max-width: 768px) {
	#page-e-money.page main h1:before {
		width: 40px;
		height: 40px;
	}
	
	#page-e-money.page .inner-block .intro img {
    	width: 240px;
		height: auto;
		margin-inline: auto;
	}

	#page-e-money.page .inner-block .card-info ul li {
		width: 280px;
		gap: 15px;
	}
	
	#page-e-money.page .inner-block .card-info ul li p {
		font-size: 16px;
		margin-block: 20px 0;
	}
	
	#page-e-money.page .inner-block .five-points > p {
		font-size: 22px;
	}
	
	#page-e-money.page .inner-block .five-points .documents {
		flex-direction: column;
		align-items: center;
		gap: 20px;
	}
}

@media screen and (max-width: 568px) {
	#page-e-money.page .inner-block .intro div p {
		font-size: 16px;	
	}
	
	#page-e-money.page .inner-block .intro div h2 {
		font-size: 22px;
	}
	
	#page-e-money.page .inner-block .intro div h2:before,
	#page-e-money.page .inner-block .intro div h2:after {
		width: 21px;
		height: 21px;
	}
	
	#page-e-money.page .inner-block .five-points h4 {
		font-size: 18px;
		height: 50px;
		border-radius: 25px;
	}
	
	#page-e-money.page .inner-block .five-points h4:after {
		width: 30px;
		height: 15px;
		bottom: -15px;
	}

	#page-e-money.page .inner-block .five-points > p {
		font-size: 16px;
	}
	
	#page-e-money.page .inner-block .five-points > p span {
		font-size: 12px;
	}
	
	#page-e-money.page .inner-block .five-points .documents a div {
		font-size: 18px;
	}
	
	#page-e-money.page .inner-block .five-points .documents a:nth-of-type(2) div {
		font-size: 16px;
	}
	
	#page-e-money.page .inner-block .card-stores {
		padding: 20px 10px;
	}
	
	#page-e-money.page .inner-block .card-stores dl {
		flex-direction: column;
	}
	
	#page-e-money.page .inner-block .card-stores dl dt,
	#page-e-money.page .inner-block .card-stores dl dd {
		width: 100%;
		padding: 0;
	}
	
	#page-e-money.page .inner-block .card-stores dl dt {
		width: 100%;
		padding-left: 0;
		text-align: center;
	}
	
#page-e-money.page .inner-block .card-stores dl dd {
	width: 100%;
}

#page-e-money.page .inner-block .card-stores dl dd span {
	width: 30%;
	text-align: center;
}

#page-e-money.page .inner-block .card-stores dl dd span.eight {
	width: 100%;
}
}

@media screen and (max-width: 375px) {
	#page-e-money.page .inner-block .five-points .documents a.pdf::after {
		width: 20px;
		height: 22px;
		right: 12.5px;
	}
}

/*--------------------------------------------------------------
 こだわり
--------------------------------------------------------------*/
#page-feature.page main .inner-block {
	max-width: 100%;
	padding: 0 0 60px;
}

#page-feature.page main h1:before {
	content: "";
	display: inline-block;
	width: 60px;
	height: 60px;
	background: url("../images/nav-feature.png");
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
    flex-shrink: 0;
	margin-right: 10px;
	margin-left: -10px;
}

#page-feature.page main .inner-block section {
	padding-inline: min(100px, calc((100 / 1920)*100vw)) min(20px, calc((20 / 1920)*100vw));
	padding-block: 65px 75px;
	background: #fcf9d2;
	margin-right: min(80px, calc((80 / 1920)*100vw));
	margin-bottom: 75px;
	border-top-right-radius: 100px;
	border-bottom-right-radius: 100px;
}

#page-feature.page main .inner-block section:nth-of-type(2n) {
	margin-right: 0px;
	margin-left: min(80px, calc((80 / 1920)*100vw));
	padding-inline: min(20px, calc((20 / 1920)*100vw)) min(100px, calc((100 / 1920)*100vw));
	border-radius: 100px;
	border-top-right-radius: 0px;
	border-bottom-right-radius: 0px;
}

#page-feature.page main .inner-block section h2 {
	text-align: center;
	font-size: 38px;
	border-bottom: none;
	padding-bottom: 0;
	margin-bottom: 35px;
	position: relative;
	width: fit-content;
	margin-inline: auto;
}

#page-feature.page main .inner-block section h2:before {
	content: "";
	display: block;
	background: url("../images/feature/feature-h3_before.png");
	width: 33px;
	height: 34px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	position: absolute;
	top: -5px;
	left: -75px;
}

#page-feature.page main .inner-block section h2:after {
	content: "";
	display: block;
	background: url("../images/feature/feature-h3_after.png");
	width: 33px;
	height: 34px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	position: absolute;
	top: -5px;
	right: -75px;
}

#page-feature.page main .inner-block section h3 {
	text-align: center;
	font-size: 30px;
	background: none;
	padding: 0;
	margin-bottom: 50px;
}

#page-feature.page main .inner-block section div {
	display: flex;
	gap: 40px;
	max-width: 1360px;
	padding-inline: min(80px, calc((80 / 1920)*100vw));
	margin-inline: auto;
	justify-content: center;
}

#page-feature.page main .inner-block section:nth-of-type(2n) div {
	flex-direction: row-reverse;
}

#page-feature.page main .inner-block section div img {
	max-width: min(600px, 50%);
	height: auto;
	margin-block: auto;
}

#page-feature.page main .inner-block section div p {
	max-width: min(560px, calc(50% - 40px));
	font-size: 18px;
	line-height: 1.55;
	margin-block: auto;
}

@media screen and (max-width: 1300px) {
	#page-feature.page main .inner-block section div,
	#page-feature.page main .inner-block section:nth-of-type(2n) div{
		flex-direction: column;
	}
	
	#page-feature.page main .inner-block section div img {
		max-width: min(600px, calc((315/375)*100vw));
		margin: auto;
	}

	#page-feature.page main .inner-block section div p {
		max-width: 100%;
	}
}

@media screen and (max-width: 900px) {
	#page-feature.page main .inner-block section {
		margin-right: 20px;
		padding-inline: 25px;
	}
	
	#page-feature.page main .inner-block section:nth-of-type(2n) {
		margin-right: 0px;
		margin-left: 20px;
		padding-inline: 25px;
	}
	
	#page-feature.page main .inner-block section div {
		padding-inline: 0;
	}
	
	#page-feature.page main .inner-block section h2 {
		font-size: min(38px, calc((22/375)*100vw));
	}
	
	#page-feature.page main .inner-block section h2:before {
		width: 20px;
		height: 20px;
		left: -35px;
	}

	#page-feature.page main .inner-block section h2:after {
		width: 20px;
		height: 20px;
		right: -35px;
	}

	#page-feature.page main .inner-block section h3 {
		font-size: min(30px, calc((20/375)*100vw));
	}
	
	#page-feature.page main .inner-block section div p {
		font-size: min(18px, calc((16/375)*100vw));
	}
}

@media screen and (max-width: 768px) {
	#page-feature.page main h1:before {
		width: 40px;
		height: 40px;
	}
	
	#page-feature.page main .inner-block section {
		border-top-right-radius: 70px;
		border-bottom-right-radius: 70px;
	}
}

/*--------------------------------------------------------------
 こだわり
--------------------------------------------------------------*/
#page-land.page main .inner-block section {
	margin-block: 0 60px;
	padding: 0;
}

#page-land.page main .inner-block section h2 {
	margin-bottom: 25px;
}

#page-land.page main .inner-block .reserch p {
	font-size: 50px;
	background: #2a7e52;
	border-radius: 75px;
	color: #fff;
	text-align: center;
	line-height: 100%;
	padding-block: 25px 10px;
	position: relative;
	margin-block: 0 40px;
}

#page-land.page main .inner-block .reserch p:after {
	content: "";
	display: inline-block;
	background: #2a7e52;
	height: 21px;
	width: 40px;
	clip-path: polygon(50% 100%, 100% 0%, 0 0%);
	position: absolute;
	left: 50%;
	bottom: -20px;
	transform: translateX(-50%);
}

#page-land.page main .inner-block .reserch p span {
	font-size: 28px;
	font-weight: bold;
	display: block;
	padding-block: 7.5px;
}

#page-land.page main .inner-block .reserch .target {
	text-align: center;
	font-size: 32px;
	font-weight: bold;
	display: flex;
	justify-content: center;
	align-items: center;
	line-height: 100%;
	margin-bottom: 45px;
}

#page-land.page main .inner-block .reserch .target img {
	width: 120px;
	margin-inline: 30px;
}

#page-land.page main .inner-block .reserch .target span {
	color: #f32313;
}

#page-land.page main .inner-block .reserch .table {
	border-radius: 30px;
	border: 1px solid #999;
	overflow: hidden;
	margin-bottom: 25px;
}

#page-land.page main .inner-block .reserch .table table {
	border: none;
	margin-bottom: 0;
	text-align: center;
	font-size: 22px;
	font-weight: bold;
}

#page-land.page main .inner-block .reserch .table table tr {
	border-bottom: 0;
}

#page-land.page main .inner-block .reserch .table table thead tr th,
#page-land.page main .inner-block .reserch .table table tbody tr th,
#page-land.page main .inner-block .reserch .table table tbody tr td {
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc; 
	text-align: center;
	padding: 15px;
}

#page-land.page main .inner-block .reserch .table table thead tr th {
	border-bottom: 1px solid #ccc;
	background: #ffde83;
}

#page-land.page main .inner-block .reserch .table table tbody tr th {
	background: #fcf9d2;
}

#page-land.page main .inner-block .reserch .table table tbody tr td {
	color: #f32313;
}

#page-land.page main .inner-block .reserch .table table thead tr th:last-of-type,
#page-land.page main .inner-block .reserch .table table tbody tr td:last-of-type {
	border-right: none;
}

#page-land.page main .inner-block .reserch .table table tbody tr:last-of-type th,
#page-land.page main .inner-block .reserch .table table tbody tr:last-of-type td {
	border-bottom: none;
}

#page-land.page main .inner-block .reserch .notice {
	padding-left: 1.25em;
	padding-bottom: 10px;
}

#page-land.page main .inner-block .reserch .notice li:before {
	content: "※";
	display: inline-block;
	margin-left: -1.25em;
    margin-right: 0.25em;
}

#page-land.page main .inner-block .contract ol {
	padding-bottom: 10px;
}

#page-land.page main .inner-block .contract ol li {
	font-size: 20px;
}

#page-land.page main .inner-block .contact > div {
	background: #fcf9d2;
	border: 1px solid #f32313;
	text-align: center;
	padding-bottom: 30px;
}

#page-land.page main .inner-block .contact > div p {
	font-size: 22px;
	margin-block: 25px;
	color: #f32313;
	font-weight: bold;
}

#page-land.page main .inner-block .contact > div .numbers {
	font-size: 28px;
	font-weight: bold;
	color: #f32313;
	margin-bottom: 10px;
}

#page-land.page main .inner-block .contact > div .numbers .tel {
	margin-right: 55px;
}

#page-land.page main .inner-block .contact > div .numbers .tel a {
	color: #f32313;
}

#page-land.page main .inner-block .contact > div .in-charge span {
	font-size: 24px;
	font-weight: bold;
	margin-inline: 15px;
}

@media screen and (max-width: 768px) {
	#page-land.page main .inner-block section h2 {
		font-size: 22px;
		padding-bottom: 10px;
		margin-bottom: 15px;
	}
	
	#page-land.page main .inner-block .reserch p {
		font-size: 38px;
	}
	
	#page-land.page main .inner-block .reserch p span {
		font-size: 24px;
	}
	
	#page-land.page main .inner-block .contract ol li {
		font-size: 16px;
	}
	
	#page-land.page main .inner-block .contact > div .numbers span {
		display: block;
	}
	
	#page-land.page main .inner-block .contact > div .numbers .tel {
		margin-right: 0;
	}
}

@media screen and (max-width: 568px) {
	#page-land.page main .inner-block .reserch p {
		font-size: 22px;
		padding-block: 17.5px 10px;
	}
	
	#page-land.page main .inner-block .reserch p span {
		font-size: 18px;
	}
	
	#page-land.page main .inner-block .reserch .target {
		font-size: 20px;
	}
	
	#page-land.page main .inner-block .reserch .target img {
		width: 80px;
		margin-inline: 15px;
	}
	
	#page-land.page main .inner-block .reserch .table table {
		font-size: 16px;
	}
	
	#page-land.page main .inner-block .contact > div {
		padding-bottom: 20px;
	}
	
	#page-land.page main .inner-block .contact > div p {
		font-size: 18px;
		margin-block: 15px;
	}
	
	#page-land.page main .inner-block .contact > div .numbers {
		font-size: 22px;
	}
	
	#page-land.page main .inner-block .contact > div .in-charge span {
		font-size: 16px;
		margin-inline: 10px;
	}
	
	#page-land.page main .inner-block .reserch .table {
		border-radius: 15px;
	}
	
	#page-land.page main .inner-block .reserch .table table thead tr th, 
	#page-land.page main .inner-block .reserch .table table tbody tr th, 
	#page-land.page main .inner-block .reserch .table table tbody tr td {
		padding: 10px;
	}
	
	#page-land.page main .inner-block .reserch .table table {
        font-size: 14px;
    }
}

@media screen and (max-width: 375px) {
	#page-land.page main .inner-block .reserch p {
        font-size: 18px;
	}
	
	#page-land.page main .inner-block .reserch p span {
        font-size: 16px;
    }
	
	#page-land.page main .inner-block .reserch .target {
        font-size: 18px;
    }
	
	#page-land.page main .inner-block .reserch .target img {
        width: 60px;
        margin-inline: 10px;
    }
	
	#page-land.page main .inner-block .contact > div .in-charge span {
		display: block;
	}
}

/*--------------------------------------------------------------
 Footer
--------------------------------------------------------------*/
footer {
	background: #f32313;
	color: #fff;
}

footer a,
footer a:hover {
	color: #fff;
}

footer a:hover {
	text-decoration: underline;
	text-underline-offset: 5px;
}

footer .footer-inner_block {
	gap: min(107.5px, calc((107.5/1920)*100vw));
	padding-bottom: 0;
}

footer .footer-logo {
	width: 220px;
	height: fit-content;
}

footer .footer-nav_list {
	width: 360px;
}

footer .footer-nav_list > ul {
	display: grid;
	grid-template-rows: auto auto auto auto auto;
	grid-template-columns: calc((100% - min(70px, calc((70/1920)*100vw)))/2) calc((100% - min(70px, calc((70/1920)*100vw)))/2);
	gap: 15px min(70px, calc((70/1920)*100vw));
}

footer .footer-nav_list > ul > li:nth-child(6) {
	grid-column: 2/3;
	grid-row: 3/5;
}

footer .footer-nav_list > ul > li > ul > li {
	font-size: 14px;
}

footer .footer-nav_list > ul > li > ul > li:before {
	content: "└";
	display: inline-block;
}

footer .footer-ext-link {
	display: grid;
	grid-template-rows: auto auto;
	grid-template-columns: 180px 200px;
	height: fit-content;
	gap: 17px 25px;
}

footer .footer-ext-link a:nth-of-type(1) {
	grid-row: 1/3;
	grid-column: 1/2
}

footer .footer-ext-link a:nth-of-type(2) {
	grid-row: 1/2;
	grid-column: 2/3;
}

footer .footer-ext-link a:nth-of-type(3) {
	grid-row: 2/3;
	grid-column: 2/3;
}

footer .footer-inner_bottom .footer-copyright {
	width: 100%;
	max-width: 1200px;
	margin-inline: auto;
	text-align: right;
	font-size: 12px;
}

footer .footer-inner_bottom .footer-copyright a:hover {
	text-underline-offset: 2.5px;
}

@media screen and (max-width: 1300px) {
	footer .footer-inner_block {
		flex-wrap: wrap;
		padding: 25px;
		max-width: 720px;
		gap: 25px;
	}
	
	footer .footer-logo img {
		width: 220px;
	}
	
	footer .footer-nav_list {
		width: 100%;
	}
	
	footer .footer-ext-link {
		display: grid;
		grid-template-rows: auto auto;
		grid-template-columns: clamp(105px, calc((180/1300)*100vw), 180px) clamp(115px, calc((200/1300)*100vw), 200px);
		height: fit-content;
		gap: min(17px, calc((17/1300)*100vw)) min(25px, calc((25/1300)*100vw));
	}
	
	footer .footer-inner_bottom {
	    padding: 0 40px 20px;
	}
	
	footer .footer-inner_bottom .footer-copyright {
		text-align: left;
	}
}

@media screen and (max-width: 768px) {
	footer .footer-ext-link {
		grid-template-columns: min(145px, calc((145/375)*100vw)) min(167px, calc((167/375)*100vw));
		gap: 12px 11px;
	}
	
	footer .footer-inner_bottom .footer-copyright {
		font-size: 11px;
	}

	footer .footer-nav_list > ul > li > ul > li::before {
		margin-left: -1.25em;
		padding-right: 0.25em;
	}
	
	footer .footer-nav_list > ul > li > ul {
		padding-left: 1.25em;
	}

	footer .footer-nav_list > ul > li > ul > li {
		line-height: 1.2;
		margin-top: 5px;
	}
}

@media screen and (max-width: 375px) {
	footer .footer-ext-link {
		grid-template-columns: calc((120 / 320) * 100vw) calc((140 / 320) * 100vw);
        gap: 10px;
	}
}












