@charset "utf-8";
/* CSS Document */

#mainVisual {
	position: relative;
	background: #fff;
	height: 100vh;
	height: 100dvh;
	overflow: hidden;
}

/*オープニング*/
#mainVisual .openning {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #fff; 
    z-index: 9999; 
}
#mainVisual .openning .logo {
	display: none;
	opacity: 0;
    transition: all 1.0s ease-in-out;
	width: 100%;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}
#mainVisual .openning .logo .icon {
	transform: translateY(-100px) rotate(-400deg);
    transition: all 1.0s ease-in-out;
	width: 24%;
	max-width: 150px;
	text-align: center;
	margin: 0 auto;
	margin-bottom: 20px;
}
#mainVisual .openning .logo .sakura {
	transform: translateY(50px);
    transition: all 1.0s ease-in-out; 
	width: 60%;
	max-width: 400px;
	max-width: 360px;
	text-align: center;
	margin: 0 auto;
}
#mainVisual .openning .logo.active {
	opacity: 1;
}
#mainVisual .openning .logo.active .icon {
	transform: translateY(0) rotate(0);
}
#mainVisual .openning .logo.active .sakura {
	transform: translateY(0);
}

/*スライド*/
#mainVisual .slideBody {
	position: relative;
	width: 100vw;
	height: 100vh;
	height: 100dvh;
    transition: all 0.5s ease-in-out; 
}
#mainVisual .slideBody.active {
	/*min-width: 1500px;*/
	width: 90%;
	height: 66vh;
	height: 66dvh;
	margin: 0 auto;
	margin-top: 6vh;
	margin-top: 6dvh;
	overflow: hidden;
}
#mainVisual .slideBody .fullSlide div.image {
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	height: 100vh;
	height: 100dvh;
	margin: 0;
}
#mainVisual .slideBody .fullSlide div.main01 {
	background-image: linear-gradient(rgba(0,0,0,0.25),rgba(0,0,0,0.25)),url("../img/front-page/img_fullslide-01.jpg.webp");
}
#mainVisual .slideBody .fullSlide div.main02 {
	background-image: linear-gradient(rgba(0,0,0,0.25),rgba(0,0,0,0.25)),url("../img/front-page/img_fullslide-02.jpg.webp");
}
#mainVisual .slideBody .fullSlide div.main03 {
	background-image: linear-gradient(rgba(0,0,0,0.25),rgba(0,0,0,0.25)),url("../img/front-page/img_fullslide-03.jpg.webp");
}
#mainVisual .slideBody.active .fullSlide div.image {
	background-position: center -15vh;
}
@keyframes slidezoom {
	0% { transform: scale(1); }
	100% { transform: scale(1.1); }
}
#mainVisual .slideBody .fullSlide .slick-animation {
	animation: slidezoom 5s 0s forwards;
}
@media screen and (max-width: 1000px) {
	#mainVisual .slideBody.active {
		width: 100%;
		height: 72vh;
		height: 72dvh;
		margin-top: 0;
	}
}

/*スライド内テキスト*/
#mainVisual .slideBody .slideText {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 100%;
	text-align: center;
	color: #fff;
}
#mainVisual .slideBody .slideText .logo {
	width: 60%;
	max-width: 400px;
	max-width: 360px;
	text-align: center;
	margin: 0 auto;
	margin-bottom: 20px;
}
#mainVisual .slideBody .slideText p.catch {
	font-weight: 700;
	line-height: 1.6;
	padding: 0;
	margin-bottom: 5px;
}
#mainVisual .slideBody .slideText p.catch {
	font-size: calc(24px + (32 - 24) * (100vw - 375px) / (920 - 375));
}
@media screen and (min-width: 1000px) {
	#mainVisual .slideBody .slideText p.catch {
		font-size: 32px;
	}
}
@media screen and (max-width: 375px) {
	#mainVisual .slideBody .slideText p.catch {
		font-size: 24px;
	}
}

/*右下実績数*/
#mainVisual .slideBody .nownum {
	display: none;
	position: absolute;
	right: 0;
	bottom: 0;
}
#mainVisual .slideBody .nownum figure {
	display: flex;
	line-height: 1;
}
#mainVisual .slideBody .nownum span.now {
	background: #eee;
	padding: 10px 10px;
	font-size: 14px;
	font-weight: 700;
	display: flex;
	align-items: center;
}
#mainVisual .slideBody .nownum span.num {
	background: #333;
	color: #fff;
	padding: 10px 10px;
	font-size: 16px;
	font-weight: 700;
}
#mainVisual .slideBody .nownum span.num strong {
	font-size: 24px;
	font-weight: 900;
}
@media screen and (max-width: 1000px) {
	#mainVisual .slideBody .nownum span.now {
		padding: 8px 8px;
		font-size: 12px;
	}
	#mainVisual .slideBody .nownum span.num {
		padding: 8px 8px;
		font-size: 14px;
	}
	#mainVisual .slideBody .nownum span.num strong {
		font-size: 20px;
	}
}

