@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Dela+Gothic+One&family=Noto+Sans+JP:wght@100..900&display=swap');
/*------------------------------------------------------------
	デフォルトスタイル
------------------------------------------------------------*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
	background: transparent;
	border: 0;
	outline: 0;
	font-size: 1em;
}
html {
	font-size: 62.5%;
}
body, table, input, textarea, select, option {
	font-family: 'ヒラギノ角ゴシック','Hiragino Sans',YuGothic,'Yu Gothic','Noto Sans JP',sans-serif;
}
article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary {
	display: block;
}
ol, ul {
	list-style: none;
	box-sizing: border-box;
}
blockquote, q {
	quotes: none;
}
:focus {
	outline: 0;
}
ins {
	text-decoration: none;
}
del {
	text-decoration: line-through;
}
img {
	vertical-align: top;
	max-width: 100%;
    height: auto;
}
a,
a:link {
	color: #191919;
	text-decoration: none;
}
a:visited {
	color: #191919;
}
a:hover {
	opacity: 0.7;
	transition: 0.3s;
}
a:active {
	color: #191919;
}
/*------------------------------------------------------------
	レイアウト
------------------------------------------------------------*/
body {
	margin: 0 auto;
	color: #151515;
	font-size: 1.6rem;
	line-height: 1.8;
	text-size-adjust: none;
	-webkit-text-size-adjust: none;
	background-color: #FFF;
}
body.fixed {
	position: fixed;
	top: 0;
	width: 100%;
}
.content {
	max-width: 1000px;
	width: 95%;
	margin: 0 auto;
}
#container {
	position: relative;
	text-align: left;
	overflow: hidden;
}
#main {
	display: block;
}
a[href^="tel:"] {
	cursor: default;
	pointer-events: none;
}
.dela {
	font-family: "Dela Gothic One", sans-serif;
}
@media all and (min-width: 897px) {
	.sp {
		display: none !important;
	}
}
@media all and (max-width: 896px) {
	body {
		min-width: inherit;
		font-size: 1.5rem;
	}
	.content {
		width: 90%;
	}
	a:hover,
	a:hover img {
		opacity: 1 !important;
	}
	.pc {
		display: none !important;
	}
	a[href^="tel:"] {
		cursor: pointer;
		pointer-events: auto;
	}
}

/*------------------------------------------------------------
	共通
------------------------------------------------------------*/
.br-tb {
	display: none;
}
.br-sp {
	display: none;
}

@media screen and (max-width:896px) {
	.br-tb {
		display: block;
	}
	.tb-off {
		display: none;
	}
}
@media screen and (max-width:430px) {
	.br-sp {
		display: block;
	}
	.sp-off {
		display: none;
	}
}

.sec_ttl {
	text-align: center;
	position: relative;
	width: fit-content;
	margin: 0 auto;
}
.sec_ttl h2 {
	font-size: clamp(30px, 7vw, 40px);
	font-weight: normal;
	font-family: "Dela Gothic One", sans-serif;
	line-height: 1.0;
}
.sec_ttl p {
	font-size: clamp(22px, 5vw, 29px);
	font-family: "Dela Gothic One", sans-serif;
}

@media screen and (max-width:896px) {
	.sec_ttl::before {
		left: -10px;
	}
	.sec_ttl::after {
		right: -10px;
	}
	.sec_ttl::before, .sec_ttl::after {
		background-size: contain;
		width: 28px;
		height: 18px;
	}
}


#splash {
	position: fixed;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: 1200;
	background: #fff;
	text-align:center;
}
#splash_logo {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
#splash_logo img {
	width: 260px;
}

@keyframes fadeIn{
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}


/*------------------------------------------------------------
	ヘッダー
------------------------------------------------------------*/
.headerColorScroll {
  background-color: #fff;
}
#header .header_content {
	padding: 30px;
	position: fixed;
	top: 0;
	z-index: 1000;
	width: 100%;
	transition: 0.3s;
}
#header .header_logo {
	width: fit-content;
}
#header .header_nav {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	transition: 0.3s;
}
#header .header_nav.textColor nav ul li a {
	color: #000;
}
#header .header_nav nav ul {
	display: flex;
	justify-content: center;
	gap: 35px;
}
#header .header_nav nav ul li a {
	color: #fff;
	font-size: 15px;
	font-weight: 500;
	white-space: nowrap;
}
#header .zdo_drawer_menu {
	display: none;
}

