@charset "utf-8";

/*
共通CSS
*/

:root {
	--pallet-brown: #210505;
	--pallet-white: #ffffff;

	--pallet-yellow: #FFE565;
	--pallet-deep-yellow: #ECC440;
	--pallet-vivid-yellow: #FECB09;

	--pallet-red: #e40800;

	--gradation-yellow: linear-gradient(to bottom right, rgba(255, 229, 101, 1) 0 30%, rgba(255, 229, 101, 0.3) 100%);

	--8px: 0.5rem;
	--9px: 0.5625rem;
	--10px: 0.625rem;
	--11px: 0.6875rem;
	--12px: 0.75rem;
	--13px: 0.8125rem;
	--14px: 0.875rem;
	--15px: 0.9375rem;
	--16px: 1rem;
	--17px: 1.0625rem;
	--18px: 1.125rem;
	--19px: 1.1875rem;
	--20px: 1.25rem;
	--21px: 1.3125rem;
	--22px: 1.375rem;
	--23px: 1.4375rem;
	--24px: 1.5rem;
	--25px: 1.5625rem;
	--26px: 1.625rem;
	--27px: 1.6875rem;
	--28px: 1.75rem;
	--29px: 1.8125rem;
	--30px: 1.875rem;
	--31px: 1.9375rem;
	--32px: 2rem;
	--33px: 2.0625rem;
	--34px: 2.125rem;
	--35px: 2.1875rem;
	--36px: 2.25rem;
	--37px: 2.3125rem;
	--38px: 2.375rem;
	--39px: 2.4375rem;
	--40px: 2.5rem;
	--41px: 2.5625rem;
	--42px: 2.625rem;
	--43px: 2.6875rem;
	--44px: 2.75rem;
	--45px: 2.8125rem;
	--46px: 2.875rem;
	--47px: 2.9375rem;
	--48px: 3rem;
	--49px: 3.0625rem;
	--50px: 3.125rem;
	--51px: 3.1875rem;

	--54px: 3.375rem;

	--57px: 3.5625rem;

	--60px: 4.125rem;

	--66px: 3.75rem;

	--71px: 4.4375rem;

	--81px: 5.0625rem;

	--90px: 5.625rem;

	--108px: 6.75rem;

	--110px: 6.875rem;

	--112px: 7rem;

	--125px: 7.8125rem;

	--142px: 8.875rem;

	--152px: 9.5rem;

	--180px: 11.25rem;

	--247px: 15.4375rem;

	/* --font-family-en: "bigmoore", serif;
	--font-style-en: normal;
	--font-weight-en: 400; */

	--font-family-en: 'Cormorant Garamond', serif;
	--font-style-en: normal;
	--font-weight-en: 600;
	
	--font-family-ja: "yu-mincho-pr6n", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	--font-style-ja: normal;
	--font-weight-ja: 600;

	--width-1960px: 1960px;
	--width-1366px: 1366px;
	--width-1166px: 1166px; /* 1366-200=1166px */
	--width-1166px-space: calc(1166px + 10%);
	--width-950px-space: calc(950px + 10%);
	--width-900px-space: calc(900px + 10%);
	--width-850px-space: calc(850px + 10%);
	--width-800px-space: calc(800px + 10%);
	--width-750px-space: calc(750px + 10%);
	--width-700px-space: calc(700px + 10%);
	--width-650px-space: calc(650px + 10%);
	--width-600px-space: calc(600px + 10%);
}

body {
	color: var(--pallet-brown);
	background-color: var(--pallet-yellow);
}

body *{
	font-family: var(--font-family-ja);
	font-style: var(--font-style-ja);
	font-weight: var(--font-weight-ja);
	font-feature-settings: "palt";
	letter-spacing: .03rem;
}

a {
	color: var(--pallet-brown);
	text-decoration: none;
}
a:link,
a:visited,
a:active {
	color: var(--pallet-brown);
	text-decoration: none;
}
a:hover {
	/* color: #641010; */
	text-decoration: none;
	transition: 0.2s ease-in-out;
	opacity: 0.6;
}

a.link_button {
	display: inline-block;
	background-color: var(--pallet-brown);
	color: var(--pallet-white);
}
a.link_button:hover {
	background-color: #4c1f1f !important;
}

.pc_only {
	display: block;
}
  
.sp_only {
	display: none;
}

.visibility_hidden {
	visibility: hidden;
}

/*----- 改行 -----*/

.word_part {
	display: inline-block;
}

.word_nowrap {
	white-space: nowrap;
}

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

	.pc_only {
		display: none !important;
	}

	.sp_only {
		display: block !important;
	}
}

/*----- layout -----*/

.max_width_pc {
	width: 100%;
	max-width: var(--width-850px-space);
	padding-right: 5%;
	padding-left: 5%;
	margin: 0 auto;
}

/*----- parallax -----*/

.parallax_main_img {
	position: relative;
	/* margin-top: 100svh;
	margin-top: 100vh; */
}

.parallax_main_img_inner {
	/* padding-top: 165px; */
	background-color: var(--pallet-yellow);
	width: 100%;
	height: auto;
}

.parallax {
	position: relative;
	/* margin-top: 350px; */
	margin-top: 300px;
}

.parallax_big {
	position: relative;
	/* margin-top: 350px; */
	margin-top: 75svh;
	margin-top: 75vh;
}

.parallax_big_space {
    padding-top: 50px;
}

.parallax_inner {
	/* padding-top: 165px; */
	background-color: var(--pallet-yellow);
	width: 100%;
	height: auto;
}

.parallax_inner_big{
	/* padding-top: 165px; */
	background-color: var(--pallet-yellow);
	width: 100%;
	height: auto;
	padding-top: 30px;
}

/* イメージ */
/* big */
.contents_top_img_big_wrapper {
	position: fixed;
	top: 60px;
	width: 100%;
	/* height: 100vh; */
	height: 80svh;
	height: 80vh;
	overflow: hidden;
	backface-visibility: hidden;
	-webkit-backface-visibility: hidden;
}

.contents_top_img_big {
	position: absolute;
	width: 100%;
	/* height: 80svh;
	height: 80vh; */
	height: 100%;
	object-fit: cover;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
}

/* small */
.contents_top_img_small_wrapper {
	position: fixed;
	top: 80px;
	width: 100%;
	/* height: 100vh; */
	/* height: 400px; */
	height: 350px;
	overflow: hidden;
	backface-visibility: hidden;
	-webkit-backface-visibility: hidden;
}
  
.contents_top_img_small {
	position: absolute;
	width: 100%;
	/* height: 400px; */
	height: 100%;
	object-fit: cover;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
}

/* ギャラリー */
.wp-block-gallery.has-nested-images {
	display: flex;
	flex-wrap: wrap;
}
  
.blocks-gallery-caption.wp-element-caption {
	padding-top: 15px;
}

/* 画像 */
/* .wp-block-image.aligncenter {
	display: block;
  text-align: center;
}

.wp-block-image.alignleft {
	display: block;
  text-align-last: left;
}

.wp-block-image.alignright {
	display: block;
  text-align: right;
} */

/* 画像 */
.wp-block-image.aligncenter {
	margin-inline: auto;
}

.wp-block-image.alignleft {
	margin-inline: 0 auto;
}

.wp-block-image.alignright {
	margin-inline: auto 0;
}

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

	.parallax {
		/* margin-top: 50px; */
		margin-top: 90px;
	}

	.parallax-inner {
		padding-top: 100px;
	}

	.contents_top_img_small_wrapper {
		/* height: 200px; */
		height: 150px;
		top: 60px;
	}

	/* .contents_top_img_small {
		height: 200px;
	} */

	/* big */
	.parallax_big {
		margin-top: 40svh;
		margin-top: 40vh;
	}
	
	.contents_top_img_big_wrapper {
		height: 50svh;
		height: 50vh;
	}
	
	/* .contents_top_img_big {
		height: 80svh;
		height: 50vh;
	} */

	.parallax_big_space {
		padding-top: 90px;
	}	

}

/*----- parallax img all -----*/

.parallax_img_all {
	position: relative;
	/* margin-top: 350px; */
	margin-top: 100svh;
	margin-top: 100vh;
	background-color: var(--pallet-yellow);
	padding-top: 50px;
}

/* .parallax_img_all_inner {
	background-color: var(--pallet-yellow);
	width: 100%;
	height: auto;
} */

/* イメージ */
/* all */
.contents_top_img_all_wrapper {
	position: fixed;
	top: 80px;
	width: 100%;
	/* height: 100vh; */
	height: calc(100svh - 80px);
	height: calc(100vh - 80px);
	overflow: hidden;
	backface-visibility: hidden;
	-webkit-backface-visibility: hidden;
}

.contents_top_img_all {
	position: absolute;
	width: 100%;
	height: 100%;
	object-fit: cover;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
}

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

	.contents_top_img_all_wrapper {
		top: 60px;
		height: 50svh;
		height: 50vh;
	}

	.parallax_img_all {
		margin-top: 50svh;
		margin-top: 50vh;
	}

	.parallax_img_all {
		padding-top: 30px;
	}
	
}

/* ページごとのタイトル */
.page_title {
	margin-bottom: 40px;
}
.page_title .page_title_EN {
	font-size: 40px;
}

.page_title .page_title_JA {
	font-size: 20px;
}

/* 背景色 */
.background_color_1 {
	background-color: var(--pallet-yellow);
}
.background_color_2 {
	background-color: var(--pallet-deep-yellow);
}

/* 共通タイトル */
.contents_title_wrapper {
	padding-left: 6%;
	padding-right: 6%;
	padding-bottom: 50px;
}

.contents_title_en {
    font-family: var(--font-family-en);
    font-style: var(--font-style-en);
    font-weight: var(--font-weight-en);
    font-size: var(--125px);
    display: block;
    line-height: 0.8;
    padding-bottom: 15px;
}

.contents_title_ja {
	font-size: var(--16px);
	letter-spacing: 0.2rem;
	display: block;
}

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

	.contents_title_wrapper {
		padding-bottom: 30px;
	}

	.contents_title_en {
		font-size: var(--57px);
	}

	.contents_title_ja {
		font-size: clamp(var(--12px), 0.689rem + 0.26vw, var(--16px));
	}
}


/* 共通ボタン */

.ml_btn_center_wrapper {
	text-align: center;
	margin-inline: auto;
}

a.ml_btn {
    font-size: clamp(var(--14px), 0.845rem + 0.13vw, var(--16px));
    padding: 22px 25px 22px;
    width: 340px;
    display: inline-block;
    text-align: center;
    letter-spacing: 0.25rem;
	position: relative;
	transition: all 0.8s ease;
	border: 1px solid var(--pallet-brown);
	/* border-top: 8px solid var(--pallet-brown); */
}

a.ml_btn:hover {
	opacity: 1;
}

/* brown */
a.ml_btn.ml_btn_brown {
    background-color: var(--pallet-brown);
	color: var(--pallet-white);
}

a.ml_btn.ml_btn_brown:hover {
	background-color: var(--pallet-yellow);
	color: var(--pallet-brown);
}

/* white */
a.ml_btn.ml_btn_white {
    background-color: var(--pallet-white);
	color: var(--pallet-brown);
}

a.ml_btn.ml_btn_white:hover {
	background-color: var(--pallet-yellow);
	/* border: 1px solid var(--pallet-white); */
	/* border-top: 8px solid var(--pallet-white); */
}

/* 矢印 */
a.ml_btn::after {
    content: "";
    margin: auto;
    position: absolute;
    top: 0px;
    bottom: 5px;
    right: 23px;
    width: 12px;
    height: 12px;
    border-top: 1px solid;
    border-right: 1px solid;
    transform: rotate(45deg);
	transition: all 0.8s ease;
}

/* 白地・茶文字 */

a.ml_btn.ml_btn_white::after {
    border-top: 1px solid var(--pallet-brown);
    border-right: 1px solid var(--pallet-brown);
}

/* 茶地・白文字 */

a.ml_btn.ml_btn_brown::after {
    border-top: 1px solid var(--pallet-white);
    border-right: 1px solid var(--pallet-white);
}

a.ml_btn.ml_btn_brown:hover::after {
	border-top: 1px solid var(--pallet-brown);
    border-right: 1px solid var(--pallet-brown);
}

/* ボタン注釈テキスト */
.ml_btn_txt {
	font-size: var(--14px);
	padding-top: 15px;
}

/* 共通sns */
a.menu_sns {
    display: flex;
    align-items: center;
    justify-content: center;
	transition: all 0.3s ease;
	width: 30px;
	height: auto;
}

/* 共通sns 表示なしページ */
#index_page .fixed_menu_sns_wrapper.active,
#contact_static_page .fixed_menu_sns_wrapper.active,
#shop_post_page .fixed_menu_sns_wrapper.active,
#privacy_policy_static_page .fixed_menu_sns_wrapper.active,
#landing_page_post_page .fixed_menu_sns_wrapper.active {
	opacity: 0;
}

/* 共通 白文字縦のタイトル */

.contents_decotxt_white_wrapper {
	position: relative;
}

.contents_decotxt_white {
	font-family: var(--font-family-en);
	font-style: var(--font-style-en);
	font-weight: var(--font-weight-en);
	font-size: var(--142px);
	color: var(--pallet-white);
	position: absolute;
	top: 0;
	right: 0;
	writing-mode: vertical-rl;
	line-height: 1;
	white-space: nowrap;
}

/* 左ver */

.contents_decotxt_white.reverse {
	top: auto;
	right: auto;
	left: 0;
	bottom: 0;
}

/* 白い線 */
.background_deco_border {
	background-image:
		url(../images/svg/deco-border-left.svg),
		url(../images/svg/deco-border-right.svg);
	/* background-size: 760px auto; */
	background-size: 550px auto;
	background-position:
		0 0,
		100% 100%;
	background-repeat: no-repeat;
	overflow: hidden;
}


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

	a.ml_btn {
		width: 260px;
		padding: 20px 25px 20px;
	}

	.contents_decotxt_white { 
		font-size: var(--57px);
	}

	.background_deco_border {
		background-size: 300px auto;
	}
	
}

/* ギャラリー */
.wp-block-gallery.has-nested-images {
	display: flex;
	flex-wrap: wrap;
}
  
.blocks-gallery-caption.wp-element-caption {
	padding-top: 15px;
}


/* ヘッダーブロック */

header {
	width: 100%;
	height: 95px;
	font-size: clamp(var(--15px), 0.882rem + 0.1vw, var(--16px));
	position: sticky;
	background: var(--pallet-white);
	top: 0;
	right: 0;
	left: 0;
	z-index: 99;
}

.header_wrapper {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: inherit;
	height: inherit;
}

.header_logo {
	margin-right: 3%;
    margin-left: 3%;
}

.header_logo_img {
    width: 230px;
    height: auto;
	object-fit: cover;
}

.header_nav_menu_wrapper {
    display: flex;
    align-items: center;
    justify-content: flex-end;
	gap: 30px;
}

.header .nav_menu_wrapper {
    display: flex;
    gap: 8px 35px;
}

/* オンラインショップ */
a.header_nav_onlineshop {
    height: 95px;
    background-color: var(--pallet-brown);
    display: flex;
    justify-content: center;
    color: var(--pallet-white);
    align-items: center;
    padding: 10px 30px;
	white-space: nowrap;
	line-height: 1.2;
}

a.header_nav_onlineshop::before {
	content: '';
	display: inline-block;
	width: 17px;
	height: 17px;
	background-image: url(../images/svg/cart-icon-white.svg);
	background-size: contain;
	  background-repeat: no-repeat;
	vertical-align: middle;
	margin-right: 7px;
	margin-bottom: 2px;
}

.header_nav_onlineshop_txt {
    letter-spacing: 0.1rem;
}

.header_nav_onlineshop_txt br {
	display: none;
}

/* header .header_wrapper .header_menu li{
	margin-right: 30px;
}
header .header_wrapper .header_menu li:last-child{
	margin-right: 0;
} */

/* ハンバーガーメニュー */
.humberger {
	display: none;
}

.humberger:hover {
	cursor: pointer;
}

