@charset "UTF-8";

/* 202507 追加

-------------------------------------------------- */
.lineup-items-item-figure-img,
.flow-steps-item-figure-img {
  width: auto !important;
  max-width: none !important;
  height: auto !important;
}

/* フォーム */
.wpcf7 .screen-reader-response {
	margin-bottom: 2.9em;
}
.contact-form-div-item p {
	display: flex;
justify-content:center;
align-items:center;
	
}

/* 202412追加

-------------------------------------------------- */

.add--container1920 {

	width: 100%;

	max-width: 1920px;

	margin: 0 auto;

}

#top-slide .slick-prev {

    left: 10px;

}

#top-slide .slick-next {

    right: 10px;

}

#top-slide .slick-prev,

#top-slide .slick-next {

    width: 32px;

    height: 32px;

    background: #fff;

    border-radius: 50%;

    transition: all .3s ease;

    cursor: pointer;

	z-index:2;

}



#top-slide .slick-prev {

    transform: rotate(180deg) translate(0, 50%);

}



#top-slide .slick-prev::before,

#top-slide .slick-next::before{

    position:absolute;

    content: "";

    width:7px;

    height:7px;

    border-right: 2px solid #1CAFA4;

    border-top: 2px solid #1CAFA4;

    top:0;

    bottom:0;

    left:0;

    right:4px;

    margin:auto;

    transform:rotate(45deg);

	opacity: 1;

}

#top-slide img {

	width: 480px;

	height: 384px;

}

@media screen and (max-width: 1920px) {

	#top-slide img {

		width: 25vw;

		height: 20vw;

	}

}

@media screen and (max-width: 1024px) {

	#top-slide img {

		width: 33.333vw;

		height: 26.667vw;

	}

}

@media screen and (max-width: 768px) {

	#top-slide img {

		width: 50vw;

		height: 40vw;

	}

}

@media screen and (max-width: 540px) {

	#top-slide img {

		width: 100%;

		height: 102.4vw;

		object-fit: cover;

	}

}



.add--bg-1 {

	background: url(../images/top202412/pc-base.webp) center top no-repeat;

}

.add--container1740 {

	width: 93%;

	max-width: 1740px;

	margin: 0 auto;

}

.add--flex,

.add--flex-pc {

	display: flex;

	justify-content: space-between;

}

.add--flex-inner-1 {

	width: 48%;

	margin-top: 3.2em;

	padding-left: 2em;

}

.add--flex-inner-2 {

	width: 52%;

	margin-top: 3.5em;

}

.add--flex-inner-3 {

	width: 49.1%;

}

.add--box-1 {

	width: 98%;

	margin: 0 auto;

}

