@charset "UTF-8";

/*========================================================================

  reset

========================================================================*/

* {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
	vertical-align: top;
}
.pbHeaderArea,
.pbFooterArea {
	overflow: visible;
}
:root ol, :root ul {
	margin: 0;
	padding: 0;
}
.pbNested {
	clear: none;
	overflow: visible;
	min-width: 10px;
}
.pb-layout {
	outline: 1px dotted #ccc !important;
	box-shadow: none!important;
}
.pb-handle {
	display: block!important;
	width: auto!important;
	height: auto!important;
	min-width: auto!important;
	min-height: auto!important;
	border: 1px solid #999!important;
	font-family: Meiryo, 'Hiragino Kaku Gothic ProN', 'MS PGothic', Sans-serif!important;
	font-weight: normal!important;
	letter-spacing: normal!important;
	text-indent: 0!important;
	line-height: 1.6;
}
.pb-handle:before,
.pb-handle:after {
	display: none!important;
}
.pbNotEditable {
	min-width: 200px!important;
	background: rgba(32, 32, 32, 0.5)!important;
}
.pbZero td {
	vertical-align: middle;
}

/*========================================================================

  base

========================================================================*/

html {
	scroll-behavior: smooth;
	scroll-padding-top: 90px;
}
.pbPage {
	-webkit-text-size-adjust: 100%;
	-webkit-print-color-adjust: exact;
	background: #fff;
	font-family: "Lora", serif;
	color: #1A1A1A;
	line-height: 1.6;
	word-wrap: break-word;
	word-break: auto-phrase;
}

@media screen and (max-width: 767px) {
	html {
		scroll-padding-top: 70px;
	}
	.pbPage {
		font-size: 87.5%;
	}
}

/*  title
------------------------------------------------*/

h1,
h2,
h3,
h4 {
	font-weight: inherit;
	font-size: inherit;
}

/*  link
------------------------------------------------*/

a {
	color: inherit;
	transition: all .3s;
	text-decoration: none;
	-webkit-tap-highlight-color:rgba(0,0,0,0);
}
a img {
	transition: all .8s;
}

/*  list
------------------------------------------------*/

ol,
ul {
	list-style: none;
}

/*  img
------------------------------------------------*/

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

/*  table
------------------------------------------------*/

table {
	max-width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
	border: none;
}

/*  form
------------------------------------------------*/

select,
button {
	cursor: pointer;
}
input[type="text"],
select,
button {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	font-family: inherit;
	font-size: inherit;
	line-height: inherit;
}
button {
	transition: all .3s;
}

/*========================================================================

  utility

========================================================================*/

.u_left {
	text-align: left!important;
}
.u_center {
	text-align: center!important;
}
.u_right {
	text-align: right!important;
}
.u_semiBold {
	font-weight: 600!important;
}
.u_mt0 {
	margin-top: 0!important;
}
.u_mt10 {
	margin-top: 10px!important;
}
.u_mt20 {
	margin-top: 20px!important;
}
.u_mt30 {
	margin-top: 30px!important;
}
.u_mt40 {
	margin-top: 40px!important;
}
.u_mt50 {
	margin-top: 50px!important;
}

@media print, screen and (min-width: 768px) {
	.u_sp {
		display: none!important;
	}
	.u_pc-center {
		text-align: center!important;
	}
	.u_pc-mt0 {
		margin-top: 0!important;
	}
	.u_pc-mt10 {
		margin-top: 10px!important;
	}
	.u_pc-mt20 {
		margin-top: 20px!important;
	}
	.u_pc-mt30 {
		margin-top: 30px!important;
	}
	.u_pc-mt40 {
		margin-top: 40px!important;
	}
	.u_pc-mt50 {
		margin-top: 50px!important;
	}
}

@media screen and (max-width: 767px) {
	.u_pc {
		display: none!important;
	}
	.u_sp-mt0 {
		margin-top: 0!important;
	}
	.u_sp-mt10 {
		margin-top: 10px!important;
	}
	.u_sp-mt20 {
		margin-top: 20px!important;
	}
	.u_sp-mt30 {
		margin-top: 30px!important;
	}
	.u_sp-mt40 {
		margin-top: 40px!important;
	}
	.u_sp-mt50 {
		margin-top: 50px!important;
	}
}

/*========================================================================

  header

========================================================================*/

.header {
	position: fixed;
	top: 30px;
	left: 30px;
	z-index: 3;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
	width: calc(100% - 60px);
}
@media (min-width: 768px) {
	.header a:hover {
		text-decoration:underline;
	}
}
.pbPage.-edit .header {
	position: absolute;
}

@media screen and (max-width: 1300px) {
	.header {
		top: 0;
		left: 0;
		display: block;
		width: 100%;
	}
}

/*  logo
------------------------------------------------*/

.header .logo {
	flex-shrink: 0;
}

@media screen and (max-width: 1300px) {
	.header .logo {
		position: relative;
		width: 40px;
		margin: 15px;
		z-index: 1;
		pointer-events: auto;
	}
}

/*  nav
------------------------------------------------*/

.header .nav {
	display: flex;
	align-items: center;
	min-height: 60px;
	padding: 10px 30px;
	background: rgba(26,26,26,.85);
	color: #FFFFFF;
}

.header .menu ul {
	display: flex;
	align-items: center;
	gap: 20px;
	font-size: 14px;
}
.header .menu .contact {
	display: none;
	width: calc(100% - 40px);
	margin: 20px auto 0;
}
.header .menu .contact a {
	position: relative;
	display: flex;
	align-items: center;
	min-height: 50px;
	padding: 10px 60px 10px 54px;
	border: 1px solid #FFF;
	background: url(../img/common/sns_mail.svg) no-repeat 20px center;
}
.header .menu .contact a::after {
	content: '';
	position: absolute;
	right: 0;
	height: 100%;
	aspect-ratio: 1;
	border-left: 1px solid #FFF;
	background: url(../img/common/btn_arrow_sp.svg) no-repeat center;
}

.header .sns {
	flex-shrink: 0;
	margin-left: 30px;
}
.header .sns ul {
	display: flex;
	align-items: center;
	gap: 20px;
}
.header .sns a {
	display: flex;
}

.header .sp-menu {
	display: none;
	position: absolute;
	top: 0;
	right: 0;
	width: 70px;
	height: 70px;
	background: rgba(26,26,26,.85);
	font-size: 12px;
	pointer-events: auto;
}
.header .sp-menu::before {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	left: 0;
	width: 1px;
	height: 40px;
	background: #FFFFFF;
}
.header .sp-menu .icon {
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
	top: 22px;
	width: 25px;
	height: 7px;
	pointer-events: none;
}
.header .sp-menu .icon span {
	position: absolute;
	width: 100%;
	height: 1px;
	background: #FFF;
	transition: all .3s;
}
.header .sp-menu .icon span:first-child {
	top: 0;
}
.header .sp-menu .icon span:last-child {
	bottom: 0;
}
.header .sp-menu:has(.sp-chick:checked) .icon span:first-child {
	transform: translateY(3px) rotate(30deg);
}
.header .sp-menu:has(.sp-chick:checked) .icon span:last-child {
	transform: translateY(-3px) rotate(-30deg);
}
.header .sp-menu label {
	display: flex;
	justify-content: center;
	width: 100%;
	height: 100%;
	padding-top: 35px;
	cursor: pointer;
}
.header .sp-menu input {
	display: none;
}
.header .sp-menu .close {
	display: none;
}
.header .sp-menu:has(.sp-chick:checked) .close {
	display: block;
}
.header .sp-menu:has(.sp-chick:checked) .open {
	display: none;
}