.header__nav-area {
	/* display: none; */
	visibility: hidden;
}

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

	.header .nav_menu_wrapper {
		flex-wrap: wrap;
		margin-left: 25%;
	}

	a.header_nav_onlineshop::before {
		margin-bottom: 15px;
	}

	.header_nav_onlineshop_txt br {
		display: block;
	}
}

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

	.header {
		height: 60px;
	}

	/* .header_wrapper {
		align-items: center;
	} */

	.header_logo {
		order: 2;
	}

	.header_logo_img {
		width: 166px;
	}

	/* nav */
	.header .nav_menu_area {
		display: none;
	}

	.header_nav_menu_wrapper {
		order: 1;
	}
		
	/* オンラインショップ */
	a.header_nav_onlineshop {
		height: 60px;

	}

	.header_nav_onlineshop_txt {
		display: none;
	}

	a.header_nav_onlineshop::before {
		margin: 0;
	}

	/* ハンバーガーメニュー */

	.humberger {
		order: 3;
	}

	/* ハンバーガーメニュー active */

	.humberger {
		display: block;
		height: 60px;
		/* margin-left: auto; */
		position: relative;
		z-index: 100;
		width: 60px;
		border: none;
		background-color: transparent;
	}

	.humberger_logo_img {
		width: 220px;
		height: auto;
		margin: 0 auto;
		display: block;
	}

	.humberger.-active .humberger__line {
		background-color: transparent;
	}

	.humberger.-active .humberger__line::before {
		top: 0;
		transform: rotate(45deg);
	}

	.humberger.-active .humberger__line::after {
		top: 0;
		transform: rotate(-45deg);
	}

	/* .humberger.-active .humberger__text::before {
	content: '閉じる';
	} */

	.humberger__line {
		display: block;
		height: 2px;
		position: absolute;
		/* top: 23px; 文字が入るとき */
		/* transform: translateX(-50%); 文字が入るとき */
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		width: 24px;
		background-color: var(--pallet-brown);
		transition: 0.4s;
	}

	.humberger__line:before,
	.humberger__line:after {
		content: "";
		display: block;
		height: 100%;
		position: absolute;
		width: 100%;
		background-color: var(--pallet-brown);
		transition: inherit;
	}

	.humberger__line:before {
		top: -6px;
	}

	.humberger__line:after {
		top: 6px;
	}

	/* .humberger__text {
		position: absolute;
		bottom: 8px;
		left: 50%;
		transform: translateX(-50%);
		width: 100%;
	} */

	/* .humberger__text::before {
		content: "メニュー";
		text-align: center;
		color: #172e59;
		font-size: 10px;
		font-weight: 900;
	} */

	.header__nav-area {
		position: fixed;
		top: 0;
		right: -100%;
		z-index: 9;
		height: 100vh;
		width: 100%;
		/* display: none; */
		padding-top: 60px;
		background-color: var(--pallet-white);
		transition: 0.4s;
		visibility: hidden;
	}

	.header__nav-area.-active {
		right: 0;
		/* display: block; */
		visibility: visible;
	}

	.global-navigation {
		padding-top: 20px;
		padding-right: 25px;
		padding-bottom: 20px;
		padding-left: 25px;
	}

	.global-navigation__list > li {
		padding-bottom: 15px;
		text-align: center;
		/* border-bottom: 2px solid #e7e9ee; */
	}

	.global-navigation__list > li + li {
		margin-top: 15px;
	}

	/* .global-navigation__link {
		display: flex;
		align-items: center;
		justify-content: space-between;
		color: var(--pallet-brown);
		font-weight: 900;
		transition: color 0.4s;
		font-size: 0.875rem;
	} */
	
	/* .global-navigation__link.-accordion {
		position: relative;
		background: none;
		border: none;
		-webkit-appearance: none;
		-moz-appearance: none;
		appearance: none;
		width: 100%;
		padding: 0;
	}

	.global-navigation__link.-accordion::after {
		content: '';
		display: block;
		height: 12px;
		position: absolute;
		top: 50%;
		right: 5px;
		width: 2px;
		background-color: #ed3242;
		transform: translateY(-50%);
		transition: transform 0.4s;
	}

	.global-navigation__link.-accordion::before {
		content: '';
		display: block;
		height: 2px;
		position: absolute;
		top: 50%;
		right: 0;
		width: 12px;
		background-color: #ed3242;
		transform: translateY(-50%);
		
	} */

	.global-navigation__link.-active::after {
		transform: translateY(-50%) rotate(-90deg);
	}

	.ml_hamburger_btn {
		text-align: center;
	}

	a.ml_hamburger_btn {
		font-size: var(--16px);
		padding: 15px 20px 15px;
		width: 250px;
		display: inline-block;
		text-align: center;
		letter-spacing: 0.15rem;
		position: relative;
		transition: all 0.8s ease;
		border: 1px solid var(--pallet-brown);
		background-color: var(--pallet-brown);
		color: var(--pallet-white);
	}

	a.ml_hamburger_btn::before {
		content: '';
		display: inline-block;
		width: 23px;
		height: 23px;
		background-image: url(../images/svg/cart-icon-white.svg);
		background-size: contain;
		background-repeat: no-repeat;
		vertical-align: middle;
		margin-right: 1px;
		margin-bottom: 2px;
	}

	.header .menu_sns_wrapper {
		display: flex;
		justify-content: center;
		align-items: center;
		gap: 10px;
		margin-top: 30px;
	}
	
}

/* フッターブロック */
footer {
    width: 100%;
    color: var(--pallet-white);
    background-color: var(--pallet-brown);
    display: flex;
    gap: 50px;
    padding: 50px 5%;
    align-items: center;
	font-size: clamp(var(--15px), 0.882rem + 0.1vw, var(--16px));
	position: relative;
	z-index: 90;
}

.footer_logo_img {
	/* width: 160px; */
	width: 180px;
	height: auto;
}

.footer a {
	color: var(--pallet-white);
}

.footer ul.nav_menu_wrapper {
    display: flex;
	flex-wrap: wrap;
    gap: 10px 30px;
    margin-bottom: 25px;
}

.footer_link_wrapper {
    display: flex;
    align-items: center;
    gap: 35px;
}

.footer .menu_sns_wrapper {
    display: flex;
    gap: 20px;
    align-items: center;
}

.footer_txt {
    font-size: clamp(var(--12px), 0.695rem + 0.1vw, var(--13px));
    padding-top: 30px;
    display: block;
	max-width: max-content;
}

.copyright {
    font-size: clamp(var(--12px), 0.695rem + 0.1vw, var(--13px));
    /* margin-top: 25px; */
	margin-top: 5px;
}

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

	footer {
		gap: 25px;
		padding: 40px 5%;
		align-items: flex-start;
		font-size: var(--13px);
		flex-direction: column;
	}

	.footer_logo_img {
		width: 108px;
	}

	.footer ul.nav_menu_wrapper {
		gap: 10px 30px;
		margin-bottom: 25px;
		flex-direction: column;
	}

	.footer a.ml_footer_btn {
		font-size: var(--13px);
	}

	.footer_link_wrapper {
		align-items: flex-start;
		gap: 35px;
		flex-direction: column;
	}

	.footer .menu_sns_wrapper {
		gap: 15px;
	}

	.footer a.menu_sns img {
		width: 25px;
		height: auto;
	}
}

/* ボタン */

a.ml_footer_btn {
	font-size: var(--16px);
	padding: 15px 20px 15px;
	width: 250px;
	display: inline-block;
	text-align: center;
	letter-spacing: 0.15rem;
	position: relative;
	transition: all 0.8s ease;
	border: 1px solid var(--pallet-white);
	background-color: var(--pallet-white);
	color: var(--pallet-brown);
}

a.ml_footer_btn::before {
	content: '';
	display: inline-block;
	width: 23px;
	height: 23px;
	background-image: url(../images/svg/cart-icon.svg);
	background-size: contain;
	background-repeat: no-repeat;
	vertical-align: middle;
	margin-right: 1px;
	margin-bottom: 2px;
}

/* エラーページ */
#error_404 {
	/* padding: 50px 0; */
	padding: 30vh 0;
	text-align: center;
}

.error_404 {
    padding: 30vh 5%;
    display: flex;
    justify-content: center;
}

/* メインコンテンツ内の幅の制限があるインナー */
main .inner_1{
	width: 100%;
	max-width: 1600px;
	margin: 0 auto;
}
main .inner_2{
	width: 100%;
	max-width: 1500px;
	margin: 0 auto;
}
main .inner_3{
	width: 100%;
	max-width: 1400px;
	margin: 0 auto;
}
main .inner_4{
	width: 100%;
	max-width: 1300px;
	margin: 0 auto;
}
main .inner_5{
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
}

/* トップページのメインコンテンツ */
main #index{
	text-align: center;
}

/* カテゴリ未設定のコンテンツ */
main #uncategorized{
	text-align: center;
}

/* アーカイブのコンテンツ */
main #archie_title{
	font-size: 28px;
	margin-bottom: 10px;
}
main #archie_contents{
	margin-bottom: 20px;
}
main #archive #page_move{
	
}

/*
	ページ送りブロック
*/
#page_move_block {
    margin-top: 50px;
	margin-bottom: 100px;
}

#page_move_block .pagenavi__list{
	display: flex;
	justify-content: center;
	align-items: center;
}
#page_move_block .pagenavi__list .pagenavi__link{
	display: inline-block;
	padding: 1em 1.5em;
	margin: 4px;
	
}
#page_move_block .pagenavi__list .current_page{
	color: #FFF;
	background-color: var(--pallet-brown);
}
#page_move_block .pagenavi__list .other_page{
	color: var(--pallet-brown);
	background-color: #FFF;
}
#page_move_block .pagenavi__list .other_page:hover{
	text-decoration: none;
	background-color: #fffabf;
}
#page_move_block .pagenavi__list .pagenavi__dot{
	margin: 4px 25px;
}




/*
	新着情報ページ/news/
	および
	ショップ詳細
	/shop/[店舗名]/
	のニュース一覧
*/

#shop_news_section .parallax_inner {
	padding-bottom: 150px;
}

#news_archive_page .contents_title_wrapper,
#news_post_page .contents_title_wrapper {
	padding-bottom: 20px;
}

#shop_post_page .contents_title_wrapper {
	padding-bottom: 0;
}

#shop_news_section{
	padding-top: 80px;
	padding-bottom: 120px;
}

#news_post_page #shop_news_section,
#news_archive_page #shop_news_section {
	padding-top: 50px;
	padding-bottom: 0;
}

#shop_news_section #shop_name{
	font-size: 36px;
	text-align: center;
	margin-bottom: 30px;
}
#shop_news_section #shop_news_list{
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	width: 100%;
	max-width: calc(var(--width-1166px) + 16%);
	margin: 0 auto;
	padding-top: 50px;
	padding-right: 8%;
	padding-left: 8%;
	column-gap: 5%;
}
#shop_news_section #shop_news_list li{
	width: 100%;
	background-color: #FFF;
	margin-bottom: 40px;
}
.shop_news_image {
	display: block;
	position: relative;
}
.shop_news_image::before {
	content: "";
	display: block;
	padding-top: 73%;
  }
#shop_news_section #shop_news_list li .shop_news_image img{
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	object-fit: cover;
}
/* @media (max-width: 1200px) {
	#shop_news_section #shop_news_list li{
		width: calc(32vw - 20px);
	}
	#shop_news_section #shop_news_list li .shop_news_image img{
		width: calc(32vw - 20px);
		height: calc(24vw - 7.5px);
	}
} */

#shop_news_section #shop_news_list .shop_news_content{
	width: 100%;
	padding: 15px;
}
#shop_news_section .shop_news_content .shop_news_date_cate{
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	margin-bottom: 10px;
	font-size: clamp(var(--12px), 0.72rem + 0.13vw, var(--14px));
	gap: 20px;
}
#shop_news_section .shop_news_date_cate .shop_news_date{
	font-weight: bold;
	padding-top: 5px;
}

/* #shop_news_section .shop_news_date_cate .shop_news_cate span{
	display: inline-block;
	background-color: var(--pallet-brown);
	color: #FFF;
	padding: 0.2rem 1rem 0.13rem;
} */
/* #shop_news_section .shop_news_date_cate .shop_news_cate {
    min-width: 90px;
    text-align: center;
    display: flex;
    flex-direction: column;
    gap: 5px;
} */
#shop_news_section .shop_news_date_cate .shop_news_cate {
    min-width: 90px;
    text-align: center;
    display: flex;
	flex-wrap: wrap;
    flex-direction: row-reverse;
    gap: 5px;
}
#shop_news_section .shop_news_date_cate .shop_news_cate span {
    display: inline-block;
    background-color: var(--pallet-brown);
    color: #FFF;
    padding: 0.2rem 0.3rem 0.13rem;
	min-width: 100px;
}

#shop_news_section #shop_news_list .shop_news_content .shop_news_title{
	font-size: clamp(var(--15px), 0.877rem + 0.26vw, var(--19px));
}
#shop_news_section #shop_news_more{
	text-align: center;
}
#shop_news_section #shop_news_more a{
	padding: 20px 40px;
}
#shop_news_section #shop_news_more a.link_button:hover{
	background-color: #4c1f1f !important;
}
#shop_news_section #shop_news_more a.link_button{
	display: inline-block;
	background-color: var(--pallet-brown);
	color: #FFF;
}

#shop_news_section #shop_category_block{
	width: 90%;
	max-width: 1000px;
	margin: 0 auto;
	border-top: 1px solid var(--pallet-brown);
	border-bottom: 1px solid var(--pallet-brown);
	padding: 60px 0;
}
#shop_news_section #shop_category_block #shop_news_category_title{
	font-size: clamp(var(--14px), 0.814rem + 0.26vw, var(--18px));
	text-align: center;
	margin-bottom: 33px;
}
#shop_news_section #shop_category_block #shop_news_category_list{
	display: flex;
	width: 100%;
	max-width: 600px;
	justify-content: center;
	flex-wrap: wrap;
	margin: 0 auto;
	font-size: clamp(var(--14px), 0.814rem + 0.26vw, var(--18px));
	gap: 10px 20px;
}
#shop_news_section #shop_category_block #shop_news_category_list li a{
	display: inline-block;
	border-bottom: 1px solid transparent;
}
#shop_news_section #shop_category_block #shop_news_category_list li a:hover{
	text-decoration: none;
	border-bottom: 1px solid var(--pallet-brown);
	transition: initial;
	color: var(--pallet-brown);
	margin-bottom: 0;
}
#shop_news_section #shop_category_block #shop_news_category_list li a.selected{
	border-bottom: 1px solid var(--pallet-brown);
	
}

/* .shop_content p {
    text-align: center;
    margin-top: 30px;
    line-height: 1.8;
    color: #F12900;
    letter-spacing: 0.12rem;
    font-size: 17px;
} */

.shop_content {
    margin-bottom: 30px;
    padding-inline: 5%;
}

.shop_detail_content p {
    text-align: left !important;
    font-size: 14px !important;
    padding-bottom: 20px;
}

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

	#shop_news_section {
		padding-top: 0;
		padding-bottom: 50px;
	}

	#shop_news_section .parallax_inner {
		padding-bottom: 60px !important;
	}

	#shop_news_section .contents_title_wrapper {
		padding-top: 30px;
		padding-bottom: 10px;
	}

	#shop_news_section #shop_news_list {
		grid-template-columns: repeat(2, 1fr);
	}

	#shop_news_section #shop_news_list {
		padding-right: 10%;
		padding-left: 10%;
	}

	#shop_news_section #shop_news_list {
		padding-top: 30px;
	}

	#page_move_block {
		margin-top: 30px;
		margin-bottom: 50px;
	}

	#shop_news_section #shop_category_block {
		padding-top: 30px;
		padding-bottom: 30px;
	}

	#shop_news_section #shop_category_block #shop_news_category_title {
		margin-bottom: 25px;
	}

	#shop_news_section #shop_name {
		padding-top: 30px;
		font-size: var(--27px);
	}

}

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

	#shop_news_section #shop_news_list {
		grid-template-columns: repeat(1, 1fr);
	}

}


