*,
*::after,
*::before {
	box-sizing: border-box;
	word-wrap: break-word;
}

html,
body,
h1,
h2,
h3,
h4,
h5,
h6,
ul,
ol,
dl,
li,
dt,
dd,
p,
div,
span,
img,
a,
table,
tr,
th,
td,
small,
button,
time,
figure {
	margin: 0;
	padding: 0;
	border: 0;
	font: inherit;
	font-size: 100%;
	color: inherit;
	vertical-align: baseline;
}

header,
footer,
nav,
section,
article,
aside,
figure,
figcaption {
	display: block;
}

body {
	line-height: 1;
}

ol,
ul {
	list-style: none;
	list-style-type: none;
}

a {
	text-decoration: none;
	cursor: pointer;
}

img {
	width: 100%;
	height: auto;
	vertical-align: bottom;
}

html {
	font-size: 0.0694444444vw;
}

body {
	color: #53473E;
	font-family: "Zen Old Mincho", serif;
	font-size: 18rem;
	font-weight: 500;
	line-height: 1.6;
	background: #FFFEFA;
	position: relative;
}

html.is-active,
body.is-active {
	overflow: hidden;
}

[id] {
	scroll-margin-top: 120rem;
}

.page-top {
	padding-top: 120rem;
}

.inner {
	width: 1000rem;
	margin-inline: auto;
}

.section-title__wrap {
	width: -moz-fit-content;
	width: fit-content;
	position: relative;
}

.section-title {
	display: inline-block;
	font-size: 32rem;
	font-weight: 700;
	line-height: 1.5;
}

.section-title__sub {
	min-width: -moz-max-content;
	min-width: max-content;
	font-family: "Raleway", sans-serif;
	font-size: 120rem;
	font-weight: 500;
	line-height: normal;
	letter-spacing: 0.05em;
	text-transform: capitalize;
	opacity: 0.15;
	position: absolute;
	top: 40%;
	left: 55%;
	translate: 0 -50%;
}

.text-frame {
	position: relative;
}

.text-frame::after {
	content: "";
	width: 100%;
	height: 100%;
	background: url(../img/text-frame.svg) no-repeat center center/contain;
	position: absolute;
	top: 0;
	left: 0;
}

.text-frame > div {
	width: 100%;
	height: 100%;
	background: url(../img/text-mask.svg) no-repeat center center/contain;
	-webkit-mask: url(../img/text-mask.svg) no-repeat center/contain;
	mask: url(../img/text-mask.svg) no-repeat center/contain;
}

.text-frame2 {
	position: relative;
}

.text-frame2::after {
	content: "";
	width: 100%;
	height: 100%;
	background: url(../img/text-frame-2.svg) no-repeat center center/contain;
	position: absolute;
	top: 0;
	left: 0;
}

.text-frame2 > div {
	width: 100%;
	height: 100%;
	background: url(../img/text-mask-2.svg) no-repeat center center/contain;
	-webkit-mask: url(../img/text-mask-2.svg) no-repeat center/contain;
	mask: url(../img/text-mask-2.svg) no-repeat center/contain;
}

.btn {
	display: flex;
	align-items: center;
	justify-content: right;
	gap: 24rem;
	width: 382rem;
	height: 67rem;
	margin-inline: auto;
	border-radius: 50rem;
	border: #8B7D6E 1rem solid;
	background: #8B7D6E;
	padding-inline: 30rem;
	color: #fff;
	font-weight: 700;
	line-height: 1.5;
	transition: all 0.3s ease;
}

.btn::after {
	content: "";
	width: 24rem;
	aspect-ratio: 1/1;
	background-color: #FFFFFF;
	-webkit-mask: url(../img/arrow-right.svg) no-repeat center/contain;
	mask: url(../img/arrow-right.svg) no-repeat center/contain;
	transition: all 0.3s ease;
}

.btn.--none {
	justify-content: center;
}

.btn.--none::after {
	display: none;
}

.js-fadeIn.--up {
	opacity: 0;
	translate: 0 10rem;
	transition: all 1s ease;
}

.js-fadeIn.--up.is-active {
	opacity: 1;
	translate: 0;
}

.js-fadeIn.--fade {
	opacity: 0;
	transition: all 2s ease;
}

.js-fadeIn.--fade.is-active {
	opacity: 1;
}

.js-fadeIn.--parent .js-fadeIn {
	opacity: 0;
	translate: 0 10rem;
	transition: all 1s ease;
}

.js-fadeIn.--parent .js-fadeIn.is-active {
	opacity: 1;
	translate: 0;
}

.js-fadeIn.--parent .js-fadeIn.--1 {
	transition: all 1s ease;
}

.js-fadeIn.--parent .js-fadeIn.--2 {
	transition: all 1s ease 0.5s;
}

.js-fadeIn.--parent .js-fadeIn.--3 {
	transition: all 1s ease 1s;
}

.js-fadeIn.--parent .js-fadeIn.--4 {
	transition: all 1s ease 1.5s;
}

.to-top__wrap.--top {
	padding-block: 40rem 60rem;
}

.to-top__wrap.--program {
	padding-block: 40rem 100rem;
}

.to-top__wrap.--recipe {
	padding-block: 60rem 37rem;
}

.to-top__wrap.--archive {
	padding-block: 60rem 36rem;
}

.to-top__wrap.--single {
	padding-block: 66rem 31rem;
}

.to-top__wrap.--privacy-policy {
	padding-block: 74rem 40rem;
}

.to-top__wrap.--contact {
	padding-block: 60rem 100rem;
}

.to-top__inner {
	text-align: right;
}

.to-top {
	display: inline-flex;
	flex-direction: column;
	gap: 5rem;
	align-items: center;
	color: #704337;
	font-family: "Raleway", sans-serif;
	font-size: 12rem;
	line-height: normal;
	letter-spacing: 0.2em;
}

.to-top::before {
	content: "";
	width: 10rem;
	aspect-ratio: 1/1;
	background: url(../img/arrow-top.svg) no-repeat center center/contain;
}

.breadcrumb {
	margin-top: 7rem;
}

.breadcrumb__inner {
	display: flex;
	align-items: center;
	gap: 6rem;
	font-family: "Zen Maru Gothic", sans-serif;
	font-size: 15rem;
}

.breadcrumb__inner a {
	transition: all 0.3s ease;
}

.breadcrumb__inner > span {
	color: #B59B91;
}

.breadcrumb__inner > span > a {
	color: #704337;
}

.breadcrumb__arrow {
	display: inline-block;
	width: 19rem;
	aspect-ratio: 19/3;
	background: url(../img/breadcrum-arrow.svg) no-repeat center center/contain;
	margin-top: 2rem;
}

.header {
	width: 100%;
	background: rgba(253, 251, 247, 0.4);
	-webkit-backdrop-filter: blur(15rem);
	backdrop-filter: blur(15rem);
	position: fixed;
	top: 0;
	left: 0;
	z-index: 20;
}

.header__inner {
	width: 1320rem;
	margin-inline: auto;
	display: flex;
	justify-content: space-between;
	align-items: end;
	padding-block: 5rem;
}

.header__logo a {
	display: block;
	width: 320rem;
	aspect-ratio: 346/95;
}

.header__menu {
	position: relative;
}

.header__menuTitle {
	display: none;
}

.header__menuTitle img {
	width: 130rem;
	aspect-ratio: 130/123;
}

.header__menuTitle::after {
	content: "";
	width: 100%;
	height: 2rem;
	border-radius: 1rem;
	background: url(../img/line-parts.svg) repeat-x center center/12rem 2rem;
	position: absolute;
	left: 0;
	bottom: 0;
}

.header__nav {
	display: flex;
	gap: 60rem;
}

.header__list {
	position: relative;
}

.header__list > a {
	height: 36rem;
	display: flex;
	gap: 8rem;
	align-items: center;
	color: #704337;
	font-size: 20rem;
	font-weight: 700;
	line-height: 1.5;
	transition: all 0.3s ease;
}

.header__list.--program > a::before {
	content: "";
	width: 36rem;
	height: 36rem;
	background: url(../img/pc-icon.svg) no-repeat center center/contain;
}

.header__list.--program > a::after {
	content: "";
	width: 12rem;
	height: 10rem;
	background: url(../img/down-arrow.svg) no-repeat center center/contain;
	transition: all 0.3s ease;
	display: none;
}

.header__list.--recipe > a::before {
	content: "";
	width: 36rem;
	height: 36rem;
	background: url(../img/book-icon.svg) no-repeat center center/contain;
}

.header__list.--works > a::before {
	content: "";
	width: 48rem;
	height: 26rem;
	background: url(../img/star-icon.svg) no-repeat center center/contain;
}

.header__list.--blog > a::before {
	content: "";
	width: 36rem;
	height: 36rem;
	background: url(../img/blog-icon.svg) no-repeat center center/contain;
}

.header__list::after {
	content: "";
	width: 0;
	height: max(1px, 1rem);
	background: #53473E;
	position: absolute;
	bottom: 0;
	left: 0;
}

.header__list.--program .sub-menu {
	min-width: -moz-max-content;
	min-width: max-content;
	padding: 16rem;
	display: grid;
	gap: 16rem;
	background: rgba(253, 251, 247, 0.9);
	position: absolute;
	top: calc(100% + 5rem);
	left: 50%;
	translate: -50% -10%;
	opacity: 0;
	visibility: hidden;
	transition: all 0.3s ease;
	display: none;
}

.header__subMenuBg {
	width: 208rem;
	height: 80rem;
	background: rgba(253, 251, 247, 0.4);
	-webkit-backdrop-filter: blur(15rem);
	backdrop-filter: blur(15rem);
	position: fixed;
	top: 175rem;
	left: 640rem;
	z-index: 9;
	translate: -50% -10%;
}

.header__list .menu-item {
	width: 100%;
}

.header__list .menu-item > a {
	width: 100%;
	display: flex;
	justify-content: center;
	color: #704337;
	font-family: "Zen Maru Gothic", sans-serif;
	font-size: 16rem;
	font-weight: 500;
	line-height: 1.5;
	transition: all 0.3s ease;
}

.header__snsWrap {
	display: flex;
	align-items: center;
	gap: 24rem;
	position: absolute;
	bottom: calc(100% + 15rem);
	right: 0;
}

.header__sns {
	transition: all 0.3s ease;
}

.header__sns img {
	width: 24rem;
	aspect-ratio: 1/1;
}

.header__snsTitle {
	display: none;
}

.header__drawer {
	display: none;
	width: 40rem;
	height: 40rem;
	position: relative;
}

.header__drawerIcon {
	width: 30rem;
	height: 15rem;
	position: absolute;
	top: 50%;
	left: 50%;
	translate: -50% -50%;
}

.header__drawerBar {
	width: 100%;
	height: 3rem;
	background: #704337;
	border-radius: 10rem;
	position: absolute;
	left: 50%;
	translate: -50%;
	transition: all 0.3s ease;
}

.header__drawerBar.--1 {
	top: 0;
}

.header__drawerBar.--2 {
	bottom: 0;
}

.header__drawer.is-active .header__drawerBar.--1 {
	top: 50%;
	translate: -50% -50%;
	rotate: -45deg;
}

.header__drawer.is-active .header__drawerBar.--2 {
	bottom: 50%;
	translate: -50% 50%;
	rotate: 45deg;
}

.footer {
	color: #fff;
	background: #8d7b77;
	padding-block: 100rem 40rem;
}

.footer a {
	transition: all 0.3s ease;
}

.footer__inner {
	width: 1000rem;
	margin-inline: auto;
}

.footer__logo a {
	display: block;
	width: 139rem;
	aspect-ratio: 139/130;
	margin-inline: auto;
}

.footer__menu {
	display: flex;
	justify-content: space-between;
	margin-top: 40rem;
}

.footer__nav {
	width: 715rem;
	height: 98rem;
	display: grid;
	grid-template-areas: "list1 list2 list5" "list1 list3 list6" "list1 list4 .";
	gap: 16rem 185rem;
}

.footer__list {
	width: -moz-fit-content;
	width: fit-content;
	font-family: "Zen Maru Gothic", sans-serif;
	font-size: 15rem;
	line-height: 1.4666666667;
}

.footer__list > a {
	display: inline-block;
}

.footer__list:nth-of-type(1) {
	grid-area: list1;
}

.footer__list:nth-of-type(2) {
	grid-area: list2;
}

.footer__list:nth-of-type(3) {
	grid-area: list3;
}

.footer__list:nth-of-type(4) {
	grid-area: list4;
}

.footer__list:nth-of-type(5) {
	grid-area: list5;
}

.footer__list:nth-of-type(6) {
	grid-area: list6;
}

.footer__list .sub-menu {
	margin-top: 16rem;
	display: grid;
	gap: 4rem;
}

.footer__list .sub-menu a {
	font-size: 14rem;
	font-weight: 400;
}

.footer__snsWrap {
	display: flex;
	flex-direction: column;
	gap: 16rem;
	order: -1;
}

.footer__sns {
	display: flex;
	align-items: center;
	gap: 16rem;
	font-family: "Zen Maru Gothic", sans-serif;
	font-size: 15rem;
	line-height: 1.4666666667;
}

.footer__sns::before {
	content: "";
	width: 20rem;
	aspect-ratio: 1/1;
	background: no-repeat center center/contain;
}

.footer__sns.--line::before {
	background-image: url(../img/line-icon-white.svg);
}