/*スライド下*/
#mainVisual .numImage {
	display: none;
	position: absolute;
	top: 74vh;
	top: 74dvh;
	width: 100%;
	text-align: center;
}
#mainVisual .numImage figure {
	width: 70%;
	max-width: 570px;
	height: 14vh;
	height: 14dvh;
	margin: 0 auto;
}
#mainVisual .numImage figure img {
	max-height: 100%;
}
#mainVisual .scrollIcon {
	display: none;
	position: absolute;
	bottom: 2vh;
	bottom: 2dvh;
	width: 100%;
	text-align: center;
	animation: scrollicon .5s ease infinite alternate;
}
@keyframes scrollicon {
	0% {transform: translateY(0px);}
	100% {transform: translateY(-15px);}
}
#mainVisual .scrollIcon figure {
	width: 60px;
	height: 6vh;
	height: 6dvh;
	margin: 0 auto;
}
#mainVisual .scrollIcon figure img {
	max-height: 100%;
}










/* **********************
汎用レイアウト
********************** */

.frontPageRenew202512 {
	padding-bottom: 180px;
}
.frontPageRenew202512 section {
	margin-bottom: 180px;
}
.frontPageRenew202512 section:last-child {
	margin-bottom: 0;
}
@media screen and (max-width: 1000px) {
	/*ヘッダーエリア分*/
	.frontPageRenew202512 {
		padding-bottom: 80px;
	}
	.frontPageRenew202512 section {
		margin-bottom: 80px;
	}
	.frontPageRenew202512 section:last-child {
		margin-bottom: 0;
	}
}

/*背景幅いっぱいセクション用*/
.frontPageRenew202512 .fullWidth {
	margin-left: calc(100% - 100vw) !important;
	padding-left: calc(100vw - 100%) !important;
	margin-right: calc(100% - 100vw) !important;
	padding-right: calc(100vw - 100%) !important;
}










/* **********************
汎用スタイル
********************** */

/* タイトル.secTitle */
.frontPageRenew202512 .secTitle {
	position: relative;
	font-size: 40px;
	padding-top: 25px;
	margin-bottom: 50px;
}
.frontPageRenew202512 .secTitle::before {
	content: "";
	position: absolute;
	top: 0;
	display: inline-block;
	width: 64px;
	height: 8px;
	background: #EB6D9A;
}
@media screen and (max-width: 1000px) {
	.frontPageRenew202512 .secTitle {
		font-size: 28px;
		padding: 0 40px;
		padding-top: 20px;
		margin-bottom: 30px;
	}
	.frontPageRenew202512 .secTitle::before {
		width: 40px;
		height: 5px;
	}
}
@media only screen and (max-width: 500px) {
	.frontPageRenew202512 .secTitle {
		padding: 0 20px;
		padding-top: 20px;
	}
}


/* リンクボタンnav.linkBtn */
.frontPageRenew202512 nav.linkBtn {
	text-align: center;
	margin-top: 50px;
}
.frontPageRenew202512 nav.linkBtn .catch {
	margin-bottom: 10px;
	font-weight: 700;
}
.frontPageRenew202512 nav.linkBtn a {
	position: relative;
	display: inline-block;
	border: 1px solid #CC3A4A;
	background: #CC3A4A;
	color: #fff;
	font-size: 1.0em;
	font-weight: 700;
	border-radius: 50px;
	text-decoration: none;
	min-width: 300px;
	margin: 0 auto;
	padding: 1.0em 0;
	transition: 0.2s;
	box-shadow: 0px 2px 8px 0px rgba(0, 0, 0, 0.2);
}
.frontPageRenew202512 nav.linkBtn a:hover {
	background: #fff;
	color: #CC3A4A;
}
.frontPageRenew202512 nav.linkBtn.contactBtn a {
	background: #fff;
	color: #CC3A4A;
}
.frontPageRenew202512 nav.linkBtn.contactBtn a:hover {
	background: #CC3A4A;
	color: #fff;
}
.frontPageRenew202512 nav.linkBtn a i.fa-solid {
	position: absolute;
	right: 1.0em;
	top: 50%;
	transform: translateY(-50%);
}
@media only screen and (max-width: 500px) {
	.frontPageRenew202512 nav.linkBtn {
		margin-top: 35px;
	}
	.frontPageRenew202512 nav.linkBtn a {
		display: block;
		width: 80%;
		margin: 0 auto;
	}
}


/* リンクテキストnav.linkMoreText */
.frontPageRenew202512 nav.linkMoreText {
	text-align: right;
	margin-top: 20px;
}
.frontPageRenew202512 nav.linkMoreText a {
	text-decoration: underline;
	color: #CC3A4A;
	font-weight: 700;
}
.frontPageRenew202512 nav.linkMoreText a:hover {
	text-decoration: none;
}
.frontPageRenew202512 nav.linkMoreText a i.fa-circle-chevron-right {
	margin-left: 5px;
	font-size: 1.25em;
}
@media only screen and (max-width: 1000px) {
	.frontPageRenew202512 nav.linkMoreText {
		padding: 0 40px;
	}
}
@media only screen and (max-width: 500px) {
	.frontPageRenew202512 nav.linkMoreText {
		padding: 0 20px;
	}
}


/* リンクテキストnav.linkText */
.frontPageRenew202512 nav.linkText {
	text-align: center;
	margin-top: 30px;
}
.frontPageRenew202512 nav.linkText a {
	text-decoration: underline;
}
.frontPageRenew202512 nav.linkText a:hover {
	text-decoration: none;
}
.frontPageRenew202512 nav.linkText a i.fa-caret-right {
	margin-right: 5px;
}
@media only screen and (max-width: 500px) {
	.frontPageRenew202512 nav.linkText {
		margin-top: 20px;
	}
}


