/* ベーススタイル */
*,
*::before,
*::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}


html{
	scroll-behavior: smooth;
    -webkit-text-size-adjust: 100%;
}

body {
  font-family: "Noto Sans JP", sans-serif;
    font-weight: 400;
    line-height: 1.75;
    font-size: 16px;
    color: #402013;
    background-color: #fff;
	/*font-feature-settings: 'palt';*/
}

img {
    max-width: 100%;
    height: auto;
    display: block;
}

a{
	text-decoration: none;
	color: #402013;
}

a, button {
  -webkit-tap-highlight-color: transparent;
}

a:focus {
  outline: none;
}


a:focus-visible {
  outline: 0 solid blue;
}




.flex-box{
	display: flex;
}



.orange{
	color: #e62c0f;
}




/* ヘッダー -------------------------------------------------- */
.site-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100px;
  z-index: 1000;
  background-color: #fff;
  transition: background-color 0.3s ease, box-shadow 0.3s ease;
  pointer-events: none;
}



.header-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 100%;
  padding: 0px 164px 0 60px;
  pointer-events: none;
}

.header-logo {
	width: 162.1679px;
	aspect-ratio: 162.1679 / 42;
    /*width:336px;
	aspect-ratio: 336.4531 / 42;*/
	margin: 0;
}

.header-nav{
}

.header-nav ul {
  display: flex;
  align-items: center;
  gap: 50px;
  margin: 0;
  padding: 0;
  list-style: none;
  justify-content: space-between;
}

.header-nav ul li{
    height: 100%;
    min-width: 63px;
    display: flex;
    align-items: center;
    justify-content: center;
	position: relative;
}




.header-nav a {
  text-decoration: none;
  color: #402013;
  font-size: 18px;
	transition: 0.3s;
}


.header-nav a.nav-online-shop{
	width: 200px;
	height: 50px;
	border: solid 1px #fff;
	border-radius: 25px;
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #fff;
	font-weight: 400;
	background: #402013;
}



.header-menu-toggle {
	width: 60px;
	aspect-ratio: 1 /1;
  background: #e62c0f;
	border-radius: 50%;
  border: none;
  padding: 0 20px;
  cursor: pointer;
  position: absolute;
  top: 20px;
  right: 60px;
  pointer-events: auto;
}

.header-menu-toggle span {
  display: block;
  width: 20px;
  height: 1px;
  background-color: #fff;
  border-radius: 0px;
  transition: transform 0.2s ease, opacity 0.2s ease;
}

.header-menu-toggle span + span {
  margin-top: 4px;
}

/*.site-header .header-menu-toggle span:nth-child(2) {
  display: none;
}*/

.site-header.is-open .header-menu-toggle span:nth-child(1) {
  transform: translateY(5px) rotate(45deg);
}

.site-header.is-open .header-menu-toggle span:nth-child(2) {
  opacity: 0;
}

.site-header.is-open .header-menu-toggle span:nth-child(3) {
  transform: translateY(-5px) rotate(-45deg);
}


.site-header.is-open .header-nav ul li a{
	color: #fff;
}

.site-header.is-open .header-nav ul li.nav-contact a{
	width: auto;
	height: auto;
	background: none;
}



.header-overlay {
  position: fixed;
  inset: 0;
  background-color: rgba(0, 0, 0, 0.4);
  opacity: 0;
  pointer-events: none;
  z-index: 900;
  transition: opacity 0.3s ease;
  width: 100%;
  max-width: 100vw;
}

body.menu-open .header-overlay {
  opacity: 1;
  pointer-events: auto;
}




@media (max-width: 1600px) {

  .header-nav {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background-color: #402013;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);
    padding: 40px 34px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    transform: translateY(-10px);
    pointer-events: none;
    transition:
      max-height 0.3s ease,
      opacity 0.3s ease,
      transform 0.3s ease;
  }

  .header-nav ul {
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
	  width: 100%;
  }
	.header-nav ul li{
		width: 100%;
	}


  .site-header.is-open .header-nav {
    max-height: 90vh;
    height: fit-content;
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
  }

  .header-menu-toggle {
    display: block;
  }

	
	
	
}



.site-header{
	background: none;
}
.header-logo{
	display: none;
}

.header-nav {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background-color: #402013;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);
    padding: 40px 34px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    transform: translateY(-10px);
    pointer-events: none;
    transition:
      max-height 0.3s ease,
      opacity 0.3s ease,
      transform 0.3s ease;
  }


.header-nav ul {
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
	  width: 100%;
  }
	.header-nav ul li{
		width: 100%;
	}


.site-header.is-open{
	background-color: #fff;
}

.site-header.is-open .header-logo{
	display: block;
}

.site-header.is-open .header-nav {
    max-height: 90vh;
    height: fit-content;
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
  }

.header-menu-toggle {
	top: 31px;
  }









/* フッター -------------------------------------------------- */

footer{
	display: flex;
	flex-direction: column;
	align-items: center;
	background-color: #3e3a39;
	color: #fff;
	padding: 60px;
}

.f-logo{
	width: 168.8118px;
	aspect-ratio: 168.8118 / 70;
	margin-bottom: 25px;
}

footer a{
	color: #fff;
	font-size: 15px;
	text-decoration: underline;
}

.sns-wrapper{
	display: flex;
	gap: 18px;
	margin-bottom: 25px;
}

.sns-wrapper a{
	display: block;
	width: 50px;
	aspect-ratio: 1 / 1;
	text-decoration: none;
}




footer small{
	color: #fff;
	font-size: 15px;
	margin-top: 34px;
}




/* TOPへ戻るボタン -------------------------------------------------- */

/*.pagetop {
    position: fixed;
    bottom: 120px;
    right: 30px;
    width: 67.5px;
    opacity: 0;
	display: flex;
	justify-content: center;
	align-items: center;
    transform: translateY(20px);
    z-index: 999;
    transition: opacity .3s ease, transform .3s ease, bottom .3s ease;
}

.pagetop.is-fixed {
    bottom: 25px; 
    opacity: 1;
    transform: translateY(0);
}

.pagetop img{
	width: 67.5px;
	aspect-ratio: 1 / 1;
}
*/




/*共通パーツ -------------------------------------------------- */