.footer__sns.--instagram::before {
	background-image: url(../img/instagram-icon-white.svg);
}

.footer__sns.--tiktok::before {
	background-image: url(../img/tiktok-icon-white.svg);
}

.footer__privacypolicy {
	font-family: "Zen Maru Gothic", sans-serif;
	display: block;
	width: -moz-fit-content;
	width: fit-content;
	font-size: 14rem;
	font-weight: 400;
	line-height: normal;
	margin-left: auto;
	margin-top: 40rem;
}

.footer__copyright {
	font-family: "Zen Maru Gothic", sans-serif;
	font-size: 12rem;
	font-weight: 400;
	line-height: normal;
	text-align: center;
	margin-top: 40rem;
}

.top {
	overflow: hidden;
}

.top__top {
	padding-top: 120rem;
	background: #FFFEFA url(../img/top-bg1.webp) no-repeat top center/cover;
}

.fv {
	padding-top: 31rem;
}

.fv__main {
	width: 1154rem;
	aspect-ratio: 1154/628;
	margin-inline: auto;
	position: relative;
}

.fv__title {
	display: flex;
	flex-direction: column;
	align-items: start;
	gap: 11rem;
	position: absolute;
	bottom: 144rem;
	left: 77rem;
	z-index: 2;
}

.fv__title span {
	display: inline-block;
	color: #704337;
	font-size: 32rem;
	font-weight: 500;
	line-height: normal;
	padding-block: 2rem;
	padding-inline: 8rem;
	background: rgba(255, 255, 255, 0.85);
}