@media screen and (max-width:1250px) {
	#header .header_nav {
		left: auto;
		right: 50px;
		transform: translate(0%, -50%);
	}
	#header .header_nav nav ul li a {
		font-size: 14px;
	}
}
@media screen and (max-width:1015px) {
	#header .header_content {
		padding: 20px 17px;
	}
	#header .header_logo a img {
		width: 190px;
	}
	#header .header_nav {
		display: none;
	}
	#header .zdo_drawer_menu {
		display: block;
	}
}

/*------------------------------------------------------------
	スマホメニュー
------------------------------------------------------------*/
.sp_menu-open {
	display: none;
  cursor: pointer;
  position: fixed;
  top: 25px;
  right: 20px;
  z-index: 1001;
}
.sp_menu-open button {
	background: none;
	border: 0;
}
.sp_menu-open button span {
	width: 30px;
	height: 2px;
	margin: 4px 0;
	background-color: #DE000B;
	display: block;
	transition: all 0.2s;
	transform-origin: left;
}
.sp_menu-open.open button span:nth-child(1) {
	transform: rotate(45deg);
	position: relative;
	top: -4px;
}
.sp_menu-open.open button span:nth-child(2) {
	visibility: hidden;
	opacity: 0;
}
.sp_menu-open.open button span:nth-child(3) {
	transform: rotate(-45deg);
	position: relative;
	bottom: -4px;
}
.sp_menu {
	display: none;
	background-color: #fff;
	padding-top: 70px;
	position: fixed;
	top: 0;
	z-index: 100;
	width: 100%;
}
.sp_menu .sp_menu-main {
	background-color: #ccb625;
}
.sp_menu .sp_menu-main ul {
	padding: 5px;
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 5px;
}
.sp_menu .sp_menu-main ul li a {
	background-color: #ffe401;
	color: #330000;
	display: grid;
	align-content: center;
	text-align: center;
	justify-items: center;
	font-size: 80%;
	padding: 10px;
}
.sp_menu .sp_menu-main ul li a::before {
	content: "";
	width: 60px;
	height: 60px;
}
.sp_menu .sp_menu-main ul li:nth-child(1) a::before {
	background: url(../img/icon_01.png) no-repeat center;
	background-size: contain;
}
.sp_menu .sp_menu-main ul li:nth-child(2) a::before {
	background: url(../img/icon_08.png) no-repeat center;
	background-size: contain;
}
.sp_menu .sp_menu-main ul li:nth-child(3) a::before {
	background: url(../img/icon_02.png) no-repeat center;
	background-size: contain;
}
.sp_menu .sp_menu-main ul li:nth-child(4) a::before {
	background: url(../img/icon_03.png) no-repeat center;
	background-size: contain;
}
.sp_menu .sp_menu-main ul li:nth-child(5) a::before {
	background: url(../img/icon_04.png) no-repeat center;
	background-size: contain;
}
.sp_menu .sp_menu-main ul li:nth-child(6) a::before {
	background: url(../img/icon_05.png) no-repeat center;
	background-size: contain;
}
.sp_menu .sp_menu-main ul li:nth-child(7) a::before {
	background: url(../img/icon_06.png) no-repeat center;
	background-size: contain;
}
.sp_menu .sp_menu-main ul li:nth-child(8) a::before {
	background: url(../img/icon_07.png) no-repeat center;
	background-size: contain;
}
.sp_menu .sp_menu-sub {
	background-color: #eeeeee;
	padding: 5px 0;
}
.sp_menu .sp_menu-sub ul {
	display: grid;
	grid-template-columns: 1fr 1fr;
}
.sp_menu .sp_menu-sub ul li a {
	margin: 10px;
	padding-left: 20px;
	display: grid;
	grid-template-columns: auto 1fr;
	align-items: center;
	font-size: 80%;
	color: #333333;
}
.sp_menu .sp_menu-sub ul li a::before {
	content: "";
	border-left: 5px solid #333333;
	border-top: 4px solid transparent;
	border-right: 5px solid transparent;
	border-bottom: 4px solid transparent;
	width: 4px;
	height: 4px;
}
.sp_menu .sp_menu-close {
	background-color: #e5cf39;
	cursor: pointer;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 10px;
}
.sp_menu .sp_menu-close span {
	width: 30px;
	height: 30px;
	margin: 5px;
	display: block;
	background-color: #f3e7a3;
	border-radius: 50%;
	position: relative;
}
.sp_menu .sp_menu-close span::before, .sp_menu .sp_menu-close span::after {
	content: "";
	width: 80%;
	height: 3px;
	background-color: #e5cf39;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%) rotate(45deg);
}
.sp_menu .sp_menu-close span::after {
	transform: translate(-50%, -50%) rotate(-45deg);
}
.sp_menu .sp_menu-close p {
	font-size: 80%;
	color: #fff;
}