/*TOP  ヒーロー -------------------------------------------------- */


/* ===== FVスクロール量 ===== */

.fv-wrapper {
  height: 200vh;
}


/* ===== FV ===== */

.fv {
  position: sticky;
  top: 0;
  height: 100vh;
  overflow: hidden;
}



/* 背景 */

.fv-bg {
  position: absolute;
  inset: 0;
  background: url("../images/hero.jpg") center / cover no-repeat;
  transition: filter 1.5s cubic-bezier(0.22, 1, 0.36, 1), 
  transform 1.5s cubic-bezier(0.22, 1, 0.36, 1);
}



/* オーバーレイ */

.fv-overlay {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0);
  transition: background 0.8s ease;
  z-index: 1;
}



/* ===== ロゴ（固定） ===== */

.logo {
  position: fixed;
  top: 30px;
  left: 60px;
  width: 162px;
	aspect-ratio: 162 / 42;
	background-image: url("../images/logo.svg");
	background-size: contain;
	background-repeat: no-repeat;
  z-index: 5;
}
.logo.is-passed-fv{
	background-image: url("../images/logo-02.svg");
}

#back-mat{
	display: none;
	width: 100%;
	height: 100px;
	background: rgba(255,255,255,0.8);
	position: fixed;
	z-index: 4;
}
#back-mat.is-passed-fv{
	display: block;
}

/* ===== 固定ボタン群 ===== */

.fixed-buttons {
  position: fixed;
  top: 35px;
  right: 160px;
  display: flex;
  align-items: center;
  gap: 40px;
  z-index: 5;
}

.nav-online-shop{
	display: none;
	/*width: 200px;
	height: 50px;
	border: solid 1px #fff;
	border-radius: 25px;
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #fff;
	font-weight: 400;*/
}
.nav-online-shop::before{
	content: '';
	display: block;
	width: 24px;
	height: 20px;
	background-image: url("../images/icon-cart.svg");
	background-size: contain;
	background-repeat: no-repeat;
	margin-right: 8px;
}

#online-shop.nav-online-shop.is-passed-fv{
	    background: #402013;
}



.menu-btn {
  margin-top: -6px; /* ← 好きな量で微調整 */
}



/* ===== メニューテキスト（位置そのまま） ===== */

.header-text {
  position: absolute;
  top: 45px;
  /*right: 340px;*/
  right: 160px;
  z-index: 3;
  transition: opacity 0.25s ease, transform 0.25s ease;

}

.header-text ul{
	list-style: none;
	display: flex;
	gap: 44px;
	margin-right: 50px;
}

.header-text a {
  font-size: 16px;
  color: #fff;
  text-decoration: none;
}



/* 即退場 */

.header-text.is-hide {
  opacity: 0;
  transform: translateY(-16px);
  pointer-events: none;
}



/* ===== 左タイトル ===== */

.fv-title {
  position: absolute;
  left: 80px;
  top: 46%;
  transform: translateY(-50%);
  z-index: 2;
}



.fv-title h1 {
  font-family: "Shippori Mincho", serif;
  font-size: 41px;
  font-weight: 400;
  line-height: 2.049;
  margin: 0;
  color: #fff;
}



/* ===== 右サブ文章 ===== */

.fv-text {
  position: absolute;
  right: 16.67vw;
  top: 55%;
  max-width: 600px;
  opacity: 0;
  transform: translateY(-50%) translateY(24px);
  transition: opacity 0.8s ease, transform 0.8s ease;
  z-index: 2;
  color: #fff;
}



.fv-text p {
  font-size: 18px;
  line-height: 1.9;
  margin-bottom: 32px;
}



.fv-button {
	display: flex;
	justify-content: flex-end;
	align-items: center;
}
.fv-button a{
	color: #fff;
	position: relative;
	display: flex;
	justify-content: flex-end;
	align-items: center;
	gap: 20px;
	width: fit-content;
}
.fv-button a::after{
	content: '';
	display: block;
	width: 100px;
	aspect-ratio: 1 /1;
	background-image: url("../images/icon-arrow-circle.svg");
	background-size: contain;
	background-repeat: no-repeat;
}



/* ===== スクロール後 ===== */

.fv.is-active .fv-bg {
  filter: blur(40px);
  transform: scale(1.1);
}



.fv.is-active .fv-overlay {
  background: rgba(0,0,0,0.25);
}



.fv.is-active .fv-text {
  opacity: 1;
  transform: translateY(-50%);
}



/* ===== 次 ===== */




#top #content-01{
	padding: 184px 60px 0;
	display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
	position: relative;
	z-index: 2;
}

#top #content-01 .inner-wrapper{
	position: relative;
    width: 100%;
	max-width: 1920px;
}


#top #content-01 h2{
    width: 794px;
	max-width: 100%;
	aspect-ratio: 794 / 109.5;
	line-height: 1;
	margin-bottom: 84px;
}
#top #content-01 h2 img{
	display: none;
}


#top #content-01 .text-box{
	padding-left: 12.36%;
	margin-bottom: 100px;
}


#top #content-01 .sub{
	display: block;
	width: fit-content;
	font-size: 17px;
	color: #e62c0f;
	margin-bottom: 2.243em;
}
#top #content-01 .tugline{
  display: block;
  width: fit-content;
  font-family: "Shippori Mincho", serif;
  font-size: 41px;
  font-weight: 400;
  line-height: 1.6;
  margin-bottom: 50px;
  margin-bottom: 0.89em;
}
#top #content-01 .text{
	font-size: 18px;
	line-height: 1.889;
	width: fit-content;
}


#top #content-01 .inner-wrapper > img:nth-of-type(1){
	width: 49.44%;
	max-width: 800px;
	aspect-ratio: 800 / 820;
	position: absolute;
	top: 85px;
	right: 5.21vw;
}

#top #content-01 .inner-wrapper > img:nth-of-type(2){
	width: 32.14%;
	max-width: 520px;
	aspect-ratio: 520 / 360;
	margin-left: 5.21vw;
}



#top #content-02{
	padding: 0 60px;
	margin-top: -130px;
}
#top #content-02 .inner-wrapper{
	position: relative;
	background: #faefed;
    padding: 215px 60px 160px;
	display: flex;
	flex-direction: column;
	align-items: center;
}