.fv__img.--1 {
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

.fv__img.--2 {
	display: none;
}

.fv__lead {
	margin-top: 100rem;
}

.fv__inner {
	width: 768rem;
	margin-inline: auto;
}

.fv__leadTitle {
	color: #704337;
	font-size: 24rem;
	font-weight: 700;
	line-height: 1.8;
}

.fv__leadText {
	display: flex;
	flex-direction: column;
	gap: 24rem;
	font-weight: 600;
	line-height: 1.8;
	letter-spacing: 0.03em;
	margin-top: 40rem;
}

.top-contents {
	margin-top: 120rem;
}

.top-contents__content {
	margin-top: 60rem;
}

.top-contents__main::-webkit-scrollbar {
	display: block;
	background: url(../img/line-parts-2.svg) repeat-x center center/18rem 1.5rem;
	border-radius: 10rem;
	height: 5rem;
	opacity: 0.7;
}

.top-contents__main::-webkit-scrollbar-thumb {
	background-color: #B59B91;
	border-radius: 10rem;
}

.top-contents__itemWrap {
	display: flex;
	justify-content: space-around;
	position: relative;
	z-index: 5;
}

.top-contents__item {
	display: grid;
	grid-template-rows: subgrid;
	grid-row: span 4;
	text-align: center;
}

.top-contents__item.--1 {
	width: 247rem;
}

.top-contents__item.--2 {
	width: 269rem;
	margin-left: 40rem;
}

.top-contents__item.--3 {
	width: 308rem;
}

.top-contents__point {
	width: 100%;
	margin-inline: auto;
}

.top-contents__imgWrap {
	width: 250rem;
	aspect-ratio: 250/223;
	margin-inline: auto;
	margin-top: 15rem;
	position: relative;
}

.top-contents__imgWrap::after {
	content: "";
	width: 100%;
	height: 100%;
	background: no-repeat center center/contain;
	position: absolute;
	top: 0;
	left: 0;
}

.top-contents__imgWrap.--1::after {
	background-image: url(../img/top-contents-img1-frame.svg);
}

.top-contents__imgWrap.--2::after {
	background-image: url(../img/top-contents-img2-frame.svg);
}

.top-contents__imgWrap.--3::after {
	background-image: url(../img/top-contents-img3-frame.svg);
}

.top-contents__img {
	transition: all 0.3s ease;
}

.top-contents__img.--1 {
	-webkit-mask: url(../img/top-contents-img1-mask.webp) no-repeat center/cover;
	mask: url(../img/top-contents-img1-mask.webp) no-repeat center/contain;
}

.top-contents__img.--1::after {
	background-image: url(../img/top-contents-img1-frame.svg);
}

.top-contents__img.--2 {
	-webkit-mask: url(../img/top-contents-img2-mask.webp) no-repeat center/contain;
	mask: url(../img/top-contents-img2-mask.webp) no-repeat center/contain;
}

.top-contents__img.--2::after {
	background-image: url(../img/top-contents-img2-frame.svg);
}

.top-contents__img.--3 {
	-webkit-mask: url(../img/top-contents-img3-mask.webp) no-repeat center/contain;
	mask: url(../img/top-contents-img3-mask.webp) no-repeat center/contain;
}

.top-contents__img.--3::after {
	background-image: url(../img/top-contents-img3-frame.svg);
}

.top-contents__img img {
	transition: all 0.3s ease;
}

.top-contents__title {
	width: -moz-fit-content;
	width: fit-content;
	margin-inline: auto;
	font-size: 20rem;
	font-weight: 700;
	line-height: 1.5;
	margin-top: 20rem;
	position: relative;
}

.top-contents__title::after {
	content: "";
	width: calc(100% + 20rem);
	height: 20rem;
	background: url(../img/bg-line.svg) no-repeat center center/100% 100%;
	position: absolute;
	top: 45%;
	left: 50%;
	translate: -50%;
	z-index: -1;
}

.top-contents__text {
	line-height: 1.6;
	letter-spacing: 0.03em;
	margin-top: 12rem;
}

.top-contents__bottomImgWrap {
	display: flex;
	justify-content: space-between;
	margin-top: 100rem;
}

.top-contents__bottomImg {
	width: 244rem;
	aspect-ratio: 244/183;
	border-radius: 8rem;
	overflow: hidden;
}

.top-contents__bottomImg img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

.top-program {
	padding-block: 200rem 120rem;
	position: relative;
}

.top-program__text {
	max-width: 600rem;
	line-height: 1.6;
	letter-spacing: 0.03em;
	margin-top: 24rem;
}

.top-program__lesson {
	margin-top: 80rem;
}

.top-program__itemWrap {
	display: flex;
	flex-direction: column;
	gap: 103rem;
}

.top-program__item:nth-child(1) {
	position: relative;
}

.top-program__item:nth-child(1)::after {
	content: "";
	width: 595rem;
	aspect-ratio: 595/535;
	background: url(../img/top-program-item-bg1.webp) no-repeat center center/contain;
	position: absolute;
	top: 50%;
	left: 50%;
	translate: -50% -50%;
	z-index: -1;
}

.top-program__itemNumber {
	width: 75rem;
	aspect-ratio: 75/44;
	margin-inline: auto;
}

.top-program__itemTitle {
	width: -moz-fit-content;
	width: fit-content;
	margin-inline: auto;
	font-size: 28rem;
	font-weight: 700;
	line-height: 1.5;
	margin-top: 18rem;
	margin-bottom: 14rem;
	position: relative;
}

.top-program__itemTitle::after {
	content: "";
	width: calc(100% + 10rem);
	height: 20rem;
	background: url(../img/bg-line.svg) no-repeat center center/100% 100%;
	position: absolute;
	top: 52%;
	left: 50%;
	translate: -50%;
	z-index: -1;
}

.top-program__itemTitle.--line2::after {
	background-image: url(../img/bg-line2.svg);
}

.top-program__itemContent {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.top-program__itemContent.--reverse {
	flex-direction: row-reverse;
}

.top-program__itemImg {
	width: 400rem;
	aspect-ratio: 400/320;
	border-radius: 8rem;
	overflow: hidden;
}

.top-program__itemTextFrame {
	width: 498rem;
	aspect-ratio: 498/395;
}

.top-program__itemTextWrap {
	width: 368rem;
	margin-inline: auto;
	margin-inline: 80rem 0;
	padding-top: 80rem;
}

.top-program__itemSubTitle {
	font-size: 20rem;
	font-weight: 700;
	line-height: 1.5;
	text-align: center;
}

.top-program__itemText {
	line-height: 1.6;
	letter-spacing: 0.03em;
	margin-top: 16rem;
	text-align: left;
}

.top-program__lessonInfoWrap {
	display: flex;
	justify-content: center;
	gap: 118rem;
	padding-block: 57rem 74rem;
	background: #FFFFFF;
	border: 1rem solid #B59B91;
	border-radius: 24rem;
	margin-top: 80rem;
}

.top-program__lessonInfoWrap::after {
	display: none;
	content: "";
	width: 100%;
	height: 2rem;
	background: url(../img/line-parts.svg) repeat-x center center/14rem 2rem;
	order: 1;
}

.top-program__infoTitle {
	width: -moz-fit-content;
	width: fit-content;
	margin-inline: auto;
	font-size: 20rem;
	font-weight: 700;
	line-height: normal;
	position: relative;
	z-index: 2;
}

.top-program__infoTitle::after {
	content: "";
	width: calc(100% + 15rem);
	height: 20rem;
	background: url(../img/bg-line.svg) no-repeat center center/100% 100%;
	position: absolute;
	top: 45%;
	left: 50%;
	translate: -50%;
	z-index: -1;
}

.top-program__infoTitle.--line2::after {
	background-image: url(../img/bg-line2.svg);
}

.top-program__infoItemWrap {
	display: flex;
	flex-direction: column;
	gap: 29rem;
	margin-top: 28rem;
}

.top-program__infoItem {
	display: flex;
	gap: 36rem;
	align-items: center;
}

.top-program__infoItem:last-child .top-program__infoItemTitle {
	position: relative;
}

.top-program__infoItem:last-child .top-program__infoItemTitle::after {
	content: "";
	width: 3rem;
	height: 50rem;
	background: #E8E2DB;
	position: absolute;
	bottom: 95%;
	left: 50%;
	translate: -50%;
}

.top-program__infoItem--2 {
	background: #F3E6E1;
	border-radius: 8rem;
	padding: 20rem;
	margin-top: 28rem;
}

.top-program__infoItemTitle {
	width: 151rem;
	height: 47rem;
	display: grid;
	place-items: center;
	background: #E8E2DB;
	border-radius: 8rem;
	font-size: 20rem;
	font-weight: 700;
	line-height: 1.5;
}

.top-program__infoItemTitle--2 {
	font-size: 20rem;
	font-weight: 700;
	line-height: 1.5;
	text-align: center;
}

.top-program__infoLists li {
	display: flex;
	align-items: center;
	gap: 8rem;
	line-height: 1.6;
	letter-spacing: 0.03em;
}

.top-program__infoLists li::before {
	content: "";
	width: 6rem;
	aspect-ratio: 1/1;
	background: #53473E;
	border-radius: 50%;
}

.top-program__infoLists.--2 {
	margin-inline: 17rem;
	margin-top: 4rem;
}

.top-program__btn {
	margin-top: 80rem;
}

.top-program__deco--1 {
	width: 540rem;
	aspect-ratio: 540/432;
	position: absolute;
	top: 0;
	right: 0;
	translate: 60%;
}

.top-program__deco--2 {
	width: 599rem;
	aspect-ratio: 599/627;
	position: absolute;
	bottom: -11%;
	left: 0;
	translate: -65%;
}

.top-program__deco--3 {
	width: 529rem;
	aspect-ratio: 529/377;
	position: absolute;
	bottom: -5%;
	right: 0;
	translate: 80%;
}

.top-voice {
	width: 100%;
	height: 903rem;
	background: url(../img/voice-bg.svg?ver1.1) no-repeat center center/contain;
	padding-top: 175rem;
	position: relative;
	z-index: 3;
}

.top-voice__inner {
	height: 100%;
	position: relative;
}

.top-voice__item {
	width: 401rem;
	aspect-ratio: 401/343;
	position: absolute;
}

.top-voice__item.--1 {
	top: 100rem;
	left: 4rem;
}

.top-voice__item.--2 {
	bottom: 140rem;
	right: 222rem;
}

.top-voice__item.--3 {
	top: -60rem;
	right: -7rem;
}

.top-voice__text {
	width: 280rem;
	margin-inline: auto;
	line-height: 1.6;
	letter-spacing: 0.03em;
	position: relative;
	top: 100rem;
}

.top-voice__text::before {
	content: "";
	width: 16rem;
	aspect-ratio: 16/14;
	background: url(../img/double-quotation-start.svg) no-repeat center center/contain;
	position: absolute;
	top: 0;
	right: 100%;
}

.top-voice__text::after {
	content: "";
	width: 16rem;
	aspect-ratio: 16/14;
	background: url(../img/double-quotation-end.svg) no-repeat center center/contain;
	position: absolute;
	bottom: 14rem;
	right: 0;
}

.top-recipe {
	padding-block: 162rem 120rem;
	background: #FFFEFA;
	position: relative;
}

.top-recipe::before {
	content: "";
	width: 492rem;
	aspect-ratio: 492/392;
	background: url(../img/top-bg-deco1.webp) no-repeat center center/contain;
	position: absolute;
	top: -100rem;
	right: -172rem;
}

.top-recipe::after {
	content: "";
	width: 584rem;
	aspect-ratio: 584/472;
	background: url(../img/top-bg-deco2.webp) no-repeat center center/contain;
	position: absolute;
	bottom: 0;
	left: -270rem;
}

.top-recipe__inner {
	max-width: 768rem;
}

.section-title__sub.--recipe {
	left: 19%;
}

.section-title__sub.--recipe span {
	text-transform: none;
}

.top-recipe__main {
	margin-top: 80rem;
}

.top-recipe__title {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 16rem;
	text-align: center;
}

.top-recipe__title em {
	width: -moz-fit-content;
	width: fit-content;
	font-size: 20rem;
	font-weight: 700;
	line-height: 1.5;
	font-style: normal;
	background: rgba(181, 155, 145, 0.15);
}

.top-recipe__title span {
	margin-top: 8rem;
	line-height: 1.6;
	letter-spacing: 0.03em;
}

.top-recipe__infoTitle {
	font-size: 20rem;
	font-weight: 700;
	line-height: 1.5;
	margin-top: 40rem;
}

.top-recipe__infoWrap {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 34rem;
/* 	margin-top: 40rem; */
	margin: 40rem 0;
}

.top-recipe__img {
	width: 350rem;
	flex-shrink: 0;
	aspect-ratio: 350/200;
	border-radius: 5rem;
	overflow: hidden;
}

.top-recipe__infoTextWrap {
	width: 384rem;
}

.top-recipe__infoText {
	display: flex;
	flex-direction: column;
	gap: 16rem;
	line-height: 1.6;
	letter-spacing: 0.03em;
	margin-top: 16rem;
}

.top-recipe__btn {
	margin-top: 80rem;
}

.top-works {
	padding-block: 155rem 140rem;
	background: url(../img/top-works-bg.svg?ver1.1) no-repeat center center/100% 100%;
}

.top-works__main {
	background: #fff;
	border: 1rem solid #B59B91;
	border-radius: 24rem;
	padding-block: 20rem 10rem;
	padding-inline: 60rem;
	margin-top: 63rem;
}

.top-works__item {
	padding-block: 40rem;
}

.top-works__item:nth-child(n+2) {
	position: relative;
}

.top-works__item:nth-child(n+2)::after {
	content: "";
	width: 100%;
	height: 2rem;
	background: url(../img/line-parts.svg) repeat-x center center/14rem 2rem;
	position: absolute;
	top: 0;
	left: 0;
}

.top-works__title {
	width: -moz-fit-content;
	width: fit-content;
	margin-inline: auto;
	font-size: 28rem;
	font-weight: 700;
	line-height: 1.5;
	text-align: center;
	position: relative;
	z-index: 2;
}

.top-works__title::after {
	content: "";
	width: calc(100% + 15rem);
	height: 20rem;
	background: url(../img/bg-line2.svg) no-repeat center center/100% 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	translate: -50%;
	z-index: -1;
}

.top-works__title.--line3::after {
	background-image: url(../img/bg-line3.svg);
}

.top-works__bookWrap {
	margin-inline: auto;
	margin-top: 24rem;
}

.top-works__swiper {
	display: contents;
}

.top-works__swiper-wrapper {
	display: flex;
	justify-content: center;
	gap: 150rem;
}

.top-works__swiper-slide {
	display: contents;
}

.top-works__swiper-pagination {
	display: none;
}

.top-works__book {
	width: 250rem;
}

.top-works__bookImg {
	width: 164rem;
	aspect-ratio: 164/212;
	margin-inline: auto;
}

.top-works__bookTitle {
	font-family: "Zen Maru Gothic", sans-serif;
	font-size: 16rem;
	line-height: 1.5;
	text-align: center;
	margin-top: 16rem;
}

.top-works__seasoningWrap {
	display: flex;
	justify-content: center;
	gap: 18rem;
	margin-top: 24rem;
}

.top-works__seasoningImg {
	width: 179rem;
	aspect-ratio: 179/134;
}

.top-works__btn {
	margin-top: 40rem;
}

.top-works__resultsWrap {
	display: grid;
	grid-template-columns: auto auto;
	justify-content: center;
	gap: 8rem;
	margin-top: 28rem;
}

.top-works__results {
	width: -moz-fit-content;
	width: fit-content;
	margin-inline: auto;
	display: grid;
	grid-template-columns: subgrid;
	grid-column: span 2;
	gap: 24rem;
	font-family: "Zen Maru Gothic", sans-serif;
}

.top-works__results dt {
	font-size: 16rem;
	font-weight: 700;
	line-height: 1.5;
}

.top-works__results dd {
	font-size: 18rem;
	font-weight: 400;
}

.top-blog {
	padding-block: 200rem;
	position: relative;
}

.top-blog::before {
	content: "";
	width: 530rem;
	aspect-ratio: 530/556;
	background: url(../img/top-bg-deco3.webp) no-repeat center center/contain;
	position: absolute;
	top: -71rem;
	left: -156rem;
	z-index: -1;
}

.top-blog::after {
	content: "";
	width: 262rem;
	aspect-ratio: 262/236;
	background: url(../img/top-bg-deco4.webp) no-repeat center center/contain;
	position: absolute;
	top: 303rem;
	right: -65rem;
}

.section-title__wrap.--top-blog {
	margin-inline: auto;
}

.section-title__wrap.--top-blog .section-title__sub {
	top: 0%;
	left: 95%;
}

.top-blog__itemWrap {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20rem;
	margin-top: 40rem;
}

.top-blog__item {
	padding: 20rem;
	border: 1rem solid #B59B91;
	border-radius: 16rem;
	background: #fff;
}

.top-blog__itemLink {
	display: flex;
	flex-direction: column;
	gap: 16rem;
}

.top-blog__itemImg {
	width: 100%;
	aspect-ratio: 281/187;
	border-radius: 10rem;
	overflow: hidden;
	transition: all 0.3s ease;
}

.top-blog__itemImg img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

.top-blog__itemContent {
	position: relative;
}

.top-blog__itemNew {
	color: #B59B91;
	font-family: "Zen Maru Gothic", sans-serif;
	font-size: 20rem;
	line-height: 1.5;
	position: absolute;
	top: 0;
	right: 5rem;
}

.top-blog__category {
	min-width: 105rem;
	display: grid;
	place-items: center;
	font-size: 16rem;
	padding: 2rem 16rem;
	line-height: normal;
	border-radius: 50rem;
	width: -moz-fit-content;
	width: fit-content;
	border: 1rem solid #53473E;
	background: #FFFFFF;
	transition: color 0.3s ease, border-color 0.3s ease;
}

.top-blog__itemTitle {
	line-height: 1.6;
	letter-spacing: 0.03em;
	margin-top: 8rem;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2; /* 行数を指定 */
}

.top-blog__itemDate {
	display: block;
	color: #a1a1a1;
	font-size: 16rem;
	font-weight: 400;
	line-height: normal;
	text-align: right;
	margin-top: 8rem;
}

.top-blog__btn {
	margin-top: 80rem;
}

.top-blog__btn .btn {
	width: 328rem;
	gap: 24rem;
}

.top-about {
	padding-block: 0rem 120rem;
	position: relative;
}

.top-about::before {
	content: "";
	width: 590rem;
	aspect-ratio: 590/438;
	background: url(../img/top-bg-deco5.webp) no-repeat center center/contain;
	position: absolute;
	top: -343rem;
	right: -230rem;
}

.top-about::after {
	content: "";
	width: 186rem;
	aspect-ratio: 186/168;
	background: url(../img/top-bg-deco6.webp) no-repeat center center/contain;
	position: absolute;
	top: -85rem;
	left: -77rem;
}

.top-about__inner {
	max-width: 768rem;
	position: relative;
}

.top-about__main {
	display: flex;
	justify-content: space-between;
	margin-top: 40rem;
}

.top-about__img {
	width: 296rem;
	aspect-ratio: 296/370;
	border-radius: 8rem;
	overflow: hidden;
}

.top-about__textWrap {
	width: 383rem;
}

.top-about__title {
	font-size: 28rem;
	font-weight: 700;
	line-height: 1.5;
}

.top-about__name {
	font-size: 28rem;
	font-weight: 700;
	line-height: 1.5;
	margin-top: 24rem;
}

.top-about__text {
	line-height: 1.6;
	letter-spacing: 0.03em;
	margin-top: 16rem;
}

.top-about__carrier {
	display: flex;
	flex-direction: column;
	gap: 2rem;
	margin-top: 16rem;
}

.top-about__carrier li {
	display: flex;
	align-items: center;
	gap: 8rem;
	line-height: 1.6;
	letter-spacing: 0.03em;
}

.top-about__carrier li::before {
	content: "";
	width: 6rem;
	aspect-ratio: 1/1;
	background: #53473E;
	border-radius: 50%;
}

.top-about__deco {
	width: 153rem;
	aspect-ratio: 153/611;
	position: absolute;
	top: -74rem;
	left: -117rem;
}

.top-link {
	padding-block: 80rem;
	background: #f5f0eb;
	position: relative;
}

.top-link::before {
	content: "";
	width: 318rem;
	aspect-ratio: 318/231;
	background: url(../img/top-bg-deco7.webp) no-repeat center center/contain;
	position: absolute;
	bottom: -221rem;
	left: -101rem;
	display: none;
}

.top-link__inner {
	display: grid;
	grid-template-columns: repeat(3, 320rem);
	gap: 20rem;
}

.top-link__item {
	transition: all 0.3s ease;
}

.top-link__img {
	width: 100%;
	aspect-ratio: 320/100;
}

.top-link__title {
	color: #8B7D6E;
	font-family: "Zen Maru Gothic", sans-serif;
	font-size: 16rem;
	font-weight: 400;
	line-height: normal;
	text-align: center;
	margin-top: 4rem;
}

.program {
	overflow: hidden;
	position: relative;
}

.program::after {
	content: "";
	width: 690rem;
	aspect-ratio: 690/639;
	background: url(../img/program-bg-deco1.webp) no-repeat center center/contain;
	position: absolute;
	top: -37rem;
	left: -169rem;
	z-index: 2;
}

.program::before {
	content: "";
	width: 599rem;
	aspect-ratio: 599/580;
	background: url(../img/program-bg-deco2.webp) no-repeat center center/contain;
	position: absolute;
	bottom: -197rem;
	right: -115rem;
	z-index: -1;
}

.program__top {
	padding-top: 114rem;
}

.program__inner {
	width: 768rem;
	margin-inline: auto;
}

.program__sectionTitleWrap {
	width: auto;
	text-align: center;
}

.program__sectionTitleWrap .section-title__sub {
	top: -14%;
	left: 32%;
	color: #b59b91;
}

.program__lesson {
	margin-top: 58rem;
}

.program__itemContent {
	display: flex;
	align-items: flex-start;
	gap: 42rem;
}

.program__itemImg {
	aspect-ratio: 340/272;
	width: min(100%, 340rem);
	height: auto;
	border-radius: 8rem;
	overflow: hidden;
}

.program__itemText {
	width: min(100%, 384rem);
	text-align: left;
}

.program__main {
	width: 100%;
	background: url(../img/program-bg.svg?ver1.1) no-repeat center center/100% 100%;
	padding-block: 146rem 140rem;
	margin-top: 101rem;
	position: relative;
}

.program__main .bg-deco {
	position: absolute;
	rotate: -106deg;
	aspect-ratio: 228/276;
	width: 228rem;
	height: auto;
}

.program__main .bg-deco.-deco--1 {
	top: 203rem;
	right: calc(50% - 763rem);
}

.program__main .bg-deco.-deco--2 {
	top: 44%;
	translate: 0 -50%;
	right: initial;
	left: calc(100% - 1500rem);
}

.program__contents {
	display: flex;
	flex-direction: column;
	gap: 70rem;
}

.program__item {
	width: min(1000rem, 100%);
	padding-block: 98rem 115rem;
	padding-inline: 106rem;
	margin-inline: auto;
	border: 1rem solid #B59B91;
	background: #fff;
	border-radius: 40rem;
	z-index: 1;
}

.program__lessonNumber {
	width: 75rem;
	aspect-ratio: 75/44;
	margin-inline: auto;
}

.program__lessonTitle {
	width: -moz-fit-content;
	width: fit-content;
	margin-inline: auto;
	color: #704337;
	font-size: 28rem;
	font-weight: 700;
	line-height: 1.5;
	margin-top: 18rem;
	position: relative;
	z-index: 1;
}

.program__lessonTitle::after {
	content: "";
	width: calc(100% + 10rem);
	height: 20rem;
	background: url(../img/bg-line.svg) no-repeat center center/100% 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	translate: -50%;
	z-index: -1;
}

.program__lessonTitle.--line2::after {
	background-image: url(../img/bg-line2.svg);
}

.program__lessonLead {
	font-size: 18rem;
	font-weight: 500;
	line-height: 160%; /* 28.8rem */
	letter-spacing: 0.54rem;
	margin-top: 44rem;
}

.program__lessonBody {
	margin-top: 58rem;
}

.program__lessonContents {
	display: grid;
	grid-template-columns: repeat(auto-fit, 341rem);
	justify-content: space-between;
}

.program__lessonItem {
	display: grid;
	grid-template-rows: subgrid;
	grid-row: span 4;
	align-items: flex-start;
}

.program__lessonItemImgWrap {
	width: 273rem;
	aspect-ratio: 273/223;
	margin-inline: auto;
	position: relative;
}

.program__lessonItemImgWrap::after {
	content: "";
	width: 100%;
	height: 100%;
	background: no-repeat center center/contain;
	background-image: url(../img/top-contents-img2-frame.svg);
	position: absolute;
	top: 0;
	left: 0;
}

.program__lessonItemTitle {
	color: #704337;
	text-align: center;
	font-size: 20rem;
	font-weight: 700;
	position: relative;
	line-height: normal;
	width: -moz-fit-content;
	width: fit-content;
	margin-inline: auto;
	margin-top: 20rem;
}

.program__lessonItemTitle::after {
	content: "";
	width: calc(100% + 8rem);
	height: 2rem;
	border-radius: 1rem;
	background: url(../img/line-parts.svg) repeat-x center center/12rem 2rem;
	position: absolute;
	left: 50%;
	bottom: 0;
	translate: -50%;
}

.program__lessonItemText {
	width: min(100%, 335rem);
	margin-inline: auto;
	margin-top: 16rem;
}

.program__lessonItemBtn {
	width: 83%;
	justify-self: center;
	margin-top: 22rem;
}

.program__lessonItemBtn .btn {
	width: 100%;
	height: auto;
	padding-block: 20rem;
}

.program__lessonNotice {
	position: relative;
	width: min(770rem, 100%);
	margin-top: 123rem;
	margin-inline: auto;
	padding-block: 73rem 40rem;
	padding-inline: 38rem;
	border-radius: 20rem;
	border: 2rem solid var(--Line, #b59b91);
}

.program__lessonNoticeRibbon {
	aspect-ratio: 380/150;
	width: 426rem;
	height: auto;
	position: absolute;
	top: -40rem;
	left: 50%;
	translate: -50% 0%;
	pointer-events: none;
}

.program__lessonNoticeWrap {
	display: flex;
	flex-direction: column;
	gap: 60rem;
}

.program__lessonNoticeContent {
	width: 100%;
	margin-inline: auto;
	display: flex;
	gap: 16rem;
}

.program__lessonNoticeHead {
	width: 332rem;
	color: #704337;
	display: grid;
	grid-template-columns: 150rem 1fr;
	gap: 16rem;
}

.program__lessonNoticeImgWrap {
	aspect-ratio: 150/100;
	width: 150rem;
	border-radius: 10rem;
	overflow: hidden;
}

.program__lessonNoticeImgWrap img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

.program__lessonNoticeCatName {
	text-align: center;
	font-size: 14rem;
	font-weight: 500;
	line-height: normal;
	padding-inline: 16rem;
	border-radius: 50rem;
	border: 1rem solid #5b3e36;
	background: #FFFFFF;
}

.program__lessonNoticeHeadTitle {
	font-size: 18rem;
	font-weight: 700;
	line-height: 180%; /* 32.4rem */
	letter-spacing: 0.54rem;
	margin-top: 4rem;
}

.program__lessonNoticeDate {
	font-family: "Zen Maru Gothic", sans-serif;
	font-size: 16rem;
	line-height: normal;
}

.program__lessonNoticeBody {
	width: 342rem;
}

.program__lessonNoticeText {
	color: #53473E;
	font-size: 18rem;
	font-weight: 600;
	line-height: 180%; /* 32.4rem */
	letter-spacing: 0.54rem;
}

.program__lessonNoticeBtn {
	width: 350rem;
	margin-inline: auto;
	margin-top: 40rem;
}

.program__lessonNoticeBtn a {
	width: 100%;
	white-space: nowrap;
}

.program__lessonNone {
	padding-block: 30rem 60rem;
}

.program__lessonNoneText {
	width: 342rem;
	margin-inline: auto;
	color: #8B7D6E;
	font-size: 20rem;
	font-weight: 700;
	line-height: normal;
	text-align: center;
	position: relative;
}

.program__lessonNoneText::after {
	content: "";
	width: 100%;
	height: 2rem;
	background: url(../img/line-parts.svg) repeat-x center center/14rem 2rem;
	position: absolute;
	bottom: -8rem;
	left: 0;
}

.program__qa {
	padding-block: 148rem 0;
	position: relative;
	z-index: 3;
}

.program__qa .qa__section-title {
	width: auto;
	text-align: center;
}

.program__qa .qa__section-title .section-title__sub {
	top: 47%;
	left: 54%;
	color: #b59b91;
}

.program__qa .js-accordion {
	display: flex;
	align-items: center;
}

.program__qa .qa__accordion {
	padding-block: 80rem;
}

.program__qa .qa__accordionInner {
	width: min(880rem, 100%);
	padding-inline: 20rem;
	margin-inline: auto;
}

.program__qa .qa__accordionItems {
	display: flex;
	flex-direction: column;
	gap: 24rem;
}

.program__qa .qa__accordionItem {
	border-radius: 8rem;
	border: 1rem solid #B59B91;
	background: #FFFFFF;
}

.program__qa .qa__accordionQuestion {
	padding-block: 20rem;
	width: 100%;
	position: relative;
	overflow: hidden;
}

.program__qa .qa__accordionQuestion::before,
.program__qa .qa__accordionQuestion::after {
	content: "";
	position: absolute;
	top: 50%;
	translate: 0 -50%;
	background: #53473E;
}

.program__qa .qa__accordionQuestion::before {
	width: 16rem;
	height: 2rem;
	right: 30rem;
}

.program__qa .qa__accordionQuestion::after {
	width: 2rem;
	height: 16rem;
	right: 37rem;
	transition: rotate 0.3s ease;
}

.program__qa details[open] .qa__accordionQuestion::after {
	rotate: 90deg;
}

.program__qa .js-content {
	display: none;
}

.program__qa .js-content.is-open {
	display: block;
}

.program__qa .qa__accordionQuestionText,
.program__qa .qa__accordionAnswerText {
	padding-left: 39rem;
	list-style: none;
	position: relative;
	font-weight: 700;
	line-height: normal;
	padding-inline: 61rem;
}

.program__qa .qa__accordionQuestionText {
	color: #704337;
	font-size: 20rem;
}

.program__qa .qa__accordionQuestionText::before {
	content: "Q.";
	position: absolute;
	top: 50%;
	translate: 0 -50%;
	left: 23rem;
	font-family: "Raleway", sans-serif;
	font-size: 32rem;
	font-weight: 500;
	line-height: normal;
}

.program__qa .qa__accordionAnswer {
	padding-block: 20rem;
	position: relative;
}

.program__qa .qa__accordionLine {
	content: "";
	position: absolute;
	width: 95%;
	height: 2rem;
	top: 0;
	left: 50%;
	translate: -50% 0%;
	background: url(../img/line-parts.svg) repeat-x center center/12rem 2rem;
}

.program__qa .qa__accordionAnswerText {
	color: #704337;
	font-size: 18rem;
}

.program__qa .qa__accordionAnswerText::before {
	content: "A.";
	position: absolute;
	top: -7rem;
	left: 23rem;
	color: #B59B91;
	font-family: "Raleway", sans-serif;
	font-size: 32rem;
	font-weight: 500;
	line-height: normal;
}

.program__qa span {
	display: inline-block;
}

.program__qa summary {
	display: block;
}

.program__qa summary::-webkit-details-marker {
	display: none;
}

.program__qa .qa__imgs {
	margin-top: 23rem;
}

.program__qa .qa__imgWrap {
	display: flex;
	justify-content: space-between;
}

.program__qa .qa__img {
	width: 244rem;
	aspect-ratio: 244/183;
	border-radius: 8rem;
	overflow: hidden;
}

.program__qa .qa__img img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

.recipe-site {
	position: relative;
	overflow: hidden;
	background: #FFFEFA url(../img/recipe-bg.svg) no-repeat top center/cover;
}

.recipe-site__titleWrap {
	margin-top: 93rem;
	margin-inline: auto;
}

.recipe-site__titleSub {
	white-space: nowrap;
	text-transform: none;
	width: 730rem;
	top: 16rem;
	left: -74rem;
}

.recipe-site__head {
	margin-top: 44rem;
	display: flex;
	-moz-column-gap: 80rem;
	column-gap: 80rem;
	width: 1000rem;
	margin-inline: auto;
}

.recipe-site__headImgWrap {
	padding-top: 4rem;
	width: 430rem;
	flex-shrink: 0;
}

.recipe-site__headImg {
	border-radius: 8rem;
}

.recipe-site__headImg:nth-of-type(1) {
	width: 377rem;
	aspect-ratio: 377/215;
}

.recipe-site__headImg:nth-of-type(2) {
	margin-top: -47rem;
	margin-left: auto;
	width: 200rem;
	aspect-ratio: 200/250;
}

.recipe-site__headTextarea {
	display: flex;
	flex-direction: column;
	row-gap: 20rem;
}

.recipe-site__headTitle {
	font-size: 20rem;
	line-height: normal;
	font-weight: 700;
}

.recipe-site__headText {
	display: flex;
	flex-direction: column;
	gap: 16rem;
	font-size: 18rem;
	line-height: 1.8;
	letter-spacing: 0.03em;
	font-weight: 600;
}

.recipe-site__body {
	margin-top: 118rem;
}

.recipe-site__items {
	display: flex;
	flex-direction: column;
	row-gap: 69rem;
	width: 785rem;
	margin-inline: auto;
}

.recipe-site__item {
	display: flex;
	-moz-column-gap: 41rem;
	column-gap: 41rem;
}

.recipe-site__item:nth-of-type(2n + 1) {
	flex-direction: row;
}

.recipe-site__item:nth-of-type(2n) {
	flex-direction: row-reverse;
}

.recipe-site__item:nth-of-type(1) .recipe-site__itemTitle::before {
	background: url(../img/recipe-number-01.svg) no-repeat center center/contain;
}

.recipe-site__item:nth-of-type(1) .recipe-site__itemImg {
	width: 387rem;
	aspect-ratio: 387/257;
}

.recipe-site__item:nth-of-type(2) .recipe-site__itemTitle::before {
	background: url(../img/recipe-number-02.svg) no-repeat center center/contain;
}

.recipe-site__item:nth-of-type(2) .recipe-site__itemImg {
	width: 393rem;
	aspect-ratio: 393/262;
}

.recipe-site__item:nth-of-type(3) .recipe-site__itemTitle::before {
	background: url(../img/recipe-number-03.svg) no-repeat center center/contain;
}

.recipe-site__item:nth-of-type(3) .recipe-site__itemImg {
	width: 389rem;
	aspect-ratio: 389/254;
}

.recipe-site__item:nth-of-type(4) .recipe-site__itemTitle::before {
	background: url(../img/recipe-number-04.svg) no-repeat center center/contain;
}

.recipe-site__item:nth-of-type(4) .recipe-site__itemImg {
	rotate: -3.328deg;
}

.recipe-site__item:nth-of-type(5) .recipe-site__itemTitle::before {
	background: url(../img/recipe-number-05.svg) no-repeat center center/contain;
}

.recipe-site__item:nth-of-type(5) .recipe-site__itemImg {
	rotate: -3.037deg;
}

.recipe-site__itemTextarea {
	padding-top: 24rem;
	width: 356rem;
	display: flex;
	flex-direction: column;
	row-gap: 26rem;
}

.recipe-site__itemTitle {
	position: relative;
	padding-left: 87rem;
	font-size: 28rem;
	line-height: 1.5;
	font-weight: 700;
}

.recipe-site__itemTitle::before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	translate: 0 -50%;
	width: 64rem;
	height: 64rem;
}

.recipe-site__itemTitle span {
	position: relative;
	white-space: nowrap;
}

.recipe-site__itemTitle span::after {
	content: "";
	position: absolute;
	width: 100%;
	height: 2rem;
	background: url("../img/line-parts-3.svg") repeat-x center;
	left: 0;
	bottom: 0rem;
}

.recipe-site__itemText {
	width: 341rem;
	font-size: 18rem;
	font-weight: 600;
	line-height: 1.8;
	letter-spacing: 0.03em;
}

.recipe-site__itemText.--mla {
	margin-left: auto;
}

.recipe-site__itemImg {
	width: 387rem;
}

.recipe-site__text {
	display: flex;
	flex-direction: column;
	gap: 16rem;
	max-width: 785rem;
	margin-inline: auto;
	margin-top: 120rem;
	font-size: 18rem;
	font-weight: 600;
	line-height: 1.8;
	letter-spacing: 0.03em;
}

.recipe-site__entry {
	margin-top: 80rem;
	width: 430rem;
	margin-inline: auto;
	text-align: center;
}

.recipe-site__entryHead {
	position: relative;
	color: #704337;
	font-size: 20rem;
	font-weight: 700;
	white-space: nowrap;
}

.recipe-site__entryHead span.--big {
	font-size: 32rem;
	line-height: normal;
	letter-spacing: 0.05em;
}

.recipe-site__entryHead .only-sp {
	display: none;
}

.recipe-site__entryBtnWrap {
	margin-top: 16rem;
}

.recipe-site__entryBtn {
	gap: 44rem;
	width: 340rem;
	padding-inline: 43rem;
}

.recipe-site__bodyImgWrap {
	margin-top: 84rem;
	display: flex;
	gap: 8rem;
}

.recipe-site__bodyImg {
	width: 244rem;
	border-radius: 8rem;
}

.recipe-site__bodyImg img {
	border-radius: 8rem;
}

.archive-blog {
	background: #FFFEFA url(../img/blog-bg.webp) no-repeat top center/cover;
}

.archive-blog__top {
	padding-top: 93rem;
}

.archive-blog__sectionTitleWrap {
	width: auto;
	text-align: center;
	pointer-events: none;
}

.archive-blog__sectionTitleWrap .section-title__sub {
	color: #b59b91;
	top: 17%;
	left: 51%;
}

.archive-blog__categories {
	display: flex;
	justify-content: center;
	gap: 16rem;
	flex-wrap: wrap;
	margin-inline: auto;
	margin-top: 40rem;
}

.archive-blog__main {
	padding-block: 60rem 0;
}

.archive-blog__contents {
	position: relative;
}

.archive-blog__contents .bg-deco.-deco--pink {
	position: absolute;
	display: none;
}

.archive-blog__list {
	display: flex;
	flex-direction: column;
	gap: 96rem;
	padding-bottom: 48rem;
}

.archive-blog__item {
	position: relative;
	display: block;
}

.archive-blog__item::after {
	content: "";
	position: absolute;
	width: 100%;
	height: 2rem;
	top: calc(100% + 48rem);
	left: 0;
	background: url(../img/line-parts.svg) repeat-x center center/12rem 2rem;
}

.archive-blog__link {
	display: flex;
	align-items: start;
	-moz-column-gap: 83rem;
	column-gap: 83rem;
	overflow: hidden;
	transition: opacity 0.3s ease;
	padding-inline: 116rem;
}

.archive-blog__itemImgWrap {
	width: 300rem;
	aspect-ratio: 300/200;
	height: auto;
	border-radius: 10rem;
	overflow: hidden;
}

.archive-blog__itemImgWrap img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	transition: all 0.3s ease;
}

.archive-blog__itemContent {
	display: flex;
	flex-direction: column;
	overflow: hidden;
	width: 50%;
}

.archive-blog__itemMeta {
	display: flex;
	align-items: center;
	gap: 12rem;
	margin-bottom: 8rem;
}

.archive-blog__itemMeta .archive-blog__itemCategory {
	pointer-events: none;
}

.archive-blog__itemCategory {
	min-width: 105rem;
	display: grid;
	place-items: center;
	font-size: 16rem;
	padding: 2rem 16rem;
	line-height: normal;
	border-radius: 50rem;
	width: -moz-fit-content;
	width: fit-content;
	border: 1rem solid currentColor;
	background: #FFFFFF;
	transition: color 0.3s ease, border-color 0.3s ease;
}

.archive-blog__itemCategory.is-active {
	pointer-events: none;
}

.archive-blog__itemDate {
	color: #a1a1a1; /* 日付 */
	font-size: 16rem;
	font-weight: 400;
	line-height: normal;
	color: #a1a1a1;
}

.archive-blog__itemTitle {
	font-size: 20rem;
	font-weight: 700;
	line-height: normal;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	margin-bottom: 8rem;
	transition: all 0.3s ease;
}

.archive-blog__itemExcerpt {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	overflow: hidden;
	font-size: 16rem;
	font-weight: 600;
	line-height: 160%; /* 25.6rem */
	letter-spacing: 0.8rem;
	transition: all 0.3s ease;
}

.archive-blog__itemBtn {
	margin-top: 16rem;
	color: #FFFFFF;
	text-align: center;
	font-weight: 700;
	line-height: 150%; /* 27rem */
	width: 138rem;
	border-radius: 6rem;
	background: #8B7D6E;
	border: 1rem solid #8B7D6E;
	margin-left: auto;
	padding-block: 3rem;
	transition: color 0.3s ease, border-color 0.3s ease, background-color 0.3s ease;
}

.archive-blog__pagination {
	margin-top: 145rem;
	width: -moz-fit-content;
	width: fit-content;
	margin-inline: auto;
	display: flex;
	gap: 40rem;
	position: relative;
	z-index: 1;
}

.archive-blog__pagination .nav-links {
	display: flex;
	gap: 40rem;
	align-items: center;
	width: -moz-fit-content;
	width: fit-content;
	margin-inline: auto;
	justify-content: center;
}

.archive-blog__pagination .page-numbers {
	font-size: 24rem;
	line-height: normal;
	transition: color 0.3s ease;
}

.archive-blog__pagination .page-numbers.current {
	color: #FFFFFF;
	position: relative;
	pointer-events: none;
}

.archive-blog__pagination .page-numbers.current::after {
	content: "";
	position: absolute;
	width: 40rem;
	top: 50%;
	left: 50%;
	translate: -50% -50%;
	height: auto;
	aspect-ratio: 1;
	border-radius: 20rem;
	background: #B59B91;
	z-index: -1;
}

.archive-blog__pagination .page-numbers path {
	transition: stroke 0.3s ease;
}

.archive-blog__pagination .page-numbers.prev,
.archive-blog__pagination .page-numbers.next {
	flex-shrink: 0;
	width: 24rem;
	aspect-ratio: 1/1;
	background-color: #53473E;
	-webkit-mask: url(../img/arrow-pagination.svg) no-repeat center/contain;
	mask: url(../img/arrow-pagination.svg) no-repeat center/contain;
	transition: all 0.3s ease;
}

.archive-blog__pagination .page-numbers.prev {
	transform: scaleX(-1);
}

.single {
	background: #FFFEFA url(../img/single-bg.webp) no-repeat top center/cover;
}

.single__top {
	padding-top: 93rem;
}

.single__sectionTitleWrap {
	width: auto;
	text-align: center;
}

.single__sectionTitleWrap .section-title__sub {
	color: #b59b91;
	top: 17%;
	left: 51%;
}

.single__contents {
	border-radius: 24rem;
	border: 1rem solid #B59B91;
	background: #FFFFFF;
	padding: 60rem 116rem;
	margin-top: 62rem;
}

.single__category {
	color: #53473e;
	display: grid;
	place-items: center;
	font-size: 16rem;
	padding: 2rem 16rem;
	line-height: normal;
	border-radius: 50rem;
	width: -moz-fit-content;
	width: fit-content;
	border: 1rem solid currentColor;
	background: #FFFFFF;
	transition: color 0.3s ease, border-color 0.3s ease;
}

.single__category.--program {
	pointer-events: none;
}

.single__lessonDate {
	font-size: 16rem;
	margin-top: 4rem;
}

.single__title {
	font-size: 20rem;
	font-weight: bold;
	line-height: normal;
	padding-bottom: 24rem;
	position: relative;
	margin-top: 8rem;
}

.single__title::after {
	content: "";
	position: absolute;
	width: 100%;
	height: 2rem;
	bottom: 0;
	left: 0;
	background: url(../img/line-parts.svg) repeat-x center center/12rem 2rem;
}

.single__meta {
	text-align: right;
}

.single__date {
	color: #a1a1a1;
	font-size: 16rem;
	font-weight: 400;
	line-height: normal;
	display: block;
	margin-block: 24rem;
}

.single__thumbnail {
	width: 100%;
	margin-block: 24rem;
}

.single__body .wp-block-image {
	text-align: center;
}

.single__body img {
	width: -moz-fit-content;
	width: fit-content;
	-o-object-fit: contain;
	object-fit: contain;
	border-radius: 8rem;
}

.single__body h1,
.single__body h2 {
	font-size: 20rem;
	font-weight: 700;
	line-height: normal;
	margin-bottom: 24rem;
}

.single__body h3 {
	font-size: 18rem;
	font-weight: 500;
	line-height: normal;
	margin-bottom: 16rem;
}

.single__body h4 {
	font-size: 16rem;
	font-weight: 500;
	line-height: normal;
	margin-bottom: 16rem;
}

.single__body p {
	font-size: 16rem;
}

.single__body * + img,
.single__body * + figure,
.single__body * + p,
.single__body * + h1,
.single__body * + h2,
.single__body * + h3,
.single__body * + h4 {
	margin-top: 60rem;
}

.single__body h1 + *,
.single__body h2 + *,
.single__body h3 + *,
.single__body h4 + *,
.single__body p + p {
	margin-top: 16rem;
}

.single-post__next-prev {
	margin-block: 100rem;
	display: flex;
	margin-inline: auto;
	padding-block: 40rem;
	position: relative;
	width: min(1000rem, 100%);
	justify-content: center;
	margin-inline: auto;
}

.single-post__next-prev::before,
.single-post__next-prev::after {
	content: "";
	position: absolute;
	width: 100%;
	height: 2rem;
	top: calc(100% + 10rem);
	left: 0;
	background: url(../img/line-parts.svg) repeat-x center center/12rem 2rem;
}

.single-post__next-prev::after {
	top: unset;
	bottom: calc(100% + 10rem);
}

.single-post__next,
.single-post__prev {
	transition: opacity 0.3s ease;
}

.single-post__next a,
.single-post__prev a {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 24rem;
	width: 352rem;
}

.single-post__next {
	padding-left: 40rem;
	position: relative;
}

.single-post__next:first-of-type::before {
	display: none;
}

.single-post__next::before {
	content: "";
	position: absolute;
	width: 2rem;
	height: 169%;
	top: 50%;
	left: 0;
	translate: -50% -50%;
	background: url(../img/line-parts.svg) repeat-y center center/29rem 17rem;
}

.single-post__prev {
	padding-right: 40rem;
}

.single-post__imgWrap {
	width: 145rem;
	aspect-ratio: 145/102;
	height: auto;
	border-radius: 10rem;
	overflow: hidden;
}

.single-post__imgWrap img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

.single-post__textBtn {
	max-width: 51.9886363636%;
	width: -moz-fit-content;
	width: fit-content;
}

.single-post__btn {
	display: flex;
	align-items: center;
	gap: 4rem;
	padding-inline: 23rem;
	width: -moz-fit-content;
	width: fit-content;
	color: #FFFFFF;
	text-align: center;
	font-weight: 700;
	font-size: 16rem;
	line-height: 150%; /* 27rem */
	border-radius: 6rem;
	background: #8B7D6E;
	border: 1rem solid #8B7D6E;
	padding-block: 3rem;
	transition: color 0.3s ease, border-color 0.3s ease, background-color 0.3s ease;
}

.single-post__btn svg {
	display: grid;
	place-items: center;
}

.single-post__title {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	overflow: hidden;
	font-size: 16rem;
	font-weight: 600;
	line-height: 150%; /* 24rem */
	letter-spacing: 0.8rem;
	margin-top: 8rem;
}

.single__btn {
	text-align: center;
	margin-inline: auto;
	width: 338rem;
}

.single__btn .btn {
	gap: 30rem;
	width: 100%;
}

.privacy-policy {
	position: relative;
	overflow: hidden;
}

.privacy-policy__treatItem {
	position: absolute;
}

.privacy-policy__treatItem.--type1 {
	width: 529rem;
	top: -72rem;
	left: -57rem;
}

.privacy-policy__treatItem.--type2 {
	z-index: -1;
	width: 642rem;
	top: 44%;
	right: -461rem;
	translate: 0 -50%;
}

.privacy-policy__treatItem.--type3 {
	z-index: -1;
	width: 560rem;
	left: -376rem;
	bottom: -448rem;
}

.privacy-policy__treatItem.--type4 {
	display: none;
}

.privacy-policy__titleWrap {
	margin-top: 103rem;
	margin-inline: auto;
}

.privacy-policy__titleSub {
	white-space: nowrap;
	text-transform: capitalize;
	top: 5rem;
	left: -191rem;
	width: 860rem;
}

.privacy-policy__content {
	position: relative;
	z-index: 10;
	margin-top: 100rem;
}

.privacy-policy__contentWrap {
	position: relative;
	border-radius: 24rem;
	background: #FFFFFF;
	border: 1rem solid #B59B91;
}

.privacy-policy__contentNarrowInner {
	position: relative;
	z-index: 10;
	padding-inline: 20rem;
	max-width: 804rem;
	margin-inline: auto;
}

.privacy-policy__contentHead {
	position: relative;
	margin-top: 60rem;
}

.privacy-policy__contentHead p {
	font-size: 18rem;
	font-weight: 600;
	line-height: 1.6;
	letter-spacing: 0.03em;
}

.privacy-policy__contentHead::before {
	content: "";
	position: absolute;
	width: 100%;
	height: 2rem;
	background: url("../img/line-parts-3.svg") repeat-x center;
	left: 0;
	bottom: -58rem;
}

.privacy-policy__contentBody {
	margin-top: 117rem;
	padding-bottom: 57rem;
}

.privacy-policy__contentBody h2,
.privacy-policy__contentBody h3,
.privacy-policy__contentBody h4 {
	position: relative;
	font-size: 16rem;
	font-weight: 600;
	line-height: 1.6;
	letter-spacing: 0.03em;
}

.privacy-policy__contentBody h2::before,
.privacy-policy__contentBody h3::before,
.privacy-policy__contentBody h4::before {
	content: "";
	position: absolute;
	width: 100%;
	height: 2rem;
	background: url("../img/line-parts-4.svg") repeat-x center;
	left: 0;
	bottom: -17rem;
}

.privacy-policy__contentBody p {
	font-size: 16rem;
	font-weight: 600;
	line-height: 1.6;
	letter-spacing: 0.03em;
}

.privacy-policy__contentBody li {
	font-size: 16rem;
	font-weight: 600;
	line-height: 1.6;
	letter-spacing: 0.03em;
}

.privacy-policy__contentBody p {
	padding-inline: 5rem;
}

.privacy-policy__contentBody h2 + p,
.privacy-policy__contentBody h3 + p,
.privacy-policy__contentBody h4 + p {
	margin-block: 32rem 42rem;
}

.privacy-policy__contentBody li + li {
	margin-top: 2rem;
}

.contact {
	position: relative;
	overflow: hidden;
}

.contact__treatItem {
	position: absolute;
}

.contact__treatItem.--type1 {
	width: 529rem;
	top: -72rem;
	left: -57rem;
}

.contact__treatItem.--type2 {
	z-index: -1;
	width: 642rem;
	top: 31%;
	right: -461rem;
	translate: 0 -50%;
}

.contact__treatItem.--type3 {
	z-index: -1;
	width: 560rem;
	left: -376rem;
	bottom: -130rem;
}

.contact__treatItem.--type4 {
	display: none;
}

.contact__titleWrap {
	margin-top: 103rem;
	margin-inline: auto;
}

.contact__titleSub {
	top: 5rem;
	left: 0rem;
}

.contact__text {
	position: relative;
	z-index: 1;
	margin-top: 100rem;
	width: 780rem;
	margin-inline: auto;
	font-size: 20rem;
	font-weight: 700;
	line-height: normal;
}

.contact__content {
	position: relative;
	z-index: 10;
	margin-top: 60rem;
}

.contact__contentWrap {
	position: relative;
	border-radius: 24rem;
	background: #FFFFFF;
	border: 1rem solid #B59B91;
}

.contact__contentNarrowInner {
	position: relative;
	z-index: 10;
	padding-inline: 20rem;
	max-width: 816rem;
	margin-inline: auto;
}

.contact__form {
	width: 769rem;
	margin-inline: auto;
	padding-block: 60rem;
	display: flex;
	flex-direction: column;
	row-gap: 48rem;
}

.contact__row {
	display: flex;
	flex-direction: column;
	row-gap: 10rem;
}

.contact__head span {
	font-size: 18rem;
	font-weight: 700;
	line-height: 1.6;
	letter-spacing: 0.03em;
}

.contact__head span.--must {
	position: relative;
}

.contact__head span.--must::after {
	padding: 0 12rem 1rem 12rem;
	content: "必須";
	position: absolute;
	top: 50%;
	left: calc(100% + 8rem);
	translate: 0 -50%;
	width: 53rem;
	height: 23rem;
	color: #fff;
	font-size: 14rem;
	line-height: 1.6;
	letter-spacing: 0.03em;
	font-weight: 700;
	background: #B59B91;
	border-radius: 50rem;
}

.contact__head span.--multiple::before {
	content: "※複数選択可";
	position: absolute;
	top: calc(50% + 2rem);
	left: calc(100% + 8rem + 53rem + 8rem);
	translate: 0 -50%;
	width: 100rem;
	height: 26rem;
	font-size: 16rem;
}

.contact__acceptance {
	text-align: center;
}

.contact__acceptance label {
	margin-inline: auto;
}

.contact__textarea {
	padding-block: 15rem 21rem;
	white-space: nowrap;
}

.contact__textarea p {
	font-size: 16rem;
	line-height: 1.6;
	letter-spacing: 0.03em;
	font-weight: 700;
}

.contact__textarea a {
	color: #B59B91;
	text-decoration-line: underline;
	text-decoration-style: solid;
	-webkit-text-decoration-skip: ink;
	text-decoration-skip-ink: auto;
	text-decoration-thickness: 7.5%;
	text-underline-offset: 17.5%;
	text-underline-position: from-font;
	transition: opacity 0.3s ease;
}

#your-message {
	-ms-overflow-style: none; /* Internet Explorer and Edge */
	scrollbar-width: none; /* Firefox */
}

