@import url("https://fonts.googleapis.com/css2?family=Cormorant Garamond:ital,wght@0,700;1,600;1,700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto Sans JP:wght@400;500&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Shippori Mincho:wght@700&display=swap");
@import url('https://fonts.googleapis.com/css2?family=Geist:wght@100..900&family=Noto+Sans+JP:wght@100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Libre+Baskerville:ital,wght@0,400..700;1,400..700&display=swap');
/* reset */
*, *::before, *::after {
	box-sizing: border-box;
}
* {
	padding: 0; /* Reset `padding` and `margin` of all elements */
	margin: 0;
}
html {
	-moz-text-size-adjust: none;
	-webkit-text-size-adjust: none;
	text-size-adjust: none;
	word-break: normal;
	-moz-tab-size: 4;
	tab-size: 4;
	box-sizing: border-box;
}

body, h1, h2, h3, h4, p, figure, blockquote, dl, dd {
	margin: 0;
}

ul[role=list], ol[role=list] {
	list-style: none;
}

body {
	height: 100%;
	scroll-behavior: smooth;
	width: 100%;
	line-height: 1.5;
}

h1, h2, h3, h4, button, input, label {
	line-height: 1.1;
}

h1, h2, h3, h4 {
	text-wrap: balance;
}

a:not([class]) {
	-webkit-text-decoration-skip: ink;
	text-decoration-skip-ink: auto;
	color: currentColor;
}

img, picture {
	max-width: 100%;
	display: block;
}

input, button, textarea, select {
	font: inherit;
}

textarea:not([rows]) {
	min-height: 10em;
}

:target {
	scroll-margin-block: 5ex;
}

a {
	text-decoration: none;
}

a:hover {
	opacity: 0.7;
}

:where([hidden]:not([hidden=until-found])) {
	display: none !important;
}

:where(html) {
	-webkit-text-size-adjust: none;
	color-scheme: dark light;
	-moz-tab-size: 2;
	-o-tab-size: 2;
	tab-size: 2;
	scrollbar-gutter: stable;
}

:where(html:has(dialog:modal[open])) {
	overflow: clip;
}

@media (prefers-reduced-motion: no-preference) {
	:where(html:focus-within) {
		scroll-behavior: smooth;
	}
}
:where(body) {
	line-height: 1.5;
	font-family: system-ui, sans-serif;
	-webkit-font-smoothing: antialiased;
}

:where(button) {
	all: unset;
}

:where(input, button, textarea, select) {
	font: inherit;
	color: inherit;
}

:where(textarea) {
	resize: vertical;
	resize: block;
}

:where(button, label, select, summary, [role=button], [role=option]) {
	cursor: pointer;
}

:where(:disabled) {
	cursor: not-allowed;
}

:where(label:has(> input:disabled), label:has(+ input:disabled)) {
	cursor: not-allowed;
}

:where(a) {
	color: inherit;
	text-underline-offset: 0.2ex;
}

:where(ul, ol) {
	list-style: none;
}

:where(img, svg, video, canvas, audio, iframe, embed, object) {
	display: block;
}

:where(img, picture, svg, video) {
	max-inline-size: 100%;
	block-size: auto;
}

:where(p, h1, h2, h3, h4, h5, h6) {
	overflow-wrap: break-word;
}

:where(h1, h2, h3) {
	line-height: calc(1em + 0.5rem);
	text-wrap: balance;
}

:where(hr) {
	border: none;
	border-block-start: 1px solid;
	color: inherit;
	block-size: 0;
	overflow: visible;
}

:where(dialog) {
	border: none;
	background: none;
	inset: unset;
	max-width: unset;
	max-height: unset;
}

:where(dialog:not([open], [popover])) {
	display: none !important;
}

:where([popover]) {
	border: none;
	background: none;
	inset: unset;
	color: inherit;
}

:where([popover]:not(:popover-open)) {
	display: none !important;
}

:where(:focus-visible) {
	outline: 3px solid CanvasText;
	box-shadow: 0 0 0 5px Canvas;
	outline-offset: 1px;
}

:where(:focus-visible, :target) {
	scroll-margin-block: 8vh;
}

:where(.visually-hidden:not(:focus-within, :active)) {
	-webkit-clip-path: inset(50%) !important;
	clip-path: inset(50%) !important;
	height: 1px !important;
	width: 1px !important;
	overflow: hidden !important;
	position: absolute !important;
	white-space: nowrap !important;
	border: 0 !important;
	-webkit-user-select: none !important;
	-moz-user-select: none !important;
	user-select: none !important;
}

.pcnone {
	display: none;
}
.spnone {
	display: inline;
}
@media screen and (max-width: 650px) {
	.pcnone {
		display: inline;
	}
	.spnone {
		display: none;
	}
}
/* Global */
:root {
	--white00: rgba(255, 255, 255, 1);
	--black00: rgba(0, 0, 0, 1);
	--black01: rgba(34, 34, 34, 1);
	--black02: rgba(0, 0, 0, .5);
	--gray-line: rgba(201, 203, 213, 1);
	--dark-gray: rgba(137, 137, 137, 1);
	--bg-gray: rgba(236, 238, 240, 1);
	--bg-gray02: rgba(192, 199, 205, 1);
	--bg-gray03: rgba(227, 230, 233, 1);
	--bg-gray04: rgba(220, 221, 217, 1);
	--bg-gray05: rgba(217, 217, 217, 1);
	--bg-gold: rgba(165, 155, 99, 1);
	--bg-green: rgba(176, 221, 205, 0.2);
	--bg-green2: rgba(126, 125, 88, 1);
	--bg-green3: rgba(101, 100, 69, 1);
	--bg-blue: rgba(155, 223, 243, 0.2);
	--bg-tag: rgba(115, 119, 123, 1);
}

body {
	position: relative;
	width: 100%;
	/*min-height: 100vh;*/
	background: var(--white00);
	z-index: 0;
	overflow-x: clip;
	animation: loading 3s;
}

body .wrap01 {
	/*width: 90rem;
	margin: 0 auto;*/
	width: 100%;/* 画面幅いっぱいに広がることを許可 */
	max-width: 90rem;/* ただし 90rem (1440px) 以上にはならない */
	margin: 0 auto;
	padding: 0 20px;/* 画面端にピッタリくっつかないよう、左右に少し余白を作るのが一般的 */
}

@media screen and (max-width: 750px) {
	html {
		font-size: 3.7333333333vw;
	}
	body {
		width: 100%;
		margin: 0;
	}
	body .wrap01 {
		width: 100%;
	}
}
@keyframes loading {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}
main {
	position: relative;
}

.side_snslinkbox {
	position: fixed;
	top: 27.8125rem;
	right: 3.125rem;
	display: flex;
	flex-direction: column;
	z-index: 5010;
}
.side_snslinkbox li {
	width: 1.25rem;
	height: 1.25rem;
	margin-bottom: 2.5rem;
}
.side_snslinkbox li:last-child {
	margin-bottom: 0;
}