/* swiper */
.frontPageRenew202512 .swiper-custom-parent{
	position: relative;
	margin: 0;
	padding: 0;
}
.frontPageRenew202512 .swiper-container {
	overflow: hidden;
}
.frontPageRenew202512 .swiper-button-prev,
.frontPageRenew202512 .swiper-button-next {
	position: absolute;
	top: 0;
	z-index: 10;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 100%;
}
.frontPageRenew202512 .swiper-button-next {
	margin: 0;
	right: -20px;
	padding-left: 20px;
	background: linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 50%);
}
.frontPageRenew202512 .swiper-button-prev {
	margin: 0;
	left: -20px;
	padding-right: 20px;
	background: linear-gradient(90deg, rgba(255,255,255,1) 50%, rgba(255,255,255,0) 100%);
}
.frontPageRenew202512 .swiper-button-next:after,
.frontPageRenew202512 .swiper-container-rtl .swiper-button-prev:after,
.frontPageRenew202512 .swiper-button-prev:after,
.frontPageRenew202512 .swiper-container-rtl .swiper-button-next:after {
	display: none;
}
.frontPageRenew202512 .swiper-button-next.swiper-button-disabled,
.frontPageRenew202512 .swiper-button-prev.swiper-button-disabled {
	opacity: .4;
	background: none;
}
@media only screen and (max-width: 1600px) {
	.frontPageRenew202512 .swiper-button-next {
		right: 0;
		padding-left: 0;
		padding-right: 5px;
	}
	.frontPageRenew202512 .swiper-button-prev {
		left: 0;
		padding-right: 0;
		padding-left: 5px;
	}
}
@media only screen and (max-width: 1000px) {
	.frontPageRenew202512 .swiper-button-next {
		background: none;
	}
	.frontPageRenew202512 .swiper-button-prev {
		background: none;
	}
}










/* **********************
コンテンツ
********************** */


/*.reasonSec*/
.frontPageRenew202512 .aboutSec {
	padding-top: 20px;
}