#your-message::-webkit-scrollbar {
	display: none; /* Chrome, Safari, Opera */
}

input[type=text],
input[type=email],
input[type=tel],
textarea {
	padding: 12rem;
	border-radius: 4rem;
	border: 1rem solid #704337;
	width: 100%;
	color: inherit;
	font-size: 16rem;
	font-weight: 700;
	font-family: "Zen Old Mincho", serif;
}

input[type=text]::-moz-placeholder,
input[type=email]::-moz-placeholder,
input[type=tel]::-moz-placeholder,
textarea::-moz-placeholder {
	color: #ababab;
}

input[type=text]::placeholder,
input[type=email]::placeholder,
input[type=tel]::placeholder,
textarea::placeholder {
	color: #ababab;
}

input[type=text],
textarea {
	line-height: 1.6;
	letter-spacing: 0.03em;
}

input[type=tel] {
	font-weight: 400;
}

textarea {
	resize: vertical;
	height: 120rem;
}

input:-webkit-autofill {
	-webkit-box-shadow: 0 0 0px 1000px #FFFFFF inset;
	-webkit-text-fill-color: #53473E;
}

input[type=checkbox] {
	width: 1rem;
	height: 1rem;
	position: absolute;
	clip: rect(0, 0, 0, 0);
}

input[type=checkbox]:focus-visible + span::before {
	outline: 1rem solid #000;
}