.header .lang {
	position: relative;
	margin-left: 20px;
	padding-left: 20px;
}
.header .lang::before{
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	left: 0;
	width: 1px;
	height: 18px;
	background: #FFFFFF;
}
.header .lang input {
	display: none;
}
.header .lang label {
	display: block;
	padding-right: 15px;
	font-size: 13px;
	cursor: pointer;
}
.header .lang label:after {
	content: '';
	position: absolute;
	top: -2px;
	bottom: 0;
	margin: auto;
	right: 0;
	width: 9px;
	height: 6px;
	background: url(../img/common/h_arrow.svg) no-repeat center / cover;
	transition: all .3s;
}
.header .lang:has(:checked) label:after {
	transform: scale(1, -1);
}
.header .lang-list {
	opacity: 0;
	visibility: hidden;
	position: absolute;
	width: 140px;
	top: 40px;
	right: -31px;
	background: #1A1A1A;
	border: 1px solid #FFF;
	font-size: 14px;
	transform: translateY(10px);
	transition: all .3s;
}
.header .lang:has(.lang-chick:checked) .lang-list {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}
.header .lang-list li:not(:first-child) {
	border-top: 1px solid rgba(255,255,255,.2);
}
.header .lang-list li a {
	display: block;
	padding: 4px 29px;
}
.header .lang-list li.current {
	padding: 4px 29px;
	background: url(../img/common/h_check.svg) no-repeat 9px center;
}
@media only screen and (min-width: 1250px) and (max-width: 1299px) {
	.header .nav {
		padding: 10px 20px;
	}
	.header .menu ul {
		gap: 16px;
	}
	.header .menu ul > li {
		flex: none;
	}
	.header .sns ul {
		gap: 18px;
	}
	.header .sns ul > li img {
		width: 24px;
	}
}
@media screen and (max-width: 1300px) {
	.header .nav {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100vh;
		padding: 70px 0;
		background: none;
		pointer-events: none;
	}

	.header .menu {
		opacity: 0;
		visibility: hidden;
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100vh;
		padding: 70px 0;
		background: #1A1A1A;
		font-weight: 600;
		transition: opacity .3s;
		pointer-events: auto;
	}
	.header .nav:has(.sp-chick:checked) .menu {
		opacity: 1;
		visibility: visible;
	}
	.header .menu nav {
		overflow-y: scroll;
		-webkit-overflow-scrolling: touch;
		height: 100%;
	}
	.header .menu ul {
		gap: 0;
		flex-direction: column;
		padding: 0 20px;
		border-top: 1px solid #FFF;
		border-bottom: 1px solid #FFF;
	}
	.header .menu li {
		width: 100%;
	}
	.header .menu li:not(:first-child) {
		border-top: 1px solid rgba(255,255,255,.2);
	}
	.header .menu li a {
		display: block;
		padding: 18px 0;
		background: url(../img/common/btn_arrow_sp.svg) no-repeat right center;
	}
	.header .menu .contact {
		display: block;
	}
	
	.header .sns {
		position: absolute;
		top: 0;
		right: 70px;
		display: flex;
		height: 70px;
		padding: 20px 25px;
		background: rgba(26,26,26,.85);
		pointer-events: auto;
	}
	.header .sns .contact {
		display: none;
	}
	.header .sns li img {
		width: 20px;
	}

	.header .sp-menu {
		display: block;
	}
	
	.header .lang {
		opacity: 0;
		visibility: hidden;
		position: absolute;
		top: 25px;
		left: 75px;
		margin-left: 0;
		padding-left: 0;
		font-weight: 600;
		transition: all .3s;
		pointer-events: auto;
	}
	.header .nav:has(.sp-chick:checked) .lang {
		opacity: 1;
		visibility: visible;
	}
	.header .lang::before{
		display: none;
	}
	.header .lang label {
		font-size: 14px;
	}
	.header .lang-list {
		width: 224px;
		top: 35px;
		left: -55px;
	}
	.header .lang-list li a,
	.header .lang-list li.current {
		padding: 8px 29px;
	}
}

/*========================================================================

  footer

========================================================================*/

/*  navigation
------------------------------------------------*/

.footer-navigation > div {
	background: rgba(26,26,26,.85);
	color: #FFFFFF;
	font-size: 13px;
}
.footer-navigation > div > div {
	width: calc(100% - 40px);
	max-width: 1280px;
	margin: 0 auto;
	padding: 20px 0;
}
.footer-navigation .pbBlockNavigation {
	display: flex;
	flex-wrap: wrap;
	gap: 7px 15px;
}
.footer-navigation a {
	position: relative;
	padding-right: 20px;
	color: rgba(255,255,255,.6);
}
@media (min-width: 768px) {
	.footer-navigation a:hover {
		color: #FFF;
	}
}
.footer-navigation .pbBlockNavigation a:after {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	right: 0;
	width: 5px;
	height: 5px;
	border-top: 1px solid #FFF;
	border-right: 1px solid #FFF;
	transform: rotate(45deg);
}

@media screen and (max-width: 767px) {
	.footer-navigation > div {
		font-size: 12px;
	}
	.footer-navigation > div > div {
		padding: 16px 0;
	}
}

/*  footer
------------------------------------------------*/

.footer {
	padding: 100px 20px 80px;
	background: #1A1A1A;
	color: #FFFFFF;
}
@media (min-width: 768px) {
	.footer a:hover {
		opacity: .7;
	}
}

.footer-top {
	display: flex;
	flex-wrap: wrap;
	gap: 35px 95px;
	max-width: 1280px;
	margin: 0 auto;
}
.footer-top .menu nav {
	display: flex;
	gap: 35px 60px;
}
.footer-top .menu li:not(:first-child) {
	margin-top: 7px;
}
.footer-top .contact {
	margin-left: auto;
}
.footer-top .contact a {
	position: relative;
	display: flex;
	align-items: center;
	width: 300px;
	min-height: 50px;
	padding: 10px 60px;
	border: 1px solid #FFF;
	background: url(../img/common/sns_mail.svg) no-repeat 28px center;
}
.footer-top .contact a::after {
	content: '';
	position: absolute;
	right: 0;
	height: 100%;
	aspect-ratio: 1;
	border-left: 1px solid #FFF;
	background: url(../img/common/btn_arrow.svg) no-repeat center;
}

.footer-bottom {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	flex-direction: row-reverse;
	max-width: 1280px;
	margin: 190px auto 0;
	font-size: 14px;
}
.footer-bottom .menu-wrap {
	display: flex;
	align-items: center;
}
.footer-bottom .sns ul {
	display: flex;
	align-items: center;
	gap: 20px;
}
.footer-bottom .sns a {
	display: flex;
}
.footer-bottom .list {
	margin-left: 50px;
}
.footer-bottom .list ul {
	display: flex;
	align-items: center;
	gap: 10px;
}
.footer-bottom .list li:not(:first-child) {
	position: relative;
	padding-left: 10px;
}
.footer-bottom .list li:not(:first-child)::before {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	left: 0;
	width: 1px;
	height: 13px;
	background: #FFFFFF;
}
.footer-bottom .copy {
	margin-top: 20px;
}
.footer-bottom .copy small {
	font-size: inherit;
}
.footer-bottom .logo ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: 20px 50px;
}

@media screen and (max-width: 767px) {
	.footer {
		padding: 80px 20px 60px;
	}
	
	.footer-top {
		flex-direction:column;
	}
	.footer-top .logo {
		width: 120px;
		margin: auto;
	}
	.footer-top .menu nav {
		flex-direction:column;
		font-size: 16px;
	}
	.footer-top .menu li:not(:first-child) {
		margin-top: 13px;
	}
	.footer-top .contact {
		width: 100%;
	}
	.footer-top .contact a {
		width: 100%;
		padding-left: 54px;
		background-position: 20px center;
	}
	.footer-top .contact a::after {
		background-image: url(../img/common/btn_arrow_sp.svg);
	}
	
	.footer-bottom {
		flex-direction:column;
		align-items: flex-start;
		margin-top: 40px;
		font-size: 13px;
	}
	.footer-bottom .menu {
		margin-top: 25px;
	}
	.footer-bottom .menu-wrap {
		flex-direction:column;
		align-items: flex-start;
	}
	.footer-bottom .sns ul {
		gap: 30px;
	}
	.footer-bottom .sns a {
		display: flex;
	}
	.footer-bottom .sns img {
		width: 20px;
	}
	.footer-bottom .list {
		margin: 30px 0 0;
	}
	.footer-bottom .logo {
		margin: auto;
	}
	.footer-bottom .logo ul {
		flex-wrap: nowrap;
		gap: 25px;
	}
}

/*========================================================================

  component

========================================================================*/

/*  section
========================================================================*/

.c_section > div {
	width: calc(100% - 40px);
	max-width: 1280px;
	margin: 0 auto;
	padding: 120px 0;
}
div:not(.c_section) + .c_section > div {
	padding-top: 80px;
}
div.c_regions + .c_section > div {
	padding-top: 120px;
}

@media screen and (max-width: 767px) {
	.c_section > div {
		padding: 80px 0;
	}
	div:not(.c_section) + .c_section > div {
		padding-top: 40px;
	}
	div.c_regions + .c_section > div {
		padding-top: 80px;
	}
}

/*  -dark
------------------------------------------------*/

.c_section.-dark {
	background: #1A1A1A;
	color: #FFFFFF;
}
.c_section.-dark .c_h2.-line > div {
	border-color: #FFFFFF;
}
.c_section.-dark .c_h3.-line > div::before {
	background: #FFFFFF;
}

/*  -pb-s
------------------------------------------------*/

.c_section.-pb-s > div {
	padding-bottom: 40px;
}

@media screen and (max-width: 767px) {
	.c_section.-pb-s > div {
		padding-bottom: 30px;
	}
}

/*  h1
========================================================================*/

.c_h1 {
	font-size: 60px;
	font-weight: 600;
	line-height: 1.2;
}

@media screen and (max-width: 767px) {
	.c_h1 {
		font-size: 32px;
	}
}

/*  -img
------------------------------------------------*/

.c_h1 h1:has(img) {
	display: flex;
	align-items: center;
	gap: 30px;
}

@media screen and (max-width: 767px) {
	.c_h1:has(img) h1 {
		gap: 15px;
	}
	.c_h1.-spring img {
		width: 72px;
	}
	.c_h1.-summer img {
		width: 67px;
	}
	.c_h1.-fall img {
		width: 75px;
	}
	.c_h1.-winter img {
		width: 78px;
	}
}

/*  h2
========================================================================*/

.c_h2:not(:first-child) {
	margin-top: 60px;
}
.c_h2 + div:not(:first-child) {
	margin-top: 15px;
}
.c_h2 {
	font-size: 38px;
	font-weight: 600;
	line-height: 1.2;
}

@media screen and (max-width: 767px) {
	.c_h2:not(:first-child) {
		margin-top: 50px;
	}
	.c_h2 {
		font-size: 26px;
	}
}

/*  -line
------------------------------------------------*/

.c_h2.-line:not(:first-child) {
	margin-top: 120px;
}
.c_h2.-line + div:not(:first-child) {
	margin-top: 40px;
}
.c_h2.-line + .c_h3.-line {
	margin-top: 50px;
}
.c_h2.-line > div {
	padding-top: 30px;
	border-top: 4px solid #1A1A1A;
}