#top #content-02 h2{
    width: 899px;
	max-width: 100%;
	aspect-ratio: 899 / 92;
	line-height: 1;
	margin-bottom: 26px;
}

#top #content-02 .sub{
	display: block;
	width: fit-content;
	font-family: "Shippori Mincho", serif;
	font-size: 25px;
	line-height: 1;
	margin-bottom: 75px;
}

#top #content-02 ul{
	display: flex;
	width: 100%;
	max-width: 1274px;
	list-style: none;
    justify-content: space-between;
}

#top #content-02 ul li{
	position: relative;
	background: url("../images/top-ingredients-back.svg");
	background-size: contain;
	background-repeat: no-repeat;
	width: 346px;
	aspect-ratio: 1 / 1;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

#top #content-02 ul li::before{
	content: '';
	display: block;
	width: 140px;
	aspect-ratio: 1 / 1;
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	top: -30px;
	left: -38px;
}
#top #content-02 ul li:nth-of-type(1)::before{
	background-image: url("../images/top-ingredients-01.png");
}
#top #content-02 ul li:nth-of-type(2)::before{
	background-image: url("../images/top-ingredients-02.png");
}
#top #content-02 ul li:nth-of-type(3)::before{
	background-image: url("../images/top-ingredients-03.png");
}


#top #content-02 ul .number{
	font-family: "Shippori Mincho", serif;
	font-size: 25px;
	line-height: 1;
	color: #e62c0f;
	margin-bottom: 22px;
}

#top #content-02 ul h3{
	font-family: "Shippori Mincho", serif;
	font-size: 32px;
	font-weight: 400;
	line-height: 1;
	width: fit-content;
	position: relative;
	padding-bottom: 20px;
}
#top #content-02 ul h3::after{
	content: '';
	display: block;
	width:40px;
	height: 1px;
	background: #e62c0f;
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
}

#top #content-02 ul .text{
	font-size: 16px;
	line-height: 1.75;
	width: fit-content;
	text-align: center;
	margin-top: 1.107em;
}






#top #content-03{
	padding: 0;
	width: 100%;
	overflow: hidden;
}
#top #content-03 .inner-wrapper{
	position: relative;
    padding: 195px 0 170px;
	display: flex;
	flex-direction: column;
	align-items: center;
}

#top #content-03 .h-box{
	width: 100%;
	max-width: 1240px;
}

#top #content-03 h2{
    width: 530px;
	max-width: 100%;
	aspect-ratio: 530 / 92;
	line-height: 1;
	margin-bottom: 26px;
}

#top #content-03 .sub{
	display: block;
	width: fit-content;
	font-family: "Shippori Mincho", serif;
	font-size: 25px;
	line-height: 1;
	margin-bottom: 75px;
}

.link-01{
	display: block;
	width: fit-content;
	position: absolute;
	top: 284px;
	right: 17.71vw;
}
.link-01 a{
	font-size: 17px;
	line-height: 1;
	display: flex;
    align-items: center;
	gap: 28px;
	position: relative;
}

.link-01 a::after{
	content: '';
	display: block;
	width: 80px;
	aspect-ratio: 1 /1;
	background: url("../images/icon-arrow-circle-orange.svg");
		
}





.top-slider{
	width: 1240px;
	max-width: 100%;
	margin-left: auto;
  margin-right: auto;
	overflow: visible !important;
}


.swiper-slide{
	width: 600px;
}

.swiper-slide .slide-name{
	display: block;
	font-size: 21px;
	line-height: 1;
	margin-top: 35px;
}
.swiper-slide p{
	font-size: 16px;
	line-height: 2.125;
	margin-bottom: 1em;
	margin-top: 1em;
}


.top-slider .swiper-pagination {
  position: absolute;
  bottom: -70px;
  left: 50% !important;
  transform: translateX(-50%);
  width: 100vw !important;
  text-align: center;
  z-index: 5;
}


.top-slider .swiper-pagination-bullet {
  width: 12px;
  height: 12px; 
  margin: 0 9px !important;
  background: #f0f0f0;
  opacity: 1;            
  border-radius: 50%;
  transition: all 0.3s ease;
}

.top-slider .swiper-pagination-bullet-active {
  background: #e62c0f;
  width: 12px; 
}



#top #content-03 .banner-01{
	display: block;
	width: 100%;
	max-width: 1240px;
	aspect-ratio: 1240 / 400;
	margin: 0 auto;
}





#top #content-04{
	padding: 215px 60px 0;
	display: flex;
	flex-direction: column;
	align-items: center;
}
#top #content-04 .inner-wrapper{
	width: 100%;
	max-width: 1400px;
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
}

.news-area{
	width: 100%;
	display: flex;
	justify-content: space-between;
	gap: 6.25vw;
	margin-bottom: 120px;
}

.news-area .inner-left{
	position: relative;
	display: flex;
	flex-direction: column;
	
}

#top #content-04 h2{
    width: 376px;
	max-width: 100%;
	aspect-ratio: 376 / 92;
	line-height: 1;
	margin-bottom: 26px;
}
#top #content-04 .sub{
	display: block;
	width: fit-content;
	font-family: "Shippori Mincho", serif;
	font-size: 25px;
	line-height: 1;
	margin-bottom: 45px;
}

#top #content-04 .link-01{
	position: relative;
	top: unset;
	right: unset;
    align-self: flex-end;
}


.news-area .inner-right{
	width: 100%;
	max-width: 900px;
}





#newsList{
	list-style: none;
}
#newsList li{
	width: 100%;
	border-bottom: solid 1px #eeeff3;
    display: flex;
    flex-direction: column;
    justify-content: center;
	padding: 35px 0;
	position: relative;
}
#newsList li::after{
	content: '';
	display: block;
	background: #e62c0f;
	width: 40px;
	height: 1px;
	position: absolute;
	bottom: 0;
	left: 0;
}



#newsList li a{
    width: fit-content;
}

.date-and-title{
	display: flex;
    margin-bottom: 16px;
	align-items: center;
    gap: 25px;
}

.catName{
	line-height: 1;
    color: #402013;
	background: #faefed;
	height: 26px;
	display: flex;
    justify-content: center;
    align-items: center;
    min-width: 76px;
	padding: 0 10px;
	font-family: "Shippori Mincho", serif;
	font-weight: 400;
	font-size: 16px;
}