input[type=checkbox]:checked + span::after {
	opacity: 1;
}

.contact__dataCheckbox span.wpcf7-list-item-label {
	display: inline-block;
	padding-left: 30rem;
	position: relative;
	font-size: 16rem;
	font-weight: 700;
	line-height: 1.6;
	letter-spacing: 0.03em;
}

.contact__dataCheckbox span.wpcf7-list-item-label::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	translate: 0 -50%;
	border-radius: 4rem;
	border: 1rem solid #704337;
	width: 22rem;
	height: 22rem;
}

.contact__dataCheckbox span.wpcf7-list-item-label::after {
	content: "";
	position: absolute;
	width: 19rem;
	height: 19rem;
	left: 2rem;
	top: 50%;
	translate: 0 -50%;
	background: url(../img/check-icon.svg) no-repeat center center/contain;
	opacity: 0;
}

.contact__dataCheckbox label {
	max-width: 300rem;
	cursor: pointer;
}

.contact__dataCheckbox.--big span::before {
	width: 24rem;
	height: 24rem;
}

.contact__dataCheckbox.--big span::after {
	left: 3rem;
}

.contact__dataCheckbox .wpcf7-form-control {
	display: flex;
	flex-direction: column;
	row-gap: 5rem;
}

input[type=submit] {
	border-radius: 0rem;
	-webkit-box-sizing: content-box;
	-webkit-appearance: button;
	-moz-appearance: button;
	appearance: button;
	border: none;
	box-sizing: border-box;
	cursor: pointer;
	background: transparent;
}