.add--marker { background:linear-gradient(transparent 70%, #F3F600 70%, #F3F600 98%, #fff 98%);}

.add--nml {

	margin-left: -.5em;

}

.add--txt-01 {

	color: #1CAFA4;

	font-size: 28px;

	font-weight: 600;

	line-height: 1.7;

}

.add--txt-02 {

	font-size: 48px;

	font-weight: 700;

	line-height: 1.7;

	margin-top: .3em;

}

.add--txt-03 {

	font-size: 22px;

	font-weight: 600;

	line-height: 1.8;

	margin-top: 1em;

}

.add--txt-04 {

	position: relative;

	text-align: center;

	margin-bottom: 2em;

}

.add--txt-04 span {

	color: #1CAFA4;

	font-size: 22px;

	background: #fff;

	padding: 0 .5em;

}

.add--txt-04::before {

	content: "";

	display: block;

	width: 100%;

	height: 2px;

	background: #1CAFA4;

	position: absolute;

	left: 0;

	top: 55%;

	z-index: -1;

}

.add--txt-05 {

	color: #1CAFA4;

	font-size: 36px;

	margin-top: 2.5em;

	text-align: center;

	font-weight: 600;

}

.add--box-2 {

	margin-top: 3.2em;

}

.add--btn {

	width: 100%;

	height: 84px;

	display: flex;

	justify-content: center;

	align-items: center;

	font-size: 24px;

	color: #fff;

	margin-top: 1.6em;

}

.add--btn-1 {

	background: #FB8C99;

}

.add--btn-2 {

	background: #1CAFA4;

}

.add--btn:hover {

	filter:brightness(1.1);

}

.add--btn span {

	position: relative;

}

.add--btn span::before {

	position: absolute;

	background-size: contain;

	content: "";

	display: block;

	left: 0;

	top: 50%;

	transform: translateY(-50%);

}

.add--btn-1 span {

	padding-left: 46px;

}

.add--btn-1 span::before {

	background-image: url(../images/top202412/btn-icon-1.png);

	width: 27px;

	height: 36px;

}

.add--btn-2 span {

	padding-left: 50px;

}

.add--btn-2 span::before {

	background-image: url(../images/top202412/btn-icon-2.png);

	width: 37px;

	height: 28px;

}

.add--btn-tel {

	width: 100%;

	height: 84px;

	border: 3px solid #1CAFA4;

	display: flex;

	align-items: center;

	justify-content: center;

	color: #1CAFA4;

	margin-top: .9em;

	background: #fff;

}

.add--btn-tel-1 {

	position: relative;

	padding-left: 50px;

	font-size: 24px;

}

.add--btn-tel-1::before {

	position: absolute;

	background: url(../images/top202412/btn-icon-tel.png) no-repeat;

	content: "";

	display: block;

	left: 0;

	top: 50%;

	transform: translateY(-50%);

	width: 36px;

	height: 39px;

}

.add--btn-tel-2 {

	font-size: 38px;

	font-family:'Avenir';

	font-weight: 700;

	padding: 0 20px 4px;

}

.add--btn-tel-3 {

	font-size: 16px;

}

.add--mv-arrow01 {

	padding: 3em 0 0;

	text-align: center;

}

.add--sponly {

	display: none;

}

@media screen and (max-width: 1920px) {

	.add--bg-1 {

		background-size: 100% auto;

	}

	.add--txt-01 {

		font-size: 1.458vw;

	}

	.add--txt-02 {

		font-size: 2.5vw;

	}

	.add--txt-03 {

		font-size: 1.146vw;

	}

	.add--txt-04 span {

		font-size: 1.146vw;

	}

	.add--txt-05 {

		font-size: 1.875vw;

	}

	.add--btn {

		height: 4.375vw;

		font-size: 1.25vw;

	}

	.add--btn-1 span {

		padding-left: 2.396vw;

	}

	.add--btn-1 span::before {

		width: 1.406vw;

		height: 1.875vw;

	}

	.add--btn-2 span {

		padding-left: 2.604vw;

	}

	.add--btn-2 span::before {

		width: 1.927vw;

		height: 1.458vw;

	}

	.add--btn-tel {

		height: 4.375vw;

	}

	.add--btn-tel-1 {

		padding-left: 2.604vw;

		font-size: 1.25vw;

	}

	.add--btn-tel-1::before {

		background-size: contain;

		width: 1.875vw;

		height: 2.031vw;

	}

	.add--btn-tel-2 {

		font-size: 1.979vw;

		padding: 0 1.042vw 0.208vw;

	}

	.add--btn-tel-3 {

		font-size: 0.833vw;

	}

	.add--img-1 {

		height: 11.406vw;

		width: auto;

	}

	.add--img-2 {

		width: 22.656vw;

		height: auto;

	}

}

@media screen and (max-width: 1024px) {

	.add--txt-01 {

		font-size: 2.333vw;

	}

	.add--txt-02 {

		font-size: 4vw;

	}

	.add--txt-03 {

		font-size: 1.833vw;

	}

	.add--txt-04 span {

		font-size: 1.833vw;

	}

	.add--txt-05 {

		font-size: 3vw;

	}

	.add--btn {

		height: 7vw;

		font-size: 2vw;

	}

	.add--btn-1 span {

		padding-left: 3.833vw;

	}

	.add--btn-1 span::before {

		width: 2.25vw;

		height: 3vw;

	}

	.add--btn-2 span {

		padding-left: 4.167vw;

	}

	.add--btn-2 span::before {

		width: 3.083vw;

		height: 2.333vw;

	}

	.add--btn-tel {

		height: 7vw;

	}

	.add--btn-tel-1 {

		padding-left: 4.167vw;

		font-size: 2vw;

	}

	.add--btn-tel-1::before {

		background-size: contain;

		width: 3vw;

		height: 3.25vw;

	}

	.add--btn-tel-2 {

		font-size: 3.167vw;

		padding: 0 1.667vw 0.333vw;

	}

	.add--btn-tel-3 {

		font-size: 1.333vw;

	}

	.add--img-1 {

		height: 18.25vw;

		width: auto;

	}

	.add--img-2 {

		width: 36.25vw;

		height: auto;

		margin-top: 1.5em;

	}

	.add--flex-pc {

		display: block;

	}

	.add--flex-inner-1 {

		width: 85%;

		margin-left: auto;

		margin-right: auto;

		margin-top: 3.2em;

		padding-left: 2em;

	}

	.add--flex-inner-2 {

		width: 85%;

		margin-left: auto;

		margin-right: auto;

		margin-top: 3.5em;

	}

	.add--box-2 {

		flex-wrap: wrap;

		justify-content: center;

		margin-top: 2em;

	}

}

@media screen and (max-width: 768px) {

	.add--txt-01 {

		font-size: 2.8vw;

	}

	.add--txt-02 {

		font-size: 4.8vw;

	}

	.add--txt-03 {

		font-size: 2.2vw;

	}

	.add--txt-04 span {

		font-size: 2.2vw;

	}

	.add--txt-05 {

		font-size: 3.6vw;

	}

	.add--btn {

		height: 8.4vw;

		font-size: 2.4vw;

	}

	.add--btn-1 span {

		padding-left: 4.6vw;

	}

	.add--btn-1 span::before {

		width: 2.7vw;

		height: 3.6vw;

	}

	.add--btn-2 span {

		padding-left: 5vw;

	}

	.add--btn-2 span::before {

		width: 3.7vw;

		height: 2.8vw;

	}

	.add--btn-tel {

		height: 8.4vw;

	}

	.add--btn-tel-1 {

		padding-left: 5vw;

		font-size: 2.4vw;

	}

	.add--btn-tel-1::before {

		background-size: contain;

		width: 3.6vw;

		height: 3.9vw;

	}

	.add--btn-tel-2 {

		font-size: 3.8vw;

		padding: 0 2vw 0.4vw;

	}

	.add--btn-tel-3 {

		font-size: 1.6vw;

	}

	.add--img-1 {

		height: 21.9vw;

		width: auto;

	}

	.add--img-2 {

		width: 43.5vw;

		height: auto;

	}

	.add--flex-inner-1 {

		width: 100%;

	}

	.add--flex-inner-2 {

		width: 100%;

	}

}

@media screen and (max-width: 540px) {

	.add--txt-01 {

		font-size: 5.3vw;

	}

	.add--txt-02 {

		font-size: 6.9vw;

	}

	.add--txt-03 {

		font-size: 4.5vw;

	}

	.add--txt-04 {

		margin-bottom: 0;

	}

	.add--txt-04 span {

		font-size: 5.4vw;

		background: none;

		line-height: 1.5;

	}

	.add--txt-04::before {

		content: none;

	}

	.add--txt-05 {

		font-size: 5.4vw;

		line-height: 1.5;

	}

	.add--btn {

		height: 22vw;

		font-size: 4.8vw;

		margin-top: 1em;

	}

	.add--btn-1 {

		margin-top: 12vw;

	}

	.add--btn-1 span {

		padding-left: 12.267vw;

	}

	.add--btn-1 span::before {

		width: 7.2vw;

		height: 9.6vw;

	}

	.add--btn-2 span {

		padding-left: 13.333vw;

	}

	.add--btn-2 span::before {

		width: 9.867vw;

		height: 7.467vw;

	}

	.add--btn-tel {

		height: 36.8vw;

		flex-direction: column;

		border-width: 2px;

		margin-top: 1.1em;

	}

	.add--btn-tel-1 {

		padding-left: 9.259vw;

		font-size: 4.8vw;

	}

	.add--btn-tel-1::before {

		background-size: contain;

		width: 7.2vw;

		height: 7.8vw;

	}

	.add--btn-tel-2 {

		font-size: 9vw;

		padding: 3vw 0;

	}

	.add--btn-tel-3 {

		font-size: 4.3vw;

	}

	.add--img-1 {

		width: 100%;

		height: auto;

		margin-top: 4vw;

	}

	.add--img-2 {

		width: 100%;

		height: auto;

		margin-top: 1.8vw;

	}

	.add--flex-inner-1 {

		width: 93%;

		padding-left: 0;

		margin-top: 9vw;

	}

	.add--flex-inner-3 {

		width: 100%;

	}

	.add--flex {

		display: block;

	}

	.add--sponly {

		display: block;

	}

	.add--pconly {

		display: none;

	}

	.add--box-2 {

		margin-top: 2vw;

	}

	.add--box-3 {

		width: 93%;

		margin-left: auto;

		margin-right: auto;

	}

	.add--bg-1 {

		background-image: url(../images/top202412/mo-base.webp);

	}

}



a.add--anchor {

    display: block;

    padding-top: 100px;

    margin-top: -100px;

}

@media screen and (max-width: 1920px) {

	a.add--anchor {

		padding-top: 4.95vw;

		margin-top: -4.95vw;

	}

}

@media screen and (max-width: 1024px) {

	a.add--anchor {

		padding-top: 9.483vw;

		margin-top: -9.483vw;

	}

}

@media screen and (max-width: 540px) {

	a.add--anchor {

		padding-top: 16.5vw;

		margin-top: -16.5vw;

	}

}





.m-header-box {

	height: 128px;

}

.m-header-menu02-item-link {

	width: 128px;

	padding-top: 50px;

}

.m-header-menu02-item-link-str {

	font-size: 16px;

	line-height: 1.3;

	text-align: center;

}

.add--header-icon-1,

.add--header-icon-2 {

	position: relative;

}

.add--header-icon-1::before,

.add--header-icon-2::before {

	position: absolute;

	content: "";

	display: block;

	background-size: contain;

	background-repeat: no-repeat;

	left: 50%;

	transform: translateX(-50%);

}

.add--header-icon-1::before {

	background-image: url(../images/top202412/header-icon-1.png);

	width: 34px;

	height: 44px;

	top: -49px;

}

.add--header-icon-2::before {

	background-image: url(../images/top202412/header-icon-2.png);

	width: 44px;

	height: 33px;

	top: -48px;

}

.m-header-menu-item-link {

	font-size: 21px;

	padding: 0;

}

.add--headerlogoWrap {

	height: 100%;

	display: flex;

	align-items: center;

	padding-left: 39px;

}

.add--headerlogo-txt {

	display: flex;

	flex-direction: column;

	align-items: center;

	border-left: 2px solid #050D10;

	margin-left: 30px;

	padding-left: 30px;

}

.add--headerlogo-txt-1 {

	position: relative;

	font-size: 26px;

	padding-left: 30px;

}

.add--headerlogo-txt-1::before {

	position: absolute;

	content: "";

	display: block;

	left: 0;

	top: 50%;

	transform: translateY(-50%);

	background: url(../images/top202412/header-icon-tel.png) no-repeat;

	background-size: contain;

	width: 25px;

	height: 25px;

}

.add--headerlogo-txt-1 a {

	color: #050c0f;

}

.add--headerlogo-txt-2 {

	font-size: 18px;

	padding: .4em 0 0;

}

.m-header-menu-item {

	margin-left: 30px;

}

@media screen and (max-width: 1920px) {

	.m-header-box {

		height: 6.667vw;

	}

	.m-header-menu02-item-link {

		width: 6.667vw;

		padding-top: 2.604vw;

	}

	.m-header-menu02-item-link-str {

		font-size: 0.833vw;

	}

	.add--header-icon-1::before {

		width: 1.771vw;

		height: 2.292vw;

		top: -2.552vw;

	}

	.add--header-icon-2::before {

		width: 2.292vw;

		height: 1.719vw;

		top: -2.5vw;

	}

	.m-header-menu-item-link {

		font-size: 1.094vw;

	}

	.add--headerlogoWrap {

		padding-left: 2.031vw;

	}

	.add--headerlogo-txt {

		margin-left: 1.563vw;

		padding-left: 1.563vw;

	}

	.add--headerlogo-txt-1 {

		font-size: 1.354vw;

		padding-left: 1.563vw;

	}

	.add--headerlogo-txt-1::before {

		width: 1.302vw;

		height: 1.302vw;

	}

	.add--headerlogo-txt-2 {

		font-size: 0.938vw;

	}

	.m-header-menu-item {

		margin-left: 1.563vw;

	}

	.m-header-logo-link-img {

		width: 14.792vw;

		min-width: inherit;

	}

}

@media screen and (max-width: 1280px) {

	.m-header-box {

		height: 65px;

	}

	.add--headerlogoWrap {

		padding-top: 19px;

	}

	.add--headerlogo {

	}

    .m-header-logo-link-img {

		width: inherit;

        max-width: min(44.79167vw, 223.6px);

    }

}

@media screen and (max-width: 1024px) {

	.add--headerlogo-txt {

		display: none;

	}        

	.add--headerlogoWrap {

		padding: min(3.38542vw, 16.9px) 0 0 min(6.25vw, 31.2px);

	}

}

@media screen and (max-width: 768px) {

	.m-header-box {

		height: auto;

	}

}