.up_ymd{
	display: block;
	font-size: 17px;
	color: #e62c0f;
	font-family: "Shippori Mincho", serif;
	font-weight: 400;
	line-height: 1;
	/*margin-bottom: 16px;*/
}

#newsList li .title{
	display: block;
	font-size: 19px;
	font-weight: 400;
	line-height: 1.632;
}

.sns-area{
	display: flex;
	flex-direction: column;
	align-items: center;
}


.sns-area h3{
	display: block;
	width: fit-content;
	font-family: "Shippori Mincho", serif;
	font-size: 60px;
	font-weight: 400;
	line-height: 1;
	margin-bottom: 45px;
}
.sns-area .text{
	font-size: 19px;
	line-height: 1;
	margin-bottom: 60px;
}

.sns-area .flex-box{
	gap: 20px;
	flex-wrap: wrap;
}

.sns-box{
	width: 590px;
	height: 150px;
	background: #faefed;
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
}

.sns-box .banner-title{
	font-size: 35px;
	line-height: 1;
	font-family: "Shippori Mincho", serif;
	font-weight: 400;
	display: inline-block;
}

.sns-box .mini{
	font-size: 14px;
	line-height: 1;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 400;
	display: inline-block;
}

.sns-box .ex-size{
	font-size: 21px;
	line-height: 1;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 400;
	display: inline-block;
}

.instagram-banner .banner-title{
	margin-right: 10px;
}

.instagram-banner::before{
	content: '';
	display: inline-block;
	width: 90px;
	aspect-ratio: 1 /1;
	background: url("../images/icon-instagram.svg");
	background-size: contain;
	background-repeat: no-repeat;
	margin-right: 22px;
}
.x-banner::before{
	content: '';
	display: inline-block;
	width: 90px;
	aspect-ratio: 1 /1;
	background: url("../images/icon-x.svg");
	background-size: contain;
	background-repeat: no-repeat;
	margin-right: 22px;
}








#top #content-05{
	padding: 180px 60px 180px;
	display: flex;
    flex-direction: column;
    width: 100%;
	position: relative;
	z-index: 2;
}

#top #content-05 .inner-wrapper{
	position: relative;
    width: 100%;
	max-width: 1600px;
}

#top #content-05 .flex-box{
	gap: 5.21vw;
	margin-bottom: 176px;
}

#top #content-05 .inner-left{
	width: 46.88vw;
	max-width: 900px;
	padding-top: 90px;
}


#top #content-05 h2{
    width: 543px;
	max-width: 100%;
	aspect-ratio: 543 / 110;
	line-height: 1;
	margin-bottom: 65px;
	margin-left: 60px;
}

#top #content-05 .inner-right ul{
	list-style: none;
}


#top #content-05 .inner-right ul li{
	width: 100%;
	border-bottom: solid 1px #eeeff3;
    display: flex;
    flex-direction: column;
    justify-content: center;
	padding: 35px 0;
	position: relative;
}
#top #content-05 .inner-right ul li::before{
	content: '';
	display: block;
	background: #e62c0f;
	width: 40px;
	height: 1px;
	position: absolute;
	bottom: 0;
	left: 0;
}


#top #content-05 .inner-right ul li::after{
	content: '';
    display: block;
    width: 80px;
    aspect-ratio: 1 / 1;
    background: url(../images/icon-arrow-circle-orange.svg);
	position: absolute;
    right: 0;
	bottom: 48px;
	pointer-events: none;
}

#top #content-05 .inner-right ul li .sub{
	color: #e62c0f;
	font-size: 15px;
	line-height: 1;
	display: block;
	margin-bottom: 20px;
}

#top #content-05 .inner-right ul li h3{
	font-size: 38px;
	line-height: 1;
	font-family: "Shippori Mincho", serif;
	font-weight: 400;
	margin-bottom: 25px;
}

#top #content-05 .banner-02{
	display: block;
	width: 100%;
	max-width:  800px;
    margin: 0 auto;
}




/* 子ページ共通---------------------------------- */

.child .fv{
	height: auto;
	z-index: 5;
}
.child .fv-wrapper{
	height: auto;
}

.child .logo{
	background-image: url(../images/logo-02.svg);
	z-index: 6;
}

.child #back-mat{
	display: block;
	background: #fff;
    z-index: 1;
	margin-top: -100px;
}

.child .nav-online-shop{
	background: #402013;
}

.child .header-text a{
	color: #402013;
}

.child .header-menu-toggle {
    top: 24px;
}
.child .fixed-buttons{
	top: 30px;
	z-index: 6;
}


.child .fv.is-active .fv-bg {
    filter: none;
    transform: none;
}



.child-header{
	width: 100%;
	height: 800px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	background-size: cover;
	background-position: bottom;
	background-repeat: no-repeat;
    margin-top: 100px;
}

.child-header h1{
	font-family: "Shippori Mincho", serif;
	font-size: 41px;
	font-weight: 500;
	color: #fff;
}

.child .banner-box{
	width: 100%;
	padding: 0 60px;
}

.child .banner-box .banner-02{
	display: block;
	width: 100%;
	max-width:  800px;
    margin: 0 auto 144px;
}


/* コッペ亭について---------------------------------- */

#about .child-header{
	background-image: url("../images/about-header.jpg");
}

#about #content-01 .inner-wrapper{
    padding: 200px 60px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

#about #content-01 h2{
	display: block;
    width: fit-content;
    font-family: "Shippori Mincho", serif;
    font-size: 41px;
    font-weight: 400;
    line-height: 1;
    margin-bottom: 84px;
}

#about #content-01 p{
	font-size: 19px;
	line-height: 1.789;
	margin-bottom: 1.842em;
	text-align: center;
}

#about #content-01 p:last-of-type{
	margin-bottom:4.342em;
}

#about #content-01 img{
	width: 100%;
	max-width: 960px;
}




#about #content-02{
	padding: 0 60px;
}
#about #content-02 .inner-wrapper{
	background: #faefed;
    padding: 215px 60px 200px;
	display: flex;
	flex-direction: column;
	align-items: center;
}