input[type=submit]::-webkit-search-decoration {
	display: none;
}

.contact__submit {
	position: relative;
	text-align: center;
	width: 338rem;
	height: 67rem;
	padding: 0;
	margin-top: 12rem;
}

.contact__submit::after {
	position: absolute;
	pointer-events: none;
	right: 40rem;
}

.contact__submit input[type=submit] {
	display: inline-block;
	margin-inline: auto;
	width: 338rem;
	height: 67rem;
	color: #FFFFFF;
	font-family: "Zen Old Mincho";
	font-size: 18rem;
	line-height: 1.5;
	font-weight: 700;
	transition: color 0.3s ease;
}

.wpcf7-list-item {
	margin: 0;
}

.wpcf7-spinner {
	position: absolute;
	top: calc(100% + 20rem);
}

.nopage {
	margin-inline: auto;
	margin-block: 40rem 120rem;
}

.nopage__top {
	font-size: 72rem;
	color: rgba(83, 71, 62, 0.5);
}

.nopage__title {
	font-size: 32rem;
	margin-top: 30rem;
	padding-bottom: 30rem;
	border-bottom: 3rem solid rgba(83, 71, 62, 0.5);
}

.nopage__text {
	font-size: 24rem;
	line-height: 1.5;
	margin-top: 40rem;
}

@media (any-hover: hover) {

.btn:hover {
	background: #FFFFFF;
	color: #8B7D6E;
}

.btn:hover::after {
	background-color: #8B7D6E;
}

.breadcrumb__inner a:hover {
	color: #B59B91;
}

.header__list:hover > a {
	opacity: 0.7;
}

.header__list:hover a::after {
	rotate: 180deg;
}

.header__list:hover::after {
	width: 100%;
	opacity: 0.7;
	transition: width 0.3s ease;
}

.header__list:hover.--program .sub-menu {
	translate: -50% 0%;
	opacity: 1;
	visibility: visible;
}

.header__list .menu-item > a:hover {
	opacity: 0.7;
}

.header__sns:hover {
	opacity: 0.7;
}

.footer a:hover {
	color: #B59B91;
}

.top-contents__imgWrap:hover .top-contents__img {
	opacity: 0.7;
}

.top-contents__imgWrap:hover img {
	scale: 1.1;
}

.top-blog__item:hover .top-blog__itemImg {
	opacity: 0.5;
}

.top-link__item:hover {
	opacity: 0.7;
}

.program__qa .qa__accordionQuestion:hover {
	cursor: pointer;
}

.archive-blog__item:hover .archive-blog__itemImgWrap img {
	scale: 1.1;
}

.archive-blog__item:hover .archive-blog__itemCategory {
	color: #b59b91;
	border: 1rem solid currentColor;
}

.archive-blog__item:hover .archive-blog__itemTitle,
.archive-blog__item:hover .archive-blog__itemExcerpt {
	opacity: 0.5;
}

.archive-blog__item:hover .archive-blog__itemBtn {
	border: 1rem solid currentColor;
	color: #8B7D6E;
	background: #FFFFFF;
}

.archive-blog__itemCategory.is-active,
.archive-blog__itemCategory:hover {
	cursor: pointer;
	color: #b59b91;
	border: 1rem solid currentColor;
}

.archive-blog__pagination .page-numbers:hover {
	color: #B59B91;
}

.archive-blog__pagination .page-numbers:hover path {
	stroke: #B59B91;
}

.archive-blog__pagination .page-numbers.prev:hover {
	background-color: #B59B91;
	translate: -10rem;
}

.archive-blog__pagination .page-numbers.next:hover {
	background-color: #B59B91;
	translate: 10rem;
}

.single__category:hover {
	cursor: pointer;
	color: #b59b91;
	border: 1rem solid currentColor;
}

.single-post__next:hover,
.single-post__prev:hover {
	cursor: pointer;
	opacity: 0.7;
}

.single-post__next:hover .single-post__btn,
.single-post__prev:hover .single-post__btn {
	border: 1rem solid currentColor;
	color: #8B7D6E;
	background: #FFFFFF;
}

.single-post__next:hover .single-post__btn svg path,
.single-post__prev:hover .single-post__btn svg path {
	stroke: #8B7D6E;
}

.contact__textarea a:hover {
	opacity: 0.7;
}

.contact__submit:hover input[type=submit] {
	color: #8B7D6E;
}

}

@media screen and (min-width: 768rem) {

.program__main {
	padding-bottom: 2621rem;
}

}

@media screen and (min-width: 1000px) {

.is-pc-sp {
	display: block;
}

.is-tab {
	display: none;
}

.is-tab-sp {
	display: none;
}

.is-sp {
	display: none;
}

.is-dsp {
	display: none;
}

}

@media screen and (max-width: calc(1000px - 1px)) {

.is-pc {
	display: none;
}

.is-pc-sp {
	display: none;
}

.is-tab {
	display: block;
}

.is-sp {
	display: none;
}

.is-dsp {
	display: none;
}

}

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

html {
	font-size: 0.2666666667vw;
}

body {
	font-size: 16rem;
}

[id] {
	scroll-margin-top: 70rem;
}

.is-pc-tab {
	display: none;
}

.is-pc-sp {
	display: block;
}

.is-tab {
	display: none;
}

.is-sp {
	display: block;
}

.page-top {
	padding-top: 70rem;
}

.inner {
	width: 335rem;
}

.section-title__wrap.--right {
	width: 100%;
}

.section-title {
	font-size: 24rem;
}

.section-title__sub {
	font-size: 60rem;
}

.section-title__sub.--right {
	left: unset;
	right: 0;
}

.btn {
	width: 335rem;
	gap: 8rem;
}

.btn.--center {
	justify-content: center;
	position: relative;
}

.btn.--center::after {
	position: absolute;
	top: 50%;
	right: 30rem;
	translate: 0 -50%;
}

.to-top__wrap.--top {
	padding-block: 48rem 40rem;
}

.to-top__wrap.--program {
	padding-block: 48rem 40rem;
}

.to-top__wrap.--recipe {
	padding-block: 48rem;
}

.to-top__wrap.--archive {
	padding-block: 48rem;
}

.to-top__wrap.--single {
	padding-block: 48rem;
}

.to-top__wrap.--privacy-policy {
	padding-block: 48rem;
}

.to-top__wrap.--contact {
	padding-block: 48rem;
}

.to-top {
	gap: 10rem;
	margin-right: 20rem;
}

.breadcrumb {
	display: none;
}

.header__inner {
	width: 345rem;
	align-items: center;
}

.header__logo a {
	width: 210rem;
}

.header__menu {
	width: 100%;
	height: 100vh;
	height: 100dvh;
	height: 100svh;
	padding-inline: 20rem;
	padding-top: 33rem;
	background: #FFFEFA;
	position: absolute;
	top: 0;
	right: 0;
	opacity: 0;
	pointer-events: none;
	visibility: hidden;
	translate: 0 5%;
	transition: all 0.5s ease;
}

.header__menu.is-active {
	translate: 0;
	opacity: 1;
	visibility: visible;
	pointer-events: all;
}

.header__menuTitle {
	display: block;
	padding-bottom: 20rem;
	text-align: center;
	position: relative;
}

.header__nav {
	flex-direction: column;
	gap: 3vh;
	margin-top: 4vh;
}