/*.mediaCountless*/
.frontPageRenew202512 .aboutSec .mediaCountless {
	margin-bottom: 80px;
	text-align: center;
}
.frontPageRenew202512 .aboutSec .mediaCountless h2 {
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 28px;
	margin-bottom: 30px;
}
.frontPageRenew202512 .aboutSec .mediaCountless h2::before,
.frontPageRenew202512 .aboutSec .mediaCountless h2::after {
	background-color: #EB6D9A;
	border-radius: 5px;
	content: "";
	height: 3px;
	width: 40px;
}
.frontPageRenew202512 .aboutSec .mediaCountless h2::before {
	margin-right: 10px;
	transform: rotate(60deg);
}
.frontPageRenew202512 .aboutSec .mediaCountless h2::after {
	margin-left: 10px;
	transform: rotate(-60deg);
}
.frontPageRenew202512 .aboutSec .mediaCountless .logos {
	overflow: hidden;
}
.frontPageRenew202512 .aboutSec .mediaCountless .logo-scroll-slide {
	margin-bottom: 10px;
}
.frontPageRenew202512 .aboutSec .mediaCountless .logo-scroll-slide-reverse {
	margin-bottom: 30px;
}
.frontPageRenew202512 .aboutSec .mediaCountless .swiper-wrapper {
	transition-timing-function: linear;
	display: flex;
	align-items: center;
}
.frontPageRenew202512 .aboutSec .mediaCountless .companyLogo {
	width: 110px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.frontPageRenew202512 .aboutSec .mediaCountless .banner {
	text-align: center;
	width: 80%;
	margin: 0 auto;
}

@media only screen and (max-width: 1000px) {
	.frontPageRenew202512 .aboutSec .mediaCountless {
		margin-bottom: 40px;
	}
}
@media only screen and (max-width: 500px) {
	.frontPageRenew202512 .aboutSec .mediaCountless h2 {
		font-size: 20px;
		margin-bottom: 20px;
	}
	.frontPageRenew202512 .aboutSec .mediaCountless .logo-scroll-slide {
		margin-bottom: 0;
	}
	.frontPageRenew202512 .aboutSec .mediaCountless .logo-scroll-slide-reverse {
		margin-bottom: 20px;
	}
	.frontPageRenew202512 .aboutSec .mediaCountless .companyLogo {
		width: 90px;
	}
}

/*.googleReview*/
.frontPageRenew202512 .aboutSec .googleReview {
	margin-bottom: 80px;
	text-align: center;
}
.frontPageRenew202512 .aboutSec .googleReview .star {
	color: #FFAC33;
	font-size: 28px;
	letter-spacing: 5px;
	margin-bottom: 10px;
}
.frontPageRenew202512 .aboutSec .googleReview h3 {
	font-size: 32px;
	margin-bottom: 15px;
}
.frontPageRenew202512 .aboutSec .googleReview .review {
	display: inline-block;
	line-height: 1;
	margin-bottom: 10px;
}
.frontPageRenew202512 .aboutSec .googleReview .review span {
	display: flex;
	align-items: center;
	justify-content: center;
	background: #EB6D9A;
	color: #fff;
	padding: 5px;
	font-size: 20px;
	font-weight: 700;
}
.frontPageRenew202512 .aboutSec .googleReview .review strong {
	font-size: 45px;
	font-weight: 900;
	margin-left: 5px;
}
.frontPageRenew202512 .aboutSec .googleReview .num {
	font-size: 20px;
	font-weight: 700;
	color: #EB6D9A;
	line-height: 1;
}
.frontPageRenew202512 .aboutSec .googleReview .num strong {
	font-size: 40px;
	font-weight: 900;
	margin-right: 5px;
}
@media only screen and (max-width: 1000px) {
	.frontPageRenew202512 .aboutSec .googleReview {
		padding: 0 40px;
		margin-bottom: 40px;
	}
}
@media only screen and (max-width: 500px) {
	.frontPageRenew202512 .aboutSec .googleReview {
		padding: 0 20px;
	}
	.frontPageRenew202512 .aboutSec .googleReview .num {
		font-size: 18px;
	}
	.frontPageRenew202512 .aboutSec .googleReview .num strong {
		font-size: 36px;
	}
	.frontPageRenew202512 .aboutSec .googleReview h3 {
		font-size: 19px;
	}
}
/*ul.point3List*/
.frontPageRenew202512 .aboutSec ul.point3List {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.frontPageRenew202512 .aboutSec ul.point3List li {
	position: relative;
	box-sizing: border-box;
	width: 31%;
	padding: 25px 0;
	padding-bottom: 35px;
	border: 1px solid #EB6D9A;
	border-radius: 10px;
	background: #FFF7F7;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
}
.frontPageRenew202512 .aboutSec ul.point3List li::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 0;
	height: 0;
	border-style: solid;
	border-color: transparent;
	border-width: 12px 12px;
	border-bottom-color: #CC3A4A;
	border-top: 0;
}
.frontPageRenew202512 .aboutSec ul.point3List li h3 {
	font-size: 32px;
}
.frontPageRenew202512 .aboutSec ul.point3List li h3 strong {
	color: #CC3A4A;
	font-size: 28px;
}
.frontPageRenew202512 .aboutSec ul.point3List li h3 span {
	font-size: 0.7em;
}
@media only screen and (max-width: 1300px) {
	.frontPageRenew202512 .aboutSec ul.point3List li h3 {
		font-size: 28px;
	}
	.frontPageRenew202512 .aboutSec ul.point3List li h3 strong {
		font-size: 22px;
	}
}
@media only screen and (max-width: 1100px) {
	.frontPageRenew202512 .aboutSec ul.point3List li h3 {
		font-size: 24px;
	}
	.frontPageRenew202512 .aboutSec ul.point3List li h3 strong {
		font-size: 18px;
	}
}
@media only screen and (max-width: 1000px) {
	.frontPageRenew202512 .aboutSec ul.point3List {
		padding: 0 40px;
		flex-direction: column;
		margin-top: -10px;
	}
	.frontPageRenew202512 .aboutSec ul.point3List li {
		width: 100%;
		margin-top: 10px;
		padding: 20px 0;
		padding-bottom: 30px;
	}
	.frontPageRenew202512 .aboutSec ul.point3List li h3 {
		font-size: 32px;
	}
	.frontPageRenew202512 .aboutSec ul.point3List li h3 strong {
		font-size: 28px;
	}
}
@media only screen and (max-width: 500px) {
	.frontPageRenew202512 .aboutSec ul.point3List {
		padding: 0 20px;
	}
	.frontPageRenew202512 .aboutSec ul.point3List li h3 {
		font-size: 24px;
	}
	.frontPageRenew202512 .aboutSec ul.point3List li h3 strong {
		font-size: 20px;
	}
}




/*.reasonSec*/
.frontPageRenew202512 .reasonSec {}
.frontPageRenew202512 .reasonSec .reason-box {
	display: flex;
	align-items: center;
}

.frontPageRenew202512 .reasonSec .swiper-vertical-container {
	width: 100%;
	height: 720px;
	position:relative;
	overflow:hidden;
}
@media only screen and (max-width: 1400px) {
	.frontPageRenew202512 .reasonSec .swiper-vertical-container {
		height: 640px;
	}
}
@media only screen and (max-width: 1200px) {
	.frontPageRenew202512 .reasonSec .swiper-vertical-container {
		height: 560px;
	}
}
@media only screen and (max-width: 1100px) {
	.frontPageRenew202512 .reasonSec .swiper-vertical-container {
		height: 480px;
	}
}
@media only screen and (max-width: 1100px) {
	.frontPageRenew202512 .reasonSec .swiper-vertical-container {
		height: 440px;
	}
}
@media only screen and (max-width: 1000px) {
	.frontPageRenew202512 .reasonSec .swiper-vertical-container {
		height: auto;
	}
	.frontPageRenew202512 .reasonSec .swiper-vertical-container .swiper-wrapper {
		display: block;
	}
}
.frontPageRenew202512 .reasonSec .reason-box figure {
	position: relative;
	width: 540px;
	margin-right: 80px;
}
@media only screen and (max-width: 1400px) {
	.frontPageRenew202512 .reasonSec .reason-box figure {
		width: 480px;
		margin-right: 60px;
	}
}
@media only screen and (max-width: 1200px) {
	.frontPageRenew202512 .reasonSec .reason-box figure {
		width: 420px;
		margin-right: 40px;
	}
}
@media only screen and (max-width: 1100px) {
	.frontPageRenew202512 .reasonSec .reason-box figure {
		width: 360px;
		margin-right: 30px;
	}
}
@media only screen and (max-width: 1000px) {
	.frontPageRenew202512 .reasonSec .reason-box figure {
		width: 330px;
	}
}
.frontPageRenew202512 .reasonSec .reason-box figure figcaption {
	position: absolute;
	right: 0;
	top: 5px;
	color: #CC3A4A;
	font-size: 30px;
	font-weight: 500;
	text-align: center;
}
.frontPageRenew202512 .reasonSec .reason-box figure figcaption span.num {
	display: block;
	font-size: 120px;
	font-weight: 900;
}
.frontPageRenew202512 .reasonSec .reason-box figure img {
	border-radius: 24px 128px 24px 24px;
}
.frontPageRenew202512 .reasonSec .reason-box .text {
	flex: 1;
}
.frontPageRenew202512 .reasonSec .reason-box .text h3 {
	font-size: 32px;
	font-weight: 700;
	margin-bottom: 20px;
}
.frontPageRenew202512 .reasonSec .reason-box .text p {
	font-size: 20px;
}
@media only screen and (max-width: 1000px) {
	.frontPageRenew202512 .reasonSec .slide-box {
		padding: 0 40px;
	}
	.frontPageRenew202512 .reasonSec .reason-box {
		align-items: flex-start;
		margin-top: 80px;
	}
	.frontPageRenew202512 .reasonSec .reason-box:first-child {
		margin-top: 0;
	}
	.frontPageRenew202512 .reasonSec .reason-box figure {
		width: 45%;
		margin-right: 5%;
	}
	.frontPageRenew202512 .reasonSec .reason-box figure figcaption {
		font-size: 20px;
	}
	.frontPageRenew202512 .reasonSec .reason-box figure figcaption span.num {
		font-size: 64px;
	}
	.frontPageRenew202512 .reasonSec .reason-box .text h3 {
		font-size: 24px;
		margin-bottom: 10px;
	}
	.frontPageRenew202512 .reasonSec .reason-box .text p {
		font-size: 18px;
	}
}
@media only screen and (max-width: 500px) {
	.frontPageRenew202512 .reasonSec .slide-box {
		padding: 0 20px;
	}
	.frontPageRenew202512 .reasonSec .reason-box {
		margin-top: 60px;
		flex-direction: column;
	}
	.frontPageRenew202512 .reasonSec .reason-box figure {
		width: 100%;
		margin: 0;
		margin-bottom: 15px;
	}
}

.frontPageRenew202512 .swiper-vertical-custom-parent {
	position: relative;
	margin: 0;
	padding: 0;
}
.frontPageRenew202512 .reasonSec .swiper-vertical-button-prev,
.frontPageRenew202512 .reasonSec .swiper-vertical-button-next {
	position: absolute;
	z-index: 10;
	cursor: pointer;
	width: 38px;
	margin: 0;
}
.frontPageRenew202512 .reasonSec .swiper-vertical-button-prev {
	right: 21%;
	top: 20%;
}
.frontPageRenew202512 .reasonSec .swiper-vertical-button-next {
	right: 21%;
	bottom: 20%;
}
.frontPageRenew202512 .swiper-vertical-button-next.swiper-button-disabled,
.frontPageRenew202512 .swiper-vertical-button-prev.swiper-button-disabled {
	opacity: .4;
	background: none;
}
@media only screen and (max-width: 1200px) {
	.frontPageRenew202512 .reasonSec .swiper-vertical-button-prev {
		top: 15%;
	}
	.frontPageRenew202512 .reasonSec .swiper-vertical-button-next {
		bottom: 15%;
	}
}
@media only screen and (max-width: 1100px) {
	.frontPageRenew202512 .reasonSec .swiper-vertical-button-prev {
		top: 10%;
	}
	.frontPageRenew202512 .reasonSec .swiper-vertical-button-next {
		bottom: 10%;
	}
}
@media only screen and (max-width: 1000px) {
	.frontPageRenew202512 .reasonSec .swiper-vertical-button-prev {
		top: 5%;
	}
	.frontPageRenew202512 .reasonSec .swiper-vertical-button-next {
		bottom: 5%;
	}
}
@media only screen and (max-width: 1000px) {
	.frontPageRenew202512 .reasonSec .swiper-vertical-button-prev,
	.frontPageRenew202512 .reasonSec .swiper-vertical-button-next {
		display: none;
	}
}

.frontPageRenew202512 .swiper-vertical-thumbnail {
	width: 460px;
	margin-top: 30px;
}
.frontPageRenew202512 .swiper-vertical-thumbnail .swiper-slide {
	background: #000;
	border-radius: 7px;
	overflow: hidden;
	cursor: pointer;
}
.frontPageRenew202512 .swiper-vertical-thumbnail .swiper-slide img {
	opacity: 0.6;
}
.frontPageRenew202512 .swiper-vertical-thumbnail .swiper-slide.swiper-slide-thumb-active img {
	opacity: 1;
}
@media only screen and (max-width: 1200px) {
	.frontPageRenew202512 .swiper-vertical-thumbnail {
		width: 400px;
		margin-top: 20px;
	}
}
@media only screen and (max-width: 1000px) {
	.frontPageRenew202512 .swiper-vertical-thumbnail {
		display: none;
	}
}




/*.serviceRecommendSec*/
.frontPageRenew202512 .serviceRecommendSec {}
.frontPageRenew202512 .serviceRecommendSec ul.list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-top: -40px;
}
.frontPageRenew202512 .serviceRecommendSec ul.list li {
	width: 31%;
	margin-top: 40px;
}
.frontPageRenew202512 .serviceRecommendSec ul.list li a {
	position: relative;
	display: flex;
	flex-direction: column;
	border: 3px solid #CC3A4A;
	border-radius: 10px;
	color: #CC3A4A;
	background: #fff;
	overflow: hidden;
	text-align: center;
}
.frontPageRenew202512 .serviceRecommendSec ul.list li a:hover {
	background: #CC3A4A;
	color: #fff;
	text-decoration: none;
}
.frontPageRenew202512 .serviceRecommendSec ul.list li .ico {
	position: absolute;
	top: 10px;
	left: 10px;
	width: 48px;
}
.frontPageRenew202512 .serviceRecommendSec ul.list li h3 {
	font-size: 28px;
	padding: 20px 0;
}
.frontPageRenew202512 .serviceRecommendSec ul.list li .arrow {
	display: none;
}
@media only screen and (max-width: 1500px) {
	.frontPageRenew202512 .serviceRecommendSec ul.list li h3 {
		font-size: 24px;
	}
}
@media only screen and (max-width: 1200px) {
	.frontPageRenew202512 .serviceRecommendSec ul.list li {
		width: 32%;
	}
	.frontPageRenew202512 .serviceRecommendSec ul.list li h3 {
		font-size: 20px;
	}
}
@media only screen and (max-width: 1000px) {
	.frontPageRenew202512 .serviceRecommendSec ul.list li h3 {
		font-size: 18px;
	}
}
@media only screen and (max-width: 1000px) {
	.frontPageRenew202512 .serviceRecommendSec ul.list {
		padding: 0 40px;
		flex-direction: column;
		margin-top: -10px;
	}
	.frontPageRenew202512 .serviceRecommendSec ul.list li {
		width: 100%;
		margin-top: 10px;
	}
	.frontPageRenew202512 .serviceRecommendSec ul.list li a {
		flex-direction: row;
		align-items: center;
		justify-content: space-between;
		text-align: left;
	}
	.frontPageRenew202512 .serviceRecommendSec ul.list li .ico {
		top: 5px;
		left: 5px;
		width: 30px;
	}
	.frontPageRenew202512 .serviceRecommendSec ul.list li figure {
		width: 20%;
		min-width: 120px;
	}
	.frontPageRenew202512 .serviceRecommendSec ul.list li h3 {
		flex: 1;
		font-size: 23px;
		padding: 20px 10px;
		padding-right: 0;
	}
	.frontPageRenew202512 .serviceRecommendSec ul.list li .arrow {
		display: block;
		font-size: 24px;
		padding-right: 10px;
	}
}
@media only screen and (max-width: 500px) {
	.frontPageRenew202512 .serviceRecommendSec ul.list {
		padding: 0 20px;
	}
	.frontPageRenew202512 .serviceRecommendSec ul.list li figure {
		min-width: 80px;
	}
	.frontPageRenew202512 .serviceRecommendSec ul.list li h3 {
		font-size: 18px;
		padding: 15px 7px;
		padding-right: 0;
	}
	.frontPageRenew202512 .serviceRecommendSec ul.list li .arrow {
		font-size: 20px;
		padding-right: 7px;
	}
}