#about #content-02 h2{
    width: 747.8916px;
	max-width: 100%;
	aspect-ratio: 747.8916 / 74.8994;
	line-height: 1;
	margin-bottom: 30px;
}

#about #content-02 .sub{
	display: block;
    width: fit-content;
    font-family: "Shippori Mincho", serif;
    font-size: 23px;
    font-weight: 400;
    line-height: 1;
    margin-bottom: 100px;
}



#about #content-02 ul{
	display: flex;
	flex-direction: column;
}

#about #content-02 ul li{
	display: flex;
	gap: 60px;
	border-bottom: solid 1px #fae6e3;
	padding: 50px 0;
}
#about #content-02 ul li:nth-child(1){
	padding-top: 0;
}
#about #content-02 ul li:last-child{
	border-bottom: none;
}


#about #content-02 ul li .inner-left{
	width: 31.25vw;
	max-width: 600px;
	min-width: 510px;
}
#about #content-02 ul li .inner-right{
	width: 30.21vw;
	max-width: 580px;
    display: flex;
    flex-direction: column;
	justify-content: center;
}

#about #content-02 ul li .number{
	display: block;
    width: fit-content;
    font-family: "Shippori Mincho", serif;
	font-size: 25px;
	line-height: 1;
	color: #e62c0f;
	margin-bottom: 22px;
}

#about #content-02 ul li h3{
	width: fit-content;
	font-family: "Shippori Mincho", serif;
	font-size: 32px;
    font-weight: 400;
	line-height: 1;
	padding-bottom: 20px;
	margin-bottom: 0.727em;
	position: relative;
}
#about #content-02 ul li h3::after{
	content: '';
	display: block;
	width: 40px;
	height: 1px;
	background: #e62c0f;
	position: absolute;
	left: 0;
	bottom: 0;
}

#about #content-02 ul li p{
	font-size: 18px;
	line-height: 1.75;
}


#about #content-03{
	padding: 200px 60px 170px;
	display: flex;
	flex-direction: column;
	align-items: center;
}
#about #content-03 .inner-wrapper{
    padding: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
}

#about #content-03 .flex-box{
	gap: 5.73vw;
}

#about #content-03 .inner-right{
	width: 41.67vw;
	max-width: 800px;
}

#about #content-03 .inner-left{
	width: 30.73vw;
	max-width: 590px;
	padding-top: 4.69vw;
}

#about #content-03 .sub{
	display: block;
	color: #e62c0f;
    width: fit-content;
    font-family: "Shippori Mincho", serif;
    font-size: 17px;
    font-weight: 400;
    line-height: 1;
    margin-bottom: 1.066em;
}

#about #content-03 h2{
	display: block;
    width: fit-content;
    font-family: "Shippori Mincho", serif;
    font-size: 41px;
    font-weight: 400;
    line-height: 1.756;
    margin-bottom: 0.433em;
}

#about #content-03 p{
	 font-size: 18px;
    font-weight: 400;
    line-height: 1.75;
}


/* 商品のご紹介---------------------------------- */

#item .child-header{
	background-image: url("../images/item-header.jpg");
}

#item #content-01 .inner-wrapper{
    padding: 200px 60px 170px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

#item #content-01 .item-list{
	width: 100%;
	max-width: 1240px;
	display: flex;
	flex-direction: column;
	gap: 120px;
}
#item #content-01 .item-list li{
	display: flex;
	justify-content: space-between;
}
#item #content-01 .item-list li .inner-left{
	width: 640px;
}
#item #content-01 .item-list li .inner-right{
	width: 540px;
}
#item #content-01 .item-list li .sub {
    color: #e62c0f;
	font-family: "Shippori Mincho", serif;
    font-size: 15px;
    line-height: 1;
    display: block;
    margin-bottom: 20px;
	margin-top: 20px;
}
#item #content-01 .item-list li h2{
	font-family: "Shippori Mincho", serif;
    font-size: 38px;
	font-weight: 400;
    line-height: 1;
    display: block;
    margin-bottom: 25px;
}
#item #content-01 .item-list li p{
	font-size: 18px;
	margin-bottom: 35px;
}
#item #content-01 .item-list li .allergen{
	background: #faefed;
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 40px;
}
#item #content-01 .item-list li .allergen span{
	font-size: 17px;
    display: block;
}
#item #content-01 .item-list li .button{
	background: #e62c0f;
	width: 260px;
    height: 50px;
    border: solid 1px #fff;
    border-radius: 25px;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
	font-size: 15px;
    font-weight: 400;
	margin-top: 40px;
}
#item #content-01 .item-list li .button::before {
    content: '';
    display: block;
    width: 24px;
    height: 20px;
    background-image: url(../images/icon-cart.svg);
    background-size: contain;
    background-repeat: no-repeat;
    margin-right: 8px;
}

/* 店舗情報---------------------------------- */

#shop .child-header{
	background-image: url("../images/shop-header.jpg");
}

#shop #content-01 .inner-wrapper{
    padding: 200px 60px 170px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}


#shop #content-01 h2{
    width: 289.5px;
	max-width: 100%;
	aspect-ratio: 289.5 / 77;
	line-height: 1;
	margin-bottom: 30px;
}
#shop #content-01 .sub {
    display: block;
    width: fit-content;
    font-family: "Shippori Mincho", serif;
    font-size: 23px;
    font-weight: 400;
    line-height: 1;
    margin-bottom: 65px;
}

#shop #content-01 .inner-wrapper > p{
	font-size: 19px;
}

    .tab-input { display: none; }

    .tab-content { display: none; }

    #tab1:checked ~ .content-group #content1,
    #tab2:checked ~ .content-group #content2,
    #tab3:checked ~ .content-group #content3,
    #tab4:checked ~ .content-group #content4 {
      display: block;
    }

    #tab1:checked ~ .button-group [for="tab1"],
    #tab2:checked ~ .button-group [for="tab2"],
    #tab3:checked ~ .button-group [for="tab3"],
    #tab4:checked ~ .button-group [for="tab4"] {
      background: #e62c0f;
		color: #fff;
    }