/*
	ニュース詳細ページ/news/[post_id]/
*/
#shop_news_section #news_detail{
	width: 100%;
	max-width: calc(var(--width-700px-space) + 6%);
	margin: 0 auto 40px;
	padding-top: 50px;
	padding-right: 8%;
	padding-left: 8%;
}
#shop_news_section #news_detail #shop_news_title{
	font-size: clamp(var(--17px), 0.865rem + 0.84vw, var(--30px));
	margin-bottom: 45px;
	text-align: center;
}
#shop_news_section #news_detail #shop_news_image{
	width: 100%;
	margin-bottom: 20px;
}
#shop_news_section #news_detail #shop_news_image img {
    width: 100%;
    margin: 0 auto;
    display: block;
}
#shop_news_section #news_detail #shop_news_content #shop_news_text{
	/* width: calc(100% - 40px);
	margin: 20px auto; */
	font-size: clamp(var(--14px), 0.845rem + 0.13vw, var(--16px));
	padding-top: 20px;
}
#news_detail #shop_news_date_cate{
	display: flex;
	justify-content: right;
	align-items: center;
	margin-bottom: 20px;
	font-size: clamp(var(--12px), 0.72rem + 0.13vw, var(--14px));
	gap: 10px;
}
#news_detail #shop_news_date_cate #shop_news_date{
	font-weight: bold;
}
#shop_news_date_cate #shop_news_cate{
}
#shop_news_date_cate #shop_news_cate span{
	display: inline-block;
	background-color: var(--pallet-brown);
	color: #FFF;
	padding: 0.2rem 1rem 0.13rem;
}

#shop_news_section #other_news_link{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	max-width: 1000px;
	margin: 100px auto 90px;
	gap: 30px;
}
#shop_news_section #other_news_link > div{
	margin: 0 20px;
}
#shop_news_section #other_news_link #previous_link_block,
#shop_news_section #other_news_link #next_link_block{
	width: 8em;
	text-align: center;
	font-size: clamp(var(--14px), 0.86rem + 0.06vw, var(--15px));
}
#shop_news_section #other_news_link #news_list_link{
	text-align: center;
}
#shop_news_section #other_news_link #news_list_link a{
	padding: 20px 40px;
}
#shop_news_section #other_news_link #news_list_link a.link_button:hover{
	background-color: #4c1f1f !important;
}
#shop_news_section #other_news_link #news_list_link a.link_button{
	display: inline-block;
	background-color: var(--pallet-brown);
	color: #FFF;
}

#shop_news_section a.ml_btn {
	width: 280px;
}

/* 画像設定 */
#news_detail figure.wp-block-image.size-full.is-resized {
    object-fit: contain;
    aspect-ratio: auto;
    width: 100%;
}

#news_detail .wp-block-image.has-custom-border img, .wp-block-image img {
    box-sizing: border-box;
    width: 100%;
    height: auto;
}

/* 写真 */

.img_size_small {
    max-width: 500px;
    margin: 0 auto;
}

/* ギャラリー */

figure.wp-block-gallery.has-nested-images {
	flex-wrap: wrap;
	display: flex;
    align-items: normal;
	margin: 0 auto;
}

#news_detail .wp-block-gallery.has-nested-images figcaption {
    flex-grow: 1;
    flex-basis: 100%;
    text-align: center;
}

@media screen and (max-width: 900px) {
		
	#shop_news_section #news_detail {
		padding-right: 10%;
		padding-left: 10%;
	}

	#shop_news_section #other_news_link {
		flex-wrap: wrap;
		gap: 30px;
		margin: 70px auto 50px;
	}

	#shop_news_section #other_news_link #previous_link_block, #shop_news_section #other_news_link #next_link_block {
		order: 3;
	}

	#shop_news_section #other_news_link > div{
		margin: 0;
		order: 1;
		width: 100%;
	}

}


/*
	店舗ページ： /shop/
*/

#shop_archive_page .shop_page {
	padding-top: 50px;
}

#shop_archive_page .contents_title_wrapper {
	padding-top: 20px;
	padding-bottom: 28px;
}

#shop_name_list_wrapper {
    padding: 50px 0;
}

.shop_name_list_wrapper {
	padding-top: 50px;
}

#shop_archive_page #shop_name_list {
    width: 100%;
    display: grid;
    margin: 0 auto 40px;
    grid-template-columns: repeat(5, 1fr);
    gap: 10px 25px;
    line-height: 1.2;
    white-space: nowrap;
}

/* #shop_archive_page #shop_name_list li{
	margin: 0 15px;
} */

/* ライン */
#shop_archive_page .shop_page_line{
	border-bottom: 1px solid #000;
	margin: 40px auto;
}

.shop_name_list_wrapper {
	max-width: calc(900px + 10%);
	padding-right: 5%;
	padding-left: 5%;
	margin: 0 auto;
	padding-bottom: 50px;
}

#shop_archive_page .shop{
	/* width: calc(100% - 100px); */
	width: 100%;
	padding: 50px;
	margin: 0 auto 60px;
	background-color: #FFF;
	display: flex;
	gap: 20px 6%;
	align-items: center;
	/* justify-content: space-around; */
}

#shop_archive_page .shop .shop_image{
	width: 47%;
	display: block;
	position: relative;
	/* margin-right: 3%; */
}
#shop_archive_page .shop .shop_image::before{
	content: "";
	display: block;
	padding-top: 73%;
}
#shop_archive_page .shop .shop_image img{
	position: absolute;
	top: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

#shop_archive_page .shop .shop_detail{
	width: 47%;
	/* margin-left: 3%; */
}

.shop_name_wrapper {
    display: flex;
    gap: 12px;
    margin-bottom: 10px;
}

#shop_archive_page .shop .shop_name{
	font-size: var(--22px);
	line-height: 1.3;
}
#shop_archive_page .shop .shop_category{
	display: flex;
	margin-bottom: 1rem;
	gap: 10px;
}
#shop_archive_page .shop .shop_category li{
	display: flex;
	font-size: var(--14px);
	background-color: var(--pallet-brown);
	color: var(--pallet-white);
	padding: 3px 15px 2px;
}

#shop_archive_page .shop .shop_address{
	margin-bottom: 1em;
}

#shop_archive_page .shop .shop_phone{
	margin-bottom: 2rem;
	display: block;
}
#shop_archive_page .shop .shop_page_link{
}
#shop_archive_page .shop .shop_page_link a{
	padding: 20px 40px;
}

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

	/* 店舗一覧 */

	#shop_archive_page .contents_title_wrapper {
		padding-top: 30px;
	}

	#shop_archive_page .shop {
		flex-direction: column;
		padding: 30px 20px;
		font-size: var(--14px);
		margin-bottom: 40px;
	}

	#shop_archive_page .shop .shop_image {
		width: 100%;
	}

	#shop_archive_page .shop .shop_detail {
		width: 100%;
	}

	#shop_archive_page .shop .shop_name {
		font-size: var(--17px);
	}

	#shop_archive_page .ml_btn_left_wrapper {
		text-align: center;
	}

	#shop_archive_page .shop .shop_category li {
		font-size: var(--12px);
	}

	#shop_archive_page .shop:last-child {
		margin-bottom: 0;
	}

}



/*
	店舗詳細ページ： /shop/[店舗名]/
*/

.shop_detail_page {
    padding-top: 50px;
}

#shop_post_page #shop_news_list {
	padding-bottom: 40px;
}

#shop_post_page #shop_main_image{
	width: 100%;
	max-width: 1600px;
}
#shop_post_page #shop_main_image img{
	width: 100%;
	max-width: 1600px;
	margin-bottom: 30px;
}
#shop_post_page #shop_main_image #shop_main_image_pc{
	display: inline !important;
}
#shop_post_page #shop_main_image #shop_main_image_sp{
	display: none !important;
}
#shop_post_page #shop_name{
	/* font-size: 36px; */
	font-size: clamp(var(--19px), 0.93rem + 1.1vw, var(--36px));
	text-align: center;
	margin-bottom: 30px;
}
#shop_post_page #shop_category{
	display: flex;
	/* margin-bottom: 30px; */
	justify-content: center;
	gap: 10px;
}
#shop_post_page #shop_category li{
	display: flex;
	font-size: clamp(var(--14px), 0.845rem + 0.13vw, var(--16px));	background-color: var(--pallet-brown);
	color: var(--pallet-white);
	/* margin: 0 5px 5px; */
	padding: 3px 15px 2px;
}


#shop_post_page #shop_info{
    width: 100%;
    padding: 0;
    margin: 0 auto;
    display: flex;
	/* font-size: var(--15px); */
	font-size: clamp(var(--14px), 0.845rem + 0.13vw, var(--16px));
	gap: 4%;
	padding-right: 8%;
	padding-left: 8%;
	padding-top: 50px;
	padding-bottom: 50px;
}

#shop_post_page #shop_info #shop_image{
	width: 48%;
}
#shop_post_page #shop_info #shop_image img{
	width: 100%;
}

.shop_select_thumbnail_image_main {
	border: 4px solid var(--pallet-yellow);
	/* aspect-ratio: 1 / 0.75;
    object-fit: cover; */
}

.slick-slide div:first-child {
	height: max-content;
}

#shop_post_page #shop_info #shop_select_thumbnail_image{
	display: block;
    position: relative;
	width: 100%;
	border: 4px solid var(--pallet-yellow);
}
#shop_post_page #shop_info #shop_select_thumbnail_image::before {
	content: "";
    display: block;
    padding-top: 73%;
}
#shop_post_page #shop_info #shop_select_thumbnail_image img{
	position: absolute;
    top: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.shop_thumbnail_image_nav_wrapper {
	transition: all 0.3s ease;
}

.shop_thumbnail_image_nav_wrapper:hover {
	opacity: 0.6;
	cursor: pointer;
}

#shop_post_page #shop_info #shop_thumbnail_image{
	width: 100%;
}
#shop_post_page #shop_info #shop_thumbnail_image li{
	width: 25%;
}
#shop_post_page #shop_info #shop_thumbnail_image li img{
	cursor: pointer;
}

#shop_post_page #shop_info #shop_detail{
	width: 48%;
}
#shop_post_page #shop_info #shop_detail .shop_row{
	display: flex;
	/* margin-right: 10px; */
	margin-bottom: 35px;
	gap: 15px;
}
#shop_post_page #shop_info #shop_detail .shop_row .shop_col {
    /* width: 83px; */
	width: 110px;
    /* margin-right: 10px; */
    line-height: 1.8;
}
/* #shop_post_page #shop_info #shop_detail .shop_row .shop_val{
	width: calc(100% - 110px);
	line-height: 2em;
} */
#shop_post_page #shop_info #shop_detail .shop_row .shop_val {
    width: calc(100% - (83px - 15px));
    line-height: 1.8;
}
#shop_post_page #shop_info #shop_detail #shop_calendar{
	margin-bottom: 40px;
	font-family: var(--font-family-ja);
	font-style: var(--font-style-ja);
	font-weight: var(--font-family-en);
}
#shop_post_page #shop_info #shop_detail #how_to_reserve {
    border-top: 1px solid var(--pallet-brown);
    border-bottom: 1px solid var(--pallet-brown);
    margin-top: 50px;
    margin-bottom: 0;
    padding: 50px 0;
}

#shop_post_page #shop_info #shop_detail #how_to_reserve_title{
	text-align: center;
	/* margin-bottom: 1em; */
	margin-bottom: 40px;
	font-size: clamp(var(--16px), 0.939rem + 0.26vw, var(--20px));
	font-weight: bold;
}
#shop_post_page #shop_info #shop_detail #how_to_reserve_body{
	text-align: center;
	line-height: 2em;
	font-weight: bold;
}

a.shop_link,
p.shop_link {
    text-decoration: underline;
}

/* ショップ詳細ページ slick */
/* .slick-list.draggable {
    width: 100%;
    height: 75px;
} */

#shop_post_page #shop_info #shop_thumbnail_image li img {
    width: 100%;
    height: 75px;
    object-fit: cover;
	border: 4px solid var(--pallet-yellow);
}

#shop_post_page #shop_info #shop_thumbnail_image_auto img {
    width: 100%;
    height: 75px;
    object-fit: cover;
    border: 4px solid var(--pallet-yellow);
}

/* ショップ詳細ページのボタン */
.shop_page a.ml_btn,
#shop_post_page a.ml_btn {
    font-size: var(--14px);
    padding: 18px 20px 17px;
    width: 240px;
}

a.ml_btn.ml_btn_brown.ml_btn_instagram::before {
    content: '';
    display: inline-block;
    width: 18px;
    height: 18px;
    background-image: url(../images/svg/instagram-icon-w.svg);
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: middle;
    margin-right: 1px;
    margin-bottom: 1px;
	transition: all 0.8s ease;
}

a.ml_btn.ml_btn_brown.ml_btn_instagram:hover::before {
	background-image: url(../images/svg/instagram-icon.svg);
}


/* ショップ詳細ページのGoogleMAP */
#shop_post_page #shop_google_map{
	width: 100%;
	height: 600px;
	padding-top: 50px;
	padding-bottom: 50px;
	padding-right: 8%;
	padding-left: 8%;
}
#shop_post_page #shop_google_map iframe{
	width: 100%;
	height: 100%;
}

@media (max-width: 900px) {

	#shop_post_page #shop_info {
		flex-direction: column;
		gap: 30px;
	}

	#shop_post_page #shop_info #shop_image {
		width: 100%;
	}

	#shop_post_page #shop_info #shop_detail {
		width: 100%;
	}

	/* .slick-list.draggable,
	#shop_post_page #shop_info #shop_thumbnail_image li img {
		height: 60px;
	} */

	#shop_post_page .slick-next, #shop_post_page .slick-next,
	#shop_post_page .slick-prev, #shop_post_page .slick-next {
		top: 18% !important;
	}

	.shop_detail_page {
		padding-top: 40px;
	}

	#shop_post_page #shop_name {
		margin-bottom: 15px;
	}

	#shop_post_page #shop_google_map {
		padding-top: 50px;
		padding-bottom: 50px;
		padding-right: 5%;
		padding-left: 5%;
	}

	#shop_post_page .ml_btn_left_wrapper {
		text-align: center;
	}
	
	#shop_post_page #shop_news_list {
		padding-top: 20px;
		padding-bottom: 0;
	}

}

@media (max-width: 600px) {
	#shop_post_page #shop_main_image #shop_main_image_pc{
		display: none !important;
	}
	#shop_post_page #shop_main_image #shop_main_image_sp{
		display: inline !important;
	}
}



/* ショップ詳細ページのSHOPサムネイルのslick矢印のスタイルを上書き修正 */
#shop_post_page .slick-prev{
	transform: rotate(-90deg);
}
#shop_post_page .slick-prev::before {
	content: '▲' !important;
	color: var(--pallet-brown);
	font-size: var(--15px);
}
#shop_post_page .slick-prev,
#shop_post_page .slick-next{
	top: 35% !important;
}
#shop_post_page .slick-next{
	transform: rotate(90deg);
}
#shop_post_page .slick-next::before {
	content: '▲' !important;
	color: var(--pallet-brown);
	font-size: var(--15px);
}
#shop_post_page .slick-next,
#shop_post_page .slick-next{
	top: 35% !important;
}



/* ショップ詳細ページのおすすめ一覧 */
#shop_post_page #shop_recommend_section{
	padding-top: 80px;
	padding-bottom: 50px;
}
/* #shop_post_page #shop_recommend_section #shop_recommend_list{
	display: flex;
	justify-content: space-around;
	width: calc(100% - 10px);
	padding: 0 5px;
	max-width: 1200px;
	margin: 0 auto;
} */
#shop_post_page #shop_recommend_section #shop_recommend_list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    width: 100%;
    max-width: calc(var(--width-1166px) + 16%);
    margin: 0 auto;
    padding-top: 50px;
    padding-right: 8%;
    padding-left: 8%;
    column-gap: 5%;
}
/* #shop_post_page #shop_recommend_section #shop_recommend_list li{
	width: 380px;
} */
/* #shop_post_page #shop_recommend_section #shop_recommend_list li .shop_recommend_image img{
	object-fit: cover;
}
#shop_post_page #shop_recommend_section #shop_recommend_list li .shop_recommend_image img{
	width: 380px;
	height: 285px;
} */