/*.snsSec*/
.frontPageRenew202512 .snsSec {}
.frontPageRenew202512 .snsSec .youtubeBnr {
	text-align: center;
	margin-bottom: 30px;
}
.frontPageRenew202512 .snsSec ul.list {
	display: flex;
	justify-content: space-between;
}
.frontPageRenew202512 .snsSec ul.list li {
	width: 23.5%;
}
.frontPageRenew202512 .snsSec ul.list li a {
	display: flex;
	align-items: center;
	justify-content: center;
	background: #fff;
	padding: 15px 15px;
	color: #262626;
	border: 1px solid #ddd;
}
.frontPageRenew202512 .snsSec ul.list li a:hover {
	text-decoration: none;
	background: #ddd;
}
.frontPageRenew202512 .snsSec ul.list li i.ico {
	width: 42px;
	margin-right: 10px;
}
.frontPageRenew202512 .snsSec ul.list li span {
	flex: 1;
}
@media only screen and (max-width: 1500px) {
	.frontPageRenew202512 .snsSec ul.list li a {
		padding: 10px 10px;
		font-size: 14px;
	}
	.frontPageRenew202512 .snsSec ul.list li i.ico {
		width: 34px;
	}
}
@media only screen and (max-width: 1000px) {
	.frontPageRenew202512 .snsSec .youtubeBnr {
		padding: 0 40px;
		margin-bottom: 20px;
	}
	.frontPageRenew202512 .snsSec ul.list {
		padding: 0 40px;
		flex-direction: column;
	}
	.frontPageRenew202512 .snsSec ul.list li {
		width: 100%;
		margin-top: 10px;
	}
	.frontPageRenew202512 .snsSec ul.list li:first-child {
		margin-top: 0;
	}
	.frontPageRenew202512 .snsSec ul.list li a {
		padding: 10px 15px;
		font-size: 16px;
	}
	.frontPageRenew202512 .snsSec ul.list li i.ico {
		width: 42px;
	}
}
@media only screen and (max-width: 500px) {
	.frontPageRenew202512 .snsSec .youtubeBnr {
		padding: 0 20px;
	}
	.frontPageRenew202512 .snsSec ul.list {
		padding: 0 20px;
	}
}