@media screen and (max-width:1015px) {
	.sp_menu-open {
		display: block;
	}
}
@media screen and (max-width:355px) {
	.sp_menu .sp_menu-sub ul li a {
		padding-left: 10px;
	}
	.sp_menu .sp_menu-main ul li a p {
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
		max-width: 91px;
	}
}

/*------------------------------------------------------------
	メインビジュアル
------------------------------------------------------------*/
#mainvisual .mainvisual_content {
	height: 100svh;
	position: relative;
}
#mainvisual .mainvisual_video {
	height: 100svh;
	overflow: hidden;
}
#mainvisual .mainvisual_video video {
	aspect-ratio: 16 / 9;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}
#mainvisual .mainvisual_ttl {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	writing-mode: vertical-rl;
	pointer-events: none;
}
#mainvisual .mainvisual_ttl h2 {
	font-family: "Dela Gothic One", sans-serif;
	font-size: clamp(35px, 12vw, 62px);
	font-weight: normal;
	color: #fff;
	letter-spacing: -10px;
	line-height: 1.4;
	white-space: nowrap;
	padding-bottom: 10px;
}
#mainvisual .mainvisual_ttl h2 span {
	background-image: linear-gradient(to bottom, #fff 1px, transparent 1px);
	background-size: 3px 2px;
	background-repeat: repeat-y;
	background-position: right top;
	display: inline-block;
}
#mainvisual .mainvisual_ttl h2 span.ttl_02 {
	background-image: linear-gradient(to bottom, #fff 1px, transparent 1px), linear-gradient(to bottom, #fff 1px, transparent 1px);
	background-size: 3px 2px, 3px 2px;
	background-repeat: repeat-y, repeat-y;
	background-position: left top, right top;
}
#mainvisual .mainvisual_nav {
	display: none;
	border-top: 1px solid #C9C9C9;
	border-bottom: 1px solid #C9C9C9;
	padding: 10px;
	position: fixed;
	bottom: 0;
	z-index: 1000;
	background: #fff;
	width: 100%;
}
#mainvisual .mainvisual_nav ul {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 20px;
	justify-content: center;
	align-items: center;
}
#mainvisual .mainvisual_nav ul li a {
	text-align: center;
	display: block;
}
#mainvisual .mainvisual_nav ul li a img {
	max-width: 37px;
	width: 100%;
}
#mainvisual .mainvisual_nav ul li a p {
	font-size: 11px;
	font-weight: bold;
	margin-top: 5px;
	line-height: 1.0;
}


@keyframes scroll-left {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}

@media screen and (max-width:896px) {
	#mainvisual .mainvisual_video {
		height: 100svh;
	}
	#mainvisual .mainvisual_nav {
		display: block;
	}
}
@media screen and (max-width:430px) {
	#mainvisual .mainvisual_ttl h2 {
		letter-spacing: -7px;
	}
}
@media screen and (max-width:374px) {
	#mainvisual .mainvisual_nav ul {
		gap: 10px;
	}
	#mainvisual .mainvisual_nav ul li a p {
    font-size: 10px;
	}
}

/*------------------------------------------------------------
	アバウト
------------------------------------------------------------*/
#about .about_content {
	text-align: center;
	margin: 70px 0 100px;
}
#about .about_content h2 {
	font-size: clamp(26px, 6vw, 30px);
	margin-bottom: 2rem;
}
#about .about_content p {
	font-size: 18px;
	line-height: 1.5;
}
#about .about_content p:has(span) {
	margin-top: 2rem;
}
#about .about_content p span {
	font-size: 16px;
}

#about .about_btn {
	max-width: 505px;
	margin: 30px auto 0;
}
#about .about_btn a img {
	width: 100%;
}
#about .about_btn a img.sp_img {
	display: none;
}