.shop_recommend_image {
    display: block;
    position: relative;
}

.shop_recommend_image::before {
    content: "";
    display: block;
    padding-top: 73%;
}

#shop_post_page #shop_recommend_section #shop_recommend_list li .shop_recommend_image img {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    object-fit: cover;
}
/* @media (max-width: 1200px) {
	#shop_post_page #shop_recommend_section #shop_recommend_list li{
		width: calc(32vw - 20px);
	}
	#shop_post_page #shop_recommend_section #shop_recommend_list li .shop_recommend_image img{
		width: calc(32vw - 20px);
		height: calc(24vw - 7.5px);
	}
} */

#shop_post_page #shop_recommend_section #shop_recommend_list .shop_recommend_content{
	width: calc(100% - 40px);
	margin: 20px auto;
}
#shop_post_page #shop_recommend_section #shop_recommend_list .shop_recommend_content .shop_recommend_title{
	font-size: clamp(var(--15px), 0.877rem + 0.26vw, var(--19px));
	text-align: center;
	white-space: normal;
}

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

	#shop_post_page #shop_recommend_section #shop_recommend_list {
		grid-template-columns: repeat(2, 1fr);
		padding-right: 10%;
		padding-left: 10%;
		padding-top: 30px;
	}

	#shop_post_page #shop_recommend_section {
		padding-top: 30px;
		padding-bottom: 0;
	}
}

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

	#shop_post_page #shop_recommend_section #shop_recommend_list {
		grid-template-columns: repeat(1, 1fr);
	}
}


/* おすすめページのセクション */
.shop_name_list_block_wrapper {
    padding-right: 8%;
    padding-left: 8%;
    margin: 0 auto;
    padding-top: 50px;
    padding-bottom: 100px;
}

#shop_archive_page .shop_name_list_block_wrapper {
	padding-right: 0;
    padding-left: 0;
}

#shop_archive_page .shop_name_list_block_wrapper {
	padding-top: 0;
}

#shop_name_list_block{
	width: 100%;
	border-top: 1px solid var(--pallet-brown);
	border-bottom: 1px solid var(--pallet-brown);
	padding: 45px 0 50px;
}
#shop_name_list_title{
	font-size: var(--20px);
	text-align: center;
	margin-bottom: 35px;
}
.shop_name_list_ul {
    display: grid;
    /* grid-template-columns: 215px 130px 105px 120px 170px; */
	/* grid-template-columns: 215px 130px 105px 150px 170px; */
	grid-template-columns: repeat(5, auto);
    gap: 10px 20px;
    width: 100%;
    /* max-width: 600px; */
    margin: 0 auto;
	font-size: clamp(var(--14px), 0.845rem + 0.13vw, var(--16px));
	justify-content: center;
}

.shop_name_list_li{
	display: inline-block;
	border-bottom: 1px solid transparent;
}
/* .shop_name_list_li:hover{
	border-bottom: 1px solid var(--pallet-brown);
	transition: initial;
	color: var(--pallet-brown);
} */
.shop_name_list_li.selected{
	border-bottom: 1px solid var(--pallet-brown);	
}

.shop_name_list_li_link.ikebukuro::after {
	/* content: "閉店"; */
	/* color: #F12900; */
	font-size: 14px;
}

.shop_name_list_li:has(.shop_name_list_li_link.ikebukuro) {
	/* display: none; */
	/* visibility: hidden; */
	/* color: var(--pallet-white); */
}

.shop_name_list_li:has(.shop_name_list_li_link.marlowe-yokosuka-factory) {
	/* grid-column: 3 / 6; */
	grid-column: span 2;
}

/* list-style */
.shop_name_list_li a {
    list-style:	none;
    margin:  0;
    padding: 0;
	white-space: nowrap;
}
 
.shop_name_list_li a:before {
    content:  ""; 
    width:  10px;
    height:  10px;
    display:  inline-block;
    background-color: var(--pallet-brown);
    position:  relative;
    top: -1px;
    margin-right: 1px;
}

.shop_name_list_li a:hover {
	border-bottom: 1px solid var(--pallet-brown);
    transition: initial;
    color: var(--pallet-brown);
}

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

	.shop_name_list_ul {
		/* grid-template-columns: 205px 130px 150px 130px; */
		/* grid-template-columns: 205px 150px 150px 130px; */
		grid-template-columns: repeat(4, auto);
	}

	/* .shop_name_list_li:has(.shop_name_list_li_link.mbc) {
		grid-column: 2 / 4;
	}

	.shop_name_list_li:has(.shop_name_list_li_link.lumine) {
		grid-column: 3 / 5;
	}

	.shop_name_list_li:has(.shop_name_list_li_link.marlowe-yokosuka-factory)  {
		grid-column: 3 / 5;
	} */

}

@media screen and (max-width: 900px) {
	#shop_archive_page .shop_name_list_wrapper {
		padding-top: 20px;
	}

	#shop_name_list_block {
		padding: 20px 0 20px;
	}

	#shop_name_list_title {
		margin-bottom: 20px;
	}

	.shop_name_list_block_wrapper {
		padding-bottom: 60px;
	}
}

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

	.shop_name_list_ul {
		/* grid-template-columns: 1fr 1fr; */
		grid-template-columns: auto auto;
		width: 420px;
	}

	/* .shop_name_list_li:has(.shop_name_list_li_link.mbc) {
		grid-column: auto;
	}

	.shop_name_list_li:has(.shop_name_list_li_link.lumine) {
		grid-column: auto;
	}
	
	.shop_name_list_li:has(.shop_name_list_li_link.marlowe-yokosuka-factory)  {
		grid-column: 1/3;
	} */

}

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

	.shop_name_list_ul {
		/* grid-template-columns: 1fr; */
		grid-template-columns: auto;
		/* width: 300px; */
		width: 100%;
		font-size: var(--13px);
	}

	/* .shop_name_list_li:has(.shop_name_list_li_link.marlowe-yokosuka-factory) {
		grid-column: auto;
	} */

}

/*-------------------------------------------------------
	トップページ-メインイメージ
-------------------------------------------------------*/

.main_img {
	width: 100%;
	height: 100vh;
	height: 100svh;
	position: fixed;
	/* top: 95px; */
	right: 0;
	left: 0;
}

#index_page .n2-ss-slide,
#index_page .n2-ss-slider-2.n2-ow,
#index_page .n2-ss-layers-container {
  /* height: calc(100vh - 80px);
  height: calc(100svh - 80px) !important; */
  /* height: 100vh;
  height: 100svh; */
  height: calc(100vh - 95px);
  height: calc(100svh - 95px);
  object-fit: cover;
  object-position: 0 100%;
}

/* テキスト */
.main_img_txt_area {
	width: 100%;
	/* height: calc(100svh - 80px);
	height: calc(100vh - 80px); */
	height: 104svh;
	height: 104vh;
	background-color: transparent;
	position: relative;
}

.main_img_txt_wrapper {
    position: absolute;
    z-index: 90;
    right: 0;
    top: 40%;
    transform: translate(0, -40%);
    padding: 50px;
    background: var(--gradation-yellow);
}

.main_img_txt {
	font-size: clamp(var(--17px), 0.698rem + 1.55vw, var(--41px));
	line-height: 1.7;
	padding-bottom: 10px;
}

.main_img_txt_small {
	font-size: clamp(var(--8px), 0.409rem + 0.39vw, var(--14px));
}

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

	.main_img {
		height: calc(100vh - 60px);
		height: calc(100svh - 60px);
		top: 60px;
	}
	
	#index_page .n2-ss-slide,
	#index_page .n2-ss-slider-2.n2-ow,
	#index_page .n2-ss-layers-container {
	  /* height: calc(100vh - 80px);
	  height: calc(100svh - 80px) !important; */
	  /* height: 100vh;
	  height: 100svh; */
	  height: calc(100vh - 60px);
	  height: calc(100svh - 60px);
	}
}

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

	/* #index_page .n2-ss-slide,
	#index_page .n2-ss-slider-2.n2-ow,
	#index_page .n2-ss-layers-container {
		height: calc(100vh - 60px);
		height: calc(100svh - 60px) !important;
	} */

	.main_img_txt_wrapper {
		max-width: 300px;
		padding: 30px 30px 30px 45px;
	}
	
	.main_img_txt {
		line-height: 2;
	}

	/* .main_img_txt_area {
		height: calc(100svh - 60px);
		height: calc(100vh - 60px);
	} */

	.main_img_txt_area {
		height: 110svh;
		height: 110vh;
	}
	
}


/*-------------------------------------------------------
	トップページ-News お知らせ 新着情報
-------------------------------------------------------*/

#index_page .top_news {
	position: relative;
	top: -120px;
}

#index_page .top_news_wrapper {
	 display: flex;
	 justify-content: flex-end;
}

#index_page .top_news_title {
	letter-spacing: 0.15rem;
}

#index_page .top_news_title_background_wrapper {
    background-color: var(--pallet-brown);
	padding: 40px;
}

#index_page .top_news_title_wrapper {
    color: var(--pallet-white);
    display: flex;
    align-items: center;
    gap: 20px;
}

#index_page .top_news_title_border {
    width: 100px;
    border-top: 1px solid var(--pallet-white);
}

#index_page .top_news_item_wrapper {
    background-color: var(--pallet-white);
    padding: 40px 30px 30px 60px;
    min-width: 50%;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
	gap: 15px;
}

#index_page .news_list_block {
	max-width: 500px;
}

#index_page .news_item_link {
    display: flex;
	align-items: center;
    gap: 30px;
	margin-bottom: 25px;
}

#index_page .news_day {
	font-size: var(--13px);
}

#index_page .news_title {
	font-size: var(--16px);
}

/* 一覧ボタン */
#index_page .top_news_btn_wrapper {
    text-align: right;
}

#index_page a.top_news_btn {
    position: relative;
    font-size: var(--14px);
    background: var(--pallet-brown);
    color: var(--pallet-white);
    display: inline-block;
    padding: 11px 28px 10px 20px;
    letter-spacing: 0.1rem;
	white-space: nowrap;
}

/* 矢印 */
#index_page a.top_news_btn::after {
    content: "";
    margin: auto;
    position: absolute;
    top: 50%;
    bottom: 50%;
    right: 17px;
    width: 8px;
    height: 8px;
    border-top: 1px solid var(--pallet-white);
    border-right: 1px solid var(--pallet-white);
    transform: rotate(45deg);
}

/* ----- banner ----- */

.top_news_banner {
	text-align: center;
	margin-top: 100px;
	margin-right: 3%;
	margin-left: 3%;
}

.top_news_banner_img {
	width: clamp(20.938rem, 8.407rem + 53.46vw, 72.563rem); /* 335-1161px */
	max-width: 900px;
	height: auto;
	background-color: var(--pallet-brown);
    color: var(--pallet-white);
}

.top_news_banner_img_wrapper {
    width: 100%;
    height: auto;
    display: block;
}

.top_news_banner_img_wrapper:not(:last-of-type) {
	margin-bottom: 80px;
}

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

	#index_page .top_news {
		top: -50px;
		/* top: 50px; */
	}

	#index_page .top_news_item_wrapper {
		width: 100%;
		flex-direction: column;
		align-items: stretch;
		padding: 40px 30px 30px 30px;
	}
	
	#index_page .news_list_block {
		max-width: none;
	}

	#index_page .news_item_link {
		margin-bottom: 15px;
	}

	#index_page .news_title {
		font-size: var(--15px);
	}

	.top_news_banner {
		margin-top: 50px;
	}

	.top_news_banner_img_wrapper:not(:last-of-type) {
		margin-bottom: 40px;
	}
	
}


/*-------------------------------------------------------
	トップページ-動画
-------------------------------------------------------*/

.top-movie {
    margin: 50px auto 100px;
    width: clamp(20.938rem, 8.407rem + 53.46vw, 72.563rem);
    aspect-ratio: 560 / 315;
    max-width: 900px;
}

.top-movie iframe {
	width: 100%;
	height: 100%;
}


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

	.top-movie {
		margin: 30px auto 50px;
		/* width: 90%;
		aspect-ratio: 560 / 315;
		max-width: 560px; */
	}

}


/*-------------------------------------------------------
	トップページ-Products 商品紹介
-------------------------------------------------------*/

#index_page .products .contents_title_wrapper {
	padding-top: 20px;
}

.products_item {
    display: flex;
	width: 100%;
	height: auto;
	overflow: hidden;
}

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


.products_item_img_wrapper {
	width: 65%;
	height: auto;
}

.products_item_img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.products_item.pudding .products_item_img {
	object-position: 20% 50%;
}

.products_item_txt_wrapper {
    width: 35%;
    position: relative;
    padding: 80px 5% 200px;
    overflow: hidden;
	min-width: 420px;
}

.products_item_title {
    /* font-size: var(--34px); */
	font-size: clamp(var(--25px), 1.426rem + 0.58vw, var(--34px));
    line-height: 1.55;
    letter-spacing: 0.3rem;
	padding-bottom: 33px;
}

.products_item_txt {
	font-size: var(--16px);
    line-height: 2.45;
	padding-bottom: 48px;
}

.products_item_txt_deco {
	font-size: clamp(var(--81px), 4.137rem + 3.95vw, var(--142px));
    position: absolute;
    bottom: 50px;
    left: 50%;
    line-height: 1;
    transform: translate(-50%, 0);
}

/* color */
.products_item:nth-of-type(odd) {
	color: var(--pallet-white);
	background-color: var(--pallet-brown);
}

.products_item:nth-of-type(2n) {
	color: var(--pallet-brown);
	background-color: var(--pallet-yellow);
}

/* .products_itemn:nth-child(odd) .products_item_txt_deco {
	color: var(--pallet-white);
}

.products_itemn:nth-child(2n) .products_item_txt_deco {
	color: var(--pallet-brown);
} */

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

	.products_item {
		flex-direction: column;
	}

	.products_item_img_wrapper {
		width: 100%;
	}

	.products_item_txt_wrapper {
		width: 100%;
		min-width: 0;
		padding: 48px 5% 160px;
	}

	/* .products_item_txt br {
		display: none;
	} */

	.products_item .ml_btn_left_wrapper {
		text-align: center;
	}

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

	.products_item_title {
		padding-bottom: 20px;
	}

	.products_item_txt {
		font-size: var(--15px);
		padding-bottom: 30px;
	}

	.products_item_txt_deco {
		bottom: 30px;
	}
}

/*-------------------------------------------------------
	トップページ-About マーロウについて / Recruit　採用情報
-------------------------------------------------------*/

/* aboutのみ */

.about {
	padding-top: 150px;
	padding-bottom: 150px;
	background-image:
	url(../images/svg/deco-border-left.svg),
	url(../images/svg/deco-border-right.svg);
	background-size: 760px auto;
	background-position:
		0 0,
		100% 100%;
	background-repeat: no-repeat;
	overflow: hidden;
}

.about .contents_title_wrapper {
	padding-bottom: 28px;
}

.about_top_img img,
.about_bottom_img img {
    width: 100%;
    height: 80vh;
    object-fit: cover;
	object-position: 100% 0;
}

.about_bottom_img img {
	object-position: 0 80%;
}

.contents_decotxt_white.about_marlowe {
	top: -100px;
}

.contents_decotxt_white.about_factory {
	top: auto;
	bottom: -100px;
}

.shop_dl {
    display: grid;
    grid-template-columns: 100px 1fr;
    gap: 5px 0px;
    margin-bottom: 55px;
}

.top_contents_txt.mb20 {
	margin-bottom: 20px;
}

/* decotxt */

.about_contents_decotxt_brown {
    font-family: var(--font-family-en);
    font-style: var(--font-style-en);
    font-weight: var(--font-weight-en);
    font-size: var(--142px);
    color: var(--pallet-brown);
    line-height: 1;
    text-align: center;
    overflow: hidden;
    padding-top: 40px;
    padding-bottom: 45px;
}