/*.topicsSec*/
.frontPageRenew202512 .topicsSec {}
.frontPageRenew202512 .topicsSec .slide-box {}
.frontPageRenew202512 .topicsSec .topics-slide {}
.frontPageRenew202512 .topicsSec .topics-slide li.topics-box {
	width: 260px;
}
.frontPageRenew202512 .topicsSec .topics-slide li.topics-box a {
	color: #262626;
	display: block;
}
.frontPageRenew202512 .topicsSec .topics-slide li.topics-box a:hover {
	text-decoration: none;
}
.frontPageRenew202512 .topicsSec .topics-slide li.topics-box a:hover .nav {
	text-decoration: none;
}
.frontPageRenew202512 .topicsSec .topics-slide li.topics-box figure {
	width: 260px;
    height: 210px;
    margin: auto;
	margin-bottom: 15px;
	border-top: 4px solid #262626;
	border-bottom: 4px solid #262626;
    display: flex;
    align-items: center;
}
.frontPageRenew202512 .topicsSec .topics-slide li.topics-box figure img {
	width: 260px;
	height: 210px;
	object-fit: contain;
}
.frontPageRenew202512 .topicsSec .topics-slide li.topics-box .date {
	color: #777;
	font-size: 0.875em;
	margin-bottom: 10px;
}
.frontPageRenew202512 .topicsSec .topics-slide li.topics-box h3 {
	font-size: 1.0em;
	font-weight: 700;
	line-height: 1.5;
	margin-bottom: 15px;
}
.frontPageRenew202512 .topicsSec .topics-slide li.topics-box .nav {
	text-align: right;
	color: #0075C1;
	text-decoration: underline;
}
.frontPageRenew202512 .topicsSec .topics-slide li.topics-box .nav i.fa-caret-right {
	margin-right: 5px;
}
@media only screen and (max-width: 1000px) {
	.frontPageRenew202512 .topicsSec .topics-slide {
		padding: 0 40px;
	}
}
@media only screen and (max-width: 500px) {
	.frontPageRenew202512 .topicsSec .topics-slide {
		padding: 0 20px;
	}
}