.button-group{
	display: flex;
	gap: 20px;
	max-width: 636px;
	margin-top: 75px;
	margin-bottom: 10px;
}
.button-group label{
	background: #faefed;
	width: 144px;
	height: 40px;
	display: flex;
	justify-content: center;
	align-items: center;
	transition: 0.3s;
	font-family: "Shippori Mincho", serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1;
	cursor: pointer;
}
.button-group label:hover{
	background: #e62c0f;
    color: #fff;
}

.tab-content{}


.area-wrapper{
	padding-top: 60px;
}

.area-wrapper h3{
	font-family: "Shippori Mincho", serif;
    font-size: 31px;
    font-weight: 400;
    line-height: 1;
	padding-bottom: 18px;
	border-bottom: solid 1px #eeeff3;
	position: relative;
}
.area-wrapper h3::before{
	content: '';
    display: block;
    width: 40px;
    height: 1px;
    background: #e62c0f;
    position: absolute;
    left: 0;
    bottom: 0;
}

.area-wrapper ul{
	list-style: none;
	display: flex;
	flex-direction: column;
}

.area-wrapper ul li{
	display: flex;
	gap: 60px;
	padding: 60px 0;
	border-bottom: solid 1px #eeeff3;
}

.area-wrapper ul li .inner-left{
	width: 550px;
	height: 450px;
	background-color: #eeeff3;
}

.area-wrapper ul li .inner-right{
	width: 350px;
	display: flex;
    flex-direction: column;
    justify-content: center;
}

.area-wrapper ul li .inner-right .inner-box{
	display: block;
}

.area-wrapper h4{
    font-size: 21px;
    font-weight: 400;
    line-height: 1;
	padding-bottom: 20px;
	border-bottom: solid 1px #eeeff3;
	position: relative;
}
.area-wrapper h4::before{
	content: '';
    display: block;
    width: 40px;
    height: 1px;
    background: #e62c0f;
    position: absolute;
    left: 0;
    bottom: 0;
}

.area-wrapper ul li .inner-right p{
	font-size: 17px;
	line-height: 1.75;
	margin-top: 1.5em;
	margin-bottom: 1.5em;
}
.area-wrapper ul li .inner-right p:last-of-type{
	margin-bottom: 0;
}





/* 会社概要---------------------------------- */

#overview .child-header{
	background-image: url("../images/overview-header.jpg");
}

#overview #content-01 .inner-wrapper{
    padding: 200px 60px 170px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

.overview-table {
        width: 100%;
        max-width: 800px;
        border-collapse: collapse;
        font-size: 16px;
        color: #402013;
        }

.overview-table tr {
    height: 70px;
}

.overview-table th,
.overview-table td {
    padding: 25px;
    border: 1px solid #eeeff3;
    box-sizing: border-box;
    vertical-align: middle;
}

.overview-table th {
    width: 240px;
    background-color: #f7f7f7;
    text-align: left;
    font-weight: 400;
}

.overview-table td {
    background-color: #fff;
}




/* お知らせ---------------------------------- */

#news .child-header{
	background-image: url("../images/news-header.jpg");
}

#news #content-01{
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

#news #content-01 .inner-wrapper{
	width: 100%;
	max-width: 960px;
    padding: 170px 60px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}
#news .post-wrapper{
	width: 100%;
}

.pager{
	display: flex;
	justify-content: center;
    align-items: center;
	gap: 70px;
	position: relative;
	width: 100%;
	max-width: 526px;
    margin: 112px auto 0;
}
.pager a{
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 18px;
	color: #e62c0f;
	width: 50px;
	height: 50px;
	border-radius: 50%;
	
}
.pager a.current{
	color: #402013;
}

.custom-pager .page-numbers{
	display: flex;
	justify-content: center;
    align-items: center;
	gap: 30px;
    list-style: none;
}

.pager-link{
	cursor: pointer;
}

.pager-link.current{
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 18px;
	color: #333;
	width: 50px;
	height: 50px;
	border-radius: 50%;
	pointer-events: none;
	cursor: inherit;
}


.pager .button-next,
.pager .button-prev{
	width: 40px;
	cursor: pointer;
	position: relative;
}

.pager .button-prev img{
	transform: rotate(-180deg);
}

/*.pager .button-next .bg-layer,
.pager .button-prev .bg-layer{
	width: 100%;
	height: 100%;
	position: relative;
	
}*/

.custom-pager .button-prev img,
.custom-pager .button-next img{
  display: block;
  min-width: 40px;
}


/*新着情報（詳細ページ）---------------------------------- */


#news.news-detail .inner-wrapper{
	padding-bottom: 145px;
}


#news.news-detail .container{
	width: 100%;
}

#news.news-detail .detailText span,
#news.news-detail .detailText p{
	display: block;
	margin-bottom: 30px;
	font-size: 18px!important;
	font-weight: 400;
}

#news.news-detail .news-header{
	border-bottom: solid 1px #eeeff3;
	position: relative;
	padding-bottom: 35px;
	margin-bottom: 50px;
}
#news.news-detail .news-header::after {
    content: '';
    display: block;
    background: #e62c0f;
    width: 40px;
    height: 1px;
    position: absolute;
    bottom: 0;
    left: 0;
}


#news.news-detail .date-and-title{
	margin-bottom: 28px;
}


#news.news-detail #up_ymd {
    display: block;
    font-size: 17px;
    color: #e62c0f;
    font-family: "Shippori Mincho", serif;
    font-weight: 400;
    line-height: 1;
}
#news.news-detail #catName {
    line-height: 1;
    color: #402013;
    background: #faefed;
    height: 26px;
    display: flex;
    justify-content: center;
    align-items: center;
    min-width: 76px;
    padding: 0 10px;
    font-family: "Shippori Mincho", serif;
    font-weight: 400;
    font-size: 16px;
}



#news.news-detail .news-header h2{
	font-size: 27px;
	line-height: 1.148;
	font-weight: 400;
}


#news.news-detail #detail{
	    display: flex;
    flex-direction: column-reverse;
}



#news.news-detail .detailUpfile{
	padding-top: 30px;
	margin-bottom: 30px;
}




#news.news-detail .button-container{
	display: none;
	    /*display: flex;
    justify-content: center;*/
}






/* レスポンシブ---------------------------------- */

@media (min-width: 1921px) {}

@media (max-width: 1919px) {}