.header__list > a {
	height: 26rem;
	font-size: 18rem;
	gap: 4rem;
}

.header__list.--program > a::before {
	width: 32rem;
	height: 26rem;
}

.header__list.--program > a::after {
	display: none;
}

.header__list.--recipe > a::before {
	width: 32rem;
	height: 26rem;
}

.header__list.--works > a::before {
	width: 32rem;
	height: 26rem;
}

.header__list.--blog > a::before {
	width: 32rem;
	height: 26rem;
}

.header__list.--program .sub-menu {
	background: unset;
	-webkit-backdrop-filter: unset;
	backdrop-filter: unset;
	position: unset;
	opacity: 1;
	visibility: visible;
	padding: 0;
	translate: unset;
	justify-content: left;
	gap: 2vh;
	margin-left: 52rem;
	margin-top: 2vh;
}

.header__list .menu-item > a {
	font-weight: 400;
	justify-content: left;
}

.header__snsWrap {
	width: 100%;
	justify-content: center;
	position: unset;
	margin-top: 6vh;
}

.header__sns {
	display: flex;
	align-items: center;
	gap: 8rem;
}

.header__sns img {
	width: 20rem;
}

.header__snsTitle {
	display: block;
	font-family: "Zen Maru Gothic", sans-serif;
	font-size: 15rem;
	line-height: normal;
}

.header__drawer {
	display: block;
}

.footer {
	padding-block: 80rem 40rem;
}

.footer__inner {
	width: 335rem;
}

.footer__menu {
	flex-direction: column;
	gap: 40rem;
}

.footer__nav {
	width: 100%;
	height: unset;
	grid-template-columns: 1fr 1fr;
	grid-template-areas: unset;
	gap: 40rem 0;
}

.footer__list:nth-of-type(1) {
	grid-area: unset;
}

.footer__list:nth-of-type(2) {
	grid-area: unset;
}

.footer__list:nth-of-type(3) {
	grid-area: unset;
}

.footer__list:nth-of-type(4) {
	grid-area: unset;
}

.footer__list:nth-of-type(5) {
	grid-area: unset;
}

.footer__list:nth-of-type(6) {
	grid-area: unset;
}

.footer__snsWrap {
	flex-direction: row;
	order: unset;
	justify-content: space-between;
}

.footer__sns {
	gap: 8rem;
}

.footer__privacypolicy {
	margin-top: 24rem;
}

.top__top {
	padding-top: 70rem;
	background-image: url(../img/top-bg1-sp.webp);
}

.fv {
	padding-top: 24rem;
}

.fv__main {
	width: 100%;
	display: flex;
	flex-direction: column;
	gap: 88rem;
	aspect-ratio: unset;
	overflow: hidden;
}

.fv__title {
	position: unset;
	order: 1;
	gap: 8rem;
}

.fv__title span {
	font-size: 26rem;
	letter-spacing: 0.03em;
	background: #FFFFFF;
	margin-left: auto;
}

.fv__img.--1 {
	position: unset;
	width: 417rem;
	aspect-ratio: 417/337;
	margin-right: -53rem;
	margin-left: auto;
}

.fv__img.--2 {
	display: block;
	width: 179rem;
	aspect-ratio: 179/153;
	position: absolute;
	top: 287rem;
	left: -15rem;
}

.fv__lead {
	width: 100%;
	overflow: hidden;
	margin-top: 62rem;
}

.fv__leadTitle {
	font-size: 20rem;
	line-height: 1.75;
}

.fv__leadText {
	gap: 16rem;
	line-height: 1.6;
	letter-spacing: 0.05em;
	margin-top: 24rem;
}

.fv__leadText span > span {
	letter-spacing: 0.04em;
}

.top-contents__content {
	width: 100vw;
	margin-inline: calc(50% - 50vw);
	margin-top: 23rem;
	overflow: hidden;
	padding-inline: 20rem;
	padding-bottom: 26rem;
	position: relative;
}

.top-contents__content::after {
	content: "";
	width: 92rem;
	aspect-ratio: 92/14;
	background: url(../img/scroll-arrow.svg) no-repeat center center/contain;
	position: absolute;
	bottom: 0;
	left: 27rem;
}

.top-contents__main {
	overflow: visible;
	overflow-x: scroll;
	padding-bottom: 40rem;
}

.top-contents__itemWrap {
	gap: 0 24rem;
	padding-inline: 20rem;
}

.top-contents__item.--2 {
	margin-left: unset;
}

.top-contents__item.--3 {
	width: 319rem;
}

.top-contents__point.--1 {
	width: 213rem;
}

.top-contents__point.--2 {
	width: 240rem;
}

.top-contents__point.--3 {
	width: 300rem;
}

.top-contents__title {
	margin-top: 16rem;
}

.top-contents__text {
	margin-top: 8rem;
}

.top-contents__bottomImgWrap {
	flex-wrap: wrap;
	gap: 8rem;
	margin-top: 40rem;
}

.top-contents__bottomImg {
	width: 163rem;
}

.top-program {
	padding-block: 100rem;
	overflow: hidden;
}

.top-program__text {
	letter-spacing: 0.05em;
}

.top-program__lesson {
	margin-top: 60rem;
}

.top-program__itemWrap {
	gap: 94rem;
}

.top-program__item:nth-child(1)::after {
	display: none;
}

.top-program__itemNumber {
	width: 54rem;
}

.top-program__itemTitle {
	font-size: 20rem;
	margin-top: 10rem;
}

.top-program__itemTitle::after {
	width: calc(100% + 20rem);
}

.top-program__itemContent {
	flex-direction: column;
	align-items: start;
	gap: 21rem;
}

.top-program__itemContent.--reverse {
	flex-direction: column;
}

.top-program__itemImg {
	width: 100%;
}

.top-program__itemTextFrame {
	width: 435rem;
	margin-left: -20rem;
}

.top-program__itemTextFrame.--2 {
	margin-left: -80rem;
}

.top-program__itemTextWrap {
	width: 288rem;
	padding-top: 61rem;
}

.top-program__lessonInfoWrap {
	flex-direction: column;
	gap: 40rem;
	padding-block: 60rem;
	padding-inline: 24rem;
	margin-top: 90rem;
}

.top-program__lessonInfoWrap::after {
	display: block;
}

.top-program__lessonInfo.--2 {
	order: 2;
}

.top-program__infoItemWrap {
	gap: 24rem;
	margin-top: 24rem;
}

.top-program__infoItem {
	flex-direction: column;
	gap: 8rem;
}

.top-program__infoItem:last-child .top-program__infoItemTitle::after {
	display: none;
}

.top-program__infoItem--2 {
	width: 220rem;
	margin-inline: auto;
	margin-top: 24rem;
}

.top-program__infoItemTitle {
	width: 180rem;
	font-size: 18rem;
}

.top-program__infoItemTitle--2 {
	font-size: 18rem;
}

.top-program__btn {
	margin-top: 60rem;
}

.top-program__deco--1 {
	display: none;
}

.top-program__deco--2 {
	display: none;
}

.top-program__deco--3 {
	display: none;
}

.top-voice {
	background-image: url(../img/voice-bg-sp.svg?ver1.1);
	overflow: hidden;
	height: 1130rem;
	padding-top: 62rem;
}

.top-voice__item {
	width: 394rem;
}

.top-voice__item.--1 {
	top: 70rem;
	left: unset;
	right: -60rem;
}

.top-voice__item.--1 .top-voice__text {
	left: 8rem;
}

.top-voice__item.--2 {
	bottom: 360rem;
	right: unset;
	left: -55rem;
}

.top-voice__item.--2 .top-voice__text {
	left: 10rem;
}

.top-voice__item.--3 {
	top: 667rem;
	right: -60rem;
}

.top-voice__item.--3 .top-voice__text {
	left: 8rem;
}

.top-voice__text {
	width: 260rem;
}

.top-recipe {
	padding-block: 48rem 100rem;
}

.top-recipe::before {
	display: none;
}

.top-recipe::after {
	display: none;
}

.section-title__sub.--recipe {
	top: 50%;
	left: 5%;
}

.top-recipe__main {
	margin-top: 60rem;
}

.top-recipe__infoTitle {
	margin-top: 24rem;
}

.top-recipe__infoWrap {
	flex-direction: column;
	gap: 16rem;
	margin-top: 24rem;
}

.top-recipe__img {
	width: 100%;
}

.top-recipe__infoTextWrap {
	width: 100%;
}

.top-recipe__infoText {
	letter-spacing: 0.05em;
}

.top-recipe__btn {
	margin-top: 24rem;
}

.top-works {
	background-image: url(../img/top-works-bg-sp.svg?ver1.1);
	padding-block: 80rem;
}

.top-works__main {
	width: 355rem;
	border-radius: 24rem 0 0 24rem;
	border-right: unset;
	padding-block: unset;
	padding-inline: 24rem 24rem;
	margin-top: 65rem;
}

.top-works__title {
	font-size: 20rem;
	right: 5rem;
}

.top-works__bookWrap {
	width: 330rem;
	margin-top: 30rem;
}

.top-works__swiper {
	display: block;
}

.top-works__swiper-wrapper {
	justify-items: unset;
	gap: unset;
	translate: 22%;
}

.top-works__swiper-slide {
	display: block;
}

.top-works__swiper-pagination {
	position: unset;
	display: flex;
	justify-content: center;
	gap: 16rem;
	margin-top: 24rem;
	padding-right: 30rem;
}

.top-works__swiper-pagination .swiper-pagination-bullet {
	width: 10rem;
	height: auto;
	aspect-ratio: 1/1;
	margin: 0 !important;
	background: #E8E2DB;
	opacity: 1;
}

.top-works__swiper-pagination .swiper-pagination-bullet-active {
	background: #B59B91;
}

.top-works__book {
	width: auto;
}

.top-works__seasoningWrap {
	width: 330rem;
	justify-content: left;
	overflow: scroll;
	margin-top: 46rem;
}

.top-works__seasoningImg {
	flex-shrink: 0;
}

.top-works__btn {
	margin-top: 24rem;
}

.top-works__btn .btn {
	width: 100%;
	text-align: center;
}

.top-works__resultsWrap {
	gap: 16rem;
	margin-top: 30rem;
}

.top-works__results {
	grid-template-columns: 1fr;
	gap: 2rem;
}

.top-blog {
	padding-block: 100rem;
}

.top-blog::before {
	display: none;
}

.top-blog::after {
	display: none;
}

.section-title__wrap.--top-blog {
	margin-inline: unset;
}

.section-title__wrap.--top-blog .section-title__sub {
	top: 50%;
	left: 100%;
}

.top-blog__itemWrap {
	grid-template-columns: repeat(2, 1fr);
	gap: 8rem 10rem;
}

.top-blog__item {
	padding: 10rem;
}

.top-blog__itemLink {
	gap: 8rem;
}

.top-blog__itemImg {
	border-radius: 6rem;
}

.top-blog__itemNew {
	font-size: 16rem;
}

.top-blog__category {
	min-width: 88rem;
	font-size: 14rem;
}

.top-blog__itemTitle {
	line-height: 1.4;
	letter-spacing: unset;
	margin-top: 6rem;
}

.top-blog__itemDate {
	margin-top: unset;
}

.top-blog__btn {
	margin-top: 60rem;
}

.top-blog__btn .btn {
	width: 336rem;
}

.top-about {
	padding-block: 17rem 0;
	overflow: hidden;
}

.top-about::before {
	display: none;
}

.top-about::after {
	display: none;
}

.top-about__main {
	flex-direction: column;
	gap: 40rem;
}

.top-about__img {
	width: 271rem;
	margin-inline: auto;
}

.top-about__textWrap {
	width: 100%;
}

.top-about__title {
	font-size: 20rem;
}

.top-about__name {
	font-size: 20rem;
	margin-top: 16rem;
}

.top-about__deco {
	width: 100vw;
	aspect-ratio: 175/11;
	position: unset;
	margin-inline: calc(50% - 50vw);
	padding-bottom: 62rem;
	margin-top: 40rem;
}

.top-link {
	padding-block: 60rem;
}

.top-link::before {
	display: block;
}

.top-link__inner {
	grid-template-columns: repeat(2, 164rem);
	gap: 25rem 7rem;
}

.top-link__title {
	font-size: 14rem;
}

.program {
	background: url(../img/program-top-bg-sp.webp?ver1.2) no-repeat top center/cover;
}

.program::after {
	display: none;
}

.program::before {
	display: none;
}

.program__top {
	padding-top: 119rem;
}

.program__inner {
	width: 335rem;
}

.program__sectionTitleWrap .section-title__sub {
	left: 20%;
}

.program__lesson {
	margin-top: 40rem;
}

.program__itemContent {
	flex-direction: column;
	gap: 39rem;
}

.program__itemImg {
	aspect-ratio: 335/251;
	width: 335rem;
	height: auto;
	margin-inline: auto;
}

.program__main {
	background-image: url(../img/program-bg-sp.svg?ver1.2);
	margin-top: 89rem;
	padding-block: 80rem;
}

.program__main .bg-deco.-deco--1 {
	width: 130rem;
	rotate: -62deg;
	top: -57rem;
	right: calc(50% - 207rem);
}

.program__contents {
	gap: 80rem;
}

.program__item {
	padding-block: 65rem 100rem;
	padding-inline: 20rem;
	width: 335rem;
}