@media screen and (max-width:896px) {
	#about .about_btn {
		max-width: 316px;
	}
	#about .about_btn a img.sp_img {
		display: block;
	}
	#about .about_btn a img.pc_img {
		display: none;
	}
}


/*------------------------------------------------------------
	TOP-最新情報
------------------------------------------------------------*/
#top_news .top_news-content {
	margin: 50px 0 75px;
	overflow: hidden;
}
#top_news .top_news-content .sec_ttl {
	margin-bottom: 25px;
}
#top_news .top_news-item {
	position: relative;
}
#top_news .top_news-list {
	position: relative;
	margin: 0 auto;
	max-width: 850px;
	overflow: hidden;
}
#top_news .top_news-list ul {
	max-width: 80%;
}
#top_news .top_news-list ul li .img {
	position: relative;
}
#top_news .top_news-list ul li .img img {
	width: 100%;
}
#top_news .top_news-list ul li .img p {
	display: none;
	position: absolute;
	bottom: 10px;
	left: 50%;
	transform: translate(-50%);
	background-color: #FFE200;
	width: 100%;
	max-width: 137px;
	border-radius: 50vh;
	text-align: center;
	padding: 10px 0;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.0;
}
#top_news .top_news-list ul li a > p {
	font-weight: 600;
	margin-top: 20px;
}
#top_news .top_news-item .swiper-pagination {
	position: static;
	margin-top: 20px;
}
#top_news .top_news-item .swiper-pagination .swiper-pagination-bullet {
	margin: 0 6px;
}
#top_news .top_news-item .swiper-pagination .swiper-pagination-bullet-active {
	background: #DF000A;
}
#top_news .top_news-item .swiper-button-next, #top_news .top_news-item .swiper-button-prev {
	top: calc(50% - 25px);
	transform: translate(0, -50%);
}
#top_news .top_news-item .swiper-button-next::after {
	content: "";
	background: url(../img/arrow_icon_03.svg) no-repeat center;
	background-size: contain;
	width: 40px;
	height: 40px;
}
#top_news .top_news-item .swiper-button-prev::after {
	content: "";
	background: url(../img/arrow_icon_03.svg) no-repeat center;
	background-size: contain;
	width: 40px;
	height: 40px;
	transform: rotate(180deg);
}

#top_news .top_news-btn {
	display: none;
	max-width: 160px;
	margin: 30px auto 0;
}
#top_news .top_news-btn a {
	background-color: #FFE200;
	width: 100%;
	border-radius: 50vh;
	display: block;
	position: relative;
	text-align: center;
	padding: 10px 0;
	font-size: 14px;
	font-weight: 600;
}
#top_news .top_news-btn a::after {
	content: "";
	background: url(../img/arrow_icon_04.svg) no-repeat center;
	background-size: contain;
	width: 16px;
	height: 16px;
	position: absolute;
	right: 20px;
	top: 50%;
	transform: translate(0, -50%);
}

@media screen and (max-width:896px) {
	#top_news .top_news-content {
    margin: 50px calc(50% - 50vw) 75px;
	}
	#top_news .top_news-list {
		max-width: 100%;
	}
	#top_news .top_news-list ul li .img p {
		display: block;
	}
	#top_news .top_news-btn {
		display: block;
	}
}

/*------------------------------------------------------------
	TOP-メニュー
------------------------------------------------------------*/
#top_menu .top_menu-content {
	margin: 75px 0;
}
#top_menu .top_menu-content .sec_ttl {
	margin-bottom: 25px;
}
#top_menu .top_menu-list {
	padding-bottom: 80px;
}
#top_menu .top_menu-list ul {
	display: flex;
	flex-wrap: wrap;
}
#top_menu .top_menu-list ul li {
	position: relative;
}
#top_menu .top_menu-list ul li:nth-child(-n+3) {
	width: calc(100% / 3);
}
#top_menu .top_menu-list ul li:nth-child(n+4) {
	width: calc(100% / 4);
}
#top_menu .top_menu-list ul li img {
	width: 100%;
}
#top_menu .top_menu-list ul li p {
	position: absolute;
	bottom: 30px;
	left: 50%;
	transform: translate(-50%);
	white-space: nowrap;
	font-family: "Dela Gothic One", sans-serif;
	font-size: clamp(23px, 2.5vw, 28px);
	color: #fff;
	display: grid;
	grid-template-columns: 1fr auto;
	align-items: center;
	gap: 22px;
}
#top_menu .top_menu-list ul li p::after {
	content: "";
	background: url(../img/arrow_icon_02.svg) no-repeat center;
	background-size: contain;
	width: clamp(21px, 4vw, 27px);
	height: clamp(21px, 4vw, 27px);
	display: block;
}
#top_menu .top_menu-item {
	display: grid;
	grid-template-columns: auto 1fr;
	align-items: center;
	margin: 80px 0;
}
#top_menu .top_menu-item .img {
	width: 57vw;
}
#top_menu .top_menu-item .txt {
	width: 75%;
	margin: 0 auto;
}
#top_menu .top_menu-item .txt h3 {
	font-size: clamp(21px, 6.5vw, 26px);
	margin-bottom: 25px;
}
#top_menu .top_menu-item.item_02 {
	grid-template-columns: 1fr auto;
}