@media (max-width: 1870px) {
	#top #content-01 .text-box{
		padding-left: 0;
	}
	#top #content-01 .inner-wrapper > img:nth-of-type(1){
		width: 48.44%;
        right: 3.21vw;
	}
	#top #content-01 .inner-wrapper > img:nth-of-type(2){
		margin-left: 3.21vw;
	}
}


@media (max-width: 1780px) {
	
	
	#top #content-01 .inner-wrapper > img:nth-of-type(1){
		top: 180px;
	}
	
	#top #content-03 .inner-wrapper{
		padding-bottom: 300px;
	}
	
	
	
	
}

@media (max-width: 1499px) {
	
	#menuText{
		display: none;
	}
	
	
	.fv-inner{
		position: relative;
		width: 100%;
        height: 100vh;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        gap: 5.34vw;
		padding-top: 120px;
	}
	
	.fv-title{
        position: relative;
        left: unset;
        top: unset;
        transform: none;
		width: calc(100% - 13.34vw);
		display: flex;
        justify-content: center;
	}
	
	.fv-title h1{
		font-size: clamp(30px,5.6vw,84px);
	}
	
	
	.fv-text {
        position: relative;
        right: unset;
        top: unset;
        max-width: 923px;
        opacity: 0;
        transform: none;
		width: calc(100% - 13.34vw);
	}
	
	.fv.is-active .fv-text{
		transform: none;
	}
	
	.fv-button{
		margin-top: 30px;
	}
	
	.fv-button a::after{
        width: 60px;
	}
	
	.child .fv-inner{
		height: auto;
		display: block;
		padding-top: 0;
	}
	
	
	
	#about #content-02 ul li{
		flex-direction: column;
	}
	#about #content-02 ul li .inner-left,
	#about #content-02 ul li .inner-right{
		width: 100%;
		min-width: unset;
	}
	#about #content-03 .flex-box{
        flex-direction: column-reverse;
	}
	#about #content-03 .inner-right,
	#about #content-03 .inner-left{
		width: 100%;
        max-width: 800px;
	}
	
}

@media (max-width: 1380px) {
	
	#top #content-01 .inner-wrapper{
		display: flex;
        flex-direction: column;
        align-items: center;
	}
	
	#top #content-01 .text,
	#top #content-01 .tugline{
		text-align: center;
	}
	
	#top #content-01 .inner-wrapper > img:nth-of-type(1){
		position: relative;
		top: unset;
        margin-bottom: 40px;
		width: 100%;
        right: 0;
	}
	#top #content-01 .text-box{
		display: flex;
        flex-direction: column;
        align-items: center;
	}
	

	#top #content-01 .inner-wrapper > img:nth-of-type(2){
        width: 100%;
		margin-left: 0;
	}
	
	#top #content-02{
		margin-top: 80px;
	}
	#top #content-02 .inner-wrapper{
		    padding: 160px 60px;
	}
	
	#top #content-02 ul{
		justify-content: space-between;
        flex-direction: column;
        align-items: center;
        gap: 40px;
        margin-top: 40px;
	}
	
	#top #content-03 .h-box{
        display: flex;
        flex-direction: column;
        align-items: center;
	}
	#top #content-03 .link-01{
		top: unset;
        bottom: 80px;
		right: unset;
        left: 50%;
        transform: translateX(-50%);
	}
	
	
	.news-area{
		flex-direction: column;
        align-items: center;
		position: relative;
        gap: 40px;
        padding-bottom: 140px;
	}
	.news-area .inner-left {
		position: static;
		align-items: center;
	}
	#top #content-04 .link-01 {
        position: absolute;
		bottom: 0;
		right: 0;
	}
	.news-area .inner-right{
		max-width: unset;
	}
	
	.sns-area .flex-box{
        flex-direction: column;
        align-items: center;
	}
	.sns-area,
	.sns-area .flex-box{
		width: 100%;
	}
	.sns-box{
        width: 100%;
        max-width: 590px;
		justify-content: flex-start;
		padding-left: 70px;
	}
	
	#top #content-05 h2{
		margin-left: 0;
	}
	
	#top #content-05 .flex-box{
		flex-direction: column;
        align-items: center;
	}
	#top #content-05 .flex-box .inner-right{
        width: 100%;
        display: flex;
        flex-direction: column;
        align-items: center;
	}
	#top #content-05 .inner-right ul{
		width: 100%;
	}
	#top #content-05 .inner-left{
        padding-top: 0;
	}
	
	.child-header{
		height: 43.48vw;
		min-height: 300px;
	}
	
	#item #content-01 .item-list li{  
		flex-direction: column;
    }
	#item #content-01 .item-list{
		align-items: center;
	}
	#item #content-01 .item-list li .inner-left,
	#item #content-01 .item-list li .inner-right {
    width: 100%;
    max-width: 640px;
    }
	#item #content-01 .item-list li .button{
    margin-right: auto;
    margin-left: auto;
	}
}



@media (max-width: 1080px){
	
	.content-group{
		width: 100%;
		max-width: 636px;
	}
	
	.area-wrapper ul li{
		flex-direction: column-reverse;
		gap: 30px;
		margin-bottom: 40px;
		border-bottom: none;
	}
	.area-wrapper ul li .inner-right,
	.area-wrapper ul li .inner-left{
		width: 100%;
	}
}


@media (max-width: 960px) {
	
	.logo{
		width: 132px;
        top: 42px;
	}
	.header-logo {
		width: 220px;
	}
	
	#top #content-03 .banner-01{
		padding-right: 60px;
		padding-left: 60px;
	}
	#top #content-01 .inner-wrapper > img:nth-of-type(1),
	#top #content-01 .inner-wrapper > img:nth-of-type(2){
		width: 100%;
		max-width: unset;
	}
	#top #content-05 .inner-left{
        width: 100%;
		margin-bottom: 40px;
	}

}