/* recruitのみ */
.recruit {
    padding-bottom: 120px;
	background-color: var(--pallet-brown);
	color: var(--pallet-white);
	padding-top: 120px;
}

.recruit .contents_title_wrapper {
	padding-bottom: 28px;
}

.recruit_top_img {
	margin-bottom: 100px;
}

.recruit_top_img img {
    width: 100%;
    height: 80vh;
    object-fit: cover;
	object-position: 50% 0;
}

/* about　&　recruit */

.top_contents {
    display: flex;
	column-gap: 3%;
    padding: 30px 160px;
	position: relative;
}

.top_contents.top_contents_reverse {
	flex-direction: row-reverse;
}

.top_contents_img_wrapper {
	/* z-index: 2; */
	width: 60%;
}

.top_contents_img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 12% 100%;
}

.top_contents_img.top_contents_img_factory {
	object-position: 50% 50%;
}

.top_contents_txt_wrapper {
    z-index: 2;
    width: 40%;
    display: flex;
    flex-direction: column;
    justify-content: center;
	padding: 50px;
	min-width: 450px;
}

.top_contents_title {
    font-size: clamp(var(--25px), 1.426rem + 0.58vw, var(--34px));
    line-height: 1.6;
	margin-bottom: 35px;
}

.top_contents_txt {
    /* font-size: clamp(var(--14px), 0.86rem + 0.06vw, var(--15px)); */
	font-size: var(--16px);
    line-height: 2.5;
	margin-bottom: 55px;
}

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

	.about {
		background-size: 300px auto;
		padding-top: 50px;
		padding-bottom: 50px;
	}
	
	.top_contents.top_contents_reverse {
		flex-direction: column;
	}

	.top_contents {
		flex-direction: column;
		padding: 0;
	}

	.top_contents_img_wrapper {
		width: 100%;
		padding-right: 5%;
		padding-left: 5%;
	}

	.top_contents_txt_wrapper {
		width: 100%;
		padding: 30px 8% 10px;
		min-width: 0;
	}

	.top_contents_txt {
		font-size: var(--15px);
		margin-bottom: 35px;
	}

	.about_contents_decotxt_brown {
		font-size: 	clamp(var(--57px), 2.273rem + 5.5vw, var(--142px));
		padding-top: 30px;
    	padding-bottom: 55px;
	}

	.about_top_img img, .about_bottom_img img {
		height: 50vh;
	}

	.about .ml_btn_left_wrapper {
		text-align: center;
	}

	.top_contents_title {
		margin-bottom: 23px;
	}

	.recruit {
		padding-top: 50px;
		padding-bottom: 50px;
	}

	.recruit .ml_btn_left_wrapper {
		text-align: center;
	}

	/* deco txt */

	.contents_decotxt_white.about_marlowe {
		top: auto;
		bottom: 200px;
	}

	.contents_decotxt_white.reverse.about_shop {
		left: auto;
		right: 0;
		bottom: 200px;
	}

	.contents_decotxt_white.about_factory {
		bottom: 200px;
	}

}

/*-------------------------------------------------------
	トップページ-バナー
-------------------------------------------------------*/

.banner {
	background-color: var(--pallet-deep-yellow);
}

.ml_banner_wrapper {
	padding: 150px 5%;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 40px;
	max-width: var(--width-1166px-space);
	/* max-width: var(--width-950px-space); */
	margin: 0 auto;
}

.ml_banner {
	display: flex;
	justify-content: space-between;
	align-items: center;
	/* max-width: 750px;
	width: 60%; */
	background-color: var(--pallet-white);
	position: relative;
	overflow: hidden;
}

.ml_banner_txt {
	display: block;
}

.ml_banner_txt_wrapper {
	width: 35%;
	min-width: 180px;
	text-align: center;
}

.ml_banner_img_wrapper {
	width: 75%;
	display: block;
	position: relative;
	background-color: var(--pallet-brown);
}

.ml_banner_img_wrapper::before {
	content: "";
	display: block;
	padding-top: 45%;
}  

.ml_banner_img {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	object-fit: cover;
}

.banner_url {
	position: absolute;
	width: 100%;
	height: 100%;
	transition: all 0.5s ease;
}

a.banner_url:hover {
    opacity: 0.3;
    cursor: pointer;
    background: var(--pallet-deep-yellow);
}

/* no img */

.ml_banner_img_wrapper.no_img_bn_wrapper {
    display: flex;
    justify-content: center;
	align-items: center;
}

.no_img_bn {
    width: 65%;
    height: auto;
}

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

	.ml_banner_txt_wrapper {
		min-width: 150px;
	}

	.ml_banner_img_wrapper::before {
		padding-top: 48%;
	}

}

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

	/* banner */
	.ml_banner_wrapper {
		grid-template-columns: 1fr;
		padding: 60px 5%;
		gap: 15px;
		max-width: 500px;
	}

	.ml_banner a {
		width: 100%;
	}

	.ml_banner_txt_wrapper {
		min-width: 150px;
	}

	/* .ml_banner_img {
		min-height: 130px;
	} */

	.ml_banner_txt {
		white-space: nowrap;
	}

	/* .ml_banner_img_wrapper {
		min-height: 150px;
	} */

	.ml_banner_img_wrapper::before {
		padding-top: 45%;
	}

}

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

	.ml_banner_txt {
		font-size: var(--14px);
		line-height: 1.5;
	}

	.ml_banner_img_wrapper::before {
		padding-top: 50%;
	}

	.ml_banner_txt_wrapper {
		min-width: 130px;
	}

	.ml_banner_img_wrapper {
		min-height: 0;
	}

}

/* フッター上のイメージ */
.footer_top_img {
	width: 100%;
	height: 45vh;
	object-fit: cover;
	object-position: 50% 50%;
}

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

	.footer_top_img {
		width: 100%;
		height: 30vh;
		object-fit: cover;
		object-position: 50% 50%;
	}
}

/*-------------------------------------------------------
	トップページ以外共通
-------------------------------------------------------*/

/* トップページ以外 共通sns icon */
.fixed_menu_sns_wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 15px;
    /* margin-top: 30px; */
    flex-direction: column;
    width: 40px;
    position: fixed;
    top: 20%;
	left: 10px;
    transform: translateY(-20%);
	opacity: 0;
	transition: all 2s ease;
	z-index: 3;
}

.fixed_menu_sns_wrapper a.menu_sns {
	width: 20px;
	height: auto;
}

.fixed_menu_sns_wrapper.active {
	opacity: 1;
}

/* トップページ以外 共通テキスト */
.ml_page_subtitle {
	font-size: var(--34px);
    line-height: 1.6;
    margin-bottom: 35px;
	/* padding-right: 8%;
	padding-left: 8%; */
	position: relative;
	z-index: 3;
}

.ml_page_subtitle.center {
	text-align: center;
}

.ml_page_txt_center {
    text-align: center;
	font-size: clamp(var(--17px), 0.941rem + 0.52vw, var(--25px));
    line-height: 2;
    margin-bottom: 35px;
	letter-spacing: 0.15rem;
}

.ml_page_txt {
    text-align: left;
    font-size: var(--16px);
    line-height: 2.5;
    margin-bottom: 35px;
}

.ml_page_ul_circle {
    text-align: left;
    font-size: var(--16px);
    line-height: 2.5;
    margin-bottom: 35px;
}

.ml_page_txt:last-child {
    margin-bottom: 0;
}

.ml_page_img_wrapper {
	width: 55%;
}

.ml_page_txt_ver2_wrapper {
	width: 42%;
}

/* トップページ以外 共通レイアウト */
.ml_page_wrapper {
    display: flex;
    padding: 30px 160px;
	column-gap: 3vw;
	position: relative;
}

.ml_page_wrapper.reverse {
	flex-direction: row-reverse;
	z-index: 2;
}

.ml_page_txt_wrapper {
    z-index: 2;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 50px;
}

/* トップページ以外 共通画像設定　*/

.ml_page_img_cover {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.ml_page_img_auto {
    width: 100%;
    height: auto;
}

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

	.ml_page_wrapper {
		padding: 30px 80px;
	}
}

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

	.ml_page_subtitle {
		font-size: var(--25px);
		margin-bottom: 20px;
	}

	.ml_page_txt {
		font-size: var(--15px);
		margin-bottom: 20px;
	}

	.ml_page_ul_circle {
		font-size: var(--15px);
		margin-bottom: 20px;
	}
	
	.fixed_menu_sns_wrapper {
		left: 0;
	}

	.ml_page_wrapper {
		padding-right: 8%;
		padding-left: 8%;
		gap: 30px;
	}

	.ml_page_wrapper {
		flex-direction: column-reverse;
	}

	.ml_page_img_wrapper {
		width: 100%;
	}

	.ml_page_txt_ver2_wrapper {
		width: 100%;
	}

	.ml_page_wrapper.reverse {
		flex-direction: column-reverse;
	}

	.about_page_history_area .ml_page_subtitle {
		margin-bottom: 35px;
	}
}

/*-------------------------------------------------------
	Approach　→ Pudding ビーカー入り手作り焼きプリンのこだわり ページ
-------------------------------------------------------*/

/* .approach_page .contents_title_en {
	padding-bottom: 38px;
} */

.gallery_page {
	background-color: var(--pallet-deep-yellow);
}

.how_to_page {
	background-color: var(--pallet-yellow);
}

.approach_page_pudding_wrapper,
.approach_page_commitment_area,
.gallery_page_beaker_wrapper {
	position: relative;
	overflow: hidden;
}

.approach_page_commitment_area {
	padding-bottom: 100px;
}

.approach_page_pudding_area {
	padding-top: 20px;
}


.approach_page_pudding_txt_wrapper {
    width: 42%;
    padding-top: 50px;
    padding-bottom: 50px;
}

.approach_page_pudding_img_wrapper_01 {
	width: 55%;
}

.approach_page_pudding_wrapper {
	margin-bottom: 70px;
}

.approach_page_pudding_img_wrapper_02 {
    display: flex;
    justify-content: center;
    padding-right: 180px;
    padding-left: 180px;
	justify-content: center;
}

.approach_page_pudding_img_wrap_02 {
	width: 60%;
	height: auto;
}

.approach_page_pudding_img_wrap_03 {
    margin-top: 100px;
    margin-left: -100px;
}

.approach_page_commitment_img_wrapper_01 {
	width: 55%;
}

.approach_page_commitment_txt_wrapper_01,
.approach_page_commitment_txt_wrapper_02,
.approach_page_commitment_txt_wrapper_03,
.approach_page_commitment_txt_wrapper_04 {
	width: 42%;
}

.approach_page_commitment_wrapper_01.ml_page_wrapper.reverse{
	align-items: flex-end;
	padding-top: 100px;
	padding-bottom: 60px;
	z-index: 2;
}

.approach_page_commitment_wrapper_03.ml_page_wrapper.reverse {
	align-items: flex-end;
	padding-top: 50px;
	padding-bottom: 60px;
}

.approach_page_commitment_txt_wrapper_01 {
	padding-bottom: 100px;
}

.approach_page_commitment_wrapper_02 {
	align-items: center;
}

.approach_page_commitment_wrapper_03 {
	align-items: flex-end;
}

.approach_page_commitment_wrapper_04 {
	align-items: center;
}

/* beaker img */
.approach_page_pudding_beaker_img_wrapper {
    padding-right: 130px;
    padding-left: 130px;
}

/* gallery */

.gallery_page {
    padding-bottom: 70px;
}

.gallery_page_top_img_wrapper img {
    width: 100%;
    height: 100vh;
	height: 100svh;
    object-fit: cover;
}

.gallery_page .contents_title_wrapper {
    padding-top: 90px;
}

/* .gallery_page .contents_title_en {
    padding-bottom: 38px;
} */

/* .gallery_page_beaker_wrapper {
	align-items: center;
} */

.gallery_page_beaker_txt_wrapper {
	width: 42%;
}

.gallery_page_beaker_img_wrapper {
	width: 55%;
}

.gallery_page_beaker_area {
    padding-bottom: 40px;
}

/* ビーカー slider */

/* .beaker_slider_up .slick-track,
.beaker_slider_down .slick-track {
	display: flex;
}

.beaker_slider_up .slick-slide,
.beaker_slider_down .slick-slide {
	height: auto !important;
}

.beaker_slider_up .slick-list.draggable,
.beaker_slider_down .slick-list.draggable {
    width: 100%;
    height: auto;
} */

.beaker_slider_txt {
	font-size: var(--18px);
	text-align: center;
	padding-top: 20px;
}

.beaker_slider_txt_small {
	font-size: var(--15px);
	text-align: center;
	padding-top: 5px;
}


.beaker_slider_up,
.beaker_slider_down {
	width: 100%;
	height: auto;
	margin-top: 80px;
	margin-bottom: 80px;
}

.beaker_slider_img_wrapper {
	width: 100%;
	height: 300px;
}
  
.beaker_slider_img {
	width: 100%;
	height: 100%;
	/* object-fit: cover; */
	object-fit: contain;
}

/* スライドの動き等速 */
.beaker_slider_up .swiper-wrapper,
.beaker_slider_down .swiper-wrapper {
	transition-timing-function: linear;
}

/* How To */
.how_to_page {
    padding-top: 90px;
    padding-bottom: 70px;
}

.how_to_page_wrapper {
    width: 48.5%;
}

.how_to_page_area {
    /* max-width: calc(var(--width-1166px) + 260px); */
    margin: 0 auto;
    display: flex;
    padding: 30px 10%;
    column-gap: 6%;
    position: relative;
}

.ml_page_ul {
    list-style: disc;
    margin-left: 1.5rem;
	line-height: 2;
}

.ml_page_ol {
    list-style: decimal;
	margin-left: 1.5rem;
	line-height: 2;
	margin-bottom: 35px;
}

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

	.approach_page_commitment_wrapper_01.ml_page_wrapper.reverse {
		align-items: center;
	}

	.approach_page_commitment_wrapper_03.ml_page_wrapper.reverse {
		align-items: center;
	}

}

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

	.approach_page_commitment_area {
		padding-bottom: 50px;
	}

	.approach_page .contents_title_wrapper {
		padding-bottom: 0;
	}

	.approach_page_pudding_wrapper {
		padding-bottom: 0;
	}

	.approach_page_pudding_img_wrapper_01 {
		width: 100%;
	}

	.approach_page_pudding_txt_wrapper {
		width: 100%;
		padding-top: 0;
		padding-bottom: 0;
	}

	.approach_page_pudding_beaker_img_wrapper {
		padding-right: 0;
		padding-left: 0;
	}

	.approach_page_commitment_img_wrapper_01 {
		width: 100%;
	}

	.approach_page_commitment_wrapper_01.ml_page_wrapper.reverse,
	.approach_page_commitment_wrapper_03.ml_page_wrapper.reverse {
		flex-direction: column-reverse;
	}

	.approach_page_commitment_wrapper_01.ml_page_wrapper.reverse {
		padding-bottom: 0;
	}

	.approach_page_commitment_txt_wrapper_01 {
		padding-bottom: 0;
	}

	.approach_page_commitment_wrapper_04 .contents_decotxt_white {
		top: 60px
	}

	/* gallery */

	.gallery_page {
		padding-bottom: 50px;
	}

	.gallery_page .contents_title_wrapper {
		padding-top: 60px;
	}

	.gallery_page_top_img_wrapper img {
		height: 50svh;
	}

	.gallery_page_beaker_txt_wrapper {
		width: 100%;
	}

	.gallery_page_beaker_img_wrapper {
		width: 100%;
	}

	.gallery_page_beaker_wrapper.ml_page_wrapper {
		gap: 50px;
	}

	.approach_page_commitment_txt_wrapper_01,
	.approach_page_commitment_txt_wrapper_02,
	.approach_page_commitment_txt_wrapper_03,
	.approach_page_commitment_txt_wrapper_04 {
		width: 100%;
	}

	.gallery_page_beaker_area {
		padding-bottom: 0;
	}

	/* slider */
	.beaker_slider_up, .beaker_slider_down {
		margin-top: 30px;
		margin-bottom: 30px;
	}

	.beaker_slider_img_wrapper {
		width: 100%;
		height: 150px;
	}

	.beaker_slider_txt {
		font-size: var(--15px);
		padding-top: 15px;
	}

	.beaker_slider_txt_small {
		font-size: var(--12px);
		padding-top: 0;
	}

	/* how top */

	.how_to_page {
		padding-top: 60px;
	}

	.how_to_page_area {
		flex-direction: column;
		column-gap: 0;
		row-gap: 50px;
		padding-bottom: 50px;
	}

	.how_to_page_wrapper {
		width: 100%;
	}

}