.side_contact {
	position: fixed;
	/*top: 44.0625rem;*/
	bottom: 0;
	right: 0;
	width: 4rem;
	height: 12.1875rem;
	border-top-left-radius: 0.625rem;
	background-color: rgba(0, 0, 0, 0.5);
	writing-mode: vertical-rl;
	z-index: 5020;
}
.side_contact a {
	width: 100%;
	height: auto;
	display: block;
	font-size: 0.875rem;
	font-family: "Shippori Mincho", cursive;
	font-weight: 700;
	text-align: center;
	line-height: 4rem;
}

@media screen and (max-width: 750px) {
	.side_snslinkbox {
		display: none;
	}
	.side_contact {
		/*top: 80px;                   21.33vw ＝ 80px */
		bottom: 0;
		width: 64px;                /* 17.06vw ＝ 64px */
		height: 195px;              /* 52vw ＝ 195px */
		border-top-left-radius: 10px;    /* 2.66vw ＝ 10px */
		border-bottom-left-radius: 0; /* 2.66vw ＝ 10px */
	}
	.side_contact a {
		color: #fff;
		font-size: 14px;            /* 3.73vw ＝ 14px */
		line-height: 64px;          /* 17.06vw ＝ 64px（親のwidthと同じで、文字を綺麗に縦1列・中央揃えにする意図） */
	}
}
/*footer {
	width: 100%;
	color: var(--white00);
	background-color: var(--black01);
}
footer .wrap01 {
	padding-bottom: 3.75rem;
}
footer .wrap01 h3 {
	padding-top: 3.75rem;
	margin-left: 7.5rem;
}
footer .wrap01 .footnav_container {
	margin-top: 5rem;
	margin-left: 7.0625rem;
	padding: 0;
	display: flex;
	justify-content: flex-start;
}
footer .wrap01 .footnav_container li {
	margin-right: 2.5rem;
	font-size: 1.125rem;
	font-family: "Cormorant Garamond", cursive;
	font-style: italic;
	font-weight: 700;
}
footer .wrap01 .footnav_container li.telnum {
	display: inline-flex;
	align-items: center;
	font-size: 0.75rem;
	font-weight: 500;
	font-style: normal;
	font-family: "Noto Sans JP", cursive;
}
footer .wrap01 .footnav_container li.telnum::before {
	content: "";
	display: inline-block;
	width: 1.25rem;
	height: 1.25rem;
	margin-right: 0.3125rem;
	background-image: url(../images/tel_icon_gold.svg);
	background-size: contain;
}
footer .wrap01 .foot_banner {
	width: 21.25rem;
	height: 7.9375rem;
	margin-top: -5.4375rem;
	margin-left: 61.25rem;
}
footer .wrap01 .foot_banner a {
	width: 100%;
	height: 100%;
	display: inline-block;
}
footer .wrap01 .copy {
	margin-top: 0.6875rem;
	margin-left: 7.5rem;
	font-size: 0.75rem;
	font-family: "Cormorant Garamond", cursive;
	font-weight: 700;
	color: rgb(137, 137, 137);
}

@media screen and (max-width: 750px) {
	footer {
		width: 100vw;
	}
	footer .wrap01 {
		padding-bottom: 8vw;
	}
	footer .wrap01 h3 {
		width: 27.2vw;
		padding-top: 13.3333333333vw;
		margin: 0 auto;
	}
	footer .wrap01 .footnav_container {
		margin-top: 10.6666666667vw;
		margin-left: 28.2666666667vw;
		padding: 0;
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
	}
	footer .wrap01 .footnav_container li {
		width: 29.3333333333vw;
		margin-right: 0;
		margin-bottom: 5.3333333333vw;
		font-size: 4.8vw;
	}
	footer .wrap01 .footnav_container li.telnum {
		margin-left: -10.6666666667vw;
		font-size: 3.2vw;
	}
	footer .wrap01 .footnav_container li.telnum::before {
		content: "";
		display: inline-block;
		width: 5.3333333333vw;
		height: 5.3333333333vw;
		margin-right: 1.3333333333vw;
	}
	footer .wrap01 .foot_banner {
		width: 89.3333333333vw;
		height: 33.0666666667vw;
		margin-top: 16.2666666667vw;
		margin-left: 5.3333333333vw;
	}
	footer .wrap01 .copy {
		margin: 8vw auto 0;
		font-size: 3.2vw;
		text-align: center;
	}
}*/
/* Button */
.btn_tolist_link {
	width: 10.625rem;
	height: 2.1875rem;
	display: block;
	border-bottom: 0.0625rem var(--black00) solid;
	background: url(../images/arrow_right.svg) right 3%/auto no-repeat;
}
.btn_tolist_link a {
	width: 100%;
	height: auto;
	display: block;
	font-size: 1rem;
	font-family: "Cormorant Garamond", cursive;
	font-style: italic;
	font-weight: 700;
}

.btn_tolist_movie {
	width: 10.625rem;
	height: 2.1875rem;
	display: block;
	border-bottom: 0.0625rem var(--black00) solid;
	background: url(../images/external-link.svg) right 3%/auto no-repeat;
}
.btn_tolist_movie a {
	width: 100%;
	height: auto;
	display: block;
	font-size: 1rem;
	font-family: "Cormorant Garamond", cursive;
	font-style: italic;
	font-weight: 700;
}

.btn_pre_link,
.btn_next_link {
	width: 3.875rem;
	height: 2rem;
	display: block;
	border-bottom: 0.0625rem var(--black00) solid;
}
.btn_pre_link a,
.btn_next_link a {
	width: 100%;
	height: auto;
	display: block;
	font-size: 1rem;
	font-family: "Cormorant Garamond", cursive;
	font-style: italic;
	font-weight: 700;
}

.btn_pre_link {
	background: url(../images/arrow_left.svg) left 3%/auto no-repeat;
}
.btn_pre_link a {
	text-align: right;
}

.btn_next_link {
	background: url(../images/arrow_right.svg) right 3%/auto no-repeat;
}

@media screen and (max-width: 750px) {
	.btn_pre_link,
	.btn_next_link {
		width: 2.4vw;
		height: 4.5333333333vw;
		display: block;
		border-bottom: none;
	}
	.btn_pre_link a,
	.btn_next_link a {
		width: 100%;
		height: auto;
		display: block;
		font-size: 0.2666666667vw;
		color: transparent;
	}
}/*# sourceMappingURL=common.css.map */

/*-----------------------------------*/
/* Swipper
------------------------------------*/
.swiper-button-prev:after,
.swiper-button-next:after{
	content: ""!important; /*contentを空にする*/
}
/*-----------------------------------*/
/* header
------------------------------------*/
/* commons
------------------------------------*/
.c-preload * {
	transition: none !important;
}
header {
	margin-top: -20px;
}
@media screen and (max-width: 650px) {
	header {
		margin-top: -10px;
	}
}

/* ログイン中（管理バー表示時）のヘッダー固定位置ズレ対策を追加
body.logged-in .c-header-default {
	top: 32px;
}
@media screen and (max-width: 782px) {
	body.logged-in .c-header-default {
		top: 46px;
	}
} */