.program__lessonNumber {
	width: 47rem;
}

.program__lessonTitle {
	font-size: 20rem;
	margin-top: 10rem;
}

.program__lessonTitle::after {
	width: calc(100% + 20rem);
}

.program__lessonLead {
	font-size: 16rem;
	font-weight: 500;
	letter-spacing: 0.8rem;
	margin-top: 24rem;
}

.program__lessonBody {
	margin-top: 60rem;
}

.program__lessonContents {
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 58rem;
}

.program__lessonItemTitle {
	font-size: 18rem;
	margin-top: 18rem;
}

.program__lessonItemBtn {
	width: 100%;
	margin-top: 24rem;
}

.program__lessonNotice {
	padding-block: 76rem 60rem;
	padding-inline: 10rem;
	margin-block: 92rem -80rem;
}

.program__lessonNoticeRibbon {
	aspect-ratio: 280/110;
	width: 280rem;
	top: -27rem;
}

.program__lessonNoticeWrap {
	gap: 40rem;
}

.program__lessonNoticeContent {
	flex-direction: column;
}

.program__lessonNoticeHead {
	width: 100%;
	grid-template-columns: 100rem 1fr;
	align-items: center;
}

.program__lessonNoticeImgWrap {
	width: 100rem;
}

.program__lessonNoticeHeadTitle {
	line-height: 1.5;
	margin-top: unset;
}

.program__lessonNoticeDate {
	line-height: 1;
}

.program__lessonNoticeBody {
	width: 100%;
}

.program__lessonNoticeText {
	font-size: 16rem;
	line-height: 160%;
	letter-spacing: 0.8rem;
}

.program__lessonNoticeBtn {
	width: 269rem;
	margin-top: 24rem;
}

.program__lessonNoticeBtn a {
	gap: 8rem;
	padding-inline: 25rem;
}

.program__lessonNone {
	padding-block: 10rem 20rem;
}

.program__lessonNoneText {
	width: 230rem;
}

.program__qa {
	padding-block: 100rem 0;
}

.program__qa .qa__section-title .section-title__sub {
	top: 21%;
	left: 54%;
}

.program__qa .qa__accordion {
	padding-block: 80rem 47rem;
}

.program__qa .qa__accordionQuestionText,
.program__qa .qa__accordionAnswerText {
	font-size: 16rem;
}

.program__qa .qa__accordionLine {
	width: 90%;
}

.program__qa .qa__imgWrap {
	flex-wrap: wrap;
	gap: 8rem;
}

.program__qa .qa__img {
	width: 163rem;
}

.recipe-site {
	background: #FFFEFA url(../img/recipe-bg-sp.svg) no-repeat top center/cover;
}

.recipe-site__titleWrap {
	margin-top: 117rem;
}

.recipe-site__titleSub {
	top: 1rem;
	left: -50rem;
}

.recipe-site__head {
	margin-top: 40rem;
	flex-direction: column;
	width: auto;
}

.recipe-site__headImgWrap {
	padding-top: 0;
	width: auto;
}

.recipe-site__headImg:nth-of-type(1) {
	width: 260rem;
	position: relative;
	z-index: 2;
}

.recipe-site__headImg:nth-of-type(2) {
	margin-top: -77rem;
	margin-left: 193rem;
	width: 142rem;
}

.recipe-site__headTitle {
	font-size: 18rem;
	line-height: 1.5;
}

.recipe-site__headText {
	font-size: 16rem;
	line-height: 1.6;
	letter-spacing: 0.05em;
}

.recipe-site__body {
	margin-top: 80rem;
}

.recipe-site__items {
	row-gap: 52rem;
	width: 100%;
	margin-inline: 0;
}

.recipe-site__item {
	row-gap: 24rem;
}

.recipe-site__item:nth-of-type(2n + 1) {
	flex-direction: column;
}

.recipe-site__item:nth-of-type(2n) {
	flex-direction: column;
}

.recipe-site__item:nth-of-type(1) .recipe-site__itemImg {
	width: 100%;
}

.recipe-site__item:nth-of-type(2) .recipe-site__itemImg {
	width: 100%;
}

.recipe-site__item:nth-of-type(3) .recipe-site__itemImg {
	width: 100%;
}

.recipe-site__item:nth-of-type(4) .recipe-site__itemImg {
	rotate: 0deg;
}

.recipe-site__item:nth-of-type(5) .recipe-site__itemImg {
	rotate: 0deg;
}

.recipe-site__itemTextarea {
	padding-top: 0rem;
	width: 100%;
	row-gap: 24rem;
}

.recipe-site__itemTitle {
	padding-left: 66rem;
	font-size: 20rem;
}

.recipe-site__itemTitle::before {
	width: 50rem;
	height: 50rem;
}

.recipe-site__itemText {
	width: 100%;
	font-size: 16rem;
	line-height: 1.6;
	letter-spacing: 0.05em;
}

.recipe-site__itemText.--mla {
	margin-left: 0;
}

.recipe-site__itemImg {
	width: 100%;
}

.recipe-site__text {
	margin-top: 60rem;
}

.recipe-site__entry {
	width: 100%;
	margin-top: 60rem;
}

.recipe-site__entryHead {
	width: -moz-fit-content;
	width: fit-content;
	margin-inline: auto;
	white-space: normal;
	font-size: 18rem;
	line-height: 1.5;
}

.recipe-site__entryHead::before,
.recipe-site__entryHead::after {
	content: "";
	position: absolute;
	width: 33rem;
	height: 48rem;
	bottom: 4rem;
}

.recipe-site__entryHead::before {
	background: url(../img/recipe-treat-item01.svg) no-repeat center center/contain;
	right: calc(100% + 12rem);
}

.recipe-site__entryHead::after {
	background: url(../img/recipe-treat-item02.svg) no-repeat center center/contain;
	left: calc(100% + 12rem);
}

.recipe-site__entryHead .only-sp {
	display: block;
}

.recipe-site__entryHead .only-pc {
	display: none;
}

.recipe-site__entryBtn {
	gap: 45rem;
	padding-inline: 38rem;
	font-size: 18rem;
}

.recipe-site__bodyImgWrap {
	margin-top: 60rem;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 8rem;
}

.recipe-site__bodyImg {
	width: 164rem;
	border-radius: 8rem;
}

.archive-blog {
	background: #FFFEFA url(../img/blog-bg-sp.webp) no-repeat top center/cover;
}

.archive-blog__top {
	padding-top: 108rem;
}

.archive-blog__categories {
	gap: 10rem;
}

.archive-blog__main {
	padding-block: 100rem 0;
}

.archive-blog__contents .bg-deco.-deco--pink {
	display: block;
	bottom: -100rem;
	left: calc(50% - 250rem);
	rotate: -20deg;
	aspect-ratio: 195/132;
	width: 195rem;
	height: auto;
}

.archive-blog__list {
	gap: 82rem;
	padding-bottom: 40rem;
}

.archive-blog__item::after {
	top: calc(100% + 40rem);
}

.archive-blog__link {
	display: grid;
	grid-template-areas: "img  cat" "img  title" "txt  txt" "date  btn";
	grid-template-columns: 44% 1fr;
	grid-auto-rows: auto;
	-moz-column-gap: 16rem;
	column-gap: 16rem;
	padding-inline: 0;
}

.archive-blog__itemImgWrap {
	aspect-ratio: 150/100;
	grid-area: img;
	width: 150rem;
}

.archive-blog__itemContent {
	display: contents;
}

.archive-blog__itemMeta {
	display: contents;
}

.archive-blog__itemMeta .archive-blog__itemCategory {
	font-size: 14rem;
}

.archive-blog__itemCategory {
	font-size: 16rem;
	grid-area: cat;
}

.archive-blog__itemDate {
	margin-top: 23rem;
	font-size: 14rem;
	grid-area: date;
}

.archive-blog__itemTitle {
	font-size: 18rem;
	grid-area: title;
	margin-bottom: unset;
}

.archive-blog__itemExcerpt {
	grid-area: txt;
	margin-top: 8rem;
}

.archive-blog__itemBtn {
	grid-area: btn;
}

.archive-blog__pagination {
	margin-top: 80rem;
}

.archive-blog__pagination .nav-links {
	gap: 30rem;
	width: 335rem;
}

.archive-blog__pagination .page-numbers:nth-child(2),
.archive-blog__pagination .page-numbers:nth-last-child(2),
.archive-blog__pagination .page-numbers.dots {
	display: none;
}

.single {
	background-image: url(../img/single-bg-sp.webp);
}

.single__top {
	padding-top: 108rem;
}

.single__sectionTitleWrap .section-title__sub {
	top: 5%;
}

.single__contents {
	margin-top: 40rem;
	padding-inline: 20rem;
}

.single__category {
	font-size: 14rem;
}

.single__title {
	font-size: 18rem;
}

.single__date {
	font-size: 14rem;
}

.single__body h1,
.single__body h2 {
	margin-bottom: 16rem;
}

.single__body * + img,
.single__body * + figure,
.single__body * + p,
.single__body * + h1,
.single__body * + h2,
.single__body * + h3,
.single__body * + h4 {
	margin-top: 40rem;
}

.single-post__next-prev {
	margin-block: 80rem;
	width: 89.3333333333%;
}

.single-post__next-prev {
	flex-direction: column;
}

.single-post__next:last-of-type a,
.single-post__prev:last-of-type a {
	padding-bottom: 0;
}

.single-post__next a,
.single-post__prev a {
	width: 100%;
	gap: 22rem;
}

.single-post__next {
	padding-left: 0;
}

.single-post__next:first-of-type a {
	padding-top: 0;
}

.single-post__next::before {
	translate: 0;
	inset: initial;
	width: 100%;
	height: 1rem;
	background: url(../img/line-parts.svg) repeat-x center center/12rem 2rem;
}

.single-post__prev a {
	padding-bottom: 32rem;
}

.single-post__prev {
	padding-right: 0;
}

.single__btn {
	width: 335rem;
}

.privacy-policy__treatItem.--type1 {
	width: 263rem;
	top: -57rem;
	left: -41rem;
}

.privacy-policy__treatItem.--type2 {
	right: -127rem;
	top: 50%;
	width: 340rem;
}

.privacy-policy__treatItem.--type3 {
	width: 275rem;
	bottom: -125rem;
	left: -133rem;
}

.privacy-policy__treatItem.--type4 {
	display: block;
	width: 281rem;
	top: 190rem;
	right: -123rem;
}

.privacy-policy__titleWrap {
	margin-top: 117rem;
}

.privacy-policy__titleSub {
	top: 3rem;
	left: -51rem;
	width: 440rem;
	letter-spacing: -0.03em;
}

.privacy-policy__content {
	margin-top: 80rem;
}

.privacy-policy__contentHead p {
	font-weight: 700;
}

.privacy-policy__contentHead::before {
	bottom: -45rem;
}

.privacy-policy__contentBody {
	margin-top: 102rem;
}

.privacy-policy__contentBody p {
	letter-spacing: 0.05em;
}

.privacy-policy__contentBody li {
	font-size: 15rem;
	letter-spacing: 0.028125em;
}

.privacy-policy__contentBody p {
	padding-inline: 0;
}

.privacy-policy__contentBody h2 + p,
.privacy-policy__contentBody h3 + p,
.privacy-policy__contentBody h4 + p {
	margin-block: 33rem 43rem;
}

.contact__treatItem.--type1 {
	width: 263rem;
	top: -57rem;
	left: -41rem;
}

.contact__treatItem.--type2 {
	right: -127rem;
	top: 55%;
	width: 340rem;
}

.contact__treatItem.--type3 {
	width: 275rem;
	bottom: -152rem;
	left: -133rem;
}

.contact__treatItem.--type4 {
	display: block;
	width: 281rem;
	top: 190rem;
	right: -130rem;
}

.contact__titleWrap {
	margin-top: 117rem;
}

.contact__titleSub {
	top: 1rem;
	left: 27rem;
	letter-spacing: -0.03em;
}

.contact__text {
	margin-top: 60rem;
	width: 333rem;
	font-size: 18rem;
	line-height: 1.5;
}

.contact__content {
	margin-top: 52rem;
}

.contact__contentNarrowInner {
	padding-inline: 19rem;
}

.contact__form {
	width: 100%;
	row-gap: 38rem;
}

.contact__row.--ga-sp-33 {
	row-gap: 33rem;
}

.contact__head span.--multiple::before {
	font-size: 14rem;
	top: calc(100% + 14rem);
	left: 0;
}

.contact__acceptance {
	text-align: left;
}

.contact__acceptance label {
	text-align: center;
}

.contact__textarea {
	padding-block: 0 25rem;
	white-space: normal;
}

.contact__textarea p {
	line-height: 1.63;
}

.contact__dataCheckbox .wpcf7-form-control {
	row-gap: 8rem;
}

.contact__submit {
	width: 295rem;
	margin-top: 1rem;
}

.contact__submit::after {
	right: 23rem;
}

.nopage {
	margin-block: 30rem 60rem;
}

.nopage__top {
	font-size: 50rem;
}

.nopage__title {
	font-size: 20rem;
	margin-top: 10rem;
	padding-bottom: 20rem;
}

.nopage__text {
	font-size: 16rem;
	margin-top: 20rem;
}

}

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

.single-post__next a {
	padding-top: 32rem;
}

}

@media screen and (max-width: calc(375 - 1px)) {

.is-dsp {
	display: block;
}

}