/*.newsSec*/
.frontPageRenew202512 .newsSec {}
.frontPageRenew202512 .newsSec ul.list {}
.frontPageRenew202512 .newsSec ul.list li {
	margin-top: 10px;
}
.frontPageRenew202512 .newsSec ul.list li:first-child {
	margin-top: 0;
}
.frontPageRenew202512 .newsSec ul.list li a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	background: #FFF7F7;
	padding: 25px 25px;
	border-radius: 10px;
	color: #262626;
}
.frontPageRenew202512 .newsSec ul.list li a:hover {
	background: #F5DDDD;
	text-decoration: none;
}
.frontPageRenew202512 .newsSec ul.list li .arrow {
	color: #CC3A4A;
	width: 32px;
	height: 32px;
	margin-left: 30px;
	border: 1px solid #CC3A4A;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
}
.frontPageRenew202512 .newsSec ul.list li i.fa-solid {
	color: #CC3A4A;
}
.frontPageRenew202512 .newsSec ul.list li .text {
	flex: 1;
}
.frontPageRenew202512 .newsSec ul.list li .text .dateCat {
	display: flex;
	align-items: center;
	font-size: 0.875em;
	line-height: 1;
	margin-bottom: 10px;
}
.frontPageRenew202512 .newsSec ul.list li .text .dateCat span.date {
	color: #777;
	margin-right: 20px;
}
.frontPageRenew202512 .newsSec ul.list li .text .dateCat span.cat {
	color: #CC3A4A;
	border: 1px solid #CC3A4A;
	border-radius: 4px;
	background: #fff;
	padding: 5px 10px;
}
.frontPageRenew202512 .newsSec ul.list li .text h3 {
	font-size: 1.0em;
	font-weight: 500;
	line-height: 1.5;
}
@media only screen and (max-width: 1000px) {
	.frontPageRenew202512 .newsSec ul.list li {
		margin-top: 0;
	}
	.frontPageRenew202512 .newsSec ul.list li a {
		padding: 25px 40px;
		border-radius: 0;
	}
	.frontPageRenew202512 .newsSec ul.list li:nth-child(even) a {
		background: #fff;
	}
}
@media only screen and (max-width: 500px) {
	.frontPageRenew202512 .newsSec ul.list li a {
		padding: 20px 20px;
	}
	.frontPageRenew202512 .newsSec ul.list li .arrow {
		margin-left: 15px;
	}
	.frontPageRenew202512 .newsSec ul.list li .text h3 br {
		display: none;
	}
}




