@charset "utf-8";
/* CSS Document */

#tp-Sns-Banner {
	display: block;
}
#tp-Sns-Banner section {
	max-width: 100%;
}
#tp-Sns-Banner .ex-Banner ul > li {
	margin: 0 0 20px;
	width: 32%;
}
@media screen and (max-width: 767px) {
	#tp-Sns-Banner .ex-Banner ul > li {
		margin: 0 0 1rem;
		width: 48%;
	}
}
.SNS_icon {
	margin: 2em 0;
}
.SNS_icon .icon {
	display: flex;
	justify-content: center;
	gap: 2%;
}
.SNS_icon .icon li {
	padding: 0 !important;
}
.SNS_icon .icon li:before {
	content: none;
}
.SNS_icon .icon li a {
	display: block;
	width: 50px;
	height: 50px;
	background-color: #cd255d;
	border-radius: 50%;
}
.SNS_icon .icon li a:hover {
	opacity: 0.5;
	transition: 0.5s;
}
.SNS_icon .icon .SNS_icon_x {
	position: relative;
}
.SNS_icon .icon .SNS_icon_x a:before {
	position: absolute;
	content: "";
	top: 35%;
	left: 35%;
	background: url(/img/common/logo_x.svg) no-repeat;
	background-size: contain;
	width: 30%;
	height: 30%;
}
.SNS_icon .icon .SNS_icon_youtube {
	position: relative;
}
.SNS_icon .icon .SNS_icon_youtube a:before {
	position: absolute;
	content: "";
	top: 33%;
	left: 25%;
	background: url(/img/common/yt_icon_mono_dark.svg) no-repeat;
	background-size: contain;
	width: 50%;
	height: 50%;
}
.SNS_icon .icon .SNS_icon_line {
	position: relative;
}
.SNS_icon .icon .SNS_icon_line a:before {
	position: absolute;
	content: "";
	top: 20%;
	left: 20%;
	background: url(/img/common/lineicon.svg) no-repeat;
	background-size: contain;
	width: 60%;
	height: 60%;
}
.SNS_icon .sw-Blank:after {
	content: none;
}
/* インスタ埋め込み */
.swiper.mySwiper3 {
	width: 90%;
	height: auto;
	position: relative;
	display: flex;
}
.mySwiper3 .swiper-slide {
	position: relative;
	box-sizing: border-box;
	padding-left: 10px;
	padding-right: 10px;
}
.mySwiper3 .swiper-slide img {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover; /* 画像をスライドにフィットさせる */
	aspect-ratio: 9 / 16;
}
.swiper-area .swiper-button-prev {
	left: 0 !important;
	border-top: clamp(1.563rem, 0.451rem + 2.31vw, 2.188rem) solid transparent;
	border-right: clamp(0.938rem, -0.174rem + 2.31vw, 1.563rem) solid #bebebe;
	border-bottom: clamp(1.563rem, 0.451rem + 2.31vw, 2.188rem) solid transparent;
}
.swiper-area {
	position: relative;
}
.swiper-area .swiper-button-prev::after {
	left: 0px !important;
	display: none;
}
.swiper-area .swiper-button-prev::before {
	display: none;
}
.swiper-area .swiper-button-next {
	right: 0 !important;
	border-top: clamp(1.563rem, 0.451rem + 2.31vw, 2.188rem) solid transparent;
	border-left: clamp(0.938rem, -0.174rem + 2.31vw, 1.563rem) solid #bebebe;
	border-bottom: clamp(1.563rem, 0.451rem + 2.31vw, 2.188rem) solid transparent;
}
.swiper-area .swiper-button-next::after {
	left: 0px !important;
	display: none;
}
.swiper-area .swiper-button-next::before {
	display: none;
}
.mySwiper3 .swiper-scrollbar {
	display: none;
}
@media screen and (max-width: 767px) {
	.SNS_icon {
		margin: 5em 0 2em;
	}
	.swiper.mySwiper3 {
		width: 100%;
		height: auto;
	}
	.mySwiper3 .swiper-slide {
		position: relative;
		padding-left: 5px;
		padding-right: 5px;
	}
	.mySwiper3 .swiper-slide img {
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	*/ .swiper-area {
		width: 100%;
		margin: 0 auto 30px;
		overflow-x: hidden;
		position: relative;
	}
	.swiper-area .swiper-scrollbar {
		background: #eee;
		height: 10px;
		position: absolute;
		bottom: -20%;
		z-index: 5;
		width: 100%;
		border-radius: 0px;
	}
	.swiper-area .swiper-scrollbar .swiper-scrollbar-drag {
		background: #7f7f7f;
		border-radius: 0px;
	}
	.swiper-area .swiper-button-prev,
	.swiper-area .swiper-button-next {
		display: none;
	}
}

@media screen and (min-width: 768px) {
	#tp-Sns-Banner .ex-Banner ul > li.column-two {
		width: 49%;
	}
}

/**************************************************************************************************/
@media screen and (min-width: 768px) {
	.tabmenuPC .title {
		margin-right: 12px;
	}
}

@media screen and (min-width: 768px) {
	.tabmenuPC #tab8 + .title {
		background-image: url(/img/future/icon_application.svg);
		background-repeat: no-repeat;
		background-position: 0 center;
		background-size: contain;
	}
}
@media screen and (min-width: 768px) and (max-width: 900px) {
	.tabmenuPC #tab8 + .title {
		background-position: 0 bottom;
		background-size: 28px;
	}
}
@media screen and (min-width: 768px) {
	.tabmenuPC #tab8 + .title:hover {
		background-image: url(/img/future/icon_application_on.svg);
		background-repeat: no-repeat;
		background-position: 0 center;
		background-size: contain;
	}
}
@media screen and (min-width: 768px) and (max-width: 900px) {
	.tabmenuPC #tab8 + .title:hover {
		background-position: 0 bottom;
		background-size: 28px;
	}
}

@media screen and (max-width: 767px) {
	.tabmenuSP #toggle8 + .title {
		background-image: url(/img/future/icon_application.svg);
		background-repeat: no-repeat;
		background-position: 0 center;
		background-size: contain;
	}

	.tabmenuSP #toggle8:checked + .title {
		background-image: url(/img/future/icon_application_on.svg);
		background-repeat: no-repeat;
		background-position: 0 center;
		background-size: contain;
	}
}

@media screen and (min-width: 768px) {
	.tabmenuPC #tab8:checked + .title {
		background-image: url(/img/future/icon_application_on.svg);
		background-repeat: no-repeat;
		background-position: 0 center;
		background-size: contain;
	}
}
@media screen and (min-width: 768px) and (max-width: 900px) {
	.tabmenuPC #tab8:checked + .title {
		background-position: 0 bottom;
		background-size: 28px;
	}
}