@media screen and (max-width:896px) {
	#top_menu .top_menu-list ul li:nth-child(-n+3), #top_menu .top_menu-list ul li:nth-child(n+4) {
		width: 100%;
	}
	#top_menu .top_menu-list ul li p {
		font-size: 26px;
		gap: 12px;
	}
	#top_menu .top_menu-list ul li:nth-child(n+6) {
		width: calc(100% / 2);
	}
	#top_menu .top_menu-list ul li:nth-child(n+6) p {
		font-size: clamp(18px, 4vw, 22px);
		gap: clamp(6px, 1.5vw, 12px);
	}

	#top_menu .top_menu-item {
		grid-template-columns: 1fr;
		gap: 40px;
		align-items: unset;
		margin: 50px 0;
	}
	#top_menu .top_menu-item .img {
		width: 90%;
	}
	#top_menu .top_menu-item .txt {
		width: 90%;
	}
	#top_menu .top_menu-item.item_02 {
		display: flex;
		flex-direction: column-reverse;
	}
	#top_menu .top_menu-item.item_02 .img {
		width: 100%;
	}
}

/*------------------------------------------------------------
	TOP-メディア
------------------------------------------------------------*/
#top_media .top_media-content {
	margin: 70px 0;
}
#top_media .top_media-content .sec_ttl {
	margin-bottom: 25px;
}
#top_media .top_media-list ul {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 30px;
}
#top_media .top_media-list ul li p {
	margin-top: 15px;
}
#top_media .top_media-list ul li img {
	width: 100%;
}
#top_media .top_media-btn {
	max-width: 200px;
	margin: 30px auto 0;
}
#top_media .top_media-btn a {
	background-color: #FFE200;
	width: 100%;
	border-radius: 50vh;
	display: block;
	position: relative;
	text-align: center;
	padding: 10px 0;
	font-size: 16px;
	font-weight: 600;
}
#top_media .top_media-btn a::after {
	content: "";
	background: url(../img/arrow_icon_04.svg) no-repeat center;
	background-size: contain;
	width: 16px;
	height: 16px;
	position: absolute;
	right: 20px;
	top: 50%;
	transform: translate(0, -50%);
}

@media screen and (max-width:896px) {
	#top_media .top_media-list ul {
		grid-template-columns: 1fr;
		gap: 30px;
	}
	#top_media .top_media-btn {
		max-width: 160px;
	}
	#top_media .top_media-btn a {
		font-size: 14px;
	}
}


/*------------------------------------------------------------
	TOP-店舗
------------------------------------------------------------*/
#top_store .top_store-content {
	margin: 90px 0;
}
#top_store .top_store-content .sec_ttl {
	margin-bottom: 25px;
}
#top_store .top_store-list ul {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}
#top_store .top_store-list ul li {
	width: calc(100% / 3 - 4px);
}
#top_store .top_store-list ul li:first-child {
	width: 100%;
}
#top_store .top_store-list ul li a {
	display: block;
	background-color: #DF000A;
	padding: 22px 10px;
	text-align: center;
	font-size: 17px;
	color: #fff;
	position: relative;
}
#top_store .top_store-list ul li a::after {
	content: "";
	background: url(../img/arrow_icon_05.svg) no-repeat center;
	background-size: contain;
	width: 23px;
	height: 23px;
	position: absolute;
	right: 20px;
	top: 50%;
	transform: translate(0, -50%);
}

@media screen and (max-width:896px) {
	#top_store .top_store-list ul li {
		width: 100%;
	}
}