/*-------------------------------------------------------
	About マーロウについて ページ
-------------------------------------------------------*/

.about_page_marlowe_area {
	overflow: hidden;
}

.about_page .ml_page_wrapper {
	padding-bottom: 80px;
}

.about_page_scenery_txt_wrapper {
	width: 42%;
}

.about_page_scenery_img_wrapper {
	width: 55%;
}

.about_page_marlowe_wrapper_03 {
	padding: 30px 160px 0;
	position: relative;
}

.about_page_marlowe_img_wrapper_03 {
    padding-bottom: 50px;
}

.about_page_marlowe_txt_wrapper_03 {
    padding-right: 70px;
    padding-left: 70px;
}

.about_page_marlowe_img_wrapper_05 .ml_page_img_cover {
	object-position: 20% 50%;
}

.about_page_future_wrapper {
    padding-top: 100px;
    padding-bottom: 100px;
}

/* deco txt */
.contents_decotxt_white.beloved,
.contents_decotxt_white.beginning,
.contents_decotxt_white.strength {
    right: auto;
    left: 0;
    top: 0;
}

.contents_decotxt_white.philosophy {
	filter: drop-shadow(0px 0px 2px rgba(255, 229, 101, 1));
}

.contents_decotxt_white.future {
    right: 0;
    left: auto;
    top: 50px;
}

/* btn */
.about_page a.ml_btn.ml_btn_brown {
    letter-spacing: 0.15rem;
}

/* 社内沿革 */

.about_page_history_area {
    background-color: var(--pallet-deep-yellow);
    padding-top: 100px;
    padding-bottom: 100px;
}

.history_dl {
    display: grid;
    grid-template-columns: 60px 1fr;
    max-width: 450px;
	width: 100%;
    margin: 0 auto;
    gap: 10px 20px;
}

@media screen and (max-width: 1200px) {
	
	.about_page_marlowe_wrapper_03 {
		padding: 30px 80px 0;
	}
	
}

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

	.about_page .contents_title_wrapper {
		padding-bottom: 0px;
	}

	.about_page_marlowe_area {
		padding-bottom: 50px;
	}

	.about_page_marlowe_wrapper_03 {
		padding: 30px 8% 0;
	}
	
	.about_page_marlowe_img_wrapper_03 {
		width: 100%;
	}

	.about_page_marlowe_txt_wrapper_03 {
		padding-left: 0;
		padding-right: 0;
	}

	.about_page .ml_btn_left_wrapper {
		text-align: center;
	}

	.about_page_future_wrapper {
		padding-top: 30px;
	}

	.about_page .ml_page_wrapper {
		padding-bottom: 20px;
	}

	.history_dl {
		font-size: var(--15px);
		padding-right: 8%;
		padding-left: 8%;
	}

	.about_page_history_area {
		padding-top: 50px;
		padding-bottom: 50px;
	}

	.about_page_future_wrapper.ml_page_wrapper {
		padding-bottom: 50px;
	}

	/* .contents_decotxt_white.philosophy {
		filter: drop-shadow(0px 0px 2px rgba(255, 229, 101, 1));
	} */

	.contents_decotxt_white.future {
		top: 20px;
	}
	
}

/*-------------------------------------------------------
	Biscotti ・Cake・ Bolo ページ
-------------------------------------------------------*/

.biscotti_page .contents_title_wrapper,
.cake_page .contents_title_wrapper,
.bolo_page .contents_title_wrapper {
	max-width: var(--width-1960px);
    margin: 0 auto;
}

.products_page_marlowe_area {
    padding-bottom: 70px;
}

.products_page_marlowe_area .ml_page_wrapper {
    padding-bottom: 90px;
	align-items: center;
}

/* deco txt */
.contents_decotxt_white.decotxt_02,
.contents_decotxt_white.decotxt_04 {
    right: auto;
    left: 0;
    top: 0;
}

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

	.biscotti_page .contents_title_wrapper,
	.cake_page .contents_title_wrapper,
	.bolo_page .contents_title_wrapper {
		padding-bottom: 10px;
	}

	.products_page_marlowe_area {
		padding-bottom: 50px;
	}

	.products_page_marlowe_area .ml_page_wrapper {
		padding-top: 20px;
		padding-bottom: 20px;
	}
	
	.products_page_marlowe_area .ml_page_txt_ver2_wrapper {
		z-index: 2;
	}

	.products_page_marlowe_area .ml_page_wrapper {
		gap: 20px;
	}

	/* deco txt */
	.products_page_marlowe_area .contents_decotxt_white.decotxt_01,
	.products_page_marlowe_area .contents_decotxt_white.decotxt_02,
	.products_page_marlowe_area .contents_decotxt_white.decotxt_03,
	.products_page_marlowe_area .contents_decotxt_white.decotxt_04 {
		top: 280px;
		right: 0;
		left: auto;
		bottom: auto;
	}
	
}

/*-------------------------------------------------------
	Brothers 社長・副社長のご紹介 ページ
-------------------------------------------------------*/

#brothers_page .contents_title_wrapper {
    padding-bottom: 30px;
}

#brothers_page .ml_page_txt_center {
	margin-bottom: 60px;
}

.brothers_page_position,
.brothers_page_furigana,
.brothers_page_name {
    display: block;
}

.brothers_page_name_wrapper {
    padding-bottom: 60px;
	text-align: center;
}

.brothers_page_position {
    /* font-size: var(--26px); */
	font-size: clamp(var(--19px), 1.081rem + 0.45vw, var(--26px));
    padding-bottom: 23px;
	letter-spacing: 0.33rem;
}

.brothers_page_furigana {
	font-size: clamp(var(--12px), 0.689rem + 0.26vw, var(--16px));
	letter-spacing: 0.33rem;
}

.brothers_page_name {
	font-size: clamp(var(--28px), 1.613rem + 0.58vw, var(--37px));
	letter-spacing: 0.5rem;
}

.brothers_page_area {
    display: flex;
    gap: clamp(2.5rem, 1.742rem + 3.24vw, 5.625rem); /* 40-90px */
	padding-bottom: 180px;
	max-width: var(--width-1960px);
	margin: 0 auto;
}

.brothers_page_kazuma_wrapper,
.brothers_page_takeshi_wrapper,
.brothers_page_img_wrapper {
	position: relative;
	flex-grow: 1;
    flex-shrink: 1;
	flex-basis: 0;
}

.brothers_page_kazuma_txt_wrapper {
    /* padding-left: 130px; */
	padding-left: clamp(3.125rem, 1.911rem + 5.18vw, 8.125rem); /* 50-130px */
	position: relative;
	z-index: 2;
}

.brothers_page_takeshi_txt_wrapper {
    /* padding-right: 130px; */
	padding-right: clamp(3.125rem, 1.911rem + 5.18vw, 8.125rem); /* 50-130px */
	position: relative;
	z-index: 2;
}

.contents_decotxt_white.kazuma {
    top: auto;
    bottom: 0;
    left: 0;
    right: auto;
}

.brothers_page_img_01_wrapper {
    margin-bottom: 20px;
}

.brothers_page_img_01,
.brothers_page_img_02 {
	width: 100%;
	height: auto;
}

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

	.brothers_page_area {
		flex-direction: column;
		padding-left: 8%;
		padding-right: 8%;
		padding-bottom: 80px;
		gap: 50px;
	}

	.brothers_page_kazuma_txt_wrapper {
		padding-left: 0;
	}
	
	.brothers_page_takeshi_txt_wrapper {
		padding-right: 0;
	}

	.brothers_page_kazuma_wrapper {
		order: 2;
	}

	.brothers_page_img_wrapper {
		order: 1;
	}

	.brothers_page_takeshi_wrapper {
		order: 3;
	}

	.brothers_page_position {
		padding-bottom: 22px;
	}

	
	.contents_decotxt_white.kazuma {
		top: 0;
		left: -5vw;
	}

	.contents_decotxt_white.takeshi {
		top: 45px;
		right: -5vw;
	}
	
	.brothers_page_name_wrapper {
		padding-bottom: 20px;
	}
	
}


/*-------------------------------------------------------
	Privacy Policy 個人情報保護ポリシー
-------------------------------------------------------*/

.privacy_policy {
	padding-top: 50px;
}

#privacy_policy_static_page .contents_top_img_small {
    object-position: 80% 0;
}

.privacy_policy .contents_title_en,
.privacy_policy .contents_title_ja {
	/* color: #CDCD7C; */
	color: #dee060;
	mix-blend-mode: difference;
}

/* safari用 */
_::-webkit-full-page-media, _:future, :root .privacy_policy .contents_title_en,
_::-webkit-full-page-media, _:future, :root .privacy_policy .contents_title_ja {
	color: var(--pallet-brown);
}
@media screen and (-webkit-min-device-pixel-ratio:0) {
	::i-block-chrome, .contents_title_en,
	::i-block-chrome, .contents_title_ja {
		color: var(--pallet-brown);
	}
}

.privacy_policy .contents_title_wrapper {
	padding-bottom: 20px;
}

.privacy_policy_txt_wrapper {
	/* font-size: clamp(var(--15px), 0.882rem + 0.1vw, var(--16px)); */
	font-size: clamp(var(--14px), 0.845rem + 0.13vw, var(--16px));
    line-height: 2.3;
    padding-top: 50px;
}

.privacy_policy_txt {
    padding-bottom: 80px;
}

.privacy_policy_ul {
    list-style: square;
}

.privacy_policy_ul_number {
    list-style: decimal;
}

.privacy_policy_li_hyphen::before {
	content: '-';
	display: inline-block;
}

.privacy_policy_ul,
.privacy_policy_ul_number {
    text-indent: 0rem;
    padding-left: 1rem;
	padding-bottom: 80px;
}

.privacy_policy_ul_hyphen {
    text-indent: -0.5rem;
    padding-left: 1rem;
}

.privacy_policy_li_number .privacy_policy_li {
	text-indent: 0;
    padding-left: 0;
}

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

	.privacy_policy .contents_title_wrapper {
		padding-top: 30px;
		padding-bottom: 10px;
	}

	.privacy_policy_txt_wrapper {
		padding-top: 30px;
	}

	.privacy_policy_txt {
		padding-bottom: 50px;
	}

	.privacy_policy_ul, .privacy_policy_ul_number {
		padding-bottom: 50px;
	}
}

/*-------------------------------------------------------
	Contact 法人お問い合わせ
-------------------------------------------------------*/

#contact {
	padding-top: 50px;
}

#contacte .contents_title_wrapper {
    padding-bottom: 20px;
}

.contact_txt {
    text-align: center;
    font-size: var(--17px);
    letter-spacing: 0.15rem;
}

.contact_txt_space_top {
    padding-top: 50px;
	padding-bottom: 15px;
}

.contact_txt_space_bottom {
    padding-bottom: 70px;
}

.contact_txt_attention {
	color: var(--pallet-red);
}

a.contact_txt_link {
	color: var(--pallet-red);
	text-decoration: underline;
}

.contact_contents_wrapper {
    padding-bottom: 80px;
}


@media screen and (max-width: 900px) {
	#contact_static_page .contents_title_wrapper {
		padding-top: 20px;
	}

	.contact_txt {
		text-align: center;
		padding-top: 30px;
		padding-bottom: 45px;
		font-size: var(--15px);
	}

	.contact_contents_wrapper {
		padding-bottom: 30px;
	}
}

/*-----------------------------------
	pagination
-----------------------------------*/

/* ページ送りエリア */
.pagination {
	margin-top: 5%;
	margin-bottom: 5%;
	text-align: center;
	line-height: 1.5rem;
  }
  
  /* .pagination .page_number {
	margin: 0.3rem;
	padding: 0.5rem;
	font-size: var(--12px);
	font-family: var(--font-family-body);
	font-style: var(--font-style-body);
	font-weight: bold;
	text-decoration: none;
	position: relative;
  } */
  
  /* .pagination .page_number:after {
	content: "";
	border: 1px solid var(--pallet-light-brown);
	border-radius: 100%;
	width: 42px;
	height: 42px;
	position: absolute;
	top: -2px;
	left: 6px;
	z-index: 1;
	background-color: transparent;
  } */
  
  /* ページ送りアイコン */
  .pagination .prev_icon,
  .pagination .next_icon {
	font-size: var(--14px);
	text-decoration: none;
	position: relative;
  }
  
  .pagination .prev_icon {
	margin-right: 3%;
  }
  
  .pagination .prev_icon::after {
	content: "＜ 前の記事へ";
  }
  
  /* .pagination .prev_icon::before {
	content: url(../images/svg/arrow-l-black.svg);
	display: inline-block;
	vertical-align: middle;
	transform: scale(1);
	position: absolute;
	top: -2px;
	left: -35px;
  } */
  
  .pagination .next_icon {
	margin-left: 4%;
  }
  
  .pagination .next_icon::before {
	content: "次の記事へ ＞";
  }
  
  /* .pagination .next_icon::after {
	content: url(../images/svg/arrow-r-black.svg);
	  display: inline-block;
	  vertical-align: middle;
	  transform: scale(1);
	  position: absolute;
	  top: -2px;
	  left: 40px;
  } */
  
  /* ページ送りアイコン非表示 */
  .visibility-hidden {
	visibility: hidden;
  }
  
  /* 参照ページに印をつける */
  .pagination .current_page {
	position: relative;
  }
  
  /* .pagination .current_page .page_number {
	position: relative;
	z-index: 2;
	color: var(--pallet-white);
	font-size: var(--12px);
	font-family: var(--font-family-body);
	font-style: var(--font-style-body);
	font-weight: bold;
  }
  
  .pagination .current_page::after {
	content: "";
	border-bottom: 1px solid var(--pallet-light-brown);
	border-radius: 100%;
	width: 42px;
	height: 42px;
	position: absolute;
	top: -2px;
	left: 6px;
	z-index: 1;
	background-color: var(--pallet-light-brown);
  } */
  
  .pagination .page_number {
		font-size: var(--12px);;
		text-decoration: none;
		/* border-radius: 50%; */
		width: 42px;
		height: 42px;
		z-index: 1;
		background-color: var(--pallet-white);
		color: var(--pallet-light-brown);
		/* line-height: 1; */
		display: inline-flex;
		justify-content: center;
		align-content: center;
		align-items: center;
	}
	
  .pagination .current_page .page_number {
	background-color: var(--pallet-brown);
	color: var(--pallet-white);
  }
  
  /* .pagination .page_number:hover {
	border-radius: 0;
	opacity: 1;
  } */
  
  /* .pagination .current_page .page_number:hover {
	border-radius: 50%;
  } */
  
  .page_dotted {
	display: inline-block;
	vertical-align: -4px;
  }
  
  @media screen and (max-width: 599px) {
  
	.pagination .prev_icon::after,
	.pagination .next_icon::before {
	  font-size: (--13px);
	}
  
  }

/*-----------------------------------
	40周年
-----------------------------------*/

/* .anniversary_40th_wrapper {
    position: absolute;
    z-index: 90;
    right: 0;
    top: 40%;
    transform: translate(0, -40%);
}

.main_img_txt_wrapper {
    position: static;
    background: var(--gradation-yellow);
	transform: none;
}

.anniversary_40th_img_wrapper {
    text-align: center;
	padding-bottom: 5px;
}

.anniversary_40th_img {
    width: 97%;
} */

/* animation */

/* .fade-in-1s {
	animation: fadeInAnime 1s ease-in-out;
}

.fade-in-3s {
	animation: fadeInAnime 3s ease-in-out;
}
  
@keyframes fadeInAnime {
	0% {
		opacity: 0;
	}

	100% {
		opacity: 1;
	}
}


@media screen and (max-width: 900px) {
	
	.anniversary_40th_img {
		max-width: 450px;
	}

}

@media screen and (max-width: 599px) {
	
	.anniversary_40th_img {
		max-width: 300px;
	}

} */