@media (max-width: 768px) {
	
	
	.header-inner{
		padding: 0px 138px 0 30px;
	}
	.header-menu-toggle{
		width: 40px;
		top: 20px;
		right: 30px;
        padding: 0 10px;
	}
	
	
	.logo{
        left: 30px;
		top: 20px;
	}
	
	
	#online-shop{
		display: none;
	}
	
	#item #content-01 .inner-wrapper,
	#shop #content-01 .inner-wrapper,
	#about #content-01 .inner-wrapper,
	#top #content-03 .banner-01,
	#top #content-05,
	#top #content-04,
	#top #content-01{
		padding-right: 30px;
		padding-left: 30px;
	}
	
	#top #content-01{
		padding-top: 80px;
	}
	
	#about #content-02,
	#top #content-02{
		padding-right: 0;
		padding-left: 0;
	}
	
	
	
	.fv-text p{
		font-size: 16px;
	}
	
	.fv-button {
        margin-top: 0;
    }
	
	.fv-button a::after{
        width: 60px;
	}
	
	#top #content-01 .sub{
		margin-bottom: 1.243em;
	}
	
	#top #content-01 .tugline{
		font-size: clamp(27px,5.34vw,41px)
	}

	#top #content-01 .text {
		font-size: 16px;
		text-align: left;
	}
	#top #content-01 .text br{
		display: none;
	}
	#top #content-01 .text-box{
		margin-bottom: 40px;
	}
	
	#about #content-02 .inner-wrapper,
	#top #content-02 .inner-wrapper {
        padding: 60px 30px;
    }
	#top #content-02 ul li{
		max-width: 90%;
	}
	#top #content-02 ul h3{
        font-size: 26px;
	}
	#top #content-02 ul .text{
		font-size: 14px;
	}
	#top #content-02 ul li::before{
        top: -24px;
        left: -24px;
	}
	#top #content-02 ul .number{
        margin-bottom: 18px;
	}
	#top #content-02 .sub{
		margin-bottom: 50px;
	}
	
	.swiper-slide{
		max-width: 600px;
    }
	#top #content-03 .inner-wrapper{
		padding: 80px 30px 200px;
	}
	.swiper-slide .slide-name{
		font-size: 18px;
	}
	.swiper-slide p{
		font-size: 14px;
	}
	.link-01 a::after{
        width: 40px;
	}
	.link-01 a{
		gap: 10px;
	}
	
	.news-area{
        padding-bottom: 100px;
	}
	
	.news-area .inner-left{
		width: 100%;
	}
	
	#top #content-03 .link-01{
        bottom: 50px;
	}
	#top #content-04{
		padding-top: 80px;
	}
	
	#top #content-04 .sub{
		margin-bottom: 0;
	}
	
	#newsList li .title{
		font-size: 16px;
	}
	
	#top #content-05{
		padding-top: 100px;
		padding-bottom: 100px;
	}
	
	#top #content-05 .flex-box{
		margin-bottom: 80px;
	}
	#top #content-05 .inner-right ul li::after{
		width: 40px;
		bottom: unset;
        top: 50px;
	}
	#top #content-05 .inner-right ul li h3{
		font-size: 30px;
	}
	#top #content-05 h2{
        margin-bottom: 40px;
	}
	
	.sns-area h3{
        font-size: 50px;
	}
	
	.sns-area .text {
		font-size: 16px;
		line-height: 1.789;
	}
	.sns-box{
		justify-content: center;
        padding-left: 0;
        height: 130px;
	}
	.sns-box > div{
		display: flex;
        flex-direction: column;
        gap: 20px;
	}
	.sns-box .banner-title {
		font-size: 30px;
	}
	.x-banner::before,
	.instagram-banner::before{
		width: 70px;
	}
	
	#shop #content-01 h2,
	#top #content-05 h2,
	#top #content-04 h2,
	#top #content-03 h2,
	#top #content-02 h2,
	#top #content-01 h2{
		height: 41.86px;
        width: auto;
	}
	
	.f-logo {
		width: 118.8118px;
	}
	.sns-wrapper a{
		width: 40px;
	}
	footer small{
		font-size: 12px;
	}
	
	.child .header-menu-toggle {
        top: 30px;
    }
	
	.child-header h1{
		font-size: clamp(27px, 5.34vw, 41px);
	}
	
	#about #content-01 .inner-wrapper{
		padding-top: 80px;
		padding-bottom: 80px;
	}
	
	#about #content-01 h2{
		font-size: clamp(32px, 5.34vw, 41px);
		line-height: 1.6;
		text-align: center;
		margin-bottom: 0.89em;
	}
	#about #content-01 h2 span{
		display: inline-block;
	}
	#about #content-01 p{
        text-align: left;
	}
	#about #content-01 p br{
		display: none;
	}
	
	#about #content-02 .sub{
		margin-bottom: 50px;
	}
	
	#about #content-02 ul li h3{
        font-size: 26px;
	}
	
	#about #content-03{
        padding: 80px 30px 80px;
	}
	
	#about #content-03 h2{
		font-size: clamp(30px, 5.34vw, 41px);
		line-height: 1.6;
		margin-bottom: 0.89em;
	}
	.child .banner-box{
        padding: 0 30px;
	}
	
	.button-group{
		width: 100%;
		flex-wrap: wrap;
		margin-top: 40px;
	}
	.button-group label{
        width: calc(100% / 2 - 10px);
	}
	#shop #content-01 .inner-wrapper{
		padding-top: 80px;
		padding-bottom: 80px;
	}
	.area-wrapper h3{
		font-size: 26px;
	}
	.area-wrapper ul li .inner-right p {
		font-size: 16px;
	}
	
	.overview-table th,
	.overview-table td{
		display: block;
        width: 100%;
	}
	#overview #content-01 .inner-wrapper{
		padding: 80px 30px 80px;
	}
	
	.custom-pager .page-numbers{
		gap: 10px;
	}
	.pager{
		gap: 20px;
	}
	
	#news #content-01 .inner-wrapper{
		    padding: 80px 30px;
	}
	
	#item #content-01 .inner-wrapper{
		    padding: 80px 30px;
	}
	
	#item #content-01 .item-list li h2{
		font-size: 28px;
	}
	#item #content-01 .item-list li p{
		font-size: 16px;
	}
	#item #content-01 .item-list li .allergen span {
		font-size: 14px;
	}
	
}





[id]{
	scroll-margin-top: 200px;
}


li:has(.nav-online-shop) {
	display: none!important;
}

#top #content-02{
	display: none!important;
}
.header-nav ul li:nth-child(1),
.header-text ul li:nth-child(1){
	display: none!important;
}

#item #content-01 .item-list li .button{
	display: none!important;
}