@media screen and (max-width: 767px) {
	.c_h2.-line:not(:first-child) {
		margin-top: 90px;
	}
	.c_h2.-line + div:not(:first-child) {
		margin-top: 30px;
	}
	.c_h2.-line + .c_h3.-line {
		margin-top: 35px;
	}
	.c_h2.-line + .c_imagebox:not(:first-child) {
		margin-top: 20px;
	}
	.c_h2.-line > div {
		padding-top: 18px;
	}
}

/*  -img
------------------------------------------------*/

.c_h2 h2:has(img) {
	display: flex;
	align-items: center;
	gap: 30px;
}

@media screen and (max-width: 767px) {
	.c_h2:has(img) h2 {
		gap: 20px;
	}
	.c_h2.-spring img {
		width: 72px;
	}
	.c_h2.-summer img {
		width: 67px;
	}
	.c_h2.-fall img {
		width: 75px;
	}
	.c_h2.-winter img {
		width: 78px;
	}
}

/*  h3
========================================================================*/

.c_h3:not(:first-child) {
	margin-top: 45px;
}
.c_h3 + div.c_h3:not(:first-child) {
	margin-top: 20px;
}
.c_h3 + div.c_h4:not(:first-child) {
	margin-top: 15px;
}
.c_h3 + .c_imagebox:not(:first-child),
.c_h3 + .c_card:not(:first-child) {
	margin-top: 24px;
}
.c_h3 + .elem_swiper_block:not(:first-child) {
	margin-top: 35px;
}
.c_h3 {
	font-size: 20px;
	font-weight: 600;
	line-height: 1.3;
}

@media screen and (max-width: 767px) {
	.c_h3:not(:first-child) {
		margin-top: 35px;
	}
	.c_h3 + div.c_h3:not(:first-child),
	.c_h3 + .c_imagebox:not(:first-child) {
		margin-top: 16px;
	}
	.c_h3 + .elem_swiper_block:not(:first-child) {
		margin-top: 30px;
	}
	.c_h3 + .c_btn:not(:first-child) {
		margin-top: 20px;
	}
	.c_h3 {
		font-size: 17px;
	}
}

/*  -line
------------------------------------------------*/

.c_h3.-line > div {
	position: relative;
	padding: 7px 0 7px 22px;
}
.c_h3.-line > div::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 4px;
	height: 40px;
	background: #1A1A1A;
}

@media screen and (max-width: 767px) {
	.c_h3.-line > div {
		padding: 4px 0 4px 17px;
	}
	.c_h3.-line > div::before {
		height: 30px;
	}
}

/*  h4
========================================================================*/

.c_h4 {
	font-size: 18px;
	font-weight: 600;
	line-height: 1.4;
}

@media screen and (max-width: 767px) {
	.c_h4 {
		font-size: 15px;
	}
}

/*  style
========================================================================*/

.c_style:not(:first-child) {
	margin-top: 15px;
}
.c_style a {
	color: #1A0DAB;
	text-decoration: underline;
}
@media (min-width: 768px) {
	.c_style a:hover {
		opacity: .7;
	}
}

@media screen and (max-width: 767px) {
	.c_style:not(:first-child) {
		margin-top: 10px;
	}
}

/*  list
------------------------------------------------*/

.c_style li {
	position: relative;
	padding-left: 25px;
}
.c_style ul > li::before {
	content: '';
	position: absolute;
	top: 9px;
	left: 9px;
	width: 5px;
	height: 5px;
	background: #1A1A1A;
	border-radius: 50%;
}

.c_style ol {
	counter-reset: cnt;
}
.c_style ol > li::before {
	counter-increment: cnt;
	content: counter(cnt)".";
	position: absolute;
	left: 5px;
}
.c_style ol > li[data-cnt]::before {
	content: attr(data-cnt)".";
}

@media screen and (max-width: 767px) {
	.c_style li {
		padding-left: 22px;
	}
	.c_style ul > li::before {
		width: 4px;
		height: 4px;
	}
	.c_style ol > li::before {
		left: 4px;
	}
}

/*  nested  */

.c_style li ul,
.c_style li ol {
	margin-left: 45px;
}

@media screen and (max-width: 767px) {
	.c_style li ul,
	.c_style li ol {
		margin-left: 40px;
	}
}

/*  table
------------------------------------------------*/

.c_style.-table:not(:first-child) {
	margin-top: 50px;
}
.c_style.-table table {
	width: 100%;
}
.c_style.-table table th,
.c_style.-table table td {
	padding: 18px 25px;
	border: 2px solid #FFF;
	vertical-align: middle;
	font-weight: normal;
}
.c_style.-table table th {
	background: #1A1A1A;
	color: #FFF;
}
.c_style.-table table td {
	background: #EBEBEB;
}

@media screen and (max-width: 767px) {
	.c_style.-table:not(:first-child) {
		margin-top: 25px;
	}
	.c_style.-table::-webkit-scrollbar {
		height: 3px;
	}
	.c_style.-table::-webkit-scrollbar-thumb {
		background: #1A1A1A;
	}
	.c_style.-table::-webkit-scrollbar-track {
		background: #D9D9D9;
	}
	.c_style.-table {
		overflow: auto;
	}
	.c_style.-table table {
		width: 726px;
		max-width: none;
		margin-bottom: 20px;
	}
	.c_style table th,
	.c_style table td {
		padding: 12px 20px;
	}
}

/*  -table-fixed  */

.c_style.-table-fixed table {
	table-layout: fixed;
}

/*  -table-thL  */

.c_style.-table-thL th {
	text-align: left;
}

/*  -table-thC  */

.c_style.-table-thC th {
	text-align: center;
}

/*  -table-thR  */

.c_style.-table-thR th {
	text-align: right;
}

/*  -subtitle
------------------------------------------------*/

.c_style.-subtitle:not(:first-child) {
	margin-top: 40px;
}
.c_style.-subtitle + .c_h2.-line {
	margin-top: 75px;
}
.c_style.-subtitle + .c_h3.-line {
	margin-top: 60px;
}
.c_style.-subtitle + .c_card,
.c_style.-subtitle + .elem_swiper_block {
	margin-top: 35px;
}
.c_style.-subtitle {
	font-size: 20px;
	font-weight: 600;
	line-height: 1.3;
}

@media screen and (max-width: 767px) {
	.c_style.-subtitle:not(:first-child) {
		margin-top: 30px;
	}
	.c_style.-subtitle + .c_h2.-line,
	.c_style.-subtitle + .c_h3.-line {
		margin-top: 30px;
	}
	.c_style.-subtitle + .c_card,
	.c_style.-subtitle + .elem_swiper_block {
		margin-top: 28px;
	}
	.c_style.-subtitle {
		font-size: 17px;
		line-height: 1.4;
	}
}

/*  -annotation
------------------------------------------------*/

.c_style.-annotation:not(:first-child) {
	margin-top: 8px;
}
.c_style.-annotation {
	font-size: 14px;
	line-height: 1.4;
}
.c_style.-annotation ul {
	margin-top: 15px;
}
.c_style.-annotation ul > li {
	padding-left: 20px;
}
.c_style.-annotation ul > li:not(:first-child) {
	margin-top: 5px;
}
.c_style.-annotation ul > li::before {
	content: '※';
	top: 0;
	left: 0;
	width: auto;
	height: auto;
	background: none;
	border-radius: 0;
}

@media screen and (max-width: 767px) {
	.c_style.-annotation {
		font-size: 12px;
		line-height: 1.3;
	}
	.c_style.-annotation ul {
		margin-top: 20px;
	}
}

/*  textbox
========================================================================*/

.c_textbox:not(:first-child) {
	margin-top: 30px;
}
.c_textbox > div {
	padding: 30px;
}

@media screen and (max-width: 767px) {
	.c_textbox > div {
		padding: 25px;
	}
}

/*  -gray
------------------------------------------------*/

.c_textbox.-gray > div {
	background: #EBEBEB;
}

/*  -line
------------------------------------------------*/

.c_textbox.-line > div {
	background: #fff;
	border: 2px solid #CDCDCD;
}



/*  c_list
------------------------------------------------*/

.c_list:not(:first-child) {
	margin-top: 45px;
}
.c_list > div {
	display: flex;
	gap: 10px 61px;
}
.c_list > div::after {
	display: none;
}
.c_list .list-title {
	width: 343px;
}
.c_list .list-text {
	flex: 1;
}

@media screen and (max-width: 767px) {
	.c_list > div {
		flex-direction: column;
	}
	.c_list .list-title {
		width: 100%;
	}
}

/*  keyVisual
========================================================================*/