/*-----------------------------------
	40周年 第2弾
-----------------------------------*/

/* #index_page .header_logo {
	visibility: hidden;
}

.main_img_txt_area {
	background-color: var(--pallet-vivid-yellow);
	min-height: 800px;
	min-height: 850px;
}

.anniversary_40th_new_wrapper {
    position: absolute;
    z-index: 90;
    top: 35%;
    transform: translate(-50%, -35%);
    left: 50%;
	width: 85vw;
	max-width: 950px;
	text-align: center;
}

.anniversary_40th_new_img {
	width: 100%;
} */

/* animation */

/* .fade-in-1s {
	animation: fadeInAnime 1s ease-in-out;
}

.fade-in-3s {
	animation: fadeInAnime 3s ease-in-out;
} */
  
/* @keyframes fadeInAnime {
	0% {
		opacity: 0;
	}

	100% {
		opacity: 1;
	}
} */


/* @media screen and (max-width: 900px) {
	
	.main_img_txt_area {
		min-height: 0;
	}

} */

/*-----------------------------------
	40周年 特設ページ
-----------------------------------*/

body:has(.anniversary-40-1frame) {
    background-color: var(--pallet-vivid-yellow);
}

/* 40th Movie */

.anniversary-40-movie__title img {
	padding: 23px 5% 30px;
	max-width: calc(610px + 10%);
}

.anniversary-40-movie__drop_curtain {
	/* width: 100%; */
	overflow: hidden;
}

.anniversary-40-movie__drop_curtain img {
    width: 2500px !important;
    max-width: none;
}

.anniversary-40-movie {
    text-align: center;
	overflow: hidden;
	background-image: url(../images/anniversary_40/svg/illustration_drop_curtain_right.svg),
	url(../images/anniversary_40/svg/illustration_drop_curtain_left.svg);
	background-position: right 0, left 0;
	background-repeat: no-repeat, no-repeat;
	background-size: clamp(9.375rem, 6.618rem + 4.9vw, 12.5rem) auto, clamp(9.375rem, 6.618rem + 4.9vw, 12.5rem) auto;/* 150-200px - 900-1920px */
	width: 100%;
	/* height: calc(100svh - 95px); */
	padding-bottom: 50px;
	position: relative;
}

.anniversary-40-movie__title_and_content {
	position: relative;
	width: max-content;
	margin-inline: auto;
}

.anniversary-40-movie__title_and_content::after {
    content: '';
    display: inline-block;
    width: 148px;
    height: 214px;
    background-image: url(../images/anniversary_40/svg/illustration_film_camera.svg);
    background-size: cover;
    background-repeat: no-repeat;
    position: absolute;
    bottom: 0;
    right: -200px;
    z-index: 0;
}

.anniversary-40-movie-content iframe {
	/* padding-inline: 5%; */
	width: clamp(20.938rem, 8.407rem + 53.46vw, 72.563rem);
	height: auto;
	aspect-ratio: 560 / 315;
    max-width: 900px;
	position: relative;
}

/* 40th Memorial Item & Menu */

.anniversary-40-item-and-menu_wrapper {
	padding-inline: 5%;
}

.anniversary-40-item-and-menu {
    background-image:
					url(../images/anniversary_40/svg/illustration_film.svg),
					url(../images/anniversary_40/svg/illustration_film.svg);
    background-position: right, left;
    background-size: 35px 40px, 35px 40px;
    background-repeat: repeat-y, repeat-y;
	max-width: 1166px;
	margin-inline: auto;
	animation-name: animation-film;
	animation-duration: 1s;
	animation-timing-function: linear;
	animation-iteration-count: infinite;
}

.anniversary-40-item-and-menu__title_wrapper {
    padding-block: 60px;
	padding-inline: calc(35px + 5%);
	margin-inline: 35px;
	border-top: 30px solid;
}

.anniversary-40-item-and-menu__title_img {
    padding-bottom: 25px;
}

.anniversary-40-item-and-menu__title_txt {
    font-size: var(--22px);
    letter-spacing: 0.15rem;
}

/* フィルム部分 */
.anniversary-40-1frame {
    /* background-image: url(../images/anniversary_40/svg/illustration_film.svg),
					url(../images/anniversary_40/svg/illustration_film.svg);
    background-position: right, left;
    background-size: 35px 40px;
    background-repeat: repeat-y; */
	/* padding-inline: calc(35px + 6%); */
	padding-inline: 7%;
	margin-inline: auto;
	border-top: 30px solid;
	border-bottom: 30px solid;
	padding-block: 30px 80px;
	/* background-image:
		url(../images/anniversary_40/svg/illustration_film_fill.svg),
		url(../images/anniversary_40/svg/illustration_film_fill.svg);
	background-position: top, bottom;
	background-size: 35px 30px, 35px 40px;
	background-repeat: repeat-x, repeat-x; */
	/* position: relative;
    z-index: -1; */
	margin-inline: 35px;
}

.anniversary-40-1frame.anniversary-40-1frame_intro {
	border-bottom: none;
	border-top: none;
}

.anniversary-40-1frame:not(:first-child) {
	border-bottom: none;
}

.anniversary-40-1frame:last-child {
	border-bottom: none;
}

.anniversary-40-1frame__title {
    padding-bottom: 6px;
}

.anniversary-40-1frame__title img {
    width: 280px;
    height: auto;
}

.anniversary-40-1frame__subtitle {
    font-size: var(--22px);
    letter-spacing: 0.15rem;
    padding-bottom: 50px;
}

.anniversary-40-1frame .wp-block-media-text .wp-block-media-text__content {
    padding: 0 0 0 10%;
}

.anniversary-40-1frame__txt {
    font-size: var(--16px);
    line-height: 2.3;
    padding-bottom: 30px;
}

.anniversary-40-1frame__btn {
	position: relative;
}

.wp-block-buttons:has(.anniversary-40-1frame__btn) {
	text-align: right;
}

.anniversary-40-1frame__btn a {
    font-size: var(--16px);
	padding: 22px 10px 22px;
	letter-spacing: 0.25rem;
	min-width: 305px;
	margin-inline: 0 auto;
}

.anniversary-40-1frame__btn::after {
    content: "";
    margin: auto;
    position: absolute;
    top: 0px;
    bottom: 5px;
    right: 23px;
    width: 12px;
    height: 12px;
    border-top: 1px solid var(--pallet-white);
    border-right: 1px solid var(--pallet-white);
    transform: rotate(45deg);
    transition: all 0.8s ease;
}

.wp-block-media-text__media img {
    aspect-ratio: 1 / 1;
    object-fit: cover;
}

.anniversary-40-movie__camera {
	width: 100%;
}


/* animation */

@keyframes animation-film {

	0% {
	  background-position: left 40px, right 40px;
	}
  
	100% {
	  background-position: left 0, right 0px;
	}

}

@media (max-width: 1360px) {

	.anniversary-40-movie__title_and_content::after {
		right: -180px;
	}

}

@media (max-width: 1160px) {

	.anniversary-40-movie__title_and_content::after {
		right: -140px;
	}

}

@media (max-width: 1000px) {

	.anniversary-40-movie__title_and_content::after {
		right: -100px;
	}

}

@media (max-width: 900px) {

	.anniversary-40-movie {
		background-image: none;
		padding-bottom: 0;
		/* height: calc(100svh - 60px);
		display: flex;
		flex-direction: column;
		justify-content: space-between; */
	}

	.anniversary-40-movie__title_and_content {
		width: 100%;
	}

	.anniversary-40-movie__title_and_content::after {
		background-image: none;
	}

	.wp-block-media-text.anniversary-40-1frame__content {
		grid-template-columns: 100% !important;
	}

	.wp-block-media-text.is-stacked-on-mobile .wp-block-media-text__media {
		grid-column: 1;
		grid-row: 1;
	}

	.wp-block-media-text.is-stacked-on-mobile .wp-block-media-text__content {
		grid-column: 1;
		grid-row: 2;
	}

	.anniversary-40-1frame .wp-block-media-text .wp-block-media-text__content {
		padding-inline: 0;
	}

	.anniversary-40-1frame__txt {
		padding-block: 20px 30px;
	}
 
}


@media (max-width: 599px) {

	.anniversary-40-1frame {
		border-top: 14px solid;
		border-bottom: 14px solid;
		margin-inline: 14px;
		padding-block: 18px 40px;
	}

	.anniversary-40-item-and-menu {
		background-image:
		url(../images/anniversary_40/svg/illustration_film_sp.svg),
		url(../images/anniversary_40/svg/illustration_film_sp.svg);
		background-size: 16px 16px, 16px 16px;
		animation-duration: 0.6s;
	}

	.anniversary-40-1frame__subtitle {
		font-size: var(--16px);
		padding-bottom: 27px;
	}

	.anniversary-40__scroll {
		
	}

	.anniversary-40-1frame.anniversary-40-1frame_intro .anniversary-40-item-and-menu__title_txt {
		font-size: var(--32px) !important;
		padding-bottom: 10px;
		white-space: nowrap;
	}

	.anniversary-40-1frame.anniversary-40-1frame_intro {
		padding-bottom: 0;
	}

	.anniversary-40-item-and-menu_wrapper {
		padding-inline: 0;
	}

	.anniversary-40-item-and-menu__title_txt {
		font-size: var(--14px);
	}

	.anniversary-40-1frame__title img {
		width: 200px;
	}

	.anniversary-40-1frame__txt {
		font-size: var(--14px);
	}

	.anniversary-40-1frame__btn a {
		font-size: var(--14px) !important;
		padding: 20px 10px 19px;
		letter-spacing: 0.25rem;
		min-width: 260px;
		margin-inline: 0 auto;
	}

	.wp-block-buttons:has(.anniversary-40-1frame__btn) {
		text-align: center;
	}

	.anniversary-40-1frame__btn::after {
		width: 8px;
		height: 8px;
		bottom: 0;
	}

	.anniversary-40-item-and-menu__title_wrapper {
		padding-block: 40px;
		padding-inline: calc(14px + 5%);
		margin-inline: 16px;
		border-top: 14px solid;
	}

	.anniversary-40-item-and-menu__title_img {
		padding-bottom: 18px;
	}

	.anniversary-40-movie__drop_curtain img {
		position: relative;
		left: -50px;
	}

	/* animation */

	@keyframes animation-film {

		0% {
			background-position: left 16px, right 16px;
		}
	
		100% {
			background-position: left 0, right 0px;
		}

	}

}

  /*-------------------------------------------------------
	modal
-------------------------------------------------------*/

	/* Basic Modal Styles */
  
	.modal__overlay {
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		background: rgba(0,0,0,0.6);
		display: flex;
		justify-content: center;
		align-items: center;
	  }
	  
	  .modal__container {
		background-color: var(--pallet-vivid-yellow);
		padding: 20px;
		max-width: 500px;
		max-height: 100vh;
		border-radius: 4px;
		/* overflow-y: auto; */
		box-sizing: border-box;
	  }
	  
	  .modal__header {
		display: flex;
		justify-content: space-between;
		align-items: center;
		position: absolute;
		top: -18px;
		right: -18px;
		z-index: 100;
		}
	
		.modal__header .modal__close:hover {
			cursor: pointer;
		}
	  
	  .modal__close {
		background: transparent;
		border: 0;
	  }
	  
	  .modal__header .modal__close:before {
		content: '';
		display: inline-block;
		width: 50px;
		height: 50px;
		background-image: url(../images/anniversary_40/svg/modal-close.svg);
		background-size: contain;
		  background-repeat: no-repeat;
		vertical-align: middle;
		}
	  
	  .modal__content {
		margin-top: 2rem;
		margin-bottom: 10px;
		line-height: 1.5;
		color: var(--pallet-brown);
	  }
	  
	  /* .modal__btn {
		font-size: .875rem;
		padding-left: 1rem;
		padding-right: 1rem;
		padding-top: .5rem;
		padding-bottom: .5rem;
		background-color: #e6e6e6;
		color: rgba(0,0,0,.8);
		border-radius: .25rem;
		border-style: none;
		border-width: 0;
		cursor: pointer;
		-webkit-appearance: button;
		text-transform: none;
		overflow: visible;
		line-height: 1.15;
		margin: 0;
		will-change: transform;
		-moz-osx-font-smoothing: grayscale;
		-webkit-backface-visibility: hidden;
		backface-visibility: hidden;
		-webkit-transform: translateZ(0);
		transform: translateZ(0);
		transition: -webkit-transform .25s ease-out;
		transition: transform .25s ease-out;
		transition: transform .25s ease-out,-webkit-transform .25s ease-out;
	  } */
	  
	  /* .modal__btn:focus, .modal__btn:hover {
		-webkit-transform: scale(1.05);
		transform: scale(1.05);
	  }
	  
	  .modal__btn-primary {
		background-color: #00449e;
		color: #fff;
	  } */
	
	
		/* Demo Animation Style */
	  
	  @keyframes mmfadeIn {
		  from { opacity: 0; }
			to { opacity: 1; }
	  }
	  
	  @keyframes mmfadeOut {
		  from { opacity: 1; }
			to { opacity: 0; }
	  }
	  
	  @keyframes mmslideIn {
		from { transform: translateY(15%); }
		  to { transform: translateY(0); }
	  }
	  
	  @keyframes mmslideOut {
		  from { transform: translateY(0); }
		  to { transform: translateY(-10%); }
	  }
	  
	  .micromodal-slide {
		display: none;
	  }
	  
	  .micromodal-slide.is-open {
		display: block;
	  }
	  
	  .micromodal-slide[aria-hidden="false"] .modal__overlay {
		animation: mmfadeIn .3s cubic-bezier(0.0, 0.0, 0.2, 1);
	  }
	  
	  .micromodal-slide[aria-hidden="false"] .modal__container {
		animation: mmslideIn .3s cubic-bezier(0, 0, .2, 1);
		min-width: 360px;
	  }
	  
	  .micromodal-slide[aria-hidden="true"] .modal__overlay {
		animation: mmfadeOut .3s cubic-bezier(0.0, 0.0, 0.2, 1);
	  }
	  
	  .micromodal-slide[aria-hidden="true"] .modal__container {
		animation: mmslideOut .3s cubic-bezier(0, 0, .2, 1);
	  }
	  
	  .micromodal-slide .modal__container,
	  .micromodal-slide .modal__overlay {
		will-change: transform;
	  }
	
	
	  /* z-index */
	  .micromodal-slide[aria-hidden="false"] .modal__overlay {
		animation: mmfadeIn .3s cubic-bezier(0.0, 0.0, 0.2, 1);
		z-index: 200;
		}
	
		@media screen and (max-width: 900px) {
	
			.micromodal-slide[aria-hidden="false"] .modal__container {
				animation: mmslideIn .3s cubic-bezier(0, 0, .2, 1);
				min-width: 340px;
			  }
		}
	
	
	/*-------------------------------------------------------
		40周年 modal
	-------------------------------------------------------*/

	.modal__header {
		background: transparent;
	}
	
	/* .header_logo_img {
		width: 230px;
		height: auto;
		margin-top: 0;
	}
	 */
	
	.modal__anniversary_img {
		width: 380px;
		height: auto;
		margin: 0 auto;
		display: block;
		padding-right: 10px;
	}
	
	.modal__txt {
		line-height: 1.9;
		text-align: center;
		font-size: 17px;
	}
	
	.main_img_txt {
		white-space: nowrap;
	}
	
	.anniversary_link {
		cursor: pointer;
		transition: all 1s ease;
	}
	
	.main_img_txt_wrapper {
		transition: all 1s ease;
	}
	
	a.ml_btn.ml_btn_brown:focus-visible {
		outline: 1px solid var(--pallet-yellow);
	}
	
	/* #index_page .n2-ss-slide,
	#index_page .n2-ss-slider-2.n2-ow,
	#index_page .n2-ss-layers-container {
		object-position: 50% 50%;
		margin-top: 50px;
	} */
	
	.main_img_txt_small {
		padding-bottom: 30px;
	}
	
	.main_img_txt_area a.ml_btn.ml_btn_brown {
		white-space: nowrap;
	}

	.modal__footer {
		background-color: transparent;
		padding: 20px 5%;
	}
	
	/* animation */
	.poyon {
		animation: poyon 1.1s linear 0s 1;
	  }
	  
	  @keyframes poyon {
		0%   { transform: scale(0.8, 1.4) translate(0%, -100%); }
		10%  { transform: scale(0.8, 1.4) translate(0%, -15%); }
		20%  { transform: scale(1.4, 0.6) translate(0%, 30%); }
		30%  { transform: scale(0.9, 1.1) translate(0%, -10%); }
		40%  { transform: scale(0.95, 1.2) translate(0%, -30%); }
		50%  { transform: scale(0.95, 1.2) translate(0%, -10%); }
		60%  { transform: scale(1.1, 0.9) translate(0%, 5%); }
		70%  { transform: scale(1.0, 1.0) translate(0%, 0%); }
		100% { transform: scale(1.0, 1.0) translate(0%, 0%); }
	  }
	
	@media screen and (max-width: 900px) {
		
		/* .header_logo_img {
			width: 90px;
			margin-top: 35px;
			margin-right: 10px;
		} */
	
		.humberger_logo_img {
			width: 170px;
			height: auto;
			margin: 0 auto 5px;
			display: block;
			padding-right: 8px;
		}
	
		.modal__footer a.ml_btn {
			width: 290px;
		}
	
		/* #index_page .n2-ss-slide,
		#index_page .n2-ss-slider-2.n2-ow,
		#index_page .n2-ss-layers-container {
			object-position: 50% 50%;
			margin-top: 60px;
			width: 100vw;
			height: calc(100vh - 60px);
			object-fit: contain;
		} */
	
		.main_img_txt_wrapper {
			top: auto;
			transform: translate(0, -15vh);
			/* 通常ver */
			/* bottom: 15vh; */

			/* 栗 ver */
			bottom: 50vh;
			max-width: 360px;
		}
	
		.top-anniversary-logo-wrapper {
			position: absolute;
			top: -252px;
			left: 20px;
		}
	
		.main_img_txt_wrapper a.ml_btn {
			width: 290px;
			padding: 20px 6px 20px;
		}
	
		.main_img_txt {
			padding-bottom: 3px;
		}
	
		.main_img_txt_small {
			padding-bottom: 23px;
		}
	}
	
	@media screen and (max-width: 500px) {
	
		.main_img_txt_wrapper {
			padding: 30px 5% 30px 8%;
		}
	
		.main_img_txt_small {
			padding-bottom: 18px;
		}
	
		.main_img_txt {
			padding-bottom: 0;
		}
	
		.top-anniversary-logo-wrapper {
			top: -195px;
			left: 45px;
		}
	
		.top-anniversary-logo {
			width: 220px;
			height: auto;
		}
	
	}