/*------------------------------------------------------------
	TOP-CM
------------------------------------------------------------*/
#top_cm .top_cm-content {
	margin-bottom: 80px;
}
#top_cm .top_cm-content .sec_ttl {
	margin-bottom: 25px;
}
#top_cm .top_cm-list ul {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	gap: 12px;
}
#top_cm .top_cm-list ul li iframe {
	width: 100%;
	height: 100%;
	object-fit: contain;
	aspect-ratio: 16/9;
}

@media screen and (max-width:896px) {
	#top_cm {
		overflow: hidden;
	}
	#top_cm .top_cm-slider {
		position: relative;
	}
	#top_cm .top_cm-slider .swiper-pagination {
		position: static;
	}
	#top_cm .top_cm-slider .swiper-pagination .swiper-pagination-bullet {
		margin: 0 6px;
	}
	#top_cm .top_cm-slider .swiper-pagination .swiper-pagination-bullet-active {
		background: #DF000A;
	}
	#top_cm .top_cm-slider .swiper-button-next, #top_cm .top_cm-slider .swiper-button-prev {
		top: calc(50% + 10px);
		transform: translate(0, -50%);
	}
	#top_cm .top_cm-slider .swiper-button-next {
		right: 0;
	}
	#top_cm .top_cm-slider .swiper-button-prev {
		left: 0;
	}
	#top_cm .top_cm-slider .swiper-button-next::after {
		content: "";
		background: url(../img/arrow_icon_03.svg) no-repeat center;
		background-size: contain;
		width: 40px;
		height: 40px;
	}
	#top_cm .top_cm-slider .swiper-button-prev::after {
		content: "";
		background: url(../img/arrow_icon_03.svg) no-repeat center;
		background-size: contain;
		width: 40px;
		height: 40px;
		transform: rotate(180deg);
	}
	#top_cm .top_cm-slider iframe {
		width: 100%;
		height: 100%;
		object-fit: contain;
		aspect-ratio: 16/9;
	}
}

/*------------------------------------------------------------
	TOP-リンク
------------------------------------------------------------*/
#top_link {
	background-color: #F5F5F5;
}
#top_link .top_link-content {
	padding: 50px 0;
}
#top_link .top_link-list ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 20px;
}
#top_link .top_link-list ul li {
	width: calc(100% / 3 - 13.35px);
}
#top_link .top_link-list ul li img {
	width: 100%;
}

@media screen and (max-width:896px) {
	#top_link .top_link-list ul li {
		width: 100%;
	}
}


/*------------------------------------------------------------
	フッター
------------------------------------------------------------*/
#footer .footer_content {
	padding: 40px 40px 120px;
	display: grid;
	grid-template-columns: 1fr auto;
	gap: 30px;
}
#footer .footer_nav nav ul {
	width: fit-content;
	display: grid;
	grid-template-columns: auto auto auto auto;
	gap: 5px 65px;
}
#footer .footer_nav nav ul li a {
	font-size: 12px;
}
#footer .footer_right {
	text-align: right;
}
#footer .footer_logo a img {
	width: 270px;
}
#footer .footer_sns {
	margin: 25px 0;
}
#footer .footer_sns ul {
	display: flex;
	justify-content: flex-end;
	gap: 10px;
}
#footer .footer_copy p {
	font-size: 13px;
}

@media screen and (max-width:1035px) {
	#footer .footer_nav nav ul {
		gap: 5px 20px;
	}
}
@media screen and (max-width:896px) {
	#footer .footer_content {
		padding: 70px 25px 100px;
		grid-template-columns: 1fr;
		gap: 60px;
	}
	#footer .footer_nav nav ul {
		grid-template-columns: auto auto;
		gap: 5px 40px;
		margin: 0 auto;
	}
	#footer .footer_right {
		text-align: center;
	}
	#footer .footer_logo a img {
		width: 190px;
	}
	#footer .footer_sns ul {
		justify-content: center;
	}
}


.lity-youtube .lity-container {
	width: 90%;
	max-height: 90vh;
	align-content: center;
}
.lity-close {
	position: absolute;
	transform: translate(70%, -100%);
	font-size: 45px;
}
@media screen and (max-width:430px) {
	.lity-youtube .lity-container {
		width: 100%;
	}
	.lity-close {
		transform: translate(0, -100%);
	}
}