.c-header-default {
	position: fixed;
	left: 0;
	top: 0;
	transition: top 0.6s ease;
	width: 100%;
	z-index: 10;
	box-sizing: border-box;
}

/* --- 内側の余白調整（%とpxで固定） --- */
.c-header-inner {
	align-items: center;
	display: flex;
	justify-content: space-between;
	padding: 40px 3.5%; /* 上下40px固定、左右は画面追従（スクロールバーに影響しない%） */
}
@media screen and (max-width: 650px) {
	.c-header-inner {
		padding: 0 10px; /* スマホ用：上下20px、右10px、左20px */
	}
}

.c-header-logo.is-active .c-header-logo__link svg path {
	fill: #7E7D58;
}
.c-header-logo .c-header-logo__link {
	display: block;
	line-height: 0;
}
.c-header-logo .c-header-logo__link svg {
	width: 117px;
}
@media screen and (max-width: 650px) {
	.c-header-logo .c-header-logo__link svg {
		width: 60px;
	}
}

.c-header-body {
	display: flex;
	align-items: center;
}

@media screen and (max-width: 650px) {
	.c-header-menu {
		display: none;
	}
}
.c-header-menu .c-header-menu__list {
	align-items: center;
	display: flex;
	list-style: none;
	padding: 0 7px 0 0; /* 右paddingを7px固定に */
	position: relative;
}
.c-header-menu .c-header-menu__list::after {
	background: repeating-linear-gradient(0deg, #FFF 0 2px, transparent 2px 4px) no-repeat right/1px 100%;
	content: "";
	display: block;
	height: 23px; /* 縦線の高さを固定 */
	position: absolute;
	right: 0;
	top: 4px;
	width: 1px;
}
.c-header-menu .c-header-menu__list li {
	display: block;
	line-height: 0;
}
.c-header-menu .c-header-menu__list li a {
	color: #FFF;
	display: inline-block;
	font-family: Geist;
	font-size: 14px; /* テキストサイズを14px固定（maxバグを排除） */
	font-style: normal;
	font-weight: 400;
	line-height: 100%;
	letter-spacing: 1.4px; /* レタースペースを1.4px固定に */
	padding: 10px; /* 余白を10pxに固定 */
	transition: color 0.2s cubic-bezier(0.45, 0, 0.55, 1);
}
.c-header-menu .c-header-menu__list li a:hover {
	color: #FFCB70;
}

/* --- 言語切り替えセクション --- */
.c-header-language {
	display: flex;
	list-style: none;
	margin: -4px 0 0 10px; /* マージンをpx固定 */
}
@media screen and (max-width: 650px) {
	.c-header-language {
		display: none;
	}
}
.c-header-language li {
	line-height: 1;
}
.c-header-language li:not(:last-child) {
	position: relative;
}
.c-header-language li:not(:last-child)::after {
	background: #FFF;
	content: "";
	display: block;
	height: calc(100% - 5px);
	position: absolute;
	right: 0;
	top: 5px;
	width: 1px;
}
.c-header-language li.is-active a {
	color: #6C6C6C;
}
.c-header-language li a {
	color: #FFF;
	font-family: Geist;
	font-size: 14px; /* 14px固定 */
	font-style: normal;
	font-weight: 400;
	line-height: 1;
	letter-spacing: 1.4px;
	padding: 5px 7px;
	transition: color 0.2s cubic-bezier(0.45, 0, 0.55, 1);
}
.c-header-language li a:hover {
	color: #FFCB70;
}

/* --- お問い合わせボタン（コンタクト） --- */
.c-header-contact {
	align-items: center;
	display: flex;
	font-family: Geist;
	height: 50px; /* ボタンの高さを50px固定 */
	justify-content: center;
	margin: 0 0 0 29px; /* 左マージンを29px固定 */
	position: relative;
	width: 140px; /* ボタンの横幅を140px固定 */
}
@media screen and (max-width: 650px) {
	.c-header-contact {
		display: none;
	}
}
.c-header-contact:hover svg path:nth-child(1) {
	stroke: #FFCB70;
}
.c-header-contact:hover svg path:nth-child(2) {
	fill: #FFCB70;
}
.c-header-contact svg path:nth-child(1) {
	stroke: #FFF;
	transition: stroke 0.2s cubic-bezier(0.45, 0, 0.55, 1);
}
.c-header-contact svg path:nth-child(2) {
	fill: #FFF;
	transition: fill 0.2s cubic-bezier(0.45, 0, 0.55, 1);
}

.c-footer-default {
	background: #E1E3DD;
	padding: 8.3333333333vw 2.7777777778vw 2.9166666667vw;
	position: fixed;
	left: 0;
	bottom: 0;
	width: 100%;
	z-index: -5;
}
@media screen and (min-width: 1px) and (max-width: 980px) {
	.c-footer-default {
		padding: 18.4615384615vw 7.6923076923vw 18.7179487179vw;
		position: static;
	}
}

@media screen and (min-width: 1px) and (max-width: 980px) {
	.c-footer-inner {
		display: flex;
		flex-direction: column;
	}
}

@media screen and (min-width: 1px) and (max-width: 980px) {
	.c-footer-upper {
		display: contents;
	}
}
.c-footer-upper .c-footer-upper__copy {
	color: #AFAEAF;
	font-family: Libre Baskerville;
	font-size: max(4.5138888889vw, 10px);
	font-style: normal;
	font-weight: 400;
	line-height: 130%; /* 84.5px */
}
@media screen and (min-width: 1px) and (max-width: 980px) {
	.c-footer-upper .c-footer-upper__copy {
		font-size: max(10.2564102564vw, 10px);
		line-height: 117%; /* 46.8px */
		order: 1;
	}
}
.c-footer-upper .c-footer-upper__copy b {
	color: #252525;
	font-weight: 400;
}
.c-footer-upper .c-footer-upper__logo {
	display: block;
	line-height: 0;
	margin: 16.8055555556vw 0 0 auto;
	width: 28.4722222222vw;
}
@media screen and (min-width: 1px) and (max-width: 980px) {
	.c-footer-upper .c-footer-upper__logo {
		margin: 14.358974359vw auto 0;
		order: 3;
		width: 100%;
	}
}
.c-footer-upper .c-footer-upper__logo img {
	width: 100%;
}

.c-footer-bottom {
	align-items: flex-end;
	display: flex;
	justify-content: space-between;
	margin: 0.5555555556vw 0 0;
}
@media screen and (min-width: 1px) and (max-width: 980px) {
	.c-footer-bottom {
		display: contents;
	}
}

.c-footer-company {
	align-items: flex-end;
	display: flex;
}
@media screen and (min-width: 1px) and (max-width: 980px) {
	.c-footer-company {
		align-items: flex-start;
		flex-direction: column;
		order: 2;
	}
}
@media screen and (min-width: 1px) and (max-width: 980px) {
	.c-footer-company .c-footer-company__main {
		margin: 13.0769230769vw 0 0;
	}
}
.c-footer-company .c-footer-company__name {
	color: #252525;
	font-family: Roboto;
	font-size: max(0.9722222222vw, 10px);
	font-style: normal;
	font-weight: 400;
	line-height: 110%; /* 15.4px */
}
@media screen and (min-width: 1px) and (max-width: 980px) {
	.c-footer-company .c-footer-company__name {
		font-size: max(3.5897435897vw, 10px);
	}
}
.c-footer-company .c-footer-company__address {
	font-size: max(0.8333333333vw, 10px);
	font-style: normal;
	font-weight: 400;
	line-height: 150%;
	margin: 1.5277777778vw 0 0;
}
@media screen and (min-width: 1px) and (max-width: 980px) {
	.c-footer-company .c-footer-company__address {
		font-size: max(3.0769230769vw, 10px);
		margin: 1.5384615385vw 0 0;
	}
}
.c-footer-company .c-footer-company__address span {
	font-family: Roboto;
}
.c-footer-company .c-footer-company__english {
	font-family: Roboto;
	font-size: max(0.8333333333vw, 10px);
	font-style: normal;
	font-weight: 400;
	line-height: 150%; /* 18px */
	margin: 0 0 0 4.3055555556vw;
}
@media screen and (min-width: 1px) and (max-width: 980px) {
	.c-footer-company .c-footer-company__english {
		font-size: max(3.0769230769vw, 10px);
		margin: 2.0512820513vw 0 0;
	}
}
.c-footer-company .c-footer-company__tel {
	font-family: Roboto;
	font-size: max(0.8333333333vw, 10px);
	font-style: normal;
	font-weight: 400;
	line-height: 150%; /* 18px */
	margin: 0 0 0 4.5833333333vw;
}
@media screen and (min-width: 1px) and (max-width: 980px) {
	.c-footer-company .c-footer-company__tel {
		font-size: max(3.0769230769vw, 10px);
		margin: 2.0512820513vw 0 0;
	}
}

.c-footer-right {
	align-items: center;
	display: flex;
	gap: 2.4305555556vw;
}
@media screen and (min-width: 1px) and (max-width: 980px) {
	.c-footer-right {
		flex-direction: column;
		gap: 5.1282051282vw;
		margin: 7.6923076923vw 0 0;
		order: 3;
	}
}

.c-footer-other .c-footer-other__privacy {
	align-items: center;
	color: #AFAEAF;
	display: flex;
	gap: 0.4166666667vw;
	font-family: Roboto;
	font-size: max(0.8333333333vw, 10px);
	font-style: normal;
	font-weight: 400;
	line-height: 150%; /* 18px */
}
@media screen and (min-width: 1px) and (max-width: 980px) {
	.c-footer-other .c-footer-other__privacy {
		font-size: max(3.0769230769vw, 10px);
		gap: 1.5384615385vw;
	}
}
.c-footer-other .c-footer-other__privacy img {
	margin: 0 0 -0.1388888889vw;
	width: 0.5555555556vw;
}
@media screen and (min-width: 1px) and (max-width: 980px) {
	.c-footer-other .c-footer-other__privacy img {
		margin: 0 0 -0.5128205128vw;
		width: 2.0512820513vw;
	}
}
.c-footer-other .c-footer-other__copy {
	color: #AFAEAF;
	font-family: Roboto;
	font-size: max(0.8333333333vw, 10px);
	font-style: normal;
	font-weight: 400;
	line-height: 150%; /* 18px */
}
@media screen and (min-width: 1px) and (max-width: 980px) {
	.c-footer-other .c-footer-other__copy {
		font-size: max(3.0769230769vw, 10px);
	}
}

.c-drawer-default {
	background: #656445;
	display: none;
	height: 100vh;
	max-height: 100%;
	opacity: 0;
	overflow-y: scroll;
	pointer-events: none;
	transition: opacity 0.3s ease-out;
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	z-index: 9;
}
@media screen and (min-width: 1px) and (max-width: 980px) {
	.c-drawer-default {
		display: block;
	}
}
.c-drawer-default.is-active {
	opacity: 1;
	pointer-events: auto;
}
.c-drawer-default .c-drawer-default__inner {
	padding: 42.5641025641vw 10.2564102564vw 30.7692307692vw;
}

.c-drawer-menu ul {
	display: grid;
	gap: 5.1282051282vw;
	list-style: none;
}
.c-drawer-menu ul li a {
	color: #FFF;
	font-family: Geist;
	font-size: max(10.2564102564vw, 10px);
	font-style: normal;
	font-weight: 300;
	line-height: 100%;
	letter-spacing: 1.0256410256vw;
	text-transform: uppercase;
	transition: color 0.2s cubic-bezier(0.45, 0, 0.55, 1);
}
.c-drawer-menu ul li a:hover {
	color: #FFCB70;
}

.c-drawer-language {
	align-items: center;
	display: flex;
	list-style: none;
	margin: 22.5641025641vw 0 0;
}
.c-drawer-language li:not(:first-child) {
	display: flex;
}
.c-drawer-language li:not(:first-child)::before {
	color: #FFF;
	content: "|";
	display: inline-block;
	font-size: max(4.6153846154vw, 10px);
	font-style: normal;
	font-weight: 400;
	line-height: 120%; /* 21.6px */
	letter-spacing: 0.4615384615vw;
	margin: -0.5128205128vw 0 0;
	padding: 0 0.5em;
	width: 1px;
}
.c-drawer-language li.is-active a {
	color: #6C6C6C;
}
.c-drawer-language li a {
	color: #FFF;
	font-family: Geist;
	font-size: max(4.6153846154vw, 10px);
	font-style: normal;
	font-weight: 400;
	line-height: 120%; /* 21.6px */
	letter-spacing: 0.4615384615vw;
	transition: color 0.2s cubic-bezier(0.45, 0, 0.55, 1);
}
.c-drawer-language li a:hover {
	color: #FFCB70;
}

.c-heading-large {
	color: #656445;
	font-family: Geist;
	font-size: max(5.5555555556vw, 10px);
	font-style: normal;
	font-weight: 300;
	line-height: 120%; /* 96px */
	text-transform: uppercase;
}
@media screen and (max-width: 650px) {
	.c-heading-large {
		color: #656445;
		font-family: Geist;
		font-size: max(6.9230769231vw, 10px);
		font-style: normal;
		font-weight: 300;
		line-height: 120%; /* 32.4px */
	}
}
.c-heading-large.is-white {
	color: #fff;
}

.c-wrap {
	margin: 0 0 52.3611111111vw;
	overflow: hidden;
	position: relative;
	width: 100vw;
}
@media screen and (min-width: 1px) and (max-width: 980px) {
	.c-wrap {
		margin: 0;
	}
}

.c-contents {
	padding: 0 3.4722222222vw;
	margin: 0 auto;
}
@media screen and (min-width: 1px) and (max-width: 980px) {
	.c-contents {
		padding: 0 7.6923076923vw;
	}
}

.c-background {
	padding: 1px 0;
	position: relative;
}
.c-background::before {
	background: #eee;
	content: "";
	display: block;
	height: calc(100% + 2px);
	margin: 0 calc(50% - 50vw);
	position: absolute;
	left: 0;
	top: -1px;
	width: 100vw;
	z-index: -2;
}
.c-background.is-green::before {
	background: #7E7D58;
}
.c-background.is-light::before {
	background: #E1E3DD;
}

.c-loader {
	align-items: center;
	background: #7E7D58;
	display: flex;
	height: 100vh;
	justify-content: center;
	opacity: 1;
	position: fixed;
	left: 0;
	top: 0;
	transition: opacity 0.7s cubic-bezier(0.18, 0.06, 0.23, 1) 2s;
	width: 100vw;
	z-index: 1000;
}
.c-loader.is-hide {
	opacity: 0;
	pointer-events: none;
}
.c-loader.is-animated {
	opacity: 0;
	transition: opacity 0.7s cubic-bezier(0.18, 0.06, 0.23, 1) 2s;
}
.c-loader.is-animated .c-loader__text {
	opacity: 1;
	transform: scale(0.8);
}
.c-loader.is-animated .c-loader__text span {
	opacity: 1;
	transform: translate3d(0, 0, 0);
}
.c-loader .c-loader__text {
	color: #fff;
	font-family: Roboto;
	font-size: max(1.3888888889vw, 10px);
	font-style: normal;
	font-weight: 400;
	line-height: 100%;
	letter-spacing: 0.1666666667vw;
	opacity: 0;
	overflow: hidden;
	transition: transform 0.7s cubic-bezier(0.18, 0.06, 0.23, 1) 2s;
}
@media screen and (max-width: 650px) {
	.c-loader .c-loader__text {
		font-size: max(4.6153846154vw, 10px);
		letter-spacing: 0.6153846154vw;
	}
}
.c-loader .c-loader__text span {
	display: inline-block;
	opacity: 0;
	transform: translate3d(0, 100%, 0);
	transition: opacity 0.7s cubic-bezier(0.18, 0.06, 0.23, 1), transform 0.7s cubic-bezier(0.18, 0.06, 0.23, 1);
}
.c-loader .c-loader__text span:nth-child(1) {
	transition-delay: 0s;
}
.c-loader .c-loader__text span:nth-child(2) {
	transition-delay: 0.05s;
}
.c-loader .c-loader__text span:nth-child(3) {
	transition-delay: 0.1s;
}
.c-loader .c-loader__text span:nth-child(4) {
	transition-delay: 0.15s;
}
.c-loader .c-loader__text span:nth-child(5) {
	transition-delay: 0.2s;
}
.c-loader .c-loader__text span:nth-child(6) {
	transition-delay: 0.25s;
}
.c-loader .c-loader__text span:nth-child(7) {
	transition-delay: 0.3s;
}
.c-loader .c-loader__text span:nth-child(8) {
	transition-delay: 0.35s;
}
.c-loader .c-loader__text span:nth-child(9) {
	transition-delay: 0.4s;
}
.c-loader .c-loader__text span:nth-child(10) {
	transition-delay: 0.45s;
}
.c-loader .c-loader__text span:nth-child(11) {
	transition-delay: 0.5s;
}
.c-loader .c-loader__text span:nth-child(12) {
	transition-delay: 0.55s;
}
.c-loader .c-loader__text span:nth-child(13) {
	transition-delay: 0.6s;
}
.c-loader .c-loader__text span:nth-child(14) {
	transition-delay: 0.65s;
}
.c-loader .c-loader__text span:nth-child(15) {
	transition-delay: 0.7s;
}
.c-loader .c-loader__text span:nth-child(16) {
	transition-delay: 0.75s;
}
.c-loader .c-loader__text span:nth-child(17) {
	transition-delay: 0.8s;
}
.c-loader .c-loader__text span:nth-child(18) {
	transition-delay: 0.85s;
}

.c-button-hamburger {
	display: none;
	flex-direction: column;
	height: 8.9743589744vw;
	justify-content: center;
	outline: none;
	width: 20.5128205128vw;
}
@media screen and (max-width: 650px) {
	.c-button-hamburger {
		display: flex;
	}
}
.c-button-hamburger.is-active svg {
	width: 100%;
}
.c-button-hamburger.is-active svg:nth-child(1) {
	display: none;
}
.c-button-hamburger.is-active svg:nth-child(2) {
	display: block;
}
.c-button-hamburger:hover svg path:nth-child(1) {
	stroke: #FFCB70;
}
.c-button-hamburger:hover svg path:nth-child(2) {
	fill: #FFCB70;
}
.c-button-hamburger svg {
	width: 100%;
}
.c-button-hamburger svg:nth-child(1) {
	display: block;
}
.c-button-hamburger svg:nth-child(2) {
	display: none;
}
.c-button-hamburger svg path:nth-child(1) {
	stroke: #FFF;
	transition: stroke 0.2s cubic-bezier(0.45, 0, 0.55, 1);
}
.c-button-hamburger svg path:nth-child(2) {
	fill: #FFF;
	transition: fill 0.2s cubic-bezier(0.45, 0, 0.55, 1);
}

.c-button-more {
	align-items: center;
	display: inline-flex;
	gap: 12px;
}
.c-button-more.is-white:hover span::before {
	background: #fff;
}
.c-button-more.is-white:hover svg {
	fill: #FFFFFF;
}
.c-button-more.is-white span {
	color: #fff;
}
.c-button-more span {
	color: #FFCB70;
	font-family: Geist;
	font-size: max(1.0416666667vw, 10px);
	font-style: normal;
	font-weight: 500;
	line-height: 170%; /* 25.5px */
	letter-spacing: 0.0416666667vw;
	position: relative;
}
@media screen and (max-width: 650px) {
	.c-button-more span {
		font-size: max(3.8461538462vw, 10px);
		letter-spacing: 0.1538461538vw;
	}
}
.c-button-more span::before {
	background: transparent;
	content: "";
	display: block;
	height: 1px;
	position: absolute;
	left: 0;
	bottom: 0;
	transition: background-color 0.2s cubic-bezier(0.45, 0, 0.55, 1);
	width: 100%;
}
@media screen and (max-width: 650px) {
	.c-button-more span::before {
		bottom: 0.5128205128vw;
	}
}
.c-button-more:hover span::before {
	background: #FFCB70;
}
.c-button-more:hover svg {
	fill: #FFCB70;
}
.c-button-more:hover svg circle {
	stroke-dasharray: none;
}
.c-button-more svg {
	fill: transparent;
	transition: fill 0.2s cubic-bezier(0.45, 0, 0.55, 1);
	width: 1.6666666667vw;
}
@media screen and (max-width: 650px) {
	.c-button-more svg {
		width: 6.1538461538vw;
	}
}

.c-box-game {
	display: flex;
	justify-content: space-between;
	margin: 0 auto;
	max-width: 77.7777777778vw;
	padding: 5.8333333333vw 0 5.2083333333vw;
}
@media screen and (max-width: 650px) {
	.c-box-game {
		flex-direction: column;
		gap: 7.6923076923vw;
		max-width: none;
		padding: 12.5641025641vw 0 18.9743589744vw;
	}
}
.c-box-game .c-box-game__heading {
	width: 16.25vw;
}
@media screen and (max-width: 650px) {
	.c-box-game .c-box-game__heading {
		width: 44.6153846154vw;
	}
}

.c-list-sns {
	display: flex;
	list-style: none;
}
@media screen and (min-width: 1px) and (max-width: 980px) {
	.c-list-sns {
		justify-content: center;
	}
}
.c-list-sns li a {
	display: block;
	line-height: 0;
	padding: 0.5555555556vw;
}
@media screen and (min-width: 1px) and (max-width: 980px) {
	.c-list-sns li a {
		padding: 1.724137931vw;
	}
}
.c-list-sns li a img {
	width: 1.3888888889vw;
}
@media screen and (min-width: 1px) and (max-width: 980px) {
	.c-list-sns li a img {
		width: 6.4102564103vw;
	}
}

@keyframes flow {
	0% {
		transform: translate3d(0, 0, 0);
	}
	100% {
		transform: translate3d(-100%, 0, 0);
	}
}
.a-fadein {
	filter: blur(8px);
	opacity: 0;
	transform: translate3d(0, 1.3888888889vw, 0);
	transition: opacity 0.8s cubic-bezier(0.39, 0.575, 0.565, 1), filter 0.8s cubic-bezier(0.39, 0.575, 0.565, 1), transform 1s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.a-fadein.is-animated {
	filter: blur(0);
	opacity: 1;
	transform: translate3d(0, 0, 0);
}

@media screen and (max-width: 650px) {
	.a-fadein-sp {
		filter: blur(8px);
		opacity: 0;
		transform: translate3d(0, 1.3888888889vw, 0);
		transition: opacity 0.8s cubic-bezier(0.39, 0.575, 0.565, 1), filter 0.8s cubic-bezier(0.39, 0.575, 0.565, 1), transform 1s cubic-bezier(0.215, 0.61, 0.355, 1);
	}
}
.a-fadein-sp.is-animated {
	filter: blur(0);
	opacity: 1;
	transform: translate3d(0, 0, 0);
}


/*-----------------------------------*/
/* Menu
------------------------------------*/
.c-button-hamburger {
	display: none;
	flex-direction: column;
	height: 8.9743589744vw;
	justify-content: center;
	outline: none;
	width: 20.5128205128vw;
}
@media screen and (max-width: 650px) {
	.c-button-hamburger {
		display: flex;
	}
}
.c-button-hamburger.is-active svg {
	width: 100%;
}
.c-button-hamburger.is-active svg:nth-child(1) {
	display: none;
}
.c-button-hamburger.is-active svg:nth-child(2) {
	display: block;
}
.c-button-hamburger:hover svg path:nth-child(1) {
	stroke: #FFCB70;
}
.c-button-hamburger:hover svg path:nth-child(2) {
	fill: #FFCB70;
}
.c-button-hamburger svg {
	width: 100%;
}
.c-button-hamburger svg:nth-child(1) {
	display: block;
}
.c-button-hamburger svg:nth-child(2) {
	display: none;
}
.c-button-hamburger svg path:nth-child(1) {
	stroke: #FFF;
	transition: stroke 0.2s cubic-bezier(0.45, 0, 0.55, 1);
}
.c-button-hamburger svg path:nth-child(2) {
	fill: #FFF;
	transition: fill 0.2s cubic-bezier(0.45, 0, 0.55, 1);
}

.c-button-more {
	align-items: center;
	display: inline-flex;
	gap: 12px;
}
.c-button-more.is-white:hover span::before {
	background: #fff;
}
.c-button-more.is-white:hover svg {
	fill: #FFFFFF;
}
.c-button-more.is-white span {
	color: #fff;
}
.c-button-more span {
	color: #FFCB70;
	font-family: Geist;
	font-size: max(1.0416666667vw, 10px);
	font-style: normal;
	font-weight: 500;
	line-height: 170%; /* 25.5px */
	letter-spacing: 0.0416666667vw;
	position: relative;
}
@media screen and (max-width: 650px) {
	.c-button-more span {
		font-size: max(3.8461538462vw, 10px);
		letter-spacing: 0.1538461538vw;
	}
}
.c-button-more span::before {
	background: transparent;
	content: "";
	display: block;
	height: 1px;
	position: absolute;
	left: 0;
	bottom: 0;
	transition: background-color 0.2s cubic-bezier(0.45, 0, 0.55, 1);
	width: 100%;
}
@media screen and (max-width: 650px) {
	.c-button-more span::before {
		bottom: 0.5128205128vw;
	}
}
.c-button-more:hover span::before {
	background: #FFCB70;
}
.c-button-more:hover svg {
	fill: #FFCB70;
}
.c-button-more:hover svg circle {
	stroke-dasharray: none;
}
.c-button-more svg {
	fill: transparent;
	transition: fill 0.2s cubic-bezier(0.45, 0, 0.55, 1);
	width: 1.6666666667vw;
}
@media screen and (max-width: 650px) {
	.c-button-more svg {
		width: 6.1538461538vw;
	}
}
/*-----------------------------------*/
/* footer
------------------------------------*/
.c-footer-default {
	background: #E1E3DD;
	padding: 8.3333333333vw 2.7777777778vw 2.9166666667vw;
	position: relative;/*fixed*/
	left: 0;
	bottom: 0;
	width: 100%;
	/*z-index: -5;*/
	z-index: 0;
}
@media screen and (min-width: 1px) and (max-width: 980px) {
	.c-footer-default {
		padding: 18.4615384615vw 7.6923076923vw 18.7179487179vw;
		position: static;
	}
}

@media screen and (min-width: 1px) and (max-width: 980px) {
	.c-footer-inner {
		display: flex;
		flex-direction: column;
	}
}

@media screen and (min-width: 1px) and (max-width: 980px) {
	.c-footer-upper {
		display: contents;
	}
}
.c-footer-upper .c-footer-upper__copy {
	color: #AFAEAF;
	font-family: Libre Baskerville;
	font-size: max(4.5138888889vw, 10px);
	font-style: normal;
	font-weight: 400;
	line-height: 130%; /* 84.5px */
}
@media screen and (min-width: 1px) and (max-width: 980px) {
	.c-footer-upper .c-footer-upper__copy {
		font-size: max(10.2564102564vw, 10px);
		line-height: 117%; /* 46.8px */
		order: 1;
	}
}
.c-footer-upper .c-footer-upper__copy b {
	color: #252525;
	font-weight: 400;
}
.c-footer-upper .c-footer-upper__logo {
	display: block;
	line-height: 0;
	margin: 16.8055555556vw 0 0 auto;
	width: 28.4722222222vw;
}
@media screen and (min-width: 1px) and (max-width: 980px) {
	.c-footer-upper .c-footer-upper__logo {
		margin: 14.358974359vw auto 0;
		order: 3;
		width: 100%;
	}
}
.c-footer-upper .c-footer-upper__logo img {
	width: 100%;
}

.c-footer-bottom {
	align-items: flex-end;
	display: flex;
	justify-content: space-between;
	margin: 0.5555555556vw 0 0;
}
@media screen and (min-width: 1px) and (max-width: 980px) {
	.c-footer-bottom {
		display: contents;
	}
}

.c-footer-company {
	align-items: flex-end;
	display: flex;
}
@media screen and (min-width: 1px) and (max-width: 980px) {
	.c-footer-company {
		align-items: flex-start;
		flex-direction: column;
		order: 2;
	}
}
@media screen and (min-width: 1px) and (max-width: 980px) {
	.c-footer-company .c-footer-company__main {
		margin: 13.0769230769vw 0 0;
	}
}
.c-footer-company .c-footer-company__name {
	color: #252525;
	font-family: Roboto;
	font-size: max(0.9722222222vw, 10px);
	font-style: normal;
	font-weight: 400;
	line-height: 110%; /* 15.4px */
}
@media screen and (min-width: 1px) and (max-width: 980px) {
	.c-footer-company .c-footer-company__name {
		font-size: max(3.5897435897vw, 10px);
	}
}
.c-footer-company .c-footer-company__address {
	font-size: max(0.8333333333vw, 10px);
	font-style: normal;
	font-weight: 400;
	line-height: 150%;
	margin: 1.5277777778vw 0 0;
}
@media screen and (min-width: 1px) and (max-width: 980px) {
	.c-footer-company .c-footer-company__address {
		font-size: max(3.0769230769vw, 10px);
		margin: 1.5384615385vw 0 0;
	}
}
.c-footer-company .c-footer-company__address span {
	font-family: Roboto;
}
.c-footer-company .c-footer-company__english {
	font-family: Roboto;
	font-size: max(0.8333333333vw, 10px);
	font-style: normal;
	font-weight: 400;
	line-height: 150%; /* 18px */
	margin: 0 0 0 4.3055555556vw;
}
@media screen and (min-width: 1px) and (max-width: 980px) {
	.c-footer-company .c-footer-company__english {
		font-size: max(3.0769230769vw, 10px);
		margin: 2.0512820513vw 0 0;
	}
}
.c-footer-company .c-footer-company__tel {
	font-family: Roboto;
	font-size: max(0.8333333333vw, 10px);
	font-style: normal;
	font-weight: 400;
	line-height: 150%; /* 18px */
	margin: 0 0 0 4.5833333333vw;
}
@media screen and (min-width: 1px) and (max-width: 980px) {
	.c-footer-company .c-footer-company__tel {
		font-size: max(3.0769230769vw, 10px);
		margin: 2.0512820513vw 0 0;
	}
}

.c-footer-right {
	align-items: center;
	display: flex;
	gap: 2.4305555556vw;
}
@media screen and (min-width: 1px) and (max-width: 980px) {
	.c-footer-right {
		flex-direction: column;
		gap: 5.1282051282vw;
		margin: 7.6923076923vw 0 0;
		order: 3;
	}
}

.c-footer-other .c-footer-other__privacy {
	align-items: center;
	color: #AFAEAF;
	display: flex;
	gap: 0.4166666667vw;
	font-family: Roboto;
	font-size: max(0.8333333333vw, 10px);
	font-style: normal;
	font-weight: 400;
	line-height: 150%; /* 18px */
}
@media screen and (min-width: 1px) and (max-width: 980px) {
	.c-footer-other .c-footer-other__privacy {
		font-size: max(3.0769230769vw, 10px);
		gap: 1.5384615385vw;
	}
}
.c-footer-other .c-footer-other__privacy img {
	margin: 0 0 -0.1388888889vw;
	width: 0.5555555556vw;
}
@media screen and (min-width: 1px) and (max-width: 980px) {
	.c-footer-other .c-footer-other__privacy img {
		margin: 0 0 -0.5128205128vw;
		width: 2.0512820513vw;
	}
}
.c-footer-other .c-footer-other__copy {
	color: #AFAEAF;
	font-family: Roboto;
	font-size: max(0.8333333333vw, 10px);
	font-style: normal;
	font-weight: 400;
	line-height: 150%; /* 18px */
}
@media screen and (min-width: 1px) and (max-width: 980px) {
	.c-footer-other .c-footer-other__copy {
		font-size: max(3.0769230769vw, 10px);
	}
}
.c-list-sns {
	display: flex;
	list-style: none;
}
@media screen and (min-width: 1px) and (max-width: 980px) {
	.c-list-sns {
		justify-content: center;
	}
}
.c-list-sns li a {
	display: block;
	line-height: 0;
	padding: 0.5555555556vw;
}
@media screen and (min-width: 1px) and (max-width: 980px) {
	.c-list-sns li a {
		padding: 1.724137931vw;
	}
}
.c-list-sns li a img {
	width: 1.3888888889vw;
}
@media screen and (min-width: 1px) and (max-width: 980px) {
	.c-list-sns li a img {
		width: 6.4102564103vw;
	}
}

@keyframes flow {
	0% {
		transform: translate3d(0, 0, 0);
	}
	100% {
		transform: translate3d(-100%, 0, 0);
	}
}
/*-----------------------------------*/
/* Story
------------------------------------*/
/* more */
#Story {
	background-color: var(--bg-green2);
}
#Story .wrap01 {
	width: 100%;
	max-width: 1400px;
	text-align: center;
	margin: 0 auto;
	overflow-x: hidden;
}
#Story .wrap01 h2 {
	font-size: 3.0rem;
	font-family: "Shippori Mincho", cursive;
	font-weight: 700;
	font-style: italic;
	/*line-height: 200%;*/
	color: #fff;
	display: block;
	margin: 80px auto 60px;
	text-align: center;
}
#Story .wrap01 h2 span {
	display: block;
	font-size: 1.2rem;
	font-family: "Shippori Mincho", cursive;
	font-style: normal;
	color: #fff;
	text-align: center;
	margin: 10px auto 0;
	
}
#Story .wrap01 .story_wrap {
	width: 100%;
	max-width: 1400px;
	margin: 0 auto;
}
#Story .wrap01 .story_wrap .swiper-container4 {
	width: 100%;
	max-width: 1400px;
	margin: 0 auto 80px;
}
#Story .wrap01 .story_wrap .story_box {
	text-align: left;
	padding: 0 0.625rem;
	color: var(--white01);
}
#Story .wrap01 .story_wrap .story_box img {
	width: 100%;
	margin: 0 auto 20px;
}
#Story .wrap01 .story_wrap .story_box p.story_date {
	display: none;/*block*/
	font-family: "Shippori Mincho", cursive;
	color: var(--white00);
	font-size: 1.0rem;
	text-align: left;
	font-weight: 300;
}
#Story .wrap01 .story_wrap .story_box h3 {
	display: block;
	opacity: 0;
	width: 100%;
	height: 3.0em;/*1.0em*/
	font-family: "Shippori Mincho", cursive;
	color: var(--white00);
	font-size: 1.6rem;
	text-align: left;
	font-weight: 300;
	overflow-wrap: anywhere;
	word-break: normal;
	line-break: strict;
	overflow: hidden;
	padding: 0;
	margin: 0 0 20px;
	position: relative;
}
#Story .wrap01 .story_wrap .story_box p.story_description {
	display: none;/*block*/
	width: 100%;
	height: 4.5em;
	font-family: "Shippori Mincho", cursive;
	color: var(--white00);
	font-size: 1.2rem;
	text-align: left;
	font-weight: 300;
	overflow: hidden;
	margin: 0 0 10px;
}
#Story .wrap01 .story_wrap .story_box p.story_link a {
	display: block;
	width: 100%;
	height: 1.5em;
	font-family: "Shippori Mincho", cursive;
	font-style: italic;
	color: var(--white00);
	font-size: 1.2rem;
	text-align: right;
	font-weight: 300;
	overflow: hidden;
	margin: 0 0 10px;
	padding: 0;
	padding-right: 8em;
	position: relative;
}
#Story .wrap01 .story_wrap .story_box p.story_link a:after {
	display: inline-block;
	content: "";
	width: 6em;
	height: 1px;
	font-family: "Shippori Mincho", cursive;
	color: #fff;
	background: #fff;/*626564*/
	font-size: 1.2rem;
	font-weight: 300;
	overflow: hidden;
	right: 0;
	top: 0.7em;
	position: absolute;
	margin: 0;
	padding: 0;
}
@media screen and (max-width: 750px) {
	#Story .wrap01 h2 {
		font-size: 2.0rem;
		margin: 80px auto 60px;
	}
	#Story .wrap01 h2 span {
		font-size: 1.0rem;
		margin: 10px auto 0;
	}
	#Story .wrap01 .story_wrap .story_box p.story_date {
		font-size: 0.8rem;
	}
	#Story .wrap01 .story_wrap .story_box h3 {
		display: block;
		width: 100%;
		height: 1.0em;
		font-size: 1.4rem;
		text-align: left;
		margin: 0 0 20px;
		position: relative;
	}
	#Story .wrap01 .story_wrap .story_box p.story_description {
		height: 4.5em;
		font-size: 1.0rem;
		margin: 0 0 10px;
	}
	#Story .wrap01 .story_wrap .story_box p.story_link a {
		height: 1.5em;
		font-size: 1.0rem;
		margin: 0 0 10px;
		padding: 0;
		padding-right: 8em;
		position: relative;
	}
	#Story .wrap01 .story_wrap .story_box p.story_link a:after {
		width: 6em;
		height: 1px;
		background: #626564;
		font-size: 1.0rem;
		right: 0;
		top: 0.7em;
		position: absolute;
	}
}
/* 20260604 */
.c-button-hamburger2 {
	display: none;
	flex-direction: column;
	justify-content: center;
	align-items: center; /* 中の三本線を綺麗に真ん中へ寄せるために追加 */
	outline: none;
	position: relative;
	/* ▼ 画面サイズに依存しない、カチッとした固定値(px)に修正 */
	width: 40px;  /* 375px基準の20.51vw = 約77px ではなく、一般的な使いやすいサイズ(48px〜)にロック */
	height: 40px; /* タップターゲット（押しやすさ）のガイドラインを満たすサイズ */
	cursor: pointer;
}
@media screen and (max-width: 650px) {
	.c-header-logo.is-active {
		fill: #7E7D58;
		display: none;
	}
	.c-button-hamburger2 {
		display: flex;
		box-sizing: border-box;
		transition: all .5s;
	}
	.c-button-hamburger2 span {
		display: inline-block;
		vertical-align: middle;
		position: absolute;
		left: 0;
		width: 75%;
		height: 3px;
		background-color: #fff;
		border-radius: 0px;
		transition: all .5s;
		box-sizing: border-box;
	}
	.c-button-hamburger2.is-active span:nth-of-type(1) {
		-webkit-transform: translateY(11px) rotate(-45deg);
		transform: translateY(11px) rotate(-45deg);
		background-color: #fff!important;
		box-shadow: none!important;
	}
	.c-button-hamburger2.is-active span:nth-of-type(2) {
		opacity: 0;
		background-color: #fff;
		box-shadow: none!important;
	}
	.c-button-hamburger2.is-active span:nth-of-type(3) {
		-webkit-transform: translateY(-10.5px) rotate(45deg);
		transform: translateY(-10.5px) rotate(45deg);
		background-color: #fff!important;
		box-shadow: none!important;
	}
	.c-button-hamburger2 span:nth-of-type(1) {
		top: 10px;
	}
	.c-button-hamburger2 span:nth-of-type(2) {
		top: 21px;
	}
	.c-button-hamburger2 span:nth-of-type(3) {
		bottom: 5px;
	}
}
.sp_header_list {
	display: none;
}
@media screen and (max-width: 650px) {
	.sp_header_list {
		display: inline-block;
		width: 80%;
		margin: 0 10px;
		padding: 0;
		box-sizing: border-box;
	}
	.sp_header_list.is-active {
		display: none;
	}
	.sp_header_list .main_ul {
		display: flex;
		justify-content: flex-end;
		width: 100%;
		margin: 0;
		padding: 10px;
		box-sizing: border-box;
	}
	.sp_header_list .main_ul .main_li {
		display: inline-block;
		width: auto;
		margin: 0;
		padding: 4px 0 0;
		box-sizing: border-box;
	}
	.sp_header_list .main_ul .main_li ul {
		display: flex;
		align-items: center;
		list-style: none;
		width: auto;
		margin: 0;
		padding: 0;
		box-sizing: border-box;
	}
	.sp_header_list .main_ul .main_li ul li {
		display: inline-block;
		width: auto;
		margin: 0;
		padding: 0 10px;
		box-sizing: border-box;
	}
	.sp_header_list .main_ul .main_li ul li a {
		display: inline-block;
		width: auto;
		color: #fff;
		font-size: 14px;
		margin: 0;
		padding: 5px 10px;
		position: relative;
		box-sizing: border-box;
	}
	.sp_header_list .main_ul .main_li ul li a.en {
		position: relative;
		padding-left: 12px;
	}
	.sp_header_list .main_ul .main_li ul li a.en:before {
		position: absolute;
		display: block;
		content:"";
		background: #fff;
		width: 1px;
		height: 10px;
		left: 0;
		top: 8px;
	}
	.sp_header_list .main_ul .main_li ul li a.contacts {
		display: inline-block;
		border: 1px solid #fff;
		border-radius: 60px;
		padding: 5px 20px;
	}
	.sp_header_list .main_ul .main_li ul li a:hover {
		color: #fdca70;
	}
	.sp_header_list .main_ul .main_li ul li a.contacts:hover {
		border: 1px solid #fdca70;
	}
}