/*-------------------------------------------------------
	41周年
-------------------------------------------------------*/

:root {
	--font-family-en-limelight: "Limelight", sans-serif;
	--font-style-en-limelight: normal;
	--font-weight-en-limelight: 400;
}

#landing_page_post_page:has(.anniversary-41-main__area) {
	background-color: var(--pallet-vivid-yellow);
}

.anniversary-41-main__title-wrapper {
    padding-bottom: 17px;
}

.anniversary-41-main__title {
    font-size: var(--31px);
    font-family: var(--font-family-en-limelight);
    font-style: var(--font-style-en-limelight);
    font-weight: var(--font-weight-en-limelight);
    padding-bottom: 3px;
}

.anniversary-41-item-and-menu-title {
	margin-inline: 5%;
}

.anniversary-41-main-frame__content.wp-block-media-text>.wp-block-media-text__content {
    padding: 0 0 0 10%;
}

.anniversary-41-main-frame__txt-image {
	padding-bottom: 40px;
}

.anniversary-41-main__area {
    display: flex;
    justify-content: center;
}

.anniversary-41-main__wrapper {
    margin-block: 22px 90px;
    margin-inline: 22px;
    max-width: 1320px;
	padding: 50px 80px 80px;
	background-image: url(../images/anniversary_41/anniversary_41_main_frame_left_top.svg),
	url(../images/anniversary_41/anniversary_41_main_frame_right_top.svg),
	url(../images/anniversary_41/anniversary_41_main_frame_left_bottom.svg),
	url(../images/anniversary_41/anniversary_41_main_frame_right_bottom.svg),
	url(../images/anniversary_41/anniversary_41_main_frame_top.svg),
	url(../images/anniversary_41/anniversary_41_main_frame_bottom.svg),
	url(../images/anniversary_41/anniversary_41_main_frame_left.svg),
	url(../images/anniversary_41/anniversary_41_main_frame_right.svg);
	background-size: 129px 129px, 129px 129px, 129px 129px, 129px 129px, 129px 129px, 129px 129px, 129px 129px, 108px 108px;
	  background-repeat: no-repeat, no-repeat, no-repeat, no-repeat, repeat-x, repeat-x, repeat-y, repeat-y;
	  background-position: left top, right top, left bottom, right bottom, top, bottom, left, right;
}

.anniversary-41-item-and-menu {
    background-image: url(../images/anniversary_40/svg/illustration_film.svg),
					url(../images/anniversary_40/svg/illustration_film.svg);
    background-position: right, left;
    background-size: 35px 40px, 35px 40px;
    background-repeat: repeat-y, repeat-y;
    max-width: 1166px;
    margin-inline: auto;
}

.anniversary-41-item-and-menu_wrapper {
    display: flex;
    justify-content: center;
}

.anniversary-41-1frame {
	margin-block: 22px 50px;
    margin-inline: 22px;
    max-width: 1066px;
	padding: 70px 80px 115px;
	background-image: url(../images/anniversary_41/anniversary_41_frame_left_top.svg),
	url(../images/anniversary_41/anniversary_41_frame_right_top.svg),
	url(../images/anniversary_41/anniversary_41_frame_left_bottom.svg),
	url(../images/anniversary_41/anniversary_41_frame_right_bottom.svg),
	url(../images/anniversary_41/anniversary_41_frame_top.svg),
	url(../images/anniversary_41/anniversary_41_frame_bottom.svg),
	url(../images/anniversary_41/anniversary_41_frame_left.svg),
	url(../images/anniversary_41/anniversary_41_frame_right.svg);
	background-size: 108px 108px, 108px 108px, 108px 108px, 108px 108px, 108px 108px, 108px 108px, 108px 108px, 108px 108px;
	background-repeat: no-repeat, no-repeat, no-repeat, no-repeat, repeat-x, repeat-x, repeat-y, repeat-y;
	background-position: left top, right top, left bottom, right bottom, top, bottom, left, right;
}

.anniversary-41-1frame:first-of-type {
	margin-top: 0;
}

.anniversary-40-1frame__title-wrapper {
	padding-bottom: 33px;
}

.anniversary-40-1frame__title {
	font-size: var(--50px);
	font-family: var(--font-family-en-limelight);
	font-style: var(--font-style-en-limelight);
	font-weight: var(--font-weight-en-limelight);
}

.anniversary-40-1frame__sub-title {
	font-size: var(--22px);
    font-weight: 500;
    letter-spacing: 0.18rem;
}

.anniversary-40-1frame__title-deco {
    padding-bottom: 33px;
}

.anniversary-41-1frame__btn {
	padding-top: 40px;
}

.anniversary-41-1frame__btn a::after {
    content: '';
    display: inline-block;
    width: 30px;
    height: 17px;
    background-image: url(../images/anniversary_41/anniversary_41_button_arrow.svg);
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: middle;
    position: absolute;
    top: 50%;
    right: 33px;
    transform: translateY(-50%);
}

.anniversary-41-1frame__btn a {
    min-width: 335px;
    letter-spacing: 0.25rem;
    padding: 24px 42px 21px 10px !important;
	position: relative;
}

.anniversary-41-1frame__content {
    direction: ltr;
    grid-column: 2;
    grid-row: 1;
    /* padding: 0 0 0 12%; */
    word-break: break-word;
	gap: 45px 7%;
}

.anniversary-41-1frame__content-txt-wrapper {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.anniversary-41-main-1frame__txt {
	font-size: var(--16px);
    line-height: 2.3;
}

.anniversary-41-1frame__txt {
    font-size: var(--16px);
    line-height: 2.3;
}

/* スライド */
#landing_page_post_page:has(.anniversary-41-main__area) .carousel-indicators button.active {
	background-color: var(--pallet-brown);
    border: var(--pallet-brown) solid 4px !important;
}

#landing_page_post_page:has(.anniversary-41-main__area) .carousel-indicators button {
    max-width: 3px !important;
    max-height: 3px !important;
    background-color: var(--pallet-white);
	border: var(--pallet-white) solid 4px !important;
    border-radius: 999px;
}

#landing_page_post_page:has(.anniversary-41-main__area) .horizontal button {
    transform: translateY(20px) !important;
}

#landing_page_post_page:has(.anniversary-41-main__area) .wp-block-bsb-slider .bsbCarousel .carousel-indicators {
    display: flex !important;
	gap: 10px !important;
}

#landing_page_post_page:has(.anniversary-41-main__area) .carousel-item {
    position: relative;
    height: auto !important;
	border-radius: 0 !important;
}

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

	.anniversary-41-main__wrapper {
		margin-block: 10px 40px;
		margin-inline: 5%;
		padding: 45px 38px 65px;
		background-size: 70px 70px, 70px 70px, 70px 70px, 70px 70px, 70px 70px, 70px 70px, 70px 70px, 108px 108px;
	}

	.anniversary-41-1frame {
		margin-block: 22px 50px;
		margin-inline: 22px;
		padding: 70px 5% 115px;
		background-size: 70px 70px, 70px 70px, 70px 70px, 70px 70px, 70px 70px, 70px 70px, 70px 70px, 70px 70px;
	}

	.anniversary-40-1frame__title {
		font-size: var(--34px);
	}

	.anniversary-40-1frame__sub-title {
		font-size: var(--16px);
		font-weight: 500;
		letter-spacing: 0.18rem;
	}

	.anniversary-41-1frame__btn a {
		min-width: 262px;
		font-size: var(--14px) !important;
		padding: 24px 42px 21px 15px !important;
	}

	.anniversary-41-1frame__btn a::after {
		right: 13px;
	}

}

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

	.anniversary-41-main__title {
		font-size: var(--23px);
		padding-bottom: 0;
	}

	.anniversary-41-main-1frame__txt {
		font-size: var(--14px);
	}

	.anniversary-41-item-and-menu-title {
		margin-inline: auto;
		max-width: 80%;
	}

	.anniversary-41-1frame__txt {
		font-size: var(--14px);
	}

	.anniversary-41-1frame__btn {
		padding-top: 25px;
	}

	.anniversary-41-main__wrapper {
		margin-inline: 20px;
	}

	.anniversary-41-1frame {
		margin-inline: 20px;
		padding: 50px 6% 76px;
	}

	.anniversary-40-1frame__title {
		padding-bottom: 0;
	}

	.anniversary-40-1frame__title-deco img,
	.anniversary-41-main__title-deco img {
		width: 194px !important;
	}

	.anniversary-41-main__title-wrapper {
		padding-bottom: 3px;
	}

	.anniversary-41-main-frame__content {
		row-gap: 18px !important;
	}

	.anniversary-41-main-frame__txt-image {
		padding-bottom: 22px;
	}

	.anniversary-40-1frame__title-deco {
		padding-bottom: 23px;
	}

	.anniversary-40-1frame__title-wrapper {
		padding-bottom: 28px;
	}

	.wp-block-buttons:has(.anniversary-41-1frame__btn) {
		margin-inline: auto;
	}

}

/*-------------------------------------------------------
	猫の投稿 LP
-------------------------------------------------------*/

/* common */

/* 共通タイトル */
.neko_title_img img {
    width: 221px;
	height: auto;
	padding-bottom: 5px;
}

.neko_title_txt {
    font-size: var(--28px);
    font-weight: var(--font-weight-ja);
    letter-spacing: 0.18rem;
    text-indent: 0.18rem;
}

/* 投稿フォーム */

.neko_title_contact {
    padding-bottom: 30px;
}

.neko_contact_txt {
    font-size: var(--17px);
    font-weight: var(--font-weight-ja);
    letter-spacing: 0.12rem;
}

.neko-contact {
	padding: 100px 5% 0;
}

.wpcf7 form:has(.contact_form_cat) {
	max-width: 822px;
	margin-inline: auto;
	margin-block: 50px;
}

.contact_form_cat .contact_column {
    display: grid;
    grid-template-columns: 60px 165px 1fr;
    gap: 12px;
    justify-items: start;
    align-items: start;
    margin-bottom: 32px;
}

.contact_column_required.no_required {
    visibility: hidden;
}

.contact_form_cat .contact_column_required {
	margin-top: 8px;
}

.contact_form_cat .contact_column_text {
    padding-top: 8px;
	letter-spacing: 0.1rem;
}

.contact_form_cat .wpcf7-form-control.wpcf7-text {
    padding: 10px;
    border: none;
    height: 40px;
    border-radius: 5px;
    border: 1px solid var(--pallet-brown);
	width: 100%;
}

.contact_form_cat textarea.wpcf7-form-control.wpcf7-textarea {
	border-radius: 5px;
    border: 1px solid var(--pallet-brown);
	width: 100% !important;
}

.contact_form_cat .wpcf7-form-control-wrap:has(textarea) {
	width: 100%;
}

.contact_form_cat .check_wrapper .contact_column_required {
	margin-top: 0;
}

/* 送信ボタン */

.contact_form_cat #submit_button_block {
    position: relative;
    max-width: max-content;
    margin-inline: auto;
}

#submit_button_block input:hover {
    cursor: pointer !important;
}

.wpcf7 form .contact_form_cat #submit_button_row .wpcf7-submit {
    background-image: url(../images/neko/svg/neko_paw_prints_white.svg);
    background-position: 94% 50%;
    background-repeat: no-repeat;
    transition: all 0.8s ease;
    background-size: 78px 34px;
}

.wpcf7 form .contact_form_cat #submit_button_row .wpcf7-submit:hover {
	background-image: url(../images/neko/svg/neko_paw_prints_black.svg);
}

/* .contact_form_cat #submit_button_block::after {
    content: '';
    display: inline-block;
    width: 78px;
    height: 34px;
    background-image: url(../images/neko/svg/neko_paw_prints_white.svg);
    background-size: contain;
    background-repeat: no-repeat;
    vertical-align: middle;
    position: absolute;
    top: calc(50% - 24px);
    right: 20px;
    transform: translateY(calc(50% - 24px));
	transition: all 0.8s ease;
} */


/* .contact_form_cat #submit_button_block:hover::after {
    background-image: url(../images/neko/svg/neko_paw_prints_black.svg);
	cursor: pointer;
} */


.wpcf7 form .contact_form #submit_button_row .wpcf7-submit:hover {
    background-image: url(../images/neko/svg/neko_paw_prints_black.svg);
}

.your-cats-picture-wrapper {
    display: flex;
    align-items: flex-start;
}

.contact_form_cat_txt {
    display: block;
    margin-top: 5px;
}

.wpcf7-form-control-wrap:has(.your-email) {
	width: 100%;
}

/* セレクトボックス */

.your-pref-item .wpcf7-form-control-wrap {
    display: inline-flex;
    align-items: center;
    position: relative;
}

.your-pref-item .wpcf7-form-control-wrap::after {
    position: absolute;
    right: 15px;
    width: 10px;
    height: 7px;
    background-color: var(--pallet-brown);
    clip-path: polygon(0 0, 100% 0, 50% 100%);
    content: '';
    pointer-events: none;
}

.your-pref-item .wpcf7-form-control.wpcf7-select {
    appearance: none;
    min-width: 230px;
    height: 2.8em;
    padding: 0.2rem calc(.8rem + 30px) 0.2rem 0.95rem;
    border: 1px solid var(--pallet-brown);
    border-radius: 5px;
    background-color: var(--pallet-white);
    font-size: 1em;
    cursor: pointer;
}