.c_keyVisual {
	position: relative;
}
.c_keyVisual .slider > ul {
	opacity: 0;
}
.c_keyVisual .slider ul.slick-initialized {
	opacity: 1;
}
.c_keyVisual .slider img {
	width: 100%;
	height: 100vh;
	object-fit: cover;
}
.c_keyVisual .logo {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
.c_keyVisual .title {
	position: absolute;
	bottom: 0;
	left: 0;
	display: flex;
	align-items: flex-end;
	width: 100%;
	height: 250px;
	padding: 0 90px 30px 40px;
	color: #fff;
	font-size: 36px;
	line-height: 1.4;
	background-image: linear-gradient(0deg, #1A1A1AB3 50%, transparent);
}
.c_keyVisual .slick-dots {
	display: flex;
	justify-content: flex-end;
	right: 10px;
	bottom: 38px;
	height: 6px;
	pointer-events: none;
}
.c_keyVisual .slick-dots li {
	width: 6px;
	height: 100%;
	margin: 0 8px;
	z-index: 1;
}
.c_keyVisual .slick-dots li button {
	width: 100%;
	height: 100%;
	padding: 0;
	background: #676767;
	border-radius: 50%;
}
.c_keyVisual .slick-dots li.slick-active button {
	background: #fff;
}
.c_keyVisual .slick-dots li button:before {
	display: none;
}

@media screen and (max-width: 767px) {
	.c_keyVisual .logo {
		width: 140px;
	}
	.c_keyVisual .title {
		height: 140px;
		padding: 0 70px 17px 15px;
		font-size: 18px;
	}
	.c_keyVisual .slick-dots {
		bottom: 20px;
	}
	.c_keyVisual .slick-dots li {
		margin: 0 5px;
	}
}

/*  mainVisual
========================================================================*/

.c_mainVisual > div {
	position: relative;
	min-height: 350px !important;
	background: #1A1A1A;
	color: #FFF;
}
.c_mainVisual .back img {
	width: 100%;
	height: 500px;
	object-fit: cover;
}
.c_mainVisual .inner {
	position: absolute;
	bottom: 0;
	left: 0;
	display: flex;
	align-items: flex-end;
	width: 100%;
	background-image: linear-gradient(0deg, #1A1A1AB3 50%, transparent);
	color: #FFF;
}
.c_mainVisual .inner > div {
	width: calc(100% - 40px);
	max-width: 1280px;
	margin: 0 auto;
	padding: 125px 0 50px;
}

@media screen and (max-width: 767px) {
	.c_mainVisual > div {
		min-height: 200px;
	}
	.c_mainVisual .back img {
		height: 350px;
	}
	.c_mainVisual .inner > div {
		padding: 65px 0 25px;
	}
}

/*  btn
========================================================================*/

.c_btn:not(:first-child) {
	margin-top: 40px;
}
.c_btn a {
	position: relative;
	display: inline-flex;
	align-items: center;
	min-width: 300px;
	min-height: 50px;
	padding: 7px 100px 7px 30px;
	background: #1A1A1A;
	color: #FFFFFF;
	font-weight: 600;
	border: 1px solid #FFF;
	text-align: left;
	line-height: 1.2;
}
@media (min-width: 768px) {
	.c_btn a:hover {
		opacity: .7;
	}
}
.c_btn a::after {
	content: '';
	position: absolute;
	right: 0;
	width: 50px;
	height: 100%;
	border-left: 1px solid #FFF;
	background: url(../img/common/btn_arrow.svg) no-repeat center;
}
.c_btn a[href$='.pdf']::after {
	background-image: url(../img/common/btn_pdf.svg);
}
.c_btn a[target=_blank]:after,
.c_btn a.pbOpenNewWindow:after {
	background-image: url(../img/common/btn_blank.svg);
}

@media screen and (max-width: 767px) {
	.c_btn:not(:first-child) {
		margin-top: 32px;
	}
	.c_btn {
		text-align: center!important;
	}
	.c_btn a {
		min-width: 250px;
		min-height: 40px;
		padding: 7px 70px 7px 15px;
	}
	.c_btn a::after {
		width: 40px;
		background-image: url(../img/common/btn_arrow_sp.svg);
	}
	.c_btn a[href$='.pdf']::after {
		background-image: url(../img/common/btn_pdf_sp.svg);
	}
	.c_btn a[target=_blank]:after,
	.c_btn a.pbOpenNewWindow:after {
		background-image: url(../img/common/btn_blank_sp.svg);
	}
}

/*  -more
------------------------------------------------*/

.c_btn.-more a::after {
	border-left: none;
	border-bottom: 1px solid #FFF;
	transform: rotate(90deg);
}

/*  -content
------------------------------------------------*/

.c_btn.-content a {
	min-width: 400px;
	min-height: 60px;
}
.c_btn.-content a::after {
	width: 60px;
}

@media screen and (max-width: 767px) {
	.c_btn.-content:not(:first-child) {
		margin-top: 40px;
	}
	.c_btn.-content a {
		min-width: 300px;
		min-height: 50px;
	}
	.c_btn.-content a::after {
		width: 50px;
	}
}

/*  link
========================================================================*/

.c_link:not(:first-child) {
	margin-top: 20px;
}
.c_link a,
a .c_link {
	position: relative;
	font-weight: 600;
	transition: all .3s;
}
@media (min-width: 768px) {
	.c_link a:hover,
	a:hover .c_link {
		opacity: .7;
	}
}
.c_link a::after,
a .c_link::after {
	content: '';
	display: inline-block;
	margin-left: 10px;
	width: 24px;
	height: 24px;
	background: url(../img/common/text_arrow.svg) no-repeat center;
	transform: translateY(6px);
}
.c_link a[href$='.pdf']::after,
a[href$='.pdf'] .c_link::after {
	width: 16px;
	height: 20px;
	background-image: url(../img/common/text_pdf.svg);
	transform: translateY(5px);
}
.c_link a[target=_blank]::after,
.c_link a.pbOpenNewWindow::after,
a[target=_blank] .c_link::after,
a.pbOpenNewWindow .c_link::after {
	width: 14px;
	height: 14px;
	background-image: url(../img/common/text_blank.svg);
	transform: translateY(1px);
}

@media screen and (max-width: 767px) {
	.c_link a::after,
	a .c_link::after {
		width: 20px;
		height: 20px;
		background-image: url(../img/common/text_arrow_sp.svg);
		transform: translateY(4px);
	}
	.c_link a[href$='.pdf']::after,
	a[href$='.pdf'] .c_link::after {
		width: 14px;
		height: 17px;
		background-image: url(../img/common/text_pdf_sp.svg);
		transform: translateY(3px);
	}
	.c_link a[target=_blank]::after,
	.c_link a.pbOpenNewWindow::after,
	a[target=_blank] .c_link::after,
	a.pbOpenNewWindow .c_link::after {
		width: 12px;
		height: 12px;
		background-image: url(../img/common/text_blank_sp.svg);
	}
}

/*  anchor
========================================================================*/

.c_anchor:not(:first-child) {
	margin-top: 70px;
}
.c_anchor + .c_h2:not(:first-child) {
	margin-top: 70px;
}
.c_anchor ul {
	display: flex;
	flex-wrap: wrap;
	gap: 20px 0;
	padding-top: 30px;
	font-weight: 600;
	line-height: 1.3;
	border-top: 4px solid #1A1A1A;
}
.c_anchor li {
	position: relative;
	width: 25%;
}
.c_anchor li::before,
.c_anchor li:nth-child(4n)::after {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	left: 0;
	width: 1px;
	height: 100%;
	background: rgba(0,0,0,.2);
}
.c_anchor li:nth-child(4n)::after {
	left: auto;
	right: 0;
}
.c_anchor a {
	position: relative;
	display: flex;
	align-items: center;
	height: 100%;
	min-height: 30px;
	padding: 0 70px 0 30px;
}
@media (min-width: 768px) {
	.c_anchor a:hover {
		opacity: .7;
	}
}
.c_anchor a::after {
	content: '';
	position: absolute;
	right: 20px;
	width: 24px;
	height: 24px;
	background: url(../img/common/text_arrow.svg) no-repeat center;
	transform: rotate(90deg);
}

@media screen and (max-width: 767px) {
	.c_anchor:not(:first-child) {
		margin-top: 30px;
	}
	.c_anchor:last-child {
		margin-top: 70px;
	}
	.c_anchor ul {
		gap: 10px 0;
		padding-top: 15px;
		font-size: 12px;
		border-top-width: 3px;
	}
	.c_anchor li {
		width: 50%;
	}
	.c_anchor li::before {
		left: auto;
		right: 0;
	}
	.c_anchor li:nth-child(4n)::after {
		background: none;
	}
	.c_anchor li:nth-child(odd)::after {
		content: '';
		position: absolute;
		top: 0;
		bottom: 0;
		margin: auto;
		left: 0;
		width: 1px;
		height: 100%;
		background: rgba(0,0,0,.2);
	}
	.c_anchor a {
		min-height: 30px;
		padding: 0 40px 0 15px;
	}
	.c_anchor a::after {
		right: 13px;
		width: 20px;
		height: 20px;
		background-image: url(../img/common/text_arrow_sp.svg);
	}
}

/*  anchor-btn
========================================================================*/

.c_anchor-btn:not(:first-child) {
	margin-top: 40px;
}
.c_anchor-btn ul {
	display: flex;
	gap: 16px;
	font-weight: 600;
	line-height: 1.3;
	border-bottom: 1px solid #CDCDCD;
}
.c_anchor-btn li {
	flex: 1;
}
.c_anchor-btn a {
	position: relative;
	display: flex;
	align-items: center;
	height: 100%;
	min-height: 60px;
	padding: 10px 60px 10px 30px;
	border: 1px solid #CDCDCD;
	border-bottom: none;
}
@media (min-width: 768px) {
	.c_anchor-btn a:hover {
		opacity: .7;
	}
}
.c_anchor-btn a::after {
	content: '';
	position: absolute;
	right: 20px;
	width: 24px;
	height: 24px;
	background: url(../img/common/text_arrow-line.svg) no-repeat center;
}
.c_anchor-btn a[href^="#"] {
	background: #1A1A1A;
	color: #FFFFFF;
}
.c_anchor-btn a[href^="#"]::after {
	transform: rotate(90deg);
}

@media screen and (max-width: 767px) {
	.c_anchor-btn ul {
		flex-wrap: wrap;
		gap: 7px;
		padding-bottom: 16px;
		font-size: 13px;
	}
	.c_anchor-btn li {
		flex: none;
		width: calc(50% - 7px + (7px / 2));
	}
	.c_anchor-btn a {
		min-height: 40px;
		padding: 10px 40px 10px 15px;
		border: 1px solid #CDCDCD;
	}
	.c_anchor-btn a::after {
		right: 13px;
		width: 20px;
		height: 20px;
		background-image: url(../img/common/text_arrow-line_sp.svg);
	}
}

/*  anchor-text
========================================================================*/

.c_anchor-text:not(:first-child) {
	margin-top: 30px;
}
@media (min-width: 768px) {
	.c_anchor-text a:hover {
		opacity: .7;
	}
}
.c_anchor-text + .c_h2.-line {
	margin-top: 80px;
}
.c_anchor-text > div {
	padding: 30px 0;
	border-top: 2px solid #1A1A1A;
	border-bottom: 1px solid #CDCDCD;
}
.c_anchor-text .list li {
	position: relative;
	padding-left: 40px;
}
.c_anchor-text .list li::before {
	content: '　-　';
	position: absolute;
	left: 0;
	top: 0;
}

@media screen and (max-width: 767px) {
	.c_anchor-text:not(:first-child) {
		margin-top: 25px;
	}
	.c_anchor-text + .c_h2.-line {
		margin-top: 60px;
	}
	.c_anchor-text .list li {
		position: relative;
		padding-left: 35px;
	}
}

/*  image
========================================================================*/

.c_image:not(:first-child) {
	margin-top: 30px;
}
.c_image {
	position: relative;
	text-align: center;
}
.c_image .day {
	position: absolute;
	right: 0;
	bottom: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 30px;
	min-width: 80px;
	padding: 2px 5px;
	background: #FFFFFF;
	color: #767676;
	font-size: 14px;
}

@media (min-width: 768px) {
	.c_image a,
	a .c_image {
		overflow: hidden;
		display: table;
		margin: 0 auto;
	}
	.c_image a:hover img,
	a:hover .c_image img {
		transform: scale(1.1);
	}
}

/*  -movie
------------------------------------------------*/

.c_image.-movie iframe {
	width: 100%;
	height: auto;
	aspect-ratio: 16 / 9;
}
.c_image.-movie a {
	position: relative;
	display: block;
}
.c_image.-movie a::before,
.c_image.-movie a::after {
	content: '';
	position: absolute;
	z-index: 1;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
}
.c_image.-movie a::before {
	width: 80px;
	height: 80px;
	background: #FFF;
	border-radius: 50%;
}
.c_image.-movie a::after {
	width: 15px;
	height: 20px;
	left: 4px;
	background: #1A1A1A;
	clip-path: polygon(0 0, 100% 50%, 0 100%);
}

@media screen and (max-width: 767px) {
	.c_image.-movie a::before {
		width: 60px;
		height: 60px;
	}
	.c_image.-movie a::after {
		width: 12px;
		height: 13px;
	}
}

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

.mfp-bg {
	background: #1A1A1A!important;
}
.mfp-fade.mfp-bg.mfp-ready {
	opacity: .75!important;
}
.mfp-iframe-holder .mfp-content {
	max-width: 1080px!important;
}
.mfp-iframe-holder .mfp-close {
	opacity: 1;
	position: fixed;
	top: 10px!important;
	right: 10px!important;
	width: 60px!important;
	height: 60px;
	color: rgba(0,0,0,0)!important;
	border: 1px solid #FFF;
	transition: opacity .3s;
}
@media (min-width: 768px) {
	.mfp-iframe-holder .mfp-close:hover {
		opacity: .7;
	}
}
.mfp-iframe-holder .mfp-close::before,
.mfp-iframe-holder .mfp-close::after {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	width: 25px;
	height: 1px;
	background: #FFFFFF;
}
.mfp-iframe-holder .mfp-close::before {
	transform: translateY(0) rotate(30deg);
}
.mfp-iframe-holder .mfp-close::after {
	transform: translateY(0) rotate(-30deg);
}

/*  -line
------------------------------------------------*/

.c_image.-line {
	border: 1px solid #CDCDCD;
}

/*  imagebox
========================================================================*/

.c_imagebox:not(:first-child) {
	margin-top: 50px;
}
.c_imagebox + .c_style {
	margin-top: 40px;
}
.c_imagebox + .c_h3.-line {
	margin-top: 100px;
}
.c_imagebox .box.-half {
	max-width: 625px;
	margin: 0 auto;
}
.c_imagebox .box.-line > div {
	height: 100%;
	padding-left: 30px;
	border-left: 1px solid rgba(0,0,0,.2);
}

@media print, screen and (min-width: 768px) {
	.c_imagebox > div {
		display: flex;
		gap: 32px;
	}
	.c_imagebox > div:after {
		display: none;
	}
	.c_imagebox .box {
		flex: 1;
	}
	.c_imagebox .box.-top-small {
		width: 400px;
		flex: none;
	}
}

@media screen and (max-width: 767px) {
	.c_imagebox:not(:first-child) {
		margin-top: 40px;
	}
	.c_imagebox + .c_h3.-line {
		margin-top: 60px;
	}
	.c_imagebox .box:not(:first-child) {
		margin-top: 25px;
	}
	.c_imagebox .box.-line:not(:first-child) {
		margin-top: 20px;
	}
	.c_imagebox .box.-line > div {
		padding-left: 19px;
		border-left: 1px solid rgba(0,0,0,.2);
	}
	.c_imagebox .box.-top-small + .box {
		margin-top: 40px;
	}
}

/*  -pc-reverse
------------------------------------------------*/

@media print, screen and (min-width: 768px) {
	.c_imagebox.-pc-reverse > div {
		flex-direction: row-reverse;
	}
	.c_imagebox.-pc-reverse .box.-line > div {
		height: 100%;
		padding-left: 0;
		padding-right: 30px;
		border-left: none;
		border-right: 1px solid rgba(0,0,0,.2);
	}
}

/*  -flow
------------------------------------------------*/

@media print, screen and (min-width: 768px) {
	.c_imagebox.-flow > div,
	.c_imagebox.-flow-reverse > div {
		display: block;
	}
	.c_imagebox.-flow .box:first-child,
	.c_imagebox.-flow-reverse .box:first-child {
		position: relative;
		z-index: 1;
		width: calc(50% - 32px + (32px / 2));
	}
	.c_imagebox.-flow .box:first-child {
		float: left;
		margin: 0 36px 50px 0;
	}
	.c_imagebox.-flow-reverse .box:first-child {
		float: right;
		margin: 0 0 50px 36px;
	}
	.c_imagebox.-flow .box:last-child,
	.c_imagebox.-flow-reverse .box:last-child {
		float: none;
		width: 100%!important;
	}
	.c_imagebox.-flow .pbBlock,
	.c_imagebox.-flow-reverse .pbBlock {
		clear: none;
	}
	.c_imagebox.-flow .pbNested::after,
	.c_imagebox.-flow-reverse .pbNested::after {
		display: none;
	}
}

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

.c_imagebox.-banner:not(:first-child) {
	margin-top: 120px;
}
.c_imagebox.-banner .c_image a {
    position: relative;
    display: block;
}
.c_imagebox.-banner .c_image a::after {
	content: '';
	position: absolute;
	right: 15px;
	bottom: 15px;
	width: 24px;
	height: 24px;
	background: url(../img/common/text_arrow-line.svg) no-repeat center;
}

@media screen and (max-width: 767px) {
	.c_imagebox.-banner:not(:first-child) {
		margin-top: 80px;
	}
	.c_imagebox.-banner .box:not(:first-child) {
		margin-top: 20px;
	}
	.c_imagebox.-banner .c_image a::after {
		right: 10px;
		bottom: 10px;
		width: 20px;
		height: 20px;
		background-image: url(../img/common/text_arrow-line_sp.svg);
	}
}

/*  -count
------------------------------------------------*/

.c_imagebox.-count > div {
	counter-reset: listnum;
}
.c_imagebox.-count .c_image::after {
	counter-increment: listnum;
	content: counter(listnum);
	position: absolute;
	right: 0;
	bottom: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 30px;
	min-width: 30px;
	padding: 2px 5px;
	background: #FFFFFF;
	color: #767676;
	font-size: 14px;
	box-sizing: border-box;
}

/*  -col4
------------------------------------------------*/

@media print, screen and (min-width: 768px) {
	.c_imagebox.-col4 > div {
		flex-wrap: wrap;
		gap: 60px 32px;
	}
	.c_imagebox.-col4 .box {
		flex: none;
		width: calc(25% - 32px + (32px / 4));
	}
}

/*  label
========================================================================*/

.c_label:not(:first-child) {
	margin-top: 20px;
}
.c_label ul {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}
.c_label li,
.c_label span {
	display: inline-flex;
	align-items: center;
	min-height: 30px;
	padding: 2px 10px;
	font-size: 14px;
	border: 1px solid #BFBFBF;
}
.c_label li {
	cursor: pointer;
	transition: opacity .3s;
}
@media (min-width: 768px) {
	.c_label li:hover {
		opacity: .7;
	}
}
.c_label li.active {
	pointer-events: none;
	background: #000000;
	border-color: #000000;
	color: #FFF;
}

@media screen and (max-width: 767px) {
	.c_label ul {
		gap: 8px;
	}
	.c_label li,
	.c_label span {
		min-height: 24px;
		padding: 1px 6px;
		font-size: 12px;
	}
	.c_label + .c_h3:not(:first-child) {
		margin-top: 10px;
	}
}

/*  -large
------------------------------------------------*/

.c_label.-large span {
	min-height: 40px;
	padding: 2px 16px;
	font-size: 16px;
}

@media screen and (max-width: 767px) {
	.c_label.-large span {
		min-height: 34px;
		padding: 2px 10px;
		font-size: 14px;
	}
}

/*  card
========================================================================*/

.c_card:not(:first-child) {
	margin-top: 50px;
}
.pb-handle + .c_card:not(:first-child) {
	margin-top: 0;
}
.c_card .box a,
.c_card li a {
	display: flex;
	flex-direction: column;
	height: 100%;
	padding-bottom: 20px;
	border-bottom: 1px solid rgba(0,0,0,.2);
}
.c_card .c_image {
	order: 0;
	margin-top: 0;
}
.c_card .c_image img {
	width: 100%;
}
.c_card .c_label {
	order: 1;
}
.c_card .c_h3 {
	order: 2;
	margin-top: 15px;
}
.c_card .c_style {
	order: 3;
}
.c_card div.c_link {
	order: 4;
	margin-top: auto;
	padding-top: 20px;
}

@media print, screen and (min-width: 768px) {
	.c_card {
		display: flex;
		flex-wrap: wrap;
		gap: 60px 32px;
	}
	.c_card::after {
		display: none;
	}
}

@media screen and (max-width: 767px) {
	.c_card .box:not(:first-child) {
		margin-top: 40px;
	}
	.c_card div.c_style {
		margin-top: 10px;
	}
	.c_card .box a,
	.c_card li a {
		padding-bottom: 15px;
	}
}

/*  -col2
------------------------------------------------*/

@media print, screen and (min-width: 768px) {
	.c_card.-col2 .box {
		flex: none;
		width: calc(50% - 32px + (32px / 2));
	}
}

/*  -col3
------------------------------------------------*/

@media print, screen and (min-width: 768px) {
	.c_card.-col3 .c_style {
		margin-top: 8px;
	}
	.c_card.-col3 .box {
		flex: none;
		width: calc(33.33% - 32px + (32px / 3));
	}
}

/*  -col4
------------------------------------------------*/

@media print, screen and (min-width: 768px) {
	.c_card.-col4 .box {
		flex: none;
		width: calc(25% - 32px + (32px / 4));
	}
}

/*  filters
========================================================================*/

.c_style + div .c_filters {
	margin-top: 70px;
}
.c_filters {
	display: flex;
	align-items: center;
	gap: 15px 30px;
	padding: 30px 0;
	font-size: 16px;
	border-top: 1px solid rgba(0,0,0,.2);
	border-bottom: 1px solid rgba(0,0,0,.2);
}
.c_filters + div:not(:first-child) {
	margin-top: 30px;
}
.c_filters + .c_filters:not(:first-child) {
	margin-top: 0;
	border-top: none;
}
.c_filters .title {
	padding-left: 30px;
	white-space: nowrap;
	background: url(../img/common/ic_filters.svg) no-repeat left center;
	font-weight: 600;
}
.c_filters .form {
	flex: 1;
}
.c_filters .form label {
	display: block;
	margin-bottom: 5px;
	font-weight: 600;
}
.c_filters .form input[type="text"],
.c_filters .form select {
	width: 100%;
	height: 40px;
	padding: 2px 30px 2px 16px;
	border: 1px solid #BFBFBF;
}
.c_filters .form-col {
	display: flex;
	gap: 20px;
	max-width: 1066px;
	margin-left: auto;
}
.c_filters .form-col-left {
	display: flex;
	flex-wrap: wrap;
	gap: 15px 20px;
}
.c_filters .form-col-left .c_label {
	width: 100%;
}
.c_filters .form-col-left > div:only-child {
	max-width: none;
}
.c_filters .form-select,
.c_filters .form-text {
	width: 420px;
	max-width: calc(50% - 10px);
}
.c_filters .form-select {
	position: relative;
}
.c_filters .form-select::after {
	content: '';
	position: absolute;
	right: 14px;
	bottom: 14px;
	width: 10px;
	height: 6px;
	background: url(../img/common/ic_select.svg) no-repeat;
	pointer-events: none;
}
.c_filters .form-search {
	display: flex;
	align-items: center;
	height: 100%;
	padding-left: 20px;
	border-left: 1px solid rgba(0,0,0,.2);
	white-space: nowrap;
}
.c_filters .form-search button {
	position: relative;
	display: flex;
	align-items: center;
	min-height: 40px;
	padding: 5px 30px 5px 45px;
	background: url(../img/common/ic_search.svg) no-repeat 20px center #000;
	color: #FFFFFF;
	font-weight: 600;
	border: none;
}
@media (min-width: 768px) {
	.c_filters .form-search button:hover {
		opacity: .7;
	}
}

@media screen and (max-width: 767px) {
	.c_style + div .c_filters {
		margin-top: 30px;
	}
	.c_filters {
		align-items: flex-start;
		flex-direction: column;
		padding: 15px 0 20px;
	}
	.c_filters .form {
		width: 100%;
	}
	.c_filters .form label {
		font-size: 14px;
	}
	.c_filters .form input[type="text"],
	.c_filters .form select {
		height: 34px;
		font-size: 14px;
	}
	.c_filters .form-col {
		flex-direction: column;
	}
	.c_filters .form-col-left {
		flex-direction: column;
		gap: 10px 20px;
	}
	.c_filters .form-select,
	.c_filters .form-text {
		width: 100%;
		max-width: none;
	}
	.c_filters .form-search {
		justify-content: center;
		padding-left: 0;
		border-left: none;
	}
	.c_filters .form-search button {
		align-items: center;
		min-height: 34px;
		padding: 2px 35px 2px 45px;
		font-size: 14px;
	}
}

/*  swiper
========================================================================*/

.keyboard_operation {
	position: absolute;
	overflow: hidden;
	width: 1px;
	height: 1px;
	transition: none;
	color: #1A0DAB;
	text-decoration: underline;
}
.keyboard_operation:focus {
	position: static;
	overflow: visible;
	width: 100%;
	height: auto;
}
.elem_swiper_block:not(:first-child) {
	margin-top: 50px;
}
.swiper-container {
	opacity: 0;
}
.swiper-container.swiper-container-initialized {
	opacity:1;
	padding: 2px 0;
}
.swiper-wrapper {
	flex-wrap: nowrap;
	gap: 0;
}
.swiper-wrapper .swiper-slide {
	height: auto;
}
.swiper-container + .elem_swiper_block__nav {
	position: relative;
	display: flex;
	align-items: center;
	margin-top: 40px;
}
.swiper-container + .elem_swiper_block__nav::after {
	content: '';
	position: absolute;
	top: 0;
	left: 50px;
	width: 1px;
	height: 50px;
	background:#1A1A1A;
}
.swiper-container + .elem_swiper_block__nav .swiper-content-column3-btn-prev,
.swiper-container + .elem_swiper_block__nav .swiper-content-column3-btn-next,
.swiper-container + .elem_swiper_block__nav .swiper-content-column4-btn-prev,
.swiper-container + .elem_swiper_block__nav .swiper-content-column4-btn-next {
	position: relative;
	width: 50px;
	aspect-ratio: 1;
	border: 1px solid #1A1A1A;
	cursor: pointer;
}
.swiper-container + .elem_swiper_block__nav .swiper-content-column3-btn-prev,
.swiper-container + .elem_swiper_block__nav .swiper-content-column4-btn-prev {
	border-right: none;
}
.swiper-container + .elem_swiper_block__nav .swiper-content-column3-btn-next,
.swiper-container + .elem_swiper_block__nav .swiper-content-column4-btn-next {
	border-left: none;
}
.swiper-container + .elem_swiper_block__nav .swiper-content-column3-btn-prev::after,
.swiper-container + .elem_swiper_block__nav .swiper-content-column3-btn-next::after,
.swiper-container + .elem_swiper_block__nav .swiper-content-column4-btn-prev::after,
.swiper-container + .elem_swiper_block__nav .swiper-content-column4-btn-next::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(../img/common/btn_arrow.svg) no-repeat center;
	filter: brightness(0) saturate(100%) invert(7%) sepia(6%) saturate(8%) hue-rotate(314deg) brightness(107%) contrast(94%);
}
.swiper-container + .elem_swiper_block__nav .swiper-content-column3-btn-prev::after,
.swiper-container + .elem_swiper_block__nav .swiper-content-column4-btn-prev::after {
	 transform: scale(-1, 1);
}
.swiper-container + .elem_swiper_block__nav .swiper-button-disabled {
	pointer-events: none;
	opacity: .25;
}
.swiper-content-column3-pagination,
.swiper-content-column4-pagination {
	display: flex;
	gap: 5px;
	margin-left: 20px;
}
.swiper-pagination-clickable .swiper-pagination-bullet {
	background: rgba(0,0,0,.2);
	opacity: 1;
}
.swiper-pagination-clickable .swiper-pagination-bullet-active {
	background:#1A1A1A;
}
 .elem_swiper_block__nav .c_btn {
	margin: 0 0 0 auto;
}

@media screen and (max-width: 767px) {
	.elem_swiper_block {
		max-width: calc(100% - 32px);
	}
	div.swiper-container {
		overflow: visible;
	}
	.swiper-container + .elem_swiper_block__nav {
		align-items: flex-start;
		flex-direction: column;
		gap: 40px;
		margin-top: 20px;
		margin-right: -32px;
	}
	.swiper-container + .elem_swiper_block__nav::after,
	.swiper-container + .elem_swiper_block__nav .swiper-content-column3-btn-prev,
	.swiper-container + .elem_swiper_block__nav .swiper-content-column3-btn-next,
	.swiper-container + .elem_swiper_block__nav .swiper-content-column4-btn-prev,
	.swiper-container + .elem_swiper_block__nav .swiper-content-column4-btn-next {
		display: none!important;
	}
	.swiper-content-column3-pagination,
	.swiper-content-column4-pagination {
		margin-left: 0;
	}
	.elem_swiper_block__nav .c_btn {
		margin: auto;
	}
}

/*  contact
========================================================================*/

.c_contact > div {
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	min-height: 340px;
}
.c_contact .back {
	width: 100%;
	z-index: auto!important;
}
.c_contact .back a {
	display: block;
	overflow: hidden;
}
.c_contact .back img {
	width: 100%;
	height: 340px;
	object-fit: cover;
}
@media (min-width: 768px) {
	.c_contact .back a:hover img {
		transform: scale(1.1);
	}
}
.c_contact .title {
	position: absolute;
	padding-right: 40px;
	color: #FFFFFF;
	font-size: 44px;
	background: url(../img/common/btn_arrowL.svg) no-repeat right center;
}
.pbPage:not(.-edit) .c_contact .title {
	pointer-events: none;
}

@media screen and (max-width: 767px) {
	.c_contact > div {
		min-height: 250px;
	}
	.c_contact .back img {
		height: 250px;
	}
	.c_contact .title {
		padding-right: 35px;
		font-size: 34px;
		background-size: 17px;
	}
}

/*  certification
========================================================================*/

.c_certification:not(:first-child) {
	margin-top: 50px;
}

@media print, screen and (min-width: 768px) {
	.c_certification > div {
		display: flex;
		align-items: center;
		gap: 32px;
	}
	.c_certification > div:after {
		display: none;
	}
	.c_certification .box:first-child {
		width: 296px;
	}
	.c_certification .box + .box {
		flex: 1;
	}
}

@media screen and (max-width: 767px) {
	.c_certification .box:not(:first-child) {
		margin-top: 15px;
	}
}

/*  seasonal
========================================================================*/

.c_seasonal:not(:first-child) {
	margin-top: 55px;
}
.c_seasonal > div {
	position: relative;
}
.c_seasonal .back img {
	width: 100%;
	height: 450px;
	object-fit: cover;
}
.c_seasonal .inner {
	position: absolute;
	top: 0;
	left: 0;
	display: flex;
	align-items: center;
	width: 50%;
	height: 100%;
	background: rgba(26,26,26,.7);
	color: #FFF;
}
.c_seasonal .inner > div {
	padding: 0 80px;
}
.c_seasonal .c_h3:not(:first-child) {
	margin-top: 30px;
}

@media screen and (max-width: 767px) {
	.c_seasonal:not(:first-child) {
		margin-top: 40px;
	}
	.c_seasonal > div {
		position: relative;
		padding-bottom: 50px;
	}
	.c_seasonal .back img {
		height: 335px;
	}
	.c_seasonal .inner {
		width: 100%;
	}
	.c_seasonal .inner > div {
		padding: 0 30px 50px;
	}
	.c_seasonal .c_h3:not(:first-child) {
		margin-top: 25px;
	}
	.c_seasonal .c_h3 {
		font-size: 15px;
		line-height: 1.4;
	}
	.c_seasonal .c_btn {
		position: absolute;
		width: 100%;
		left: 0;
		bottom: 0;
	}
	.c_seasonal .c_btn a {
		width: 100%;
		min-height: 50px;
		font-size: 16px;
		padding-left: 30px;
	}
	.c_seasonal .c_btn a::after {
		width: 50px;
	}
}

/*  regions
========================================================================*/

.c_regions-map li a {
	position: absolute;
	display: flex;
	align-items: center;
	min-height: 30px;
	padding: 2px 60px 2px 20px;
	background: #1A1A1A;
	color: #FFFFFF;
	font-weight: 600;
	border: 1px solid #FFF;
	text-align: left;
	line-height: 1.2;
	white-space: nowrap;
	z-index: 1;
}
.c_regions-map li a::after {
	content: '';
	position: absolute;
	right: 0;
	width: 30px;
	height: 100%;
	border-left: 1px solid #FFF;
	background: url(../img/common/btn_arrow.svg) no-repeat center;
}

@media print, screen and (min-width: 768px) {
	.c_regions {
		position: relative;
	}
	.c_regions-bk,
	.c_regions-bk li {
		position: absolute;
		width: 100%;
		height: 100%;
	}
	.c_regions-bk li img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	.c_regions-bk::after {
		content: '';
		position: absolute;
		width: 100%;
		height: 100%;
		z-index: 1;
		background: #1A1A1A;
	}
	.c_regions .c_section {
		position: relative;
		z-index: 1;
		background: none;
	}
	.c_regions-map {
		position: relative;
		height: 600px;
		margin-top: 60px;
	}
	.c_regions-map .sp-img {
		display: none;
	}
	.c_regions-map li {
		position: absolute;
	}
	.c_regions-map li.map01 {
		left: 656px;
	}
	.c_regions-map li.map01 a {
		top: 48px;
		left: -101px;
	}
	.c_regions-map li.map02 {
		top: 162px;
		left: 603px;
	}
	.c_regions-map li.map02 a {
		top: 58px;
		left: 141px;
	}
	.c_regions-map li.map03 {
		top: 330px;
		left: 594px;
	}
	.c_regions-map li.map03 a {
		top: 21px;
		left: 111px;
	}
	.c_regions-map li.map04 {
		top: 278px;
		left: 539px;
	}
	.c_regions-map li.map04 a {
		top: 0px;
		left: -148px;
	}
	.c_regions-map li.map05 {
		top: 381px;
		left: 504px;
	}
	.c_regions-map li.map05 a {
		top: 52px;
		left: 63px;
	}
	.c_regions-map li.map06 {
		top: 360px;
		left: 404px;
	}
	.c_regions-map li.map06 a {
		top: 6px;
		left: -93px;
	}
	.c_regions-map li.map07 {
		top: 424px;
		left: 438px;
	}
	.c_regions-map li.map07 a {
		top: 65px;
		left: 28px;
	}
	.c_regions-map li.map08 {
		top: 419px;
		left: 336px;
	}
	.c_regions-map li.map08 a {
		top: 150px;
		left: 7px;
	}
	.c_regions-map li.map09 {
		top: 456px;
		left: 660px;
	}
	.c_regions-map li.map09 a {
		top: 78px;
		left: 109px;
	}
	.c_regions-map li .img {
		transition: all .3s;
	}
	.c_regions-swiper {
		display: none;
	}
}

@media (min-width: 768px) {
	.c_regions:has(.c_regions-map li a:hover) .c_regions-bk::after {
		transition: all .3s;
		opacity: .75;
	}
	.c_regions:has(.c_regions-map li.map01 a:hover) .c_regions-bk .bk01 {
		z-index: 1;
	}
	.c_regions:has(.c_regions-map li.map02 a:hover) .c_regions-bk .bk02 {
		z-index: 1;
	}
	.c_regions:has(.c_regions-map li.map03 a:hover) .c_regions-bk .bk03 {
		z-index: 1;
	}
	.c_regions:has(.c_regions-map li.map04 a:hover) .c_regions-bk .bk04 {
		z-index: 1;
	}
	.c_regions:has(.c_regions-map li.map05 a:hover) .c_regions-bk .bk05 {
		z-index: 1;
	}
	.c_regions:has(.c_regions-map li.map06 a:hover) .c_regions-bk .bk06 {
		z-index: 1;
	}
	.c_regions:has(.c_regions-map li.map07 a:hover) .c_regions-bk .bk07 {
		z-index: 1;
	}
	.c_regions:has(.c_regions-map li.map08 a:hover) .c_regions-bk .bk08 {
		z-index: 1;
	}
	.c_regions-map li a:hover {
		opacity: .7;
	}
	.c_regions-map li a:hover + .img {
		opacity: .7;
	}
	.c_regions-map:has(li.map08 a:hover) li.map09,
	.c_regions-map:has(li.map09 a:hover) li.map08 {
		opacity: .7;
	}
}

@media screen and (max-width: 767px) {
	.c_regions-bk {
		display: none;
	}
	.c_regions-map {
		margin-top: 60px;
	}
	.c_regions-map .sp-img {
		text-align: center;
	}
	.c_regions-map ul {
		margin-top: 24px;
		display: flex;
		flex-wrap: wrap;
		gap: 5px;
	}
	.c_regions-map li {
		width: calc(50% - 5px + (5px / 2));
		position: relative;
	}
	.c_regions-map li a {
		position: relative;
		height: 100%;
		min-height: 40px;
		padding: 5px 60px 5px 15px;
		font-size: 16px;
	}
	.c_regions-map li a::after {
		width: 40px;
	}
	.c_regions-map li .img {
		display: none;
	}
	.c_regions-swiper {
		margin-top: 40px;
	}
	.c_regions-swiper .swiper-wrapper {
		transition-timing-function: linear !important;
	}
	.c_regions-swiper .swiper-slide {
		position: relative;
		width: 160px;
		margin: 0 5px;
	}
	.c_regions-swiper .swiper-slide span {
		position: absolute;
		bottom: 0;
		display: flex;
		justify-content: flex-end;
		align-items: flex-end;
		width: 100%;
		min-height: 50px;
		padding: 5px 10px;
		font-size: 12px;
		background: linear-gradient(0deg,rgba(0, 0, 0, 0.7) 50%, transparent);
		color: #fff;
	}
}



/*  common
========================================================================*/

.mt0 {margin-top: 0px !important;}
.mt10 {margin-top: 10px !important;}
.mt15 {margin-top: 15px !important;}
.mt20 {margin-top: 20px !important;}
.mt30 {margin-top: 30px !important;}
.mt40 {margin-top: 40px !important;}
.mt50 {margin-top: 50px !important;}
.mb0 {margin-bottom: 0px !important;}
.mb10 {margin-bottom: 10px !important;}
.mb15 {margin-bottom: 15px !important;}
.mb20 {margin-bottom: 20px !important;}
.mb30 {margin-bottom: 30px !important;}
.mb40 {margin-bottom: 40px !important;}

.mr0 {margin-right: 0 !important;}
.mr10 {margin-right: 10px !important;}
.mr20 {margin-right: 20px !important;}
.mr30 {margin-right: 30px !important;}
.ml0 {margin-left: 0 !important;}
.ml10 {margin-left: 10px !important;}
.ml20 {margin-left: 20px !important;}
.ml30 {margin-left: 30px !important;}

.p0 {padding: 0px !important;}
.p10 {padding: 10px !important;}
.p15 {padding: 15px !important;}
.p20 {padding: 20px !important;}
.p30 {padding: 30px !important;}

.pt0 {padding-top: 0px !important;}
.pt5 {padding-top: 5px !important;}
.pt10 {padding-top: 10px !important;}
.pt15 {padding-top: 15px !important;}
.pt20 {padding-top: 20px !important;}
.pt25 {padding-top: 25px !important;}
.pt30 {padding-top: 30px !important;}
.pt35 {padding-top: 35px !important;}
.pt40 {padding-top: 40px !important;}
.pt50 {padding-top: 50px !important;}
.pt70 {padding-top: 70px !important;}

.pb0 {padding-bottom: 0px !important;}
.pb5 {padding-bottom: 5px !important;}
.pb10 {padding-bottom: 10px !important;}
.pb15 {padding-bottom: 15px !important;}
.pb20 {padding-bottom: 20px !important;}
.pb25 {padding-bottom: 25px !important;}
.pb30 {padding-bottom: 30px !important;}
.pb35 {padding-bottom: 35px !important;}
.pb40 {padding-bottom: 40px !important;}
.pb50 {padding-bottom: 50px !important;}

.pl0 {padding-left:0 !important;}
.pl5 {padding-left:5px !important;}
.pl10 {padding-left:10px !important;}
.pl15 {padding-left:15px !important;}
.pl20 {padding-left:20px !important;}
.pl30 {padding-left:30px !important;}
.pl40 {padding-left:40px !important;}
.pr0, .rp0 {padding-right:0 !important;}
.pr5 {padding-right:5px !important;}
.pr10, .rp10 {padding-right:10px !important;}
.pr15 {padding-right:15px !important;}
.pr20 {padding-right:20px !important;}
.pr30 {padding-right:30px !important;}
.pr40 {padding-right:40px !important;}

.width30r {width:30% !important;}
.width35r {width:35% !important;}
.width40r {width:40% !important;}
.width45r {width:45% !important;}
.width50r {width:50% !important;}
.width55r {width:55% !important;}
.width60r {width:60% !important;}
.width65r {width:65% !important;}
.width70r {width:70% !important;}
.width75r {width:75% !important;}
.width80r {width:80% !important;}
.width85r {width:85% !important;}
.width90r {width:90% !important;}
.width95r {width:95% !important;}


.ml-space {margin-left: 32px !important;}
.mr-space {margin-right: 32px !important;}

.mt-space-xs {margin-top: 24px !important;}
.mt-space-s {margin-top: 32px !important;}
.mt-space-m1 {margin-top: 40px !important;}
.mt-space-m2 {margin-top: 56px !important;}
.mt-space-l {margin-top: 80px !important;}
.mt-space-xl {margin-top: 120px !important;}

.mb-space-xs {margin-bottom: 24px !important;}
.mb-space-s {margin-bottom: 32px !important;}
.mb-space-m1 {margin-bottom: 40px !important;}
.mb-space-m2 {margin-bottom: 56px !important;}
.mb-space-l {margin-bottom: 80px !important;}
.mb-space-xl {margin-bottom: 120px !important;}

.pb-space-xs {padding-bottom: 24px !important;}
.pb-space-s {padding-bottom: 32px !important;}
.pb-space-m1 {padding-bottom: 40px !important;}
.pb-space-m2 {padding-bottom: 56px !important;}
.pb-space-l {padding-bottom: 80px !important;}
.pb-space-xl {padding-bottom: 120px !important;}

.pt-space-xs {padding-top: 24px !important;}
.pt-space-s {padding-top: 32px !important;}
.pt-space-m1 {padding-top: 40px !important;}
.pt-space-m2 {padding-top: 56px !important;}
.pt-space-l {padding-top: 80px !important;}
.pt-space-xl {padding-top: 120px !important;}


.c_textbox.gray > div {
    background: #e6e6e6;
}
.c_textbox .title {
    font-size: 30px;
    line-height: 1.4;
    font-weight: bold;
}

/*  recipe
========================================================================*/

/*  recipe01
------------------------------------------------*/

.c_recipe01:not(:first-child) {
	margin-top: 140px;
}
.c_recipe01 + .c_h3.-line {
	margin-top: 70px;
}
.c_recipe01 {
	width: 638px;
	max-width: 100%;
	font-size: 16px;
}
.c_recipe01 > div {
	display: flex;
	border: 1px solid #1A1A1A;
}
.c_recipe01 .box-left {
	width: 173px;
	background: #1A1A1A;
	color: #fff;
}
.c_recipe01 .box-right {
	flex: 1;
}
.c_recipe01 .box-right > div {
	padding: 15px 25px;
}
.c_recipe01 .box-left > div {
	display: flex;
	align-items: center;
	padding: 12px 20px;
	height: 100%;
}
.c_recipe01 .box-left .c_style p {
	display: flex;
	align-items: center;
	gap: 10px;
}

@media screen and (max-width: 767px) {
	.c_recipe01:not(:first-child) {
		margin-top: 95px;
	}
	.c_recipe01 + .c_h3.-line {
		margin-top: 50px;
	}
	.c_recipe01 > div {
		flex-direction: column;
	}
	.c_recipe01 .box-left {
		width: 100%;
	}
	.c_recipe01 .box-left > div {
		padding: 12px 22px;
	}
	.c_recipe01 .box-right > div {
		padding: 15px 22px;
	}
}

/*  recipe02
------------------------------------------------*/

.c_recipe02:not(:first-child) {
	margin-top: 65px;
}
.c_recipe02 > div {
	display: flex;
	flex-wrap: wrap;
	gap: 25px 40px;
	padding: 26px;
	background: #ebebeb;
	border: 4px solid #1A1A1A;
}
.c_recipe02 > div::after {
	display: none;
}
.c_recipe02 .box-left {
	width: 150px;
}
.c_recipe02 .box-right {
	flex: 1;
}
.c_recipe02 .box-right > div {
	width: 100%;
}
.c_recipe02 .box-right {
	display: flex;
	align-items: center;
}
.c_recipe02 .box-bottom {
	width: 100%;
}
.c_recipe02 .c_h3:not(:first-child) {
	margin-top: 10px;
}
.c_recipe02 .c_style:not(:first-child) {
	margin-top: 10px;
}

@media screen and (max-width: 767px) {
	.c_recipe02 > div {
		flex-direction: column;
		gap: 20px;
		padding: 20px;
	}
	.c_recipe02 .box-left {
		width: 100%;
	}
	.c_recipe02 .box-bottom {
		margin-top: 10px;
	}
}

/*  recipe03
------------------------------------------------*/

.c_recipe03:not(:first-child) {
	margin-top: 40px;
}
.c_recipe03 > div {
	display: flex;
	align-items: center;
	gap: 15px 30px;
	padding: 30px;
	background: #1A1A1A;
	color: #fff;
}
.c_recipe03 > div::after {
	display: none;
}
.c_recipe03 .box-left {
	width: 296px;
}
.c_recipe03 .box-right {
	flex: 1;
}

@media screen and (max-width: 767px) {
	.c_recipe03:not(:first-child) {
		margin-top: 25px;
	}
	.c_recipe03 > div {
		flex-direction: column;
		padding: 25px;
	}
	.c_recipe03 .box-left {
		width: 100%;
	}
}
.js-check {
  display: none;
}
.js-check:checked + label > span {
  background-color: #1a1a1a;
  color: #ffffff;
}

.elem_swiper_block__holder .var_col4 .c_image img {
	width: 100%;
	height: 167px;
	object-fit: cover;
}
.elem_swiper_block__nav:has(.swiper-pagination-clickable .swiper-pagination-bullet:only-child)::after,
.elem_swiper_block__nav:has(.swiper-pagination-clickable .swiper-pagination-bullet:only-child) .swiper-button-disabled,
.elem_swiper_block__nav:has(.swiper-pagination-clickable .swiper-pagination-bullet:only-child) .swiper-pagination-bullet {
	visibility: hidden;
}
@media screen and (max-width: 767px) {
	.pbPage {
		overflow: hidden!important;
	}
}