/*.mediaSec*/
.frontPageRenew202512 .mediaSec {}
.frontPageRenew202512 .mediaSec ul.list {}
.frontPageRenew202512 .mediaSec ul.list li {
	margin-top: 10px;
	background: #FFF7F7;
	padding: 25px 25px;
	border-radius: 10px;
	color: #262626;
}
.frontPageRenew202512 .mediaSec ul.list li:first-child {
	margin-top: 0;
}
.frontPageRenew202512 .mediaSec ul.list li .headline {
	display: flex;
	align-items: center;
	line-height: 1;
	margin-bottom: 10px;
}
.frontPageRenew202512 .mediaSec ul.list li .headline .cat {
	color: #CC3A4A;
	border: 1px solid #CC3A4A;
	border-radius: 4px;
	width: 6em;
	text-align: center;
	background: #fff;
	line-height: 1;
	font-size: 0.875em;
	padding: 5px 10px;
	margin-right: 20px;
}
.frontPageRenew202512 .mediaSec ul.list li .headline h3 {
	flex: 1;
	font-size: 1.0em;
	font-weight: 700;
	line-height: 1.5;
}
.frontPageRenew202512 .mediaSec ul.list li .text a {
	text-decoration: underline;
}
.frontPageRenew202512 .mediaSec ul.list li .text a:hover {
	text-decoration: none;
}
@media only screen and (max-width: 1000px) {
	.frontPageRenew202512 .mediaSec ul.list li {
		padding: 25px 40px;
		margin-top: 0;
	}
	.frontPageRenew202512 .mediaSec ul.list li:nth-child(even) {
		background: #fff;
	}
}
@media only screen and (max-width: 500px) {
	.frontPageRenew202512 .mediaSec ul.list li {
		padding: 20px 20px;
	}
	.frontPageRenew202512 .mediaSec ul.list li .headline {
		align-items: flex-start;
		flex-direction: column;
		margin-bottom: 10px;
	}
	.frontPageRenew202512 .mediaSec ul.list li .headline .cat {
		margin-bottom: 5px;
	}
}




/*.publishSec*/
.frontPageRenew202512 .publishSec {}
.frontPageRenew202512 .publishSec .slide-box {}
.frontPageRenew202512 .publishSec .publish-slide {}
.frontPageRenew202512 .publishSec .publish-slide li.publish-box {
	width: 200px;
	text-align: center;
}
.frontPageRenew202512 .publishSec .publish-slide li.publish-box a {
	color: #262626;
	display: block;
}
.frontPageRenew202512 .publishSec .publish-slide li.publish-box figure {
	width: 100px;
    height: 160px;
    margin: auto;
	margin-bottom: 15px;
    display: flex;
    align-items: center;
}
.frontPageRenew202512 .publishSec .publish-slide li.publish-box figure img {
	width: 100px;
	height: 160px;
	object-fit: cover;
}
.frontPageRenew202512 .publishSec .publish-slide li.publish-box h3 {
	font-size: 1.0em;
	font-weight: 700;
	line-height: 1.5;
}
@media only screen and (max-width: 1000px) {
	.frontPageRenew202512 .publishSec .publish-slide {
		padding: 0 40px;
	}
}
@media only screen and (max-width: 500px) {
	.frontPageRenew202512 .publishSec .publish-slide {
		padding: 0 20px;
	}
}




/*.pressSec*/
.frontPageRenew202512 .pressSec {}
.frontPageRenew202512 .pressSec .slide-box {}
.frontPageRenew202512 .pressSec .press-slide {}
.frontPageRenew202512 .pressSec .press-slide li.press-box {
	width: 260px;
}
.frontPageRenew202512 .pressSec .press-slide li.press-box a {
	color: #262626;
	display: block;
}
.frontPageRenew202512 .pressSec .press-slide li.press-box a:hover {
	text-decoration: none;
}
.frontPageRenew202512 .pressSec .press-slide li.press-box a:hover .nav {
	text-decoration: none;
}
.frontPageRenew202512 .pressSec .press-slide li.press-box figure {
	width: 260px;
    height: 145px;
    margin: auto;
	margin-bottom: 15px;
    display: flex;
    align-items: center;
}
.frontPageRenew202512 .pressSec .press-slide li.press-box figure img {
	width: 260px;
	height: 145px;
	object-fit: cover;
	object-fit: contain;
}
.frontPageRenew202512 .pressSec .press-slide li.press-box .date {
	color: #777;
	font-size: 0.875em;
	margin-bottom: 10px;
}
.frontPageRenew202512 .pressSec .press-slide li.press-box h3 {
	font-size: 1.0em;
	font-weight: 700;
	line-height: 1.5;
	margin-bottom: 15px;
}
.frontPageRenew202512 .pressSec .press-slide li.press-box .nav {
	text-align: right;
	color: #0075C1;
	text-decoration: underline;
}
.frontPageRenew202512 .pressSec .press-slide li.press-box .nav i.fa-caret-right {
	margin-right: 5px;
}
@media only screen and (max-width: 1000px) {
	.frontPageRenew202512 .pressSec .press-slide {
		padding: 0 40px;
	}
}
@media only screen and (max-width: 500px) {
	.frontPageRenew202512 .pressSec .press-slide {
		padding: 0 20px;
	